Pololu Dual VNH5019 Motor Driver Shield for Arduino

Get your Arduino moving! This shield makes it easy to control two high-power DC motors with your Arduino or Arduino-compatible board. Its dual robust VNH5019 motor drivers operate from 5.5 to 24 V and can deliver a continuous 12 A (30 A peak) per motor, or a continuous 24 A (60 A peak) to a single motor connected to both channels. These great drivers also offer current-sense feedback and accept ultrasonic PWM frequencies for quieter operation. The Arduino pin mappings can all be customized if the defaults are not convenient, and the motor driver control lines are broken out along the left side of the shield for general-purpose use without an Arduino.


Pololu dual VNH5019 motor driver shield for Arduino.

This motor driver shield and its corresponding Arduino library make it easy to control two bidirectional, high-power, brushed DC motors with an Arduino or Arduino clone. The board features a pair of robust VNH5019 motor drivers from ST, which operate from 5.5 to 24 V and can deliver a continuous 12 A (30 A peak) per channel, and incorporates most of the components of the typical application diagram on page 14 of the VNH5019 datasheet (629k pdf), including pull-up and protection resistors and FETs for reverse battery protection. It ships fully populated with its SMD components, including the two VNH5019 ICs, as shown in the picture to the right; stackable Arduino headers and terminal blocks for connecting motors and motor power are included but are not soldered in (see the Included Hardware section below).

This versatile motor driver is intended for a wide range of users, from beginners who just want a plug-and-play motor control solution for their Arduinos (and are okay with a little soldering) to experts who want to directly interface with ST’s great motor driver ICs. The Arduino pin mappings can all be customized if the defaults are not convenient, and the VNH5019 control lines are broken out along the left side of the board for general-purpose use without an Arduino (see the right connection diagram below). This versatility, along with an option to power the Arduino directly from the shield, sets this board apart from similar competing motor shields.
Dual VNH5019 motor driver shield with an Arduino (shield and Arduino powered separately).
Dual VNH5019 motor driver shield connected to a microcontroller (gray connections are optional).

For a lower-power, lower-cost alternative to this shield, please consider the Pololu dual MC33926 motor driver shield, which has a very similar design and can deliver a continuous 3 A per channel.

Pololu dual VNH5019 motor driver shield, assembled and connected to an Arduino Uno.
Pololu dual VNH5019 motor driver shield for Arduino, bottom view with board dimensions.

    Wide operating voltage range: 5.5 – 24 V1
    High output current: up to 12 A continuous (30 maximum) per motor
    Motor outputs can be combined to deliver up to 24 A continuous (60 A maximum) to a single motor
    Inputs compatible with both 5V and 3.3V systems (logic high threshold is 2.1 V)
    PWM operation up to 20 kHz, which is ultrasonic and allows for quieter motor operation
    Current sense voltage output proportional to motor current (approx. 140 mV/A)
    Motor indicator LEDs show what the outputs are doing even when no motor is connected
    Can be used with an Arduino or Arduino clone (through shield headers) or other microcontroller boards (through 0.1″ header along the left side)
    When used as a shield, the motor power supply can optionally be used to power the Arduino base as well
    Arduino pin mappings can be customized if the default mappings are not convenient
    Arduino library makes it easy to get started using this board as a motor driver shield
    Detailed user’s guide
    Reverse-voltage protection
    Robust drivers:
        Can survive input voltages up to 41 V
        Undervoltage and overvoltage shutdown
        High-side and low-side thermal shutdown
        Short-to-ground and short-to-Vcc protection

1 While the overvoltage protection typically kicks in at 27 V, it can trigger at voltages as low as 24 V, so we do not recommend using this motor driver with 24 V batteries, which significantly exceed 24 V when fully charged. If the shield is configured to power an Arduino or Arduino clone, the supply voltage must conform to that Arduino’s input voltage requirements.
Included Hardware

Pololu dual VNH5019 motor driver shield for Arduino with included hardware.

This motor driver board ships with all of the surface-mount parts populated. However, soldering is required for assembly of the included through-hole parts. The following through-hole parts are included:

    two extended/stackable 1×8 female headers (for Arduino shields)
    two extended/stackable 1×6 female headers (for Arduino shields)
    three 2-pin 5mm terminal blocks (for board power and motor outputs)
    40-pin 0.1″ straight breakaway male header (may ship in several pieces, such as two 20-pin strips)

A 0.1″ shorting block (for optionally supplying shield power to Arduino) is also included.

You can solder the terminal blocks to the six large through-holes to make your motor and motor power connections, or you can break off a 12×1 section of the 0.1″ header strip and solder it into the smaller through-holes that border these larger holes. Note, however, that the terminal blocks are only rated for 16 A, and each header pin pair is only rated for a combined 6 A, so for higher-power applications, thick wires should be soldered directly to the board.

When not using this board as an Arduino shield, you can solder the 0.1″ headers to the logic connections along the left side of the board to enable use with custom cables or solderless breadboards, or you can solder wires directly to the board for more compact installations. Note that motor and motor power connections should not be made through a breadboard.

The motor driver includes three 47 uF electrolytic power capacitors, and there is room to add additional capacitors (e.g. to compensate for long power wires or increase stability of the power supply). Additional power capacitors are usually not necessary, and no additional capacitors are included with this motor driver.

The two mounting holes are intended for use with #4 screws (not included). They have a horizontal separation of 0.30″ and a vertical separation of 1.70″.

An Arduino is not included.




Size:     2.56″ × 2.02″ × 0.38″1
Weight:     18 g1

General specifications

Motor driver:     VNH5019
Motor channels:     2
Minimum operating voltage:     5.5 V
Maximum operating voltage:     24 V2
Continuous output current per channel:     12 A
Peak output current per channel:     30 A
Current sense:     0.14 V/A
Maximum PWM frequency:     20 kHz
Reverse voltage protection?:     Y


1    Without included hardware.
2    Not recommended for use with 24V batteries.

Motor Controllers: