

The DRV8833 is a dual H-bridge motor driver designed to control the direction and speed of DC motors and stepper motors. It is a compact and efficient solution for driving motors in robotics, automation, and other motor control applications. With a supply voltage range of 2.7V to 10.8V and the ability to deliver up to 1.5A per channel, the DRV8833 is ideal for low- to medium-power motor control tasks. Its small size and versatile features make it a popular choice for hobbyists and professionals alike.








The DRV8833 has 16 pins, with the following configuration:
| Pin Number | Pin Name | Description |
|---|---|---|
| 1 | AOUT1 | Output 1 for H-bridge A |
| 2 | AOUT2 | Output 2 for H-bridge A |
| 3 | VM | Motor power supply (2.7V to 10.8V) |
| 4 | GND | Ground connection |
| 5 | BOUT1 | Output 1 for H-bridge B |
| 6 | BOUT2 | Output 2 for H-bridge B |
| 7 | VCC | Logic power supply (1.8V to 7V) |
| 8 | ENABLEB | Enable pin for H-bridge B (active high) |
| 9 | PHASEB | Controls the direction of H-bridge B |
| 10 | ENABLEA | Enable pin for H-bridge A (active high) |
| 11 | PHASEA | Controls the direction of H-bridge A |
| 12 | NC | No connection |
| 13 | NC | No connection |
| 14 | NC | No connection |
| 15 | NC | No connection |
| 16 | NC | No connection |
Power Supply:
Motor Connections:
Control Signals:
Decoupling Capacitors:
Below is an example of how to control a DC motor using the DRV8833 and an Arduino UNO.
// DRV8833 Motor Driver Example
// Controls the speed and direction of a DC motor using Arduino
#define ENABLEA 9 // PWM pin for motor speed control
#define PHASEA 8 // Digital pin for motor direction control
void setup() {
pinMode(ENABLEA, OUTPUT); // Set ENABLEA as output
pinMode(PHASEA, OUTPUT); // Set PHASEA as output
}
void loop() {
// Rotate motor forward at 50% speed
digitalWrite(PHASEA, HIGH); // Set direction forward
analogWrite(ENABLEA, 128); // Set speed (128/255 = 50%)
delay(2000); // Run for 2 seconds
// Rotate motor backward at 75% speed
digitalWrite(PHASEA, LOW); // Set direction backward
analogWrite(ENABLEA, 192); // Set speed (192/255 = 75%)
delay(2000); // Run for 2 seconds
// Stop the motor
analogWrite(ENABLEA, 0); // Set speed to 0
delay(2000); // Wait for 2 seconds
}
Motor Not Spinning:
Motor Spins in the Wrong Direction:
Motor Speed is Inconsistent:
Overheating:
No Output from the Driver:
Q: Can the DRV8833 drive stepper motors?
A: Yes, the DRV8833 can drive stepper motors by controlling both H-bridges. You will need to generate the appropriate step and direction signals.
Q: What is the maximum PWM frequency supported?
A: The DRV8833 supports PWM frequencies up to 250 kHz.
Q: Can I use the DRV8833 with a 3.3V microcontroller?
A: Yes, the DRV8833 is compatible with logic levels as low as 1.8V, making it suitable for 3.3V microcontrollers.
Q: Does the DRV8833 have built-in protection features?
A: Yes, it includes thermal shutdown, overcurrent protection, and undervoltage lockout for safe operation.