A Customizable Controller for 3 Axis Modular CNC Machine


  • Jagathesvaran Veeramony Faculty of Manufacturing and Mechatronic Engineering Technology, Universiti Malaysia Pahang, 26600 UMP Pekan, Pahang, Malaysia
  • Muhammed Nafis Osman Zahid Faculty of Manufacturing and Mechatronic Engineering Technology, Universiti Malaysia Pahang, 26600 UMP Pekan, Pahang, Malaysia




CNC Shield, Universal G-Code Sender, Arduino UNO


Numerical control is a useful technology to control a machine that utilize numeric values and codes. The machine comes with various sizes and built-in with its own controller. However, most of the commercial CNCs controllers are expensive and work only on the dedicated machine. With recent advancement of automation, a custom conrtoller for CN machine operation is possibly to be build. In this project, the three axis motion is controlled by Arduino Uno board with Atmega 328p microcontroller. In this case, the Arduino serves as an open source burner that burns the microcontroller using the provided programmes. Stepper motor drivers and the CNC shield accept signals from the Arduino board and transmit power to the stepper motors. Using Inkspace software, the user must first convert any image or text file into G-code before feeding it to the machine. The G-code file is then browsed in Universal G-code Sender software connected to a GRBL shield v0.9i and Arduino board through a laptop serial interface. The Universal G-code Sender programme has a G-code visualizer feature that allows to see the manufacturing processes alongside the simulation.


Sarkar, B., Khan, A.I., Rana, A.K. and Kundu, S., 2020, March. Quantification of the phase fraction in multiphase steel and 2D design using mini CNC plotter. In IOP Conference Series: Materials Science and Engineering (Vol. 810, No. 1, p. 012066). IOP Publishing.

Alan Overby (2010), CNC Machining Handbook, New York, USA, McGraw-Hill Professional Publishing.

V. V Athani (2008), Stepper motors, New Delhi, New Age International (P) Ltd., Publishers.

Hiroshi KUWATA (1985), The Conversational CNC, Journal of the Society of Mechanical Engineers

James Floyd Kelly Patrick Hood-Daniel (2010), Build Your Own CNC Machine, Apress

Pritesh Runwal, 2017, Design and Manufacturing of Mini CNC Plotter Machine, International Journal for Research in Applied Science and Engineering Technology

Tung, T.T., Quynh, N.X. and Minh, T.V., 2021. Development and Implementation of a Mini CNC Milling Machine. Acta Marisiensis. Seria Technologica, 18(2), pp.24-28.

P Hood-Daniel, JF Kelly, 2009, Build Your Own CNC Machine, Springer.

Aravind Mangudi (2003), Design of a stepper motor driver.

Driving a Stepper | All About Stepper Motors | Adafruit Learning System, Learn.adafruit.com, https://learn.adafruit.com/all-about-stepper-motors/driving-a-stepper

Mohammad Kamruzzaman Khan Prince, 2017, Implementation of a Low-cost CNC Plotter Using Spare Parts, International Journal of Engineering Trends and Technology

Arduino GCode Interpreter – RepRapWiki, Reprap.org, http://reprap.org/wiki/Arduino_GCode_Interpreter

2000, Mechatronic stepper motor drive, Assembly Automation.

I. Nae and T. Andrei, 2010, "Designing and building a CNC router using stepper motors", Serial Technical




How to Cite

Veeramony, J., & Osman Zahid, M. N. (2022). A Customizable Controller for 3 Axis Modular CNC Machine. Journal of Modern Manufacturing Systems and Technology, 6(2), 55–62. https://doi.org/10.15282/jmmst.v6i2.8567