|A4990 dual motor driver carrier, bottom view with dimensions.|
Allegro’s A4990 is a dual H-bridge motor driver IC that can be used for bidirectional control of two brushed DC motors at 6 V to 32 V. It can supply up to 0.7 A continuously to each motor channel, and the current control feature of the A4990 limits the peak motor current to about 0.9 A per channel with the onboard sense resistors, making this a good choice for small, low-current motors that run on relatively high voltages. Since this board is a carrier for the A4990, Pololu recommend careful reading of the A4990 datasheet (301k pdf). The board ships populated with all of its SMD components, including the A4990 and an additional FET for reverse battery protection.
For a single-channel driver with a DIR/PWM interface and a similar operating voltage range, please consider Pololu's DRV8801 carrier. For lower-voltage alternatives to the A4990, consider Pololu's DRV8833 and DRV8835 dual motor driver carriers.
Pololu also carry an A4990 dual motor driver Arduino shield that makes it easy to incorporate this great driver into an Arduino project.
- Dual-H-bridge motor driver: can drive two DC motors or one bipolar stepper motor
- Operating voltage: 6 V to 32 V1
- Output current: 0.7 A continuous per motor
- Current control limits peak current to 0.9 A per motor
- Inputs are 3V- and 5V-compatible
- Reverse-voltage protection circuit
- Can survive input voltages up to 40 V2
- Under-voltage and over-voltage protection
- Over-temperature protection
- Short-to-supply, short-to-ground, and shorted-load protection on the motor outputs
1 Over-voltage protection typically kicks in at 34 V, but it can trigger at voltages as low as 32 V.
2 While the A4990 can tolerate input voltages as high as 50 V, the reverse-voltage protection MOSFET is only rated for 40 V.
Using the motor driver
|Minimal wiring diagram for connecting a microcontroller to an A4990 dual motor driver carrier.|
In a typical application, power connections are made on one side of the board and control connections are made on the other. The INH (inhibit) pin is pulled low internally, disabling the A4990 by default, and must be driven high (2.0–5.5 V) in order to enable the driver.
The OUT1 and OUT2 pins form one motor channel while the OUT3 and OUT4 pins form the other. The state of each output is controlled by a corresponding input (IN1 through IN4); note that IN2 and IN4 are inverted inputs. All four INx pins are pulled to their inactive states by default. See the truth tables in the A4990 datasheet for more information on how the inputs affect the driver outputs.
The EF1 and EF2 pins are open-drain outputs that are driven low by the chip to indicate active faults (the datasheet describes what each combination of EF1 and EF2 means). Otherwise, these pins remain in a floating state, so you will need to connect external pull-up resistors (or use microcontroller inputs with their built-in pull-ups enabled) if you want to monitor fault conditions on the driver.
|VIN||Reverse-protected 6 V to 32 V motor power supply connection.|
|VBB||This pin gives access to the motor power supply after the reverse-voltage protection MOSFET (see the board schematic below). It can be used to supply reverse-protected power to other components in the system. It is generally intended as an output, but it can also be used to supply board power.|
|GND||Ground connection points for the motor and logic power supplies.|
|OUT1||Motor A output +.|
|OUT2||Motor A output −.|
|OUT3||Motor B output +.|
|OUT4||Motor B output −.|
|IN1||LOW||Control input for OUT1. PWM can be applied to this pin.|
|IN2||HIGH||Inverted control input for OUT2. PWM can be applied to this pin.|
|IN3||LOW||Control input for OUT3. PWM can be applied to this pin.|
|IN4||HIGH||Inverted control input for OUT4. PWM can be applied to this pin.|
|INH||LOW||Logic input that puts the A4990 into a low-power sleep mode when low.|
|EF1||floating||Error flag output 1: driven low to indicate active fault status; floating otherwise.|
|EF2||floating||Error flag output 2: driven low to indicate active fault status; floating otherwise.|
The A4990 can actively limit the current through the motors by using a fixed-frequency PWM current regulation (current chopping). This carrier board connects 0.075 Ω resistors to the current sense pins, which sets the current limit to a nominal 1 A per channel. In Pololu's tests, the board actually limited the motor current to slightly above 0.9 A.
Real-world power dissipation considerations
Even though the driver limits the motor current to about 0.9 A per channel, the chip by itself will overheat at lower currents. For example, in Pololu's tests at room temperature with no forced air flow, the chip was able to deliver 0.9 A per channel for approximately 20 s before the chip’s thermal protection kicked in. A continuous current of 0.7 A 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. Pololu's tests were conducted at 100% duty cycle; PWMing the inputs will introduce additional heating proportional to the frequency (unless the A4990 is already PWMing the outputs to limit the current).
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.
Two 1×8-pin breakaway 0.1″ male headers are included with the A4990 motor driver carrier, which can be soldered in to use the driver with perfboards, breadboards, or 0.1″ female connectors. (The headers might ship as a single 1×16 piece that can be broken in half.) When used with these header pins, the board can be oriented with the parts visible, as shown in the right picture above, or with the silkscreen visible, by soldering the headers in from the opposite side. You can also solder your motor leads and other connections directly to the board.
|A4990 Dual Motor Driver Carrier schematic diagram.|
This schematic is also available as a downloadable pdf (118k pdf).
Documentation and Resources:
We deliver Australia-wide with these options:
- $3 for Small Items (4-6 days, not tracked, only available on selected small items)
- $6.95 for Standard Post (2-4 days, tracked)
- $8.95 for Express Post (1-2 days, tracked)
- Pickup - Free! Only available to customers who live in the Newcastle region (only after we email you to notify your order is ready)
International Orders - the following rates are for New Zealand and will vary for other countries:
- $11.49 for Pack and Track (3+ days, tracked)
- $16.50 for Express International (2-5 days, tracked)
If you order lots of gear, the postage amount might increment based on the weight of your order.
Our physical address:
Unit 18, 132 Garden Grove Parade
Please checkout our customer service page if you have other frequently asked questions such as "do we do purchase orders" (yes!) or "are prices GST inclusive" (yes they are!). We're here to help - get in touch with us to talk shop.