Driver for high current Stepper motor


I am currently trying to design a controller for two high power stepper motors, ideally using an Arduino and the stepper motor library.

However, for the torque at the speeds I require, the stepper motors are rated at over 3A per coil (bipolar, NEMA 34). Ideally, I believe I require 2 high current H-bridges per motor to drive from the micro controller, preferably rated to 4.5 - 5A.

However, the highest rating H-bridges I’ve been able to find so far are only rated to 2.2A (peak).

Is it possible to get cheap H-brigdes with the required output with 3.3 - 5V input logic?

If not, is it conceivable to use two or even three lower rated H-bridges in parallel? Something like, the DRV8833 Dual Motor Driver Carrier, to reduce the current required through each H-bridge? Even three of these per motor is cheaper than a complete CNC Stepper Motor driver…

Similarly, is it also possible to get current level shifters?

An Opulent Banjo Premiere


You might be able to use our MC33926 Arduino shield to drive your stepper motor. You can find sample code for using the shield as a stepper motor driver in this post.

I do not recommend using multiple H-bridges in parallel. In general, it is tricky to parallel things, and if the timing for turning off and on the MOSFETs is not precise, you might unintentionally have shoot-through that could damage the driver. Also, it is not clear to me what you mean by “current level shifters”.

- Jeremy

Thanks Jeremy.

I had a look at that shield; I’ve used it’s big brother before, the one that is rated to 12A, and if it’s anything like that, it takes up way too many pins on the Arduino to be useful. I wish to use the micro controller to run two steppers simultaneously, which means I need four H-bridges, and I don’t think I can get those boards to stack… I also need to be able to run microswitches into the Arduino to test for limits.

What I meant by Current Level Shifters was whether it was possible to use the lower current output of a cheaper H-bridge and run it to a device that would switch for higher currents. Chatting with a salesperson at Jaycar, it was suggested I could run the output of a cheap H-bridge into the gates of a series of MOSFETs to allow the motors to pull much higher currents than the H-bridge might be rated for.

However, considering I am using bipolar steppers, I figured that this would require 8 MOSFETs, one for each positive and negative currents per output. However, 8 MOSFETs will build 2 H-bridges anyway!

I haven’t had a chance to test the design yet (I am relatively new at this), but would something like the following work? (drawn in Yenka, and clearly showing, for some reason, that it doesn’t…) Circuit designed with NEMA 34 stepper such as … 49277.html in mind.

Note 5.6A per coil!

Model needs a bit of work, as I can’t seem to get it to provide anywhere close to 3A let alone 5.6…

Yenka also doesn’t allow me to specify the Source and Drain pins of the MOSFETs, so I assume that the N-channels have Drain towards the 3V rail, and the P-channels have Source.

On the other hand, could a normal level shifter (for voltages) isolate motor coil currents in both directions from the H-bridge? If so, could a cheap H-bridge run into a level shifter to provide the currents required?

Cheers again;
Opulent Banjo

The MC33926 shield can be stacked by remapping some of the pins. You can read more this in the “Remapping the Arduino Connections” section of the dual MC33926 motor driver shield user’s guide.

I am not aware of any current level shifters like the one you describe and not sure how well it would work. Also, I do not know where you might find something like that.

You might be able to make your own H-bridge using MOSFETs and your Arduino. I noticed that you do not have the P-channel and N-channel MOSFETs oriented in the same way on both sides of the H-bridge. I am not sure if that is by design or if it is a limitation of the software you used to make the diagram. Due to the gate to source voltage requirements for turning on the two types of MOSFETs, H-bridges typically use P-channel MOSFETs for the high voltage side and N-channel for the low voltage side.

- Jeremy

Hey this sounds like a great project!

I have been working on a Kickstarter project that i think will help with your project. We have developed a speed controller designed to handle high levels of current, up to 43 Amps of current. The controller is an Arduino Shield that can give you immediate control over 2 DC motors. let me know if this helps you.

here is the link to the project. … controller

Hope this helps