3D printed homemade CNC with Arduino

CNC Root 3

Written by Mariete

Apr 29, 2020

Updated: September 30, 2020 @ 19:04

How to build a homemade CNC milling machine?

For a long time I wanted to build a Homemade and cheap CNC, if possible with 3D printed parts, with a Arduino as a controller.

In my head I imagined doing thousand and one projects for all my hobbies: printed circuit boards for electronics, pieces of wood for my planes model airplane, and carbon fiber parts for drones doing the box machining for electronic projects, panels, etc.

After several years with this recurring idea, in the summer of 2017 I decided to take action and build the cnc (or numerical control milling machine) that I present here.

How to do it all in one blog article can be very long and heavy, and I intend to get to a certain level of detail, including Photos and all the tips that they seem important to me to remember from when I built it, I am going to divide it into several entries, that I will be writing little by little (don't forget to subscribe to the Blog to find out when I publish them):

  1. Overview and options
  2. Mechanics
  3. electronics
  4. Milling machine or Spindle (Chuck)
  5. software
  6. Use

In this overview post, I'm going to talk about how is it and of the CNC capabilities in a very generic way.

It is a cheap CNC milling machine to build, with a linear motion system done with bearings, which are usually used on skateboards, which slide on square aluminum or steel tubes.

This linear motion system has the advantage that it is accurate enough for normal non-precision jobs (if I wanted to mill a euro coin on my CNC I already tell you that it would lack precision) and it is much cheaper than axial bearings on rods or linear guides, important when you want get a cheap CNC.

Overview and options

When I started to spin the CNC milling machine, my head was a pressure cooker, full of doubts and questions.

There is a lot of information on the internet but, when you have no idea, as was my case, you can have it right under your nose and not recognize it.

Things like what you would use it for, the effective size of work you wanted to achieve, the general format of the CNC, whether to use professional parts (such as linear guides) or all home construction, etc. I was clear that I was going to use it to milling wood.

There are many options, and I will review them here because it would be very long, but I can say that after a long time looking years! I found the design that I liked.

The design was called CNC root, a homemade CNC milling machine design with free plans, and was made on the basis of cheap and easy-to-find materials, printed parts, wood, iron tubes ... Electronics, similar to that of a 3D printer: an Arduino, stepper motors and little else ...



The aspect of the mechanics of the CNC is this:

The mechanical part is made with tubes aluminum or 20x20mm steel , which can be purchased at Leroy Merlin or the like, skateboard bearings, 3D printed parts on the 3D printer (many parts, Almost 3 Kg of PETG filament!) and screws and nuts (Lots of bolts and nuts!).

For the tubes I used 1.5mm thick aluminum (which you can find at Leroy Merlin) but they flexed for fairly hard jobs so I swapped them out for 2mm steel whenever I could.

Those would be missing pieces of wood which, at first, I made by hand with MDF and, when the machine was already working, one of his first jobs was to machine your own final pieces in phenolic plywood they were great.

A tip: if you make them by hand make sure that everything is square, when cutting them and when making the holes (which are many). If everything is not square and in its place, then the work you do they won't turn out well. Ideally, someone will do them for you with a CNC machine. If not, do what I do, the first ones by hand, the best possible, and as soon as it works "the good ones".


The electronics for the Root CNC is also very simple and cheap. It is very similar to the electronics of a 3D printer. 

It consists of a Arduinolike brain some drivers, which are what makes the Arduino capable of controlling the motors, and some stepper motors.

The power of the stepper motors and their corresponding drivers must be chosen based on what they intend to do with the CNC. The same motors can be used, Nema 17, from 3D printers (enough for "light" work, engravings on softwoods, printed circuit boards, working with plastics, etc.) or using ones with more power, type Nema 23, if you want to do things with hard woods, cutting jobs, working metals such as aluminum or brass, etc.

In my case I have used Nema 23 motors with DM542A drivers. This set has enough power to work any type of wood, no matter how hard it is, plastic like methacrylate (also called acrylic), metals like aluminum, and other materials. 

If you do not want to install such powerful motors and drivers, a good option is to use a board called CNC Shield with normal 3D printer drivers such as the DRV8825, this greatly reduces the cost.

Of course, it would lack power supply and other minor accessories.

Kit with CNC Shield

This kit from Amazon, at a good price, includes the Arduino, the CNC Shield, the DRV8825 drivers and even some limit switches, which can come in handy.

Nema 17 Engines

These Nema 17 engines are pretty good. They have a power of 0.45 Nm. Beware of catching the model QD05 and not the QD06 that appears on the same page and has a lot less power.

Milling machine or Spindle

The milling machine, spindle, or motor is one of the important parts of the CNC.

Basically we have three main options.

  1. Multi-hand tool
  2. Milling machine
  3. High frequency motor and variator

Multi-hand tool

This is the type tool Dremel or similar.

Its main advantage is the price (not so much either) but it doesn't have much force and it makes a lot of noise. They are also not intended to run for long periods of time.

In my opinion not worth much unless what you want to do with the CNC is limited to printed circuit boards, light wood engraving, plastic engraving and the like.

Milling machine

A good milling machine is a beast of work, but it has a big problem: it does a hellish noise.

I started, for economy, with a milling machine very similar to the Makita RT0700C, a 710 Watt milling machine and I it worked very well, although I ended up not putting up with the noise.

High frequency motor and variator

In my opinion, what they usually call spindle, the high frequency motor with variator (VFD), is what a CNC should have, the rest are fixes.

I, after two years with the milling machine, put a spindle of 1.5 kW water-cooled and would not go back. In the photo I leave you the one I bought.

What are the advantages of a spindle?

  • Does not make noise. When it works in vacuum it sounds very little. The noise that is generated is really what the cutter makes against the material that is being cut, the motor hardly sounds.
  • It can regulate speedeven by software, and that is important.
  • You can work hours and hours without flinching.
  • It seems silly, but it is not at all: as it is water-cooled does not expel air (as milling machines, Dremels and others do) with what the sawdust doesn't come out, or the chips from the material you are working with, shot all over the garage 🙂
  • Lets put a huge variety of strawberry types and sizes.


Building the CNC Root 3 has been a very nice and interesting project, and it's amazing what you can get to to learn.

Is not difficultIt is simply a matter of going step by step and with patience.

If you liked the article, I will really appreciate it if you spend a minute on leave a comment below.

One last trick. Sometimes I use a foot pedal, like the one you can see below, to be able to quickly pause the CNC, when necessary.



  1. Javiec

    Thank you very much Mariete! That you want to be able to see the whole "saga" of articles and I'm sure that more than one like me will be very useful.

    • Mariete

      Thank you very much for your comment, Javier.

      I'm glad it was useful and interesting.

      I am preparing the article on the electronics of the CNC. I hope to have it soon.

      A greeting!


Submit a Comment

Your email address will not be published. Required fields are marked *

It may also interest you ...

Homemade CNC with Arduino III - Electronics

Homemade CNC with Arduino III - Electronics

All the details of the electronics of the homemade CNC with Arduino. Learn how to easily build a cheap CNC machine ...
Read more
How does a Geiger counter work? Discover its 6 characteristics

How does a Geiger counter work? Discover its 6 characteristics

Have you ever wondered how a Geiger counter works and how it measures radioactivity? In this article we will ...
Read more

Vulnerability in Meteotemplate and how it affects SEO

  Vulnerability in Meteotemplate What is Meteotemplate? Meteotemplate is a software package, or template, that hundreds of weather stations ...
Read more
Connection Partom VTX to Arduino

VTX FPV video transmitter control with Arduino

Do you want to control a VTX video transmitter with an Arduino? Here I explain how to do it ...
Read more

Pin It on Pinterest

Share This