CNC Controller PCB, rev. 1

CNC Controller PCB, rev. 1

I had been looking for ready made do-it-all CNC controllers online for quite some time, but it seemed like the most affordable ones had some issues with optically isolating the computer parallel port and the motor controller part, plus some other issues.

Most hobby CNC controllers are connected to your computer via the computers parallel port. One of the most used controller software packages will be running on the computer (Mach 3 being the most used), sending streams of pulses in real time to the controller board. A do-it-all controller board will handle both the pulse streams and convert it to usable motor stepper motor control sequences, often with the option to do full steps, half-steps, 1/4 steps and so on, and also actually implement the motor control circuitry on the same board.

The optical isolation is important for two reasons;
one is protecting the computers parallel port in case of voltage spikes or high currents on it’s signal lines. The 2nd reason is to reduce noise on signal lines, and to remove the high voltage lines and ground plane from the incoming signal traces. Optical isolators come in IC packages and consists of a combined LED and a photo transistor. When you drive the LED current from a different power source than the photo transistor power source, they are totally isolated from each other. But the parallel port does not provide you with a +5v line, and if it did, it would not be able to source enough current for the pull-up resistors the signal line side of the controller. If I’d use the +5v logic source from the motor controller, you would no longer have isolated the two sides of the controller board. This is why I decided to put on a mini-USB connector for a maximum of 500mA current to the pull-up resistor, with an already regulated 5 volts. That should be more than sufficient.

The brain is an Atmega8 microcontroller, which handles both the inputs from the parallel port, and the outputs to the L298 dual H-bridge motor controllers.

The PCB is double sided, and designed within the 10x10cm limit for REAL cheap manufacturing at either seeedstudio.com or iteadstudio.com. I paid around $15 to have mine manufactured, and that got me 10 copies! Unfortunately, I had an issue of two traces which were shorted to the ground plane on two separate PCB copies, but they are easily fixed with a sharp bladed knife or scalpel. Still, great value for money.

When I designed the PCB based on my schematic, some connections were changed to make routing easier, but this only affects some software changes on the Atmega8.

PCB partially soldered

Design files screenshots

This article has 17 comments

  1. pcb eagle desain end soure code pleace…to lekgun@ymail.com .thanks for you

  2. source code pleace

  3. pcb eagle desain end soure code pleace…to adicandra46@gmail.com .thanks for you

  4. pcb eagle desain end soure code pleace…to adicandra46@gmail.com .thanks for you

  5. Please send the PCB eagle and source code with parts list at hmsahir4u@yahoo.com.
    Thanks

  6. Hello friend, pls. can you send source code for atmega8?
    serviselektroauto@yahoo.com

  7. Hi friend,
    First thank you very much for this bipolar controller.
    Pls. can you send to me source code for Atmega8?
    This is my e-mail: serviselektroauto@yahoo.com
    Thank You.

  8. hi pls. can you send source code for atmega serviselektroauto@yahoo.com
    Thank You.

  9. Hex code pleace…to coskunmuti@gmail.com. Thanks for all.

  10. Please, send the code for ATmega8 to as_studio2012@yahoo.com

  11. Can you send to me source code for Atmega8 with parts list end  PCB eagle?
    This is my e-mail: vassja-d@yandex.ua
    Thank You.

  12. Hi,
    Perfect and simply bipolar controller. Please, can you send to me source code for Atmega8 to my e-mail: happpy(at)atlas.cz? Thanks a lot.

  13. Hola Es Excelente tu aporte !. Felicidades.
    Puedes enviarme los esquemas, lista de componentes y el codigo para atmega ?.

  14. Hi friend,
    First thank you very much for this bipolar controller.
    Pls. can you send to me source code for Atmega8?
    This is my e-mail: amirkermani93@yahoo.com
    Thank You.

  15. Thank you for sharing. I would like to give this project  as an assey to my undergrad students. Could you send me Eagle PCB design files, source code and part list. ramses061@hotmail.com thank you again.

Leave a Reply