Homemade CNC v1

This is the first version of my homemade CNC machine (see version 2). It does not have enough power to cut anything but has a reasonable precision in drawing.


It does not have any bearings (other than those inside steppers actually), lead screws run each axis and bear the weight at the same time, reasonably noisy and slow. Each axis (X,Y) is driven by two steppers working synchronously.


Z axis is the head moving mechanism of an old CD ROM drive.


In the above picture Y axis steppers are visible at the top. X axis steppers are in the box at the right hand side. Stepper drivers are based on L298 H-bridges and stays at the same box. This was the first time to work with power electronics. Mani chips left their life.

The base is made of MDF. The working area is about 8″ x 8″. Z axis travels about 1″.


Motor couplers are cheap flexible tubes clamped with hose clips.



This machine is driven by a laptop -> USB to serial TTL converter -> PIC micro -> L298 drivers powered by an ATX PC PSU. As there are no opensource or free CAM softwares that support my configuration, I happened to write my own.


The software accepts images, detect edges, generates tool paths and communicates with the PIC.

If you are trying to make your own homemade CNC, create the mechanical implementation your self and buy some stepper drivers. Do not try to build stepper drivers unless you are a skilled electronics guy. Power electronics is a separate subject that can generate lot of headache. Even a cheap poor quality TB6560 based stepper driver easily defeats most of the H-Bridges. Though steppers are supposed to rotate in steps, they do not. In the natural frequency they just vibrate not rotate (happened to me at 200Hz or 5 ms steps). This is a very sad situation. You have to accelerate the stepper rapidly across this area or start at a larger frequency and lose some steps!

Electromagnetic interference generated by steppers and router is non trivial, that can reset a PIC and stop your work unfinished at the middle. Do not forget the filter capacitors at the power supply and PIC MCLR pin. Do not use the USB power to drive signaling circuit. If your laptop is not intelligent enough to shut down the ports at the correct time then you are very likely to have a laptop with 2/3 ports burnt at the end. So use a separate power supply for the signaling circuit.

One thought on “Homemade CNC v1

  1. Pingback: My Homemade CNC version 2 | Rajith's Workbench

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s