Monday, June 5, 2023
HomeElectronicsArduino Based mostly CNC Plotter With Detailed Configuration

Arduino Based mostly CNC Plotter With Detailed Configuration

Good day guys this weblog put up supplies a whole information relating to CNC pen plotters utilizing Arduino

Let’s start with what a CNC plotter is

CNC stands for pc numerical management. A CNC plotter machine is used to create 2-D, and 3-D pictures on a plain floor utilizing a 2-D printing mechanism and microcontroller. With a purpose to draw a desired picture or piece of textual content, the Arduino CNC plotter strikes its elements in accordance with the directions it receives. This can be a easy Arduino-based CNC pen plotter that’s used to attract something and all the things you need! It’s based mostly on the design program that was enter into their controller unit.

Listing of Parts required

  1. Arduino UNO
  2. CNC defend
  3. a4998 driver
  4. Stepper motors
  5. Servo motor
  6. rods
  7. carbon tubes
  8. 6mm rods
  9. Timing belt
  10. Linear Bearing 6mm

11. Linear Bearing 12mm

12. NEMA17 stepper brackets

You should use Robu’s 3d printing service to print the construction if you do not have a 3d printer:-

The right way to assemble?

Take the 2 3D printed Finish plates. These plates are as proven within the picture beneath.

 END plate

We required 4 Linear Bearings of 12mm. Insert these bearings into the gantry, two from either side.


Subsequent, seize two 12mm-diameter carbon tube which might be 500mm lengthy. This tube ought to be inserted into the 2 holes in middle of gantry.

Insert two metallic rods into one finish plate. These rods are easy and specifically manufactured for CNC software. Mount the gantry meeting on these rods. Apply Finish plate on different facet. Now the gantry will slide on metallic rods.

Now, take the slider and insert two 12mm bearings. Insert this slider on carbon tubes. Fastened the arm finish on the finish of carbon tube utilizing bolts.


Place two pulley at arm finish and one pulley at slider utilizing bolts. 

ARM Finish

This Arm finish is hooked up to carbon rod. After this half insert 4 pulleys in gantry. So, it appears to be like like as proven in picture beneath.

Connect a NEMA17 mounting bracket to every finish plate utilizing nuts and bolts. Connect a stepper motor to every NEMA17 mounting bracket utilizing 4 bolts. Additionally apply pulley to every motor shaft.

Subsequent Proceed to place the timing belts. The timing belts path is as proven picture beneath. Between the 2 12mm help tubes, the timing belt passes.

Now we will proceed with assembling the pen holding mechanism. This mechanism required one mounted half and one sliding half.

Pen Holding Mechanism

  Sliding half  


Fastened half

 Insert the 4 linear bearings into this sliding half and fasten servo motor. Additionally secured the pen holder half proper subsequent to the servo.

Connect stepper motor to mounted half. Then the lifter is just hooked up to the shaft of the stepper.

Subsequent, we join the sliding half and glued half collectively. The servo wire should first be threaded by a gap within the mounted portion, after which the 6mm rods have to be inserted from the highest, passing by the bearings and the outlet within the mounted half. The sliding half ought to be pushed downward by a spring that’s inserted between the mounted and sliding components of the rod as it’s being put in.

Subsequent, we will assemble this pen holder mechanism utilizing pen-lift bracket that goes on slider a part of machine.

Pen elevate bracket

The assembled plotter appears to be like like picture proven beneath.

With this, the mechanical half is accomplished, and we might proceed to attaching the electronics.

We’re utilizing an Arduino Uno board together with a CNC defend.

 Arduino CNC Defend board as a driver growth board, might be utilized for CNC, 3D printers, and engraving machines. There are 4 slots in all, and every one can drive an A4988 stepper motor.

Now our Arduino CNC pen plotter is accomplished.

The one factor left is to rework it into a real CNC machine. To perform this, we have to set up a firmware on the Arduino that can enable us to manage the CNC machine’s movement, in addition to a management programmed that can enable us to transmit G-codes to the machine and instruct it what to do.

Subsequent obtain and set up this GRBL firmware into the library folder of our Arduino IDE,

The open supply GRBL firmware is essentially the most typically used possibility for DIY CNC machines. Nonetheless, we’d like a modified model of it for this Arduino CNC Pen Plotter in order that it might probably handle the servo motor.

Circuit Diagram

Putting in GRBL

With a purpose to plot a picture, we have to set up a g-code (graphics-code) interpreter known as GRBL. Carry out the next steps to put in a core XY model of GRBL onto your Arduino UNO R3.

  • “” might be downloaded from Pen Servo.
  • Develop the zip file.
  • Discover the “grbl” folder and replica it to the ” C:…Arduinolibraries ” folder.
  • Edit code within the library file “config.h” to learn #outline COREXY, as seen in picture, to activate the Core XY mode. Make use of a textual content editor like Notepad++. a phrase processor isn’t.
  • Open the Arduino IDE (Built-in Improvement Setting)
  • choosing “File | Open” and Go to the “C:…ArduinolibrariesgrblexamplesgrblUpload” folder.
  • Afterwards, click on “Open” after choosing “grblUpload.ino.”
  • Subsequent compile the code and add to your Arduino.
  • Now GRBL is put in in your Arduino.

Configuring GRBL

As soon as we obtain and set up this GRBL firmware into the library folder of our Arduino IDE, we additionally have to overwrite GRBL’s default configuration file.

When your Arduino Serial Monitor is opened at 115200 baud, Picture as proven beneath is displayed.

By coming into $$ within the textual content field on the high of your Serial Monitor display and choosing “Ship,” you may view your GRBL settings at any time.

Within the Serial Monitor textual content field, enter $110=6000 and press “Ship.”

Merely enter $$ and click on “Ship” to see the change.

Now your plotter is totally suitable with Inkscape g-code.

“Inkscape” could also be downloaded from  

Plotting an Picture

A textual content editor like Notepad++ can learn any g-code file, impartial of file extension.

Recordsdata with the extensions *.gcode, *.nc, *.ngc, and even *.txt are widespread.

Earlier than we will plot, we’d like one thing to attract.

The GCode Instructions Listed Beneath are Contained On this Picture

We now require a way of transmitting this file to our plotter. For this obtain and set up the UGS (Common Gcode Sender) Basic model from

  1. Place your paper underneath the plotter.
  2. Open a connection to your Arduino by working UGS.
  3. “Examine” the “Allow Keyboard Motion” possibility.
  4. “XY step measurement” ought to be set at 10 mm.
  5. “Feed price” ought to be set to 1000 mm/minute.
  6. To maneuver the pen, click on the +X, -X, +Y, and -Y buttons.
  7. Click on “Reset Zero” when the pen is above the lower-left nook of your web page.
  8. “Allow Keyboard Motion” ought to be unchecked.

       The plotter goes to come back again right here.

Now could be the time to plot.

  1. “Common Gcode Sender” will now begin.
  2. The lower-left nook of your web page with the pen in that place.
  3. Set the communication pace to 115200 bauds and enter the COM port related to your plotter.
  4. Then “Browse” for the “sq..txt” g-code file by clicking “Open.”
  5. Finally, a display will seem when you click on “Open” and “Visualize.”
  6. The yellow digital pen and your plotter ought to each start shifting as you press “Ship.”

We hope you loved our weblog about Arduino-based CNC pen plotter. It is an effective way of having the ability to add your individual private aptitude to your venture. On this weblog, we hope we had been capable of provide the info you have to begin your initiatives.



Please enter your comment!
Please enter your name here

Most Popular

Recent Comments