CNC 3 Axis Stepper Motor Driver \ Controller
Design, development and construction of an electronic controller for a CNC machine. The controller controls up to 3 stepper motors (up to 3 axes), has home and limit switches, and is optically isolated from the computer.
Computer Aided Design (CAD) Model of the Circuit

Printed Circuit Board (PCB)
Technical Specifications
- Supports 3 axis in step direction control
- Supports unipolar stepper motors
- Can work in either full-steps or half-steps for higher precision
- Connects to the computer using the parallel port (LPT)
- Completeoptical isolation from the computer – protects the computer from possible faults.
- Home and limit switches support for the 3 axes.
- Header access to every free LPT input\output (can be used to enhance the CNC control by adding vacuum cleaner, lubricant
- Absolute maximal electrical specifications: 60 volts, 30 ampere, 90 watts (with proper heat-sink).
- Seperate control for each motor!
- Maximum of 35,000 steps per second for each axis
- Heat-sink ready
- Actively ventilated package (fan)
- Firmware upgradable
- Supports 5,6,8 wired motors
- Supported by Linux CNC (EMC2), Mach3, Kcam
CNC Controller Case
- 3 “one way” connectors for easily connecting the stepper motors while preventing mistakes
- DB-9 (“serial”) connector for limit-switches input.
- Emergency Stop Button (the red button in the corner) that completely shuts down the electricity. The button is lit (using a bright led) while the machine is ON.
- Well ventilated case using a 60mm brushless fan.
- DC (12v) connector
- General bench-top power supply connectors for the motor’s electricity.
An example configuration in Linux CNC (EMC2)









