Considering controlling two DRV8825s with same Arduino pins


I have two steppers that need to run simultaneously in opposite directions. They are tied to opposite ends of a shaft; the purpose is to effectively double my torque without moving to higher-power steppers.

If I’m reading the DRV8825 data sheet correctly, the logic inputs sink a max 100µA.

I have two choices: either run the steppers using two distinct STEP control pins, or tie both of the STEP control pins to a single µC pin. Are there any reasons to not do that? The µC sources plenty of current (if 100µA is correct). I don’t see any reason that it wouldn’t work as intended if I use a single STEP pin controlling both DRV8825s.

To be perfectly clear, there are two steppers. I am not trying to run the DRV8825s in parallel for purposes of boosting power to a single stepper.

I understand that the H-bridges may be ever so slightly out of sync, owing to fab differences in the components because of their tolerances, but that would be the case whether I’m using one pin per STEP input or just one common pin for both STEP inputs. One of the DRV8825s will, obviously, be configured to run in “reverse.” For what it’s worth, the STEP pulse train is a 50% duty cycle 8,000µS train (4,000µS on, 4,000µS off)

Any thoughts?


I don’t see any specific problems controlling two separate stepper drivers (connected to two separate stepper motors) from the same microcontroller output pins. However, in general, syncing electronics like this can be problematic, so you might still run into issues you will need to work through. For instance, I think you will need to be careful about the alignment of the stepper motors so that they are not fighting each other since they are mechanically linked. You could try powering and enabling the stepper drivers before coupling their rotation to the shaft rotation.


I’m not sure how they’d be fighting each other. They’re running in full step mode and trying to spin the shaft in the same direction.

If they’re controlled from different pins, there’s a timing issue with firing the DRV8825s simultaneously; using the same pin eliminates that issue.

I think you mean to enable the DRV8825s when assembling so that the stators lock to the coils, then tighten them down? So that they’re sync’d at build time? That was the plan. If they’re sync’d at build time, they should always be in lock step, right? Aside from minuscule electronic component fab issues, of course.

I’m not aware of any 400-step pawl-and-ratchet assemblies, which would be preferred so that there could be minor slip if one end is “ahead” of the other. (I’m running 1.8° steppers.) But I think that that would be overkill.

Alternatively, I could use a clutch, but, again, overkill?

Thoughts are welcome.

Yes, this is what I was suggesting.