

The TB6612FNG is a dual H-bridge motor driver IC designed for controlling DC motors and stepper motors. It is capable of driving motors with high efficiency and includes built-in features such as thermal shutdown, overcurrent protection, and low standby current. This makes it an excellent choice for robotics, automation, and other motor control applications.








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) | 
| Standby Current | 1 µA (typical) | 
| Control Logic | PWM (Pulse Width Modulation) | 
| Built-in Protections | Thermal shutdown, overcurrent, and undervoltage lockout | 
| Operating Temperature Range | -20°C to +85°C | 
| Package Type | HSOP-25 | 
The TB6612FNG has 16 pins, each serving a specific function. Below is the pinout and description:
| Pin Number | Pin Name | Description | 
|---|---|---|
| 1 | AIN1 | Input signal for Motor A (H-bridge control) | 
| 2 | AIN2 | Input signal for Motor A (H-bridge control) | 
| 3 | PWMA | PWM input for Motor A | 
| 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 | GND | Ground | 
| 8 | STBY | Standby control (active high to enable the IC) | 
| 9 | VCC | Logic power supply (2.7V to 5.5V) | 
| 10 | BIN1 | Input signal for Motor B (H-bridge control) | 
| 11 | BIN2 | Input signal for Motor B (H-bridge control) | 
| 12 | PWMB | PWM input for Motor B | 
| 13 | B01 | Output 1 for Motor B | 
| 14 | B02 | Output 2 for Motor B | 
| 15 | NC | No connection | 
| 16 | NC | No connection | 
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, AIN2, and PWMA pins to control Motor A.BIN1, BIN2, and PWMB pins to control Motor B.PWMA and PWMB pins to control motor speed.STBY pin high to enable the IC.Logic Table for Motor Control:
| AIN1/BIN1 | AIN2/BIN2 | Motor Action | 
|---|---|---|
| High | Low | Forward Rotation | 
| Low | High | Reverse Rotation | 
| High | High | Brake (short circuit) | 
| Low | Low | Stop (coast) | 
Below is an example of how to control a DC motor using the TB6612FNG and an Arduino UNO:
AIN1 to Arduino pin 7.AIN2 to Arduino pin 8.PWMA to Arduino pin 9 (PWM pin).STBY to Arduino pin 10.VM to a 9V motor power supply.VCC to the Arduino 5V pin.GND to the Arduino GND pin.// Define control pins for Motor A
const int AIN1 = 7;  // Motor A direction control pin 1
const int AIN2 = 8;  // Motor A direction control pin 2
const int PWMA = 9;  // Motor A speed control (PWM) pin
const int STBY = 10; // Standby pin
void setup() {
  // Set pin modes
  pinMode(AIN1, OUTPUT);
  pinMode(AIN2, OUTPUT);
  pinMode(PWMA, OUTPUT);
  pinMode(STBY, OUTPUT);
  // Enable the motor driver by setting STBY high
  digitalWrite(STBY, HIGH);
}
void loop() {
  // Rotate motor forward
  digitalWrite(AIN1, HIGH);  // Set direction
  digitalWrite(AIN2, LOW);
  analogWrite(PWMA, 128);    // Set speed (0-255)
  delay(2000);               // Run for 2 seconds
  // Rotate motor backward
  digitalWrite(AIN1, LOW);   // Reverse direction
  digitalWrite(AIN2, HIGH);
  analogWrite(PWMA, 128);    // Maintain same speed
  delay(2000);               // Run for 2 seconds
  // Stop the motor
  digitalWrite(AIN1, LOW);   // Stop motor
  digitalWrite(AIN2, LOW);
  analogWrite(PWMA, 0);      // Set speed to 0
  delay(2000);               // Wait for 2 seconds
}
VM) matches the motor's rated voltage.VM and VCC pins to reduce noise.Motor Not Spinning:
STBY pin is set high to enable the IC.AIN1, AIN2, PWMA) are correctly configured.Motor Spins in the Wrong Direction:
AIN1 and AIN2 to change the direction.Overheating:
No Output Voltage on Motor Pins:
VM and VCC power supplies are within the specified range.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. Use a stepper motor library for easier implementation with microcontrollers.
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 from damage.
Q: Can I use the TB6612FNG with a 3.3V microcontroller?
A: Yes, the TB6612FNG supports logic levels as low as 2.7V, making it compatible with 3.3V microcontrollers.