DRV8835 Dual Motor Driver Shield for Arduino
This small shield is an easy, economical way to control two small brushed DC motors with an Arduino or Arduino-compatible board. Its integrated DRV8835 dual motor driver operates from 2 V to 11 V, making it a great control option for low-voltage motors. The shield can deliver a continuous 1.2 A (1.5 A peak) per motor, or a continuous 2.4 A (3 A peak) to a single motor when configured with both channels connected in parallel.
This motor driver shield and its corresponding Arduino library make it easy to control a pair of bidirectional, brushed DC motors with an Arduino or Arduino clone. The board features Texas Instruments' DRV8835 dual H-bridge motor driver IC, which operates from 2 V to 11 V and is particularly well suited for driving small, low-voltage motors. The shield can deliver a continuous 1.2 A per channel and tolerate peak currents up to 1.5 A per channel for a few seconds, and the channels can be optionally configured to run in parallel to deliver twice the current to a single motor. The shield ships fully populated with its SMD components, including the DRV8835 driver and a FET for reverse battery protection; header pins for interfacing with an Arduino and terminal blocks for connecting motors and power are included but are not soldered in.
The shield uses digital pins 7, 8, 9, and 10 for its control lines, though the control pin mappings can be customized if the defaults are not convenient. It should be compatible with any board that has a standard Arduino pin arrangement and the ability to generate PWM signals on pins 9 and 10, such as an Arduino Uno, Leonardo, Due, or Mega 2560.
- Dual-H-bridge motor driver: can drive two DC motors or one bipolar stepper motor
- Motor supply voltage: 2 V to 11 V
- Logic supply voltage 2 V to 7 V
- Output current: 1.2 A continuous (1.5 A peak) per motor
- Motor outputs can be paralleled to deliver 2.4 A continuous (3 A peak) to a single motor
- PWM operation up to 250 kHz (ultrasonic frequencies allow for quieter motor operation)
- Two possible interface modes: PHASE/ENABLE (default – one pin for direction, another for speed) or IN/IN (outputs mostly mirror inputs)
- Shield can optionally power the Arduino base directly when motor supply voltage is suitable
- Arduino library makes it easy to get started using this board as a motor driver shield
- Arduino pin mappings can be customized if the default mappings are not convenient
- Reverse-voltage protection on motor power supply
- Under-voltage lockout and protection against over-current and over-temperature
Details on how to assemble and use the shield can be found on the manufacturers website.
Real-world power dissipation considerations
The DRV8835 datasheet recommends a maximum continuous current of 1.5 A per motor channel. However, the chip by itself will overheat at lower currents. For example, in our tests at room temperature with no forced air flow, the chip was able to deliver 1.5 A per channel for approximately 15 seconds before the chip's thermal protection kicked in and disabled the motor outputs, while a continuous current of 1.2A per channel was sustainable for many minutes without triggering a thermal shutdown. The actual current you can deliver will depend on how well you can keep the motor driver cool. The carrier's printed circuit board is designed to draw heat out of the motor driver chip, but performance can be improved by adding a heat sink. Our tests were conducted at 100% duty cycle; PWMing the motor will introduce additional heating proportional to the frequency.
This product can get hot enough to burn you long before the chip overheats. Take care when handling this product and other components connected to it.