how to use 2 motor shield r3, to control 2 stepper motors

Hi everybody,
I've just subscribed, and I hope I'm in the right section of the forum.

I have 2 arduino motor shield r3 (, as I need to control 2 stepper motors.

Is it possible to stack them? If it is how do I communicate to one or to the other one?

I need my setup to be as compact as possible, as it has to fit inside a laser box.
(I need to move 2 polarizers, and my university allowed me to buy these things only from their official suppliers (RS) and they don't have the adafruit motor shield v2, that would have been a much better option I think).

Thank you very much for your help,


  1. Bad news:
    your motorshield is using hardware fixed pins, so if you are stacking them together the two shields will have the same dir/step etc. pins in common - means: you cannot drive the two steppers separated from each other.

  2. Good news:
    have a look at this link.
    One recommendation is to mechanically separate the driving pins, the other is to use a kind of extra pin converter - which will add some extra height …

Maybe the first recommendation works best for you:

One potential way to use two shields would be to solder jumper wires to new pins for the PWM and DIR control pins, then clipping off the original pins (so they don’t contact the previous board’s controls).

Good luck

Even better IMHO would be not to use motor shields at all. Use specialized stepper motor drivers. Have a look at Stepper Motor Basics



I totally agree, but the TO said, he had to use “official supplier” of his company, university or whatever.
So he has already got those “one way” shields.

The vast majority of stepper motors available today are low-impedance motors
designed for current drive, not voltage drive, and are not suitable for anything
but a chopper-driver like the A4988, DRV8825 or commercial stepper drives.

You can drive one high impedance stepper from a dual-motor shield, but they
are harder to find, more expensive, much much slower to turn, basically its not
done any more.

High impedance usually means about 30 to 50 ohms, 0.25 to 0.3A. Expect a
practical maximum speed of 150 to 200rpm

Low impedance is around 1 to 3 ohms, 1.5 to 2.5A (in NEMA17 format), or 0.5 to 2
ohms, 2 to 4A (NEMA23 size). Such motors are intended to be current driven and
with a reasonable supply voltage (24, 36, 48V) you'd get 1000 to 2500rpm in

If you don't want high speed performance one option is a high impedance
unipolar motor (5, 6 or 8 lead, not 4), two of which can be driven with a single
ULN2803 chip.