Printed circuit board milling (also: isolation milling) is the process of removing areas of copper from a sheet of printed circuit board material to recreate the pads, signal traces and structures according to patterns from a digital circuit board plan known as a layout file. Similar to the more common and well known chemical PCB etch process, the PCB milling process is subtractive: material is removed to create the electrical isolation and ground planes required. However, unlike the chemical etch process, PCB milling is typically a non-chemical process and as such it can be completed in a typical office or lab environment without exposure to hazardous chemicals. High quality circuit boards can be produced using either process. In the case of PCB milling, the quality of a circuit board is chiefly determined by the system's true, or weighted, milling accuracy and control as well as the condition (sharpness, temper) of the milling bits and their respective feed/rotational speeds. By contrast, in the chemical etch process, the quality of a circuit board depends on the accuracy and/or quality of the mask used to protect the copper from the chemicals and the state of the etching chemicals.
The main advantage of PCB milling is the quick turn around time, hence milling is best used for rapid PCB prototyping.
When designing a PCB for milling it is recommended to increase your trace width and clearances compared to what you would use if the board was being manufactured by a professional fabricator. a minimum trace width of 0.5mm and a minimum clearance of 0.4mm works well. Also some PCB design programs desing the PCB as if looking from the top down whereas the PCB mill mills the PCB from the bottom up so you may have to mirror your design before exporting it from your chosen PCB design software.
The CNC takes GCode. The program we use to send this from the PC is Candle. This is installed on the PC with a shortcut on the desktop. A benifit of using Candle is it allows you to use a probe input to create a “Height Map” of the PCB surface allowing the CNC to make minute adjustment to the depth of the cut which allows it to compensate for the PCB surface not being completely flat and level to the gantry.
To generate the GCode from the PCB design we use a software called FlatCAM. A version of this is installed on the CNC PC as well as the PC in the back of the main room. You will be shown the basics of FlatCAM during the induction but you can also find a helpful tutorial here https://www.youtube.com/watch?v=--Cb11heuHc
For the isolation milling, milling out the board pads and traces, it is recommended to use an engraving V bit that has a 30 degree 0.2mm tip and a 3.175mm(1/8“) shaft. For milling out the board outline a 1.6mm endmill is recommended.
Bellow is a list of Feeds and Speeds that have proven to produce good results. If you find a better combination then do please add it to the list
Milling Operation | X-Y Feedrste | Z Feedrate | Spindle Speed | Cut Depth |
---|---|---|---|---|
Isolation Milling | 120 | 60 | 30,000 | -0.1mm |
Component hole drilling | 120 | 150 | 30,000 | -(Thickness of the board + 0.2mm) eg. -1.8mm for a 1.6mm board thickness |
Board outline Milling | 120 | 60 | 30,000 | -(Thickness of the board + 0.2mm) eg. -1.8mm for a 1.6mm board thickness |
Below is the page archive
There are two separate ways of setting up the CNC. One is to have full control over the three axis as you would expect in a CNC. This is '3D mode'. It works well, but for PCBs, it can be quite unforgiving as the PCBs aren't generally perfectly flat. Especially if they're stuck down with double sided tape which can result in bumps. 2.5D mode makes the Z axis slightly spring loaded. There's a skirt that can attach to the z-axis. The depth of the cut is then defined by how far the tool protrudes from the skirt rather than what is in the gcode. This gives a significant margin for error on the depth of the cut and works well on non-flat PCBs. However, only one depth of cut is possible (unless you re-adjust the skirt).
The skirt has two metal parts. Twisting these adjusts the height of the skirt, but it is very stiff.
You still have to set the Z-height, but it's very forgiving. Just make sure the tool is resting of the surface when you zero the Z height.
You might want to make sure that you increase the height of your travels to avoid it dragging the tool
There's a locking bolt. When this is in position, it disables the 'wobble' that make the 2.5D work. if you're unsure what mode it currently is in, give the toolhead a wobble. If it moves up or down a little (about 10mm) then it's in 2.5D mode.
The CNC parts: 1) the z-axis locking bolt 2) the '2.5 axis' sock 3) the spindle release bolt
The position shown in the above image is the 'storage' position for the locking bolt. Put it here when it's in 2.5D mode to avoid loosing it! If you want to go into 3D mode, remove it and put it the other threaded hole on the knob.
In October 2020 a proposal went through to make a new controller. The idea behind this was to make it accept standard G-Code, and for it to have the same workflow as the larger metal mill. Have a read through the proposal to understand the technical choices behind the build.
Here are some useful docs for the new controller:
The CNC takes GCode. You can send this via either Universal GCode Sender or bCNC. These are both installed on the CNC PC, and should take the same gcode. The choice is yours. There are probably other options, but these are both tested and work.
Whichever you use, you'll need to connect to the CNC via the com port. This seems to usually come up as either COM5 or COM6. The speed is 115200.
When you first turn on the mill, it will be in an 'Alarm' state. This is just because it doesn't know where the toolhead is, and it needs to be homed. To get it out of 'Alarm' run the following Gcode:
$H
You can enter this is Universal Gcode Sender, or bCNC (using the command text box in the bottom left
You can generate GCode in a huge number of ways. This method is just the one that works for me
Set up the CNC
Set up the PC
Milling the board outline
Drilling the holes
You can mill with either an engraving v-bit or an end mill. I'm having better success with an end mill (the v bit does work, but I'm getting messy results. Might just need more practice. I'm currently using a 0.7mm end mill to reasonable success. See here for some info about the options from Bantam