Mini Arduino CNC

A small size Arduino based CNC machine (Plotter)

Similar projects worth following
This Mini Project shows you how to build a very small CNC machine 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.

I always have an interest in making autonomous machines that can do difficult tasks very easily. This is a small sized cnc plotter using Arduino UNO R3 , GCode Sender and GRBL controller.

The word CNC stands for Computer Numeric Control (CNC[1]) is the automation of machine tools that are operated by precisely programmed commands encoded on a storage medium (computer command module, usually located on the device) as opposed to controlled manually by hand wheels or levers, or mechanically automated by cams alone. Most NC today is computer (or computerized) numerical control (CNC),[2] in which computers play an integral part of the control.

In modern CNC systems, end-to-end component design is highly automated using computer-aided design (CAD) and computer-aided manufacturing (CAM) programs. The programs produce a computer file that is interpreted to extract the commands needed to operate a particular machine by use of a post processor, and then loaded into the CNC machines for production. Since any particular component might require the use of a number of different tools – drills, saws, etc. – modern machines often combine multiple tools into a single "cell". In other installations, a number of different machines are used with an external controller and human or robotic operators that move the component from machine to machine. In either case, the series of steps needed to produce any part is highly automated and produces a part that closely matches the original CAD design.

After doing some research I decided to design and build my own machine. To make it cheap I used all mechanical components from scrap (wood and aluminum). It took me almost 1 month to build the machine from start to finish. The size of the machine is 1 ft x 1 ft and working area is about 6 in x 6in x 4in.

I am using different CAD software (AutoCAD, Solidworks, Studio Max, Inscape) to make 2D sketches and then using Gcode convertor I insert .nc files to GRBL software. The results are perfect and accurate. Here is a video of my mini cnc plotter.

  • 1 × Arduino UNO Hardware
  • 3 × Stepper Motors Hardware
  • 3 × 3 EasyDriver for stepper motor Hardware
  • 1 × Power Supply old CD/DVD-Roms
  • 1 × Mechanical Frame Hardware

  • 1
    Step 1


    For this project you will need:

    3 x old CD/DVD-Roms

    1 x Computer power supply

    3 x Easydriver boards

    1 x Arduino Uno board

    3 x Stepper motors

    2 x pieces of Wood

    1 x Soldering Iron

    1 x Soldering Wire

    Few wires

    1 x Pen or Small size drill machine

  • 2
    Step 2

    Using the DVD CD-ROM, get stepper motors:

    I took three wasted DVD-drives apart because we need three stepper motors (XYZ axis)

  • 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 with your Pillars as shown in 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.

View all 6 instructions

Enjoy this project?



trialexhill wrote 07/08/2021 at 11:57 point

Thanks for detailing your project so well. The photos of the pen holder will be very useful.

What settings do you use in GRBL for pulse time, maximum rate, and acceleration? 

I'm also using CDROM scavenged stepper motors, but they are running REALLY hot. 


  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates