For my final project I made a suitcase sized CNC machine that can milled from aluminium and POM (Delrin) sheet stock. All the electronics except the motors can also be made in a fab lab. My design builds on the excellent prior work done by Jens Dyvik in the Fellesverkstedet - Fabricateable machines project and the Satsha-boards Satshakit and Satstep6600 made by Daniele Ingrassia.


I have designed the machine from scratch in Autodesk Fusion360. I based the design on our lessons learned from testing "Hank" (pic) and the "Award plotter" (pic) which are both built by Jens Dyvik. The key differences are substancialy increased glide block contact area and their adjustment system as well as a new gantry design which is a combination of good ideas from the previous generations. Below you can see a video of my finished design.

Imported geometries

The only imported geometries are the 2D rack and pinion profiles in DXF from fabricateable machines. They are the standard chamferrails with 4.444444 steps per mm with a 200 step motor:DXF Source file on git DXF source file Backup.

My 3D design files

STEP model of the entire machine and cut sheets

F3D fusion360 model of the entire machine, cut sheets and CAM toolpaths but with disabled design history.*

All cut sheet layouts in DXF, STEP and F3D for both POM and aluminium sheets for the entire machine.

* = In order to export in Fusion360 F3D format I have to break all links to external files, if I do this with enabled design history it breaks the model.

All electronics design files can be found under parts fabrication below.

Parts Fabrication - Aluminium, POM and electronics

Click to go to the separate page for fabrication details for all the parts


Amount Material/ComponentFunctionSourcePriceMake/Buy
0,5m^2x10mmAluminium plate Structure, rack and rails.Buy stock from Fellesverkstedet~$50Made
0,2 m2x12mmPOM sheet Glide blocks and pinions.Buy stock from Fellesverkstedet~$20Made
4 Nema23 Stepper motors 57BYGH902MotionRecieved from Fellesverkstedet~$200Buy
44 4A Stepper driversIndividual motor controlComponents from farnell, aliexpress~$60Made in Week10
124000 RPM 800W SpindleMillingDelivered from Aliexpress$123,81 + SBuy
11,8kW Variable Frequency DriveSpindle drive and controlDelivered from Aliexpress$107.95 + SBuy
124V 15A Power supplyProvide electric powerRecieved from Fellesverkstedet~$35Buy
6Limit switchesRestrict motionPersonal supply~$5Buy
13 m CablesWire all electronicsLocal stores (Biltema, Kjell)~$35Buy
-Connectors and SwitchesConnect all electronicsFarnell~$30Buy
1ControllerMotion planning and controlComponents from fab lab invetory~$4Made in Week15
1Input controllerManual motion controlComponents from fab lab invetory~$5Made in Week13 and Week15
-Jute fibre and Expoy compositeElectronics enclosureStock from fab lab inventory~$15Made in Week14
--Total:~$690 + Shipping-


Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Running the machine with my jog-control card

Driving the machine on Iceland in FabLab Isafjordur

Performance testing

In Iceland I only ran it on jogging commands sent over serial from either my computer or my jogging card. Before packing up and flying back to Norway I managed to get GRBL, an open source CNC motion control firmware, running on my controller card. I managed to send it g-code using Universal-G-Code-Sender and made it move!

After returning from Iceland and finishing updating my documentation based on the comments I received I had time to design a test file to test the local precision, it will mill 0,5 mm wide slots leving thinner and thinner walls in between the slots. The range is 0.5-0.06mm

Testing toolpaths in fusion 360

Fusion 360 f3d model
Fusion 360 step model
Generic GRBL toolpath .nc

My kitchen setup (in the right hand corner you can just see the corner of my "make something big" project)

I tested the toopaths first by air-milling and then by taping a pen to the spindle. Here is a video:

Inspecting the result I can see that I was missing steps in the Y-direction. I suspect the cause is that I use one Makeblock stepper driver to drive both Y motors, I had planned to use two but one suffered malfunctions. I tried increasing the amperage but it is already running on max.

My plan now is to se if I can jurry rig my fabbed driver, the satstep6600 v2 to drive the two Y-motors instead. That should do it since it can output double the amperage of a Makeblock stepper driver. However, that will not be done before the repository closes.

I will post further test and upgrades on fellesverkstedet/fabricatable-machines.

Click to go to the separate page for fabrication details for all the parts

Original project plan

In the spirit of fab labs making fab labs I plan to make a highly fab-able portable 3 axis CNC (milling) machine.

I plan to build a CNC platform that is robust, easy to fabricate and can be used for many different purposes. I strive to make the electronics myself as well as the motion system.

I'll make my machine portable version and with an open bed so that it can work on stock that is bigger than itself. Inspired by machines like the handibot. (Github repo) and built on the foundation of the ongoing fabricatable machines project started by fellesverktedet.


Test milling the motion system in plywood

I got large deviations between model and reality in my first tries. Up to 2,5 mm deviation(!) stem from a runined tip on the chamfering bit. The first 3 mm is pretty dead. I'll try to work around it since I don't think I desperatly need that part of the bit.

I also had a 1 mm deviation in thickess in the part I planed. Either I need to plane the spoilboard or screw it down better. The spoilboard is ~25 mm OSB-plate and the wooscrews have a tendency to "strip the threads" in the hole when you tighten them.

Testing POM glide blocks

I tested milling the glide blocks in POM before designing the the rest of the machine.

I used a bracket made of plywood to help me mill the sideways holes in the glide block. I positioned it by milling matching 8mm holes in the spoilboard and in the bracket. I then put wooden plugs in the holes and screwed it down.

The performance was supricingly good and the adjustment screws seem to work! Looking forward to testing it with a rail in aluminium.