CNC Router

From VoidWarranties - Hackerspace Antwerp, Belgium
Jump to: navigation, search

CNC Router
building and operating a CNC router
Jeffrey, Jobj, tomvdz, Tom, berz, warddr
Den Bunker

The goal of this project is to build a CNC router that can mill regular PCBs with non-SMD IC components, MDF, stryrofoam HDPE and nylon. The budget is around 1000 euro. We ended up going for the MiniCnc, made at TimeLab Gent


the CNC router

dremel runout

The minimal distance between tracks when milling PCBs is about 0.2 mm, according to the people at timelab Ghent. The maximal range is (X:173mm, Y:179mm).

At the moment the base plate is not parralel to the X,Y plane. There seems to be some glue residue on the base plate which we should sand off.

At the moment the accuracy is limited by the dremel, and the runout on its spindle. This can be seen when milling a point with a small diameter endmill, instead of a small hole, a tiny circle will be milled. Probably the accuracy can be increased with a better spindle (with ball bearing) like the KRESS 800 FME

We added a LED to the carriage to illuminate the milling area.


The CNC router controlled by sending it gcode. The sending of the gcode is done with replicatorG. Multiple programs can be used to generate gcode.


ReplicatorG will report about a feedrate of zero, this is normal acording to and is caused by our CNC lacking a feedback mechanism. We are using replicatorG version 25. if starting replicatorG normally it will not be able to control /dev/ttyUSB0 to talk to our CNC. So you either have to start replicatorG as root or run

sudo chmod 777 /dev/ttyUSB*

Cadpy can transform bitmaps to gcode. Beware that multiple versions of this tool exist, not all of which do work with our machine.

Software we haven't checked out yet



To engrave a flat surface:

Milling PCBs

test 1
test 2 & 3
test 4
result with new bit

Some interesting links about milling PCB's:

The last days we've discovered some problems when milling PCB's. The accuracy of the CNC router seems to be pretty good, however it seems that our current milling bits are not suitable to perform the job. The ball point milling bit gives smooth tracks without sharp edges, but the milling width is heavily influenced when the PCB surface isn't flat. The other fine milling bit could not deliver smooth tracks due to sharp edges.

Milling PCB's produces fine dust. A wooden box was made to prevent breathing in small copper particles.

Jeff bought better milling bits and straight PCB's:

-spheric milling bit, 1mm -speed F66 -depth -0.1mm (0.2mm will be fine too) -accuracy: very fine to 1mm distance between lines -no rough edges

-pointed drilling bit -speed F66 & F30 -different depths: from 0.2mm to 0.4mm -accuracy: +- 0.25mm, but edges are too rough and unclean

G21 ; millimeters of course!
G90 ; absolute position, no opto-end stops...
;G91 ; relative position, no opto-end stops...
G92 X0 Y0 Z0 ;huidig pos = oorsprong
G00 Z05.000 ;boor omhoog
G1 X10 Y10 F66 ;begin pos 1ste lijn
G1 Z-0.4 F66 ;boor omlaag
G1 X30 Y10 F30
G1 X30 Y20 F30
G1 X10 Y20 F30
G1 X10 Y27 F30
G1 X30 Y27 F30
G1 X30 Y32 F30
G1 X10 Y32 F30
G1 X10 Y34.54 F30
G1 X30 Y34.54 F30
G1 X30 Y37.08 F30
G1 X10 Y37.08 F30
G1 X10 Y38 F30
G1 X30 Y38 F30
G1 X30 Y38.75 F30
G1 X10 Y38.75 F30
G1 X10 Y39.25 F30
G1 X30 Y39.25 F30
G1 X30 Y39.5 F30
G1 X10 Y39.5 F30
;G1 X10 Y110 Z-1.0 F66
G1 Z+5.0 F66
G1 X0 Y0 Z+5.0 F66

Extrusion moulding

A nice guide made by a guy who makes robotics components in his garage. He mills out the parts, makes a silicone mold and then casts the parts in PU. Buildlog: buildlog, part 1 and part 2 of the guide.


Possible future projects

Drilling holes in PCB (before etching)

Drill 1
Drill 1-pic2
(calibrate the Z axis to right above the pcb)
G21 (units in mm)
G90 (absolute position)
G01 x0 Y0 Z5 (drill up to 5mm for safety while moving due to uneven surface)
G01 x0 Y2.54 (move to the first coordinate)
G01 Z-4 F100 (start drilling to -4mm)
G00 Z5 (drill up to 5mm again)
G01 x0 Y5.08
G01 Z-4 F100
G00 Z5
G01 x0 Y7.62
G01 Z-4 F100
G00 Z5
G01 x0 Y10.16
G01 Z-4 F1
G00 Z5
G01 x0 Y12.7
G01 Z-4 F100
G00 Z5
G01 x0 Y15.24
G01 Z-4 F100
G00 Z5
Personal tools
Content Creation
Belgian Spaces