top of page
closeup-electronic-circuit-board-with-cp

EX-MotorShield8874

Overview

EX-MotorShield8874 is a powerful, useful extension board originally designed for model trains. Thanks to its strong DRV8874 H-bridge motor drivers, it can drive various inductive loads like relays, solenoids, DC motors, and even stepper motors, and is perfect for much more then just model trains. It's abilities get even better when you put two shields together. Stacking shields lets you use them in different ways. You can control each of the four H-bridges separately using individual control signals. This makes EX-MotorShield8874 useful for many automated systems, like making a simple CNC machine or resin 3D printer.

EX‑MotorShield8874 is extremely simple to use with all current and future generations of EX‑CommandStation hardware. It also safely powers the Command Station motherboard via the same single barrel jack DC input voltage that powers the track. Leveraging Texas Instruments DRV8874 MOSFET technology, it achieves an impressive peak load capacity of 5 A per channel, essentially eliminating any substantial voltage drop from the input—an advantage over the bipolar L298 used in the Arduino Motor R3 Shield and in most other motor shields.

DIY and Digital Railroad Review

EX-MotorShield8874 isn't solely designed for Arduino main boards; it's also compatible with a range of Arduino UNO header-style development boards. This includes options like the STM32 Nucleo-64 and Nucleo-128 development boards, as well as the ESPduino and Digilent FPGA development boards.

It can also find a place in home automation setups, working with an Arduino as the main controller and different sensors. Imagine a light sensor – the motor shield could be used to move window blinds using DC or stepper motors, or control lights in a room by switching them on or off using relays. This adds even more versatility to its capabilities.

Finally, the I2C pin header lets you connect different add-ons, like LCD displays, sensors, or GPIO expanders.

Features & Specifications

EX-MotorShield8874 maintains pin compatibility with the original Arduino Motor Shield Rev3 while significantly improving electrical performance for handling larger loads and improved usability.

  • Rated for a continuous output current of 5 Amps per channel

  • Hassle-free stacking on the EX-CommandStation, no need to cut traces or adjust pins

  • Dual outputs are available for Main and Programming Track, or dual Main tracks

  • A single power supply input to power the shield, Arduino, and motor output track

  • Compatibility with both 5 Vdc and 3.3 Vdc microcontrollers

  • Minimal voltage drop even under high currents

  • Equipped with an I2C header and STEMMA Qwiic connector for accessory integration (displays, port expanders, servo boards, etc.)

  • Integrated reverse polarity protection

  • Enhanced safety with fault detection and overcurrent reporting

  • Flexible alternative power in and out solder pads for different connector types

  • Stackable design to support multiple Power Districts

  • Provision for optional OLED header, enabling direct display connection to the shield.

EX-Motorshield8874 is based on two DRV8874 H-bridge motor drivers with integrated current sensing from Texas Instruments (TI). This design results in two distinct and separate channels, each comprising a full-bridge configuration.

Powering of the Arduino motherboard is possible due to the onboard DC/DC buck converter, supporting a wide input supply range from 9 Vdc to 25 Vdc. The reverse polarity protection prevents damage to the circuit and its components in case the power supply is accidentally connected with reversed polarity.

01_edited.png

Comparisons

Title
Motor Controller IC
Power Connector
Operating Voltage
Max Current
Current Sense
High Voltage - Overcurrent Protection
DCC-EX Track Manager compatible
Stackable
I2C Expension Headers
Alternative motor control pin assignment
Pololu Dual MC33926 Motor Driver
MC33926
screw terminal
5 Vdc - 28 Vdc
3A per channel
Yes
Yes
No
Unknown
None
Yes - Requires cutting traces and soldering
Cytron 10A DC Motor Driver Rev2
NMOS H-Bridge
screw terminal
7 Vdc - 30 Vdc
10A single channel
No
No
Unknown
Yes
None
Yes - Pin Header
DFRobot 2x2A DC Motor Shield
L298NH
screw terminal
5 Vdc - 12 Vdc
2A per channel
Yes
No
Yes
No
TinkerKit
No
Arduino Motor Shield Rev3
L298P
screw terminal
5 Vdc - 12 Vdc
2A per channel
Yes
No
Yes
No
TinkerKit
No
EX-MotorShield8874
DRV8874
DC barrel jack
9 Vdc - 25 Vdc
5A per channel
Yes
Yes
Yes
Yes
Stemma QT/Duopont/Dual-Row 8-pins
Yes - PCB Jumpers

Open Source

You can find our open source files and documentation in our public Github repository, like board schematics, design files (We have the shield produced with thicker than default copper layers to aid in sinking the heat generated by the DRV8874 at high loads, and a stepper motor demo. This demo features an alternative use of the motor shield and includes source code and a short demo video with a NUCLEO-F446RE development board.

bottom of page