Mini Arduino CNC





Introduction: Mini Arduino CNC

This instructable shows you how to build a cheap and easy, but very small CNC using Arduino UNO. You can use it to mill thin wood, different foams or you can use it for plotting different sketches and also can be used for engraving and etching purposes.Inspired by the Small Arduino CNC (thank you very much for your help), i made it easily.


For this project you will need:

3 old CD/DVD-Roms

1 Computer power supply

3 Easydriver boards

1 Arduino Uno

2 pieces of Wood

1 Soldering Iron

1 Soldering Wire

Step 1: Demo Video

Demo Video 1

Watch here

Thanks to everybody who voted me for the contest and I am very glad that i have won 2 contests :D




Watch the new video of this mini CNC plotter. I have increased the feed rate for sketching. I was using Deskengrave and many other softwares just to check the working of the machine, the results was not satisfactory because some Gcode generated codes were not supported by the GRBL library. After searching n the internet i found Inkscape software. Inkscape is a free and open-source vector graphics editor; it can create or edit vector graphics such as illustrations, diagrams, line arts, charts, logos and even complex paintings. By using this software i can import Dxf, Dwg, JPG, SVG etc files and can convert them into GCODE. You can download Inkscape by clicking below link.
Download Inkscape

I have import several image files which i had downloaded from the google, convert them into Gcodes and send to the GRBL software, it worked perfect :D. Below is the link of sample video i have just made.

Demo Video 2

Mini Arduino CNC Part 2

How to use Inkscape?

There are alot of videos on youtube which will guide you to how to use this software and generate Gcodes. For quick guidance see this link.
Inkscape and Serial Transfer

Step 2: Using the DVD CD-ROM, Get Stepper Motors

I took three wasted DVD-drives apart because we need the steppers (XYZ axis)

Step 3: Step 3: Assemble and Build the Structure

For this part just need a base platform and two pillars. I made the base from wood and pillars are of aluminum. Now simply screw the wooden base withe your Pillars as shown in first Figure.

Place the X axis across the pillars and Y axis onto the wooden base as shown in figures.I used glue to assemble all the axis. Just make sure that all the axis are exactly perpendicular to each other, they must be at right angle.

Step 4: Step 4: Soldering and Wiring

This is also not a very complicated step. You just need to solder wires with your stepper motor. Be careful while soldering and don't use high watt solder as it can burn the wires of stepper, mine was 30W and it was OK. After that, simply sold all the connectors in easydrivers and connect the wires as given in figure.

Step 5: The Software

1. Download and install the Arduino Software, the grbl library and the Grbl controller. or goto the link below

2. After downloading the Grbl library, you have to click sketch --> import library --> add library in the Arduino software and select the zip file you just downloaded.

3. Upload the library to your Arduino.

4. After you installed Grbl on your Arduino open the Grbl controller and select the port to which your Arduino is connected. Press the open button.

5. A list of options appears in the command screen. You have to change a few of these options, by entering the number of the option (the numbers with a $) = and the new value (For example $130=35.000).If your motors are moving into the wrong direction, go to Tools --> Options --> Axis and click the axis you want to invert.

6.You can use any Gcode Generator software to make gcodes.I download DeskEngrave software which is also a gcode generator, here is a link deskEngrave

Step 6: Thank You, Instructables!!

It is really very easy project if you want any help you can ask anytime.

I really want to thank INSTRUCTABLEs and all the people here sharing their ideas. Following this platform i am really able to make my own projects very easily :D :D :D

Automation Contest

Second Prize in the
Automation Contest

3D Printing Contest

Runner Up in the
3D Printing Contest

8 People Made This Project!


  • Planter Challenge

    Planter Challenge
  • Woodworking Contest

    Woodworking Contest
  • Casting Contest

    Casting Contest

We have a be nice policy.
Please be positive and constructive.




Hi.when i uploading gcode file in grab controller or another software to send gcod to machine and chooseing begin i receiving this error [buffer size too small process interrupted ]pls give me solution.

If any one have cnc Machine for sale contact with me

1 reply

Please help me. I don't have $14 and can you post a printscreen with lower commands $1 , $2 , $3 . Thank you . You will help me alot

Hey i did all of this and when i load a gcode on grbl it doesn't work. It only moves slow in the air abou 5 mm. Do i need to fine tune the cnc or something ? If so how ? Please help. Thanks

3 replies


Have to check/edit your settings in grbl software according to your belt/lead screw pitch as shown in figure?


Thanks for the reply mate. The settings are the same as yours. I don't know what is the problem. Are there any other fine tune or something ?

I don't have the $14(autostart bool) option. Do i need to do something to appear ?

can anyone send me grbl controller. the link given in disable.

1 reply

Sorry for the late reply, I was really busy coudnt find time to reply early.

I have just sent you grbl controller setup in email. Check your email.

hi bro help me i am try to making this project but sam problem create my stepper motor not working but normal motor is working please help me

my whastp no is 9958589245 please contact me

1 reply

what is your error/problem?

Well after about 3 hrs of searching and trying to find a solution, my last resort is to write here. The grbl library doesn't work fro me (as mentioned by someone else) I keep getting the folder does not contains a valid library, then I tried the GRBL-Arduino-Library-master that some one else suggested, that one does loads but when I try upload it to the board I get a compiling error. I just cant find how to run it. Any help is appreciated. Tnx.

1 reply

nice instructable sar ... sar I have a small doubt can we make plotter draw images of us

1 reply

Yes it can plot Images too..

hey man i just got one problem ,whenever i used inkscape to convert g-code and upload or put in the grbl controller, its doesn't work always says, runtime error :scribbed version buffer size is too low and then it stopped , so what should i do now ?

2 replies

Change the baud rate

Nothing happens, same error. Now I'm thinking to change the windows 8 to may be 10 or 7 may be that help Hehe.

hey man how are you I would like to ask if you are able to send the grbl controller on my mail the web page is giving error I already build it but I'm not finding the grbl controller I will be thankful to you if you are able to provide me

contact mail