Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use DRV8833 Dual Motor Driver Carrier: Examples, Pinouts, and Specs

Image of DRV8833 Dual Motor Driver Carrier
Cirkit Designer LogoDesign with DRV8833 Dual Motor Driver Carrier in Cirkit Designer

Introduction

The DRV8833 Dual Motor Driver Carrier, manufactured by Pololu (Part ID: DRV8833), is a compact and efficient dual H-bridge motor driver. It is designed to control two DC motors or one bipolar stepper motor, making it ideal for robotics, automation, and other motor control applications. This module features built-in protection mechanisms, including overcurrent protection and thermal shutdown, ensuring reliable operation in demanding environments.

Explore Projects Built with DRV8833 Dual Motor Driver Carrier

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
ESP32 and nRF24L01 Wi-Fi Controlled Dual Motor System
Image of SMARS with RF2401- DRV8833: A project utilizing DRV8833 Dual Motor Driver Carrier in a practical application
This circuit is a remote-controlled dual-motor driver system using an ESP32 microcontroller. The ESP32 interfaces with an nRF24L01 wireless module for communication and a DRV8833 motor driver to control two motors, powered by a 2x 18650 battery pack regulated by an AMS1117 voltage regulator.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Nano Motor Controller with DRV8833 Driver
Image of 2相4線式モーター: A project utilizing DRV8833 Dual Motor Driver Carrier in a practical application
This circuit is designed to control a 2-phase 4-wire motor using an Arduino Nano 3.0 and a DRV8833 motor driver. The Arduino Nano provides control signals to the DRV8833, which in turn drives the motor, allowing for precise motor control.
Cirkit Designer LogoOpen Project in Cirkit Designer
ESP32 C3 Controlled Robot with VL6180 Time of Flight Sensor
Image of SRD-1 Rover: A project utilizing DRV8833 Dual Motor Driver Carrier in a practical application
This circuit is designed to control a pair of DC gearmotors using a DRV8833 motor driver, with an ESP32 C3 microcontroller as the control unit. The microcontroller also interfaces with an Adafruit VL6180 Time of Flight sensor for distance measurement. The embedded code on the ESP32 C3 facilitates basic motor control (forward and backward) and reads distance data from the sensor, which is likely used for obstacle detection or range finding in a robotic application.
Cirkit Designer LogoOpen Project in Cirkit Designer
Battery-Powered Remote-Controlled Dual Motor System with Cytron URC10
Image of URC10 SUMO RC: A project utilizing DRV8833 Dual Motor Driver Carrier in a practical application
This circuit is a remote-controlled dual DC motor driver system powered by a 3S LiPo battery. It uses a Cytron URC10 motor driver to control two GM25 DC motors based on signals received from an R6FG receiver, with a rocker switch for power control and a 7-segment panel voltmeter for monitoring the battery voltage.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with DRV8833 Dual Motor Driver Carrier

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of SMARS with RF2401- DRV8833: A project utilizing DRV8833 Dual Motor Driver Carrier in a practical application
ESP32 and nRF24L01 Wi-Fi Controlled Dual Motor System
This circuit is a remote-controlled dual-motor driver system using an ESP32 microcontroller. The ESP32 interfaces with an nRF24L01 wireless module for communication and a DRV8833 motor driver to control two motors, powered by a 2x 18650 battery pack regulated by an AMS1117 voltage regulator.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of 2相4線式モーター: A project utilizing DRV8833 Dual Motor Driver Carrier in a practical application
Arduino Nano Motor Controller with DRV8833 Driver
This circuit is designed to control a 2-phase 4-wire motor using an Arduino Nano 3.0 and a DRV8833 motor driver. The Arduino Nano provides control signals to the DRV8833, which in turn drives the motor, allowing for precise motor control.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of SRD-1 Rover: A project utilizing DRV8833 Dual Motor Driver Carrier in a practical application
ESP32 C3 Controlled Robot with VL6180 Time of Flight Sensor
This circuit is designed to control a pair of DC gearmotors using a DRV8833 motor driver, with an ESP32 C3 microcontroller as the control unit. The microcontroller also interfaces with an Adafruit VL6180 Time of Flight sensor for distance measurement. The embedded code on the ESP32 C3 facilitates basic motor control (forward and backward) and reads distance data from the sensor, which is likely used for obstacle detection or range finding in a robotic application.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of URC10 SUMO RC: A project utilizing DRV8833 Dual Motor Driver Carrier in a practical application
Battery-Powered Remote-Controlled Dual Motor System with Cytron URC10
This circuit is a remote-controlled dual DC motor driver system powered by a 3S LiPo battery. It uses a Cytron URC10 motor driver to control two GM25 DC motors based on signals received from an R6FG receiver, with a rocker switch for power control and a 7-segment panel voltmeter for monitoring the battery voltage.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Robotics and automation systems
  • Remote-controlled vehicles
  • Conveyor belts and motorized platforms
  • Stepper motor control for 3D printers and CNC machines
  • Educational and hobbyist projects

Technical Specifications

The DRV8833 is a versatile motor driver with the following key specifications:

Parameter Value
Operating Voltage (VCC) 2.7 V to 10.8 V
Motor Output Current (per channel) 1.2 A continuous, 2 A peak
Logic Voltage (VIN) 1.8 V to 7 V
PWM Frequency Up to 250 kHz
Built-in Protections Overcurrent, thermal shutdown, undervoltage
Dimensions 0.6" × 0.8" × 0.1" (15 mm × 20 mm × 3 mm)
Weight 0.5 g

Pin Configuration and Descriptions

The DRV8833 module has 10 pins, as described in the table below:

Pin Name Description
1 VM Motor power supply (2.7 V to 10.8 V). Connect to the motor power source.
2 GND Ground connection. Common ground for logic and motor power.
3 AIN1 Input 1 for Motor A. Controls direction and speed with PWM.
4 AIN2 Input 2 for Motor A. Controls direction and speed with PWM.
5 BIN1 Input 1 for Motor B. Controls direction and speed with PWM.
6 BIN2 Input 2 for Motor B. Controls direction and speed with PWM.
7 AO1 Output 1 for Motor A. Connect to one terminal of Motor A.
8 AO2 Output 2 for Motor A. Connect to the other terminal of Motor A.
9 BO1 Output 1 for Motor B. Connect to one terminal of Motor B.
10 BO2 Output 2 for Motor B. Connect to the other terminal of Motor B.

Usage Instructions

Connecting the DRV8833 to a Circuit

  1. Power Supply: Connect the VM pin to a motor power supply (2.7 V to 10.8 V). Ensure the power supply can provide sufficient current for your motors.
  2. Logic Voltage: Connect the control pins (AIN1, AIN2, BIN1, BIN2) to a microcontroller or logic circuit. These pins accept voltages between 1.8 V and 7 V.
  3. Motor Connections: Connect the motor terminals to AO1/AO2 (Motor A) and BO1/BO2 (Motor B).
  4. Ground: Connect the GND pin to the ground of your power supply and microcontroller.

Controlling Motors with an Arduino UNO

Below is an example code snippet to control two DC motors using the DRV8833 and an Arduino UNO:

// Define motor control pins
const int AIN1 = 3; // Motor A input 1
const int AIN2 = 4; // Motor A input 2
const int BIN1 = 5; // Motor B input 1
const int BIN2 = 6; // Motor B input 2

void setup() {
  // Set motor control pins as outputs
  pinMode(AIN1, OUTPUT);
  pinMode(AIN2, OUTPUT);
  pinMode(BIN1, OUTPUT);
  pinMode(BIN2, OUTPUT);
}

void loop() {
  // Example: Rotate Motor A forward
  digitalWrite(AIN1, HIGH);
  digitalWrite(AIN2, LOW);

  // Example: Rotate Motor B backward
  digitalWrite(BIN1, LOW);
  digitalWrite(BIN2, HIGH);

  delay(2000); // Run motors for 2 seconds

  // Stop both motors
  digitalWrite(AIN1, LOW);
  digitalWrite(AIN2, LOW);
  digitalWrite(BIN1, LOW);
  digitalWrite(BIN2, LOW);

  delay(2000); // Wait for 2 seconds
}

Important Considerations

  • Heat Dissipation: The DRV8833 can get hot during operation. Ensure adequate ventilation or use a heatsink if necessary.
  • Current Limits: Avoid exceeding the continuous current rating of 1.2 A per channel to prevent damage.
  • PWM Control: Use PWM signals on the input pins to control motor speed effectively.

Troubleshooting and FAQs

Common Issues

  1. Motors Not Spinning

    • Cause: Incorrect wiring or insufficient power supply.
    • Solution: Double-check all connections and ensure the power supply meets the voltage and current requirements.
  2. Overheating

    • Cause: Excessive current draw or poor ventilation.
    • Solution: Reduce motor load, ensure proper ventilation, or add a heatsink.
  3. Erratic Motor Behavior

    • Cause: Noise or unstable power supply.
    • Solution: Add decoupling capacitors near the VM pin and ensure a stable power source.

FAQs

Q1: Can I use the DRV8833 to control a stepper motor?
Yes, the DRV8833 can control a bipolar stepper motor by using both H-bridges. You will need to sequence the inputs (AIN1, AIN2, BIN1, BIN2) appropriately to drive the stepper motor.

Q2: What is the maximum PWM frequency supported?
The DRV8833 supports PWM frequencies up to 250 kHz, but most applications use frequencies between 1 kHz and 20 kHz.

Q3: Can I power the DRV8833 directly from a 12 V battery?
No, the maximum motor voltage (VM) is 10.8 V. Use a voltage regulator or step-down converter to reduce the voltage to within the acceptable range.

Q4: Is reverse polarity protection included?
No, the DRV8833 does not have built-in reverse polarity protection. Ensure correct polarity when connecting the power supply.