[eShapeOko] First motor steps!

In the last days, I spent all my free time on my CNC project, on the road to a 3D printer. I realized that the eShapeOko would not have enough room on the Z-axis to allow me to print big 3D objects, so I will continue on this project with the CNC goal in mind, and then, I will consider the 3D printer I build out of it as a “repstrap” (bootstrap printer) to build a full reprap later. Here is a list of items that I already marked as “done”. I still have a Project sheet to track my actions, and all goes as planned. Here is the planning as of August 25.

  • I received the stepper motors.
  • I ordered and received the stepper drivers from Pololu (model DRV8825).
  • I got back the Arduino Nano i had lent to @hugokernel .
  • I managed to compile the grbl firmware for the atmega328, then to upload it in an arduino (that was easy, but I had never done that before. Thanks to @Skywodd and others on Twitter for their precious advice!
  • I completed the wiring for the driver board.

And to complete this electronics step, I tested the board on Sunday afternoon. The board works as expected, no glitch, no wiring error. And the motors are now spinning in response to g-code commands! Here is a small action video of the board:

Not very sexy, but you can see the putty interface to grbl via serial port, the motors accelerate, spin, and slow down. I wired everything on a veroboard (pads and holes), so the wiring process was very fluid, with plenty of space to lay out copper tape for power buses and wirewrap wire for logic signals. I still have room for the spindle controller (just a big MOSFET I think).

Well, that means I’m ready to control a 3-axis CNC! I still had time this afternoon, so I added a second hand Lantronix serial-to-network bridge, so that I can connect to the board via Ethernet. This will be very useful given the position of my CNC in my lab. This also means that any computer in the house will be able to command the CNC, even without a short USB link.

eshapeoko controller recto
Controller board, comoponent size.
eshapeoko controller wiring side
Controller board, solder side. I used copper tape and AWG30 wirewrap wire.

One last important thing: the Pololu modules HAVE TO be tuned for the correct current. When they ship, the variable resistor is in its default position with a taper at 50%, which means a 1.7 Volt reference voltage, which translates into a 3.5 A chopping current. This is too high for most motors, and without the 2A fuses on each one, I would not have known it, with a risk to burn both motors and drivers.