So, the X axis stepper driver on my 3D printer’s Anet v1.0 mainboard failed (it was my fault… long story; don’t blame the chinese), and was no longer able to drive the stepper motor. I had a spare RAMPS 1.4 board from the second DIY printer I’m building, but I figured I should try to actually FIX the Anet board first.
The idea was simple – trace the signals needed to run external RepRap Stepper Driver, and bypass the failed onboard driver.
There are only 3 signals that drive each driver – X_DIR – sets the direction in which the stepper rotates, X_STEP – sending a pulse here makes the motor execute a “step”, and ENABLE – enables/disables the stepper.
Apart from these, I also needed power – VCC (5V – power for the logic), VMOT (12V – power for the motor) and GND.
I was able to trace the first 3 to the following points on the mainboard:
- X_DIR – test point T13 (pin 24 on the atmega1284p)
- X_STEP – test point T13 (pin16)
- ENABLE – test point T19 (pin15)
Getting the rest was easy – I got the 5V from the output pin of the 5V regulator, and 12V from the input pin. And GND is shown on the picture below.
The ENABLE signal wire can be soldered on alternative location – on one of the pins of R8 (shown on the picture below). It’s better there, because the test points are too small and you can ruin them easily. Unfortunately X_DIR and X_STEP use direct connection between the atmega and the driver so there are no alternative points where you can solder the wires. You have to be VERY careful when soldering. On the other hand… your mainboard is already useless anyway 🙂
Here is a picture of the connections:
Connect these wires to the respective pins of the RepRap Stepper Driver. It will be easiest if you use 3 Female-Female dupont jumper wires. Cut them in the middle, and you will have 6 wires which you can solder on the mainboard and connect to the Stepper Driver.
And one last thing – you must connect all three MS1, MS2 and MS3 pins on the RepRap Stepper Driver together, and connect them to the VCC pin (otherwise the driver will work in wrong step mode).
Note: the driver has two GND pins. It does not matter which one you use.
At the end, plug the X motor connector directly into the driver’s 1A, 1B, 2A, 2B pins.
Inspect your connections again, and if everything is OK, turn on the printer, and try to move the X axis from the printer’s Position menu. You might have to reverse the motor connector if the axis is moving in the wrong direction (do it while the printer is TURNED OFF!).
Here’s how the result looks:
I used some hot glue to fix the wires in place because the test points are very small, and it’s very easy to ruin the connection (and the PCB pads) if you unintentionally pull the wires.
It’s not the prettiest thing, but it works, and it saved me from buying a new mainboard, so I call that hack a big WIN 🙂
The same method can be used for the other stepper drivers – I just have to trace their signals to the respective test points (TODO…).
So… if you happen to fix your mainboard using this guide, buy me a beer and click DONATE , because I just saved you $20-$30 and a month without 3D printing while you wait for the boat from China to arrive 😉