

The TB6612FNG is a dual H-bridge motor driver IC designed to control two DC motors independently. It provides precise control over motor speed and direction, making it ideal for robotics, automation, and other motor control applications. The IC is compact, efficient, and includes built-in protection features such as overcurrent protection and thermal shutdown, ensuring reliable operation in demanding environments.








The TB6612FNG is a versatile motor driver with the following key specifications:
| Parameter | Value |
|---|---|
| Operating Voltage (Vcc) | 2.7V to 5.5V |
| Motor Voltage (VM) | 4.5V to 13.5V |
| Output Current (per channel) | 1.2A (continuous), 3.2A (peak) |
| Control Logic Voltage | 3.3V or 5V compatible |
| Standby Current | 1 µA (typical) |
| PWM Frequency | Up to 100 kHz |
| Built-in Protections | Overcurrent, thermal shutdown |
| Package Type | HTSSOP-20 |
The TB6612FNG has 20 pins, with the following configuration:
| Pin Number | Pin Name | Description |
|---|---|---|
| 1 | AIN1 | Input signal for Motor A direction control |
| 2 | AIN2 | Input signal for Motor A direction control |
| 3 | PWMA | PWM input for Motor A speed control |
| 4 | A01 | Output 1 for Motor A |
| 5 | A02 | Output 2 for Motor A |
| 6 | VM | Motor power supply (4.5V to 13.5V) |
| 7 | VCC | Logic power supply (2.7V to 5.5V) |
| 8 | STBY | Standby control (active HIGH to enable the IC) |
| 9 | BIN1 | Input signal for Motor B direction control |
| 10 | BIN2 | Input signal for Motor B direction control |
| 11 | PWMB | PWM input for Motor B speed control |
| 12 | B01 | Output 1 for Motor B |
| 13 | B02 | Output 2 for Motor B |
| 14 | GND | Ground |
| 15-20 | NC | No connection (not used) |
Power Connections:
VM pin to the motor power supply (4.5V to 13.5V).VCC pin to the logic power supply (2.7V to 5.5V).GND pin to the ground of the circuit.Motor Connections:
A01 and A02 for Motor A, and B01 and B02 for Motor B.Control Signals:
AIN1 and AIN2 pins to control the direction of Motor A.BIN1 and BIN2 pins to control the direction of Motor B.PWMA and PWMB to control the speed of Motor A and Motor B, respectively.Standby Mode:
STBY pin HIGH to enable the IC. Set it LOW to put the IC in standby mode.PWM Frequency:
Below is an example of how to control two DC motors using the TB6612FNG and an Arduino UNO:
VM to a 9V power supply for the motors.VCC to the 5V pin on the Arduino.GND to the Arduino's GND.AIN1, AIN2, PWMA, BIN1, BIN2, and PWMB to Arduino digital pins.// Define motor control pins
const int AIN1 = 7; // Motor A direction control
const int AIN2 = 8; // Motor A direction control
const int PWMA = 9; // Motor A speed control (PWM)
const int BIN1 = 10; // Motor B direction control
const int BIN2 = 11; // Motor B direction control
const int PWMB = 6; // Motor B speed control (PWM)
const int STBY = 5; // Standby control
void setup() {
// Set pin modes
pinMode(AIN1, OUTPUT);
pinMode(AIN2, OUTPUT);
pinMode(PWMA, OUTPUT);
pinMode(BIN1, OUTPUT);
pinMode(BIN2, OUTPUT);
pinMode(PWMB, OUTPUT);
pinMode(STBY, OUTPUT);
// Enable the motor driver
digitalWrite(STBY, HIGH);
}
void loop() {
// Motor A: Forward at 50% speed
digitalWrite(AIN1, HIGH);
digitalWrite(AIN2, LOW);
analogWrite(PWMA, 128); // 50% duty cycle (0-255)
// Motor B: Reverse at 75% speed
digitalWrite(BIN1, LOW);
digitalWrite(BIN2, HIGH);
analogWrite(PWMB, 192); // 75% duty cycle (0-255)
delay(2000); // Run motors for 2 seconds
// Stop both motors
analogWrite(PWMA, 0);
analogWrite(PWMB, 0);
delay(2000); // Wait for 2 seconds
}
VM) matches the motor's rated voltage.VM and VCC pins to reduce noise.Motors Not Running:
STBY pin is set HIGH to enable the IC.VM and VCC) are within the specified range.Overheating:
Erratic Motor Behavior:
Q: Can the TB6612FNG drive stepper motors?
A: Yes, the TB6612FNG can drive stepper motors by controlling the two H-bridges in a coordinated manner. However, additional logic or software is required.
Q: What happens if the IC overheats?
A: The TB6612FNG has a built-in thermal shutdown feature that disables the outputs to protect the IC. Allow the IC to cool down before resuming operation.
Q: Can I use the TB6612FNG with a 3.3V microcontroller?
A: Yes, the control logic is compatible with both 3.3V and 5V systems. Ensure the VCC pin is supplied with the appropriate voltage.