Experiences and understanding FlatCAM PCB milling program

FlatCAM Write Up – Experiences and Procedures

After a lot of editing I think the attached document will give an in depth understanding of how to use FlatCAM based on Version 8.5.   The document is based on our experiences and a steep learning curve.  We now have a repeatable process for milling PCBs from Gerber and Excellon files exported from a PCB design package.

The document may well have mistakes and we would appreciate feedback good or bad.

Latest version is now based on FlatCAM v8.991

FlatCAM v8.991 and milling pcbs 2021

Similar or related subjects : –

Supply, IC2 and USB connections over CAT5 connection

CAT5 Breakout Board

One of our group of ‘silver experimenters’ is building an Arduino based celestial camera tracker.   This will be deployed in the garden and he needed all control to be routed back inside the house.   The garden installation consists of a USB webcam mounted on a servo controlled platform all powered by 12V DC.

We pondered long on how we might remotely connect to the garden.  The crucial thought was that the Arduino servo board was a two wire interface using the I2C format data exchange.   Given that the USB needed four wires and the DC supply two wires we had a need for an eight core cable connection.  It seemed like a length of CAT5 cable would do the job and we could elegantly use standard CAT5 sockets.

The PCB was designed in Design Spark and milled on the Tormach PCNC440 using FlatCAM.

There is a problem with running USB over more than 5m but I did some tests at 10m and all seemed fine which should be adequate for the application.   

The breakout boards had a male and female USB connector fitted and the connections had to ‘cross over’ on one of the breakout boards to maintain continuity.   We also paired the Data + and Data – connections with the +5 and Ground twisted pairs in the CAT5 so the Data + and Data – were not twinned together.

Nothing technically magic but a simple solution to a project need.

CAT5 breakout board for USB, I2C and DC supply
CAT5 breakout boards for USB, I2C and DC supply

  Similar or related subjects : –

Arc and Circle I and J code calculator for GCode cutting paths

I & J Arc Code Calculator (with updated spreadsheet)

I had a need to hard code a circular PCB cut out CNC code that would cut four arcs around a milled PCB and leave four breakout tabs to retain the board in place in the blank until the job was finished.

To create I & J codes you need to know the start point, end point and radius of the arc.   The end point becomes the X and Y.  The  delta X and Y location relative to the radius centre point X and Y becomes the I and J values.   You can also add a depth of cut value for Z as part of the block.  Note that the Arc is assumed to run anticlockwise when using a G3 code running from start point to finish point.   Use G2 if you want a clockwise motion.   The principle is the same with both rotations.

You end up with a block code of the format G3 (G2) Xa Yb Zc Id Je where a,b,c,d,e are the coordinate values.  I found that working with positive and negative values when trying to find the I and J values relative to the centre was hurting my brain.   A spreadsheet was needed …..

Screen shot of I and J calculator spreadsheet
Screen shot of I and J calculator spreadsheet for G2 and G3 coding with examples based on CW and ACW arcs around quarters of a circle with small gaps between each arc.

 

You can download the sheet as a ZIP file from the link below.

Arc and Circle Calculation Sheet for GCode

Similar or related subjects : –

Hall Effect Based Tool Height Setter for use with PathPilot

I had been using Hall Effect devices to modify my William Smith Gearless Gravity Arm clock and had been surprised by their ease of use and repeatable trip points.  (More about this to follow in a separate post).

I had also been frustrated with my inability to set tool heights reliably in PathPilot despite using various methods all of which didn’t want to agree with each other.

This resulted in the construction of a Hall Effect based Tool Height Setter that appears to solve the problem.   The write up is lengthy so I have committed it to PDF for download but here are a couple of images to give you an idea of the result.

sketch view of tool height setter concept
A simple cross section sketch of the tool height setter concept using a Hall Effect sensor

 image of finished tool height setter using a Hall Effect sensor

Finished tool height sensor mounted on the PCNC440 milling table

Link to Tool Height Setter write up

Similar or related subjects : –

Clamping of printed circuit boards while milling tracks follow up

Previously on Woody’s Workshop … I had spent time trying to get a consistently level PCB blank clamped to the tooling table ready to mill the traces using CNC.   The results were not too bad but being anally fussy it left a bit to be desired, particularly if the board had a large area which magnified the variations.  

Any variation of the level of the PCB top surface will produce variable width cuts when using a V shaped cutter.   I had machined a clamping plate which was a simple open frame with a clamping step equal to the PCB thickness (1.6mm) and a sheet of MDF or hardboard as a sacrificial backing board. 

Despite having more clamping screw holes than a magazine burst from an AK47 I still ended with the corners of the PCB being a few thou lower.   Results were shall we say ‘variable’.   I had reason to run a new prototype board this week and once again hit the same frustration.   In the end it was a sit and look at it and have a think session. 

The resulting revelation was maybe the sharp edges on the step are applying too much pressure ?  What if I were to be more gentle with the clamping ?  

I cut some strips of thin foam rubber and put this into the step such as to push down on the PCB.   As a quick test I only fastened the frame down using the four corner holes. 

printed circuit board clamping for cnc milling
Sketches showing the two methods of clamping the printed circuit board ready for CNC milling

Absolute magic.   The PCB surface hardly moved the Hamer needle at any point on the surface.  Milling result was an artwork to be proud of.

Issues – the current step on the clamping frame is meant to clamp to a hard stop based on the sum of the PCB thickness and the sacrificial material thickness.  Adding the foam meant I had to do away with the sacrificial board.  The frame step therefore needs to be deeper.   The sacrificial material is essential to allow drilling to take place without breaking the drill as it runs into and potentially damages the tooling table. (For the board in question I drilled to only 1mm and then over drilled by hand off line to the mill).  

So a worthwhile bit of experimenting and hopefully a better result going forward  

Similar or related subjects : –

Verified by ExactMetrics