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

How to Use Motor Driver 1A Dual TB6612FNG: Examples, Pinouts, and Specs

Image of Motor Driver 1A Dual TB6612FNG
Cirkit Designer LogoDesign with Motor Driver 1A Dual TB6612FNG in Cirkit Designer

Introduction

The Motor Driver 1A Dual TB6612FNG (Manufacturer Part ID: DEV-09457) by SparkFun Electronics is a compact and efficient motor driver designed to control two DC motors simultaneously. It supports a maximum output current of 1A per channel and features PWM (Pulse Width Modulation) control for precise speed regulation and direction control. This makes it an ideal choice for robotics, automation, and other motor control applications.

Explore Projects Built with Motor Driver 1A Dual TB6612FNG

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Arduino-Controlled Dual Motor Driver with IR Sensing
Image of Line follower 14 IR Sensor channel: A project utilizing Motor Driver 1A Dual TB6612FNG in a practical application
This circuit controls two DC motors using a TB6612FNG motor driver, which is interfaced with an Arduino Mega 2560 microcontroller. The Arduino provides PWM signals to control the speed and direction of the motors. Multiple IR sensors are connected to the Arduino's analog inputs, likely for sensing the environment or for line-following capabilities in a robot.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Nano Motor Control System with Pushbutton Interface
Image of LFR CKT: A project utilizing Motor Driver 1A Dual TB6612FNG in a practical application
This circuit uses an Arduino Nano to control a TB6612FNG motor driver, which in turn controls two motors. The circuit also includes two pushbuttons for user input, allowing the Arduino to receive commands and control the motor driver accordingly.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Nano Battery-Powered Dual Motor Controller
Image of 01: A project utilizing Motor Driver 1A Dual TB6612FNG in a practical application
This circuit is designed to control two DC motors using an Arduino Nano and a TB6612FNG motor driver, powered by a 850mAh Lithium-Ion battery. The Arduino Nano interfaces with the motor driver to control motor direction and speed, while an additional component labeled '01' is connected to various analog pins on the Arduino, possibly for sensor input or additional control signals.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Nano and TB6612FNG Motor Driver-Based Line Following Robot with IR Sensors
Image of line following: A project utilizing Motor Driver 1A Dual TB6612FNG in a practical application
This circuit is a motor control system using an Arduino Nano, a TB6612FNG motor driver, and two DC Mini Metal Gear Motors. The Arduino Nano reads inputs from a 5-channel IR sensor and controls the motor driver to operate the motors, powered by a 9V battery.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Motor Driver 1A Dual TB6612FNG

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 Line follower 14 IR Sensor channel: A project utilizing Motor Driver 1A Dual TB6612FNG in a practical application
Arduino-Controlled Dual Motor Driver with IR Sensing
This circuit controls two DC motors using a TB6612FNG motor driver, which is interfaced with an Arduino Mega 2560 microcontroller. The Arduino provides PWM signals to control the speed and direction of the motors. Multiple IR sensors are connected to the Arduino's analog inputs, likely for sensing the environment or for line-following capabilities in a robot.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of LFR CKT: A project utilizing Motor Driver 1A Dual TB6612FNG in a practical application
Arduino Nano Motor Control System with Pushbutton Interface
This circuit uses an Arduino Nano to control a TB6612FNG motor driver, which in turn controls two motors. The circuit also includes two pushbuttons for user input, allowing the Arduino to receive commands and control the motor driver accordingly.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of 01: A project utilizing Motor Driver 1A Dual TB6612FNG in a practical application
Arduino Nano Battery-Powered Dual Motor Controller
This circuit is designed to control two DC motors using an Arduino Nano and a TB6612FNG motor driver, powered by a 850mAh Lithium-Ion battery. The Arduino Nano interfaces with the motor driver to control motor direction and speed, while an additional component labeled '01' is connected to various analog pins on the Arduino, possibly for sensor input or additional control signals.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of line following: A project utilizing Motor Driver 1A Dual TB6612FNG in a practical application
Arduino Nano and TB6612FNG Motor Driver-Based Line Following Robot with IR Sensors
This circuit is a motor control system using an Arduino Nano, a TB6612FNG motor driver, and two DC Mini Metal Gear Motors. The Arduino Nano reads inputs from a 5-channel IR sensor and controls the motor driver to operate the motors, powered by a 9V battery.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications

  • Robotics and mobile platforms
  • Automated conveyor systems
  • DIY motorized projects
  • Educational electronics and prototyping
  • Small-scale industrial automation

Technical Specifications

Below are the key technical details of the TB6612FNG motor driver:

Parameter Value
Operating Voltage (Vcc) 2.7V to 5.5V
Motor Voltage (VM) 4.5V to 13.5V
Maximum Output Current 1A per channel (continuous)
Peak Output Current 3A per channel (short duration)
Control Interface PWM and direction control
Standby Current 1µA (typical)
Operating Temperature -20°C to +85°C
Dimensions 21mm x 18mm x 3mm

Pin Configuration and Descriptions

The TB6612FNG motor driver has 16 pins. Below is the pinout and description:

Pin Name Pin Number Description
VCC 1 Logic power supply (2.7V to 5.5V).
VM 2 Motor power supply (4.5V to 13.5V).
GND 3, 8, 13 Ground connection.
AIN1 4 Input 1 for Motor A. Sets direction of Motor A.
AIN2 5 Input 2 for Motor A. Sets direction of Motor A.
PWMA 6 PWM input for Motor A. Controls speed of Motor A.
STBY 7 Standby pin. Set HIGH to enable the driver, LOW to disable.
BIN1 9 Input 1 for Motor B. Sets direction of Motor B.
BIN2 10 Input 2 for Motor B. Sets direction of Motor B.
PWMB 11 PWM input for Motor B. Controls speed of Motor B.
AO1 12 Output 1 for Motor A. Connect to one terminal of Motor A.
AO2 14 Output 2 for Motor A. Connect to the other terminal of Motor A.
BO1 15 Output 1 for Motor B. Connect to one terminal of Motor B.
BO2 16 Output 2 for Motor B. Connect to the other terminal of Motor B.

Usage Instructions

How to Use the Component in a Circuit

  1. Power Connections:

    • Connect the logic power supply (2.7V to 5.5V) to the VCC pin.
    • Connect the motor power supply (4.5V to 13.5V) to the VM pin.
    • Connect all GND pins to the ground of your circuit.
  2. Motor Connections:

    • Connect the terminals of Motor A to AO1 and AO2.
    • Connect the terminals of Motor B to BO1 and BO2.
  3. Control Connections:

    • Use AIN1 and AIN2 to set the direction of Motor A.
    • Use BIN1 and BIN2 to set the direction of Motor B.
    • Use PWMA and PWMB to control the speed of Motor A and Motor B, respectively, using PWM signals.
    • Set the STBY pin HIGH to enable the motor driver.
  4. PWM Control:

    • Provide a PWM signal (0-100% duty cycle) to the PWMA and PWMB pins to control motor speed.

Important Considerations and Best Practices

  • Ensure that the motor power supply voltage (VM) matches the voltage rating of your motors.
  • Do not exceed the maximum continuous current rating of 1A per channel to avoid overheating.
  • Use appropriate decoupling capacitors near the VCC and VM pins to stabilize the power supply.
  • Always set the STBY pin LOW when the motor driver is not in use to minimize power consumption.
  • Use heat sinks or proper ventilation if operating near the maximum current limit for extended periods.

Example: Using with Arduino UNO

Below is an example Arduino sketch to control two DC motors using the TB6612FNG motor driver:

// Pin definitions for Motor A
const int AIN1 = 7;  // Direction pin 1 for Motor A
const int AIN2 = 8;  // Direction pin 2 for Motor A
const int PWMA = 9;  // PWM pin for Motor A

// Pin definitions for Motor B
const int BIN1 = 4;  // Direction pin 1 for Motor B
const int BIN2 = 5;  // Direction pin 2 for Motor B
const int PWMB = 6;  // PWM pin for Motor B

// Standby pin
const int STBY = 10;

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() {
  // Example: Run Motor A forward at 50% speed
  digitalWrite(AIN1, HIGH);
  digitalWrite(AIN2, LOW);
  analogWrite(PWMA, 128);  // 50% duty cycle (128 out of 255)

  // Example: Run Motor B backward at 75% speed
  digitalWrite(BIN1, LOW);
  digitalWrite(BIN2, HIGH);
  analogWrite(PWMB, 192);  // 75% duty cycle (192 out of 255)

  delay(2000);  // Run for 2 seconds

  // Stop both motors
  analogWrite(PWMA, 0);
  analogWrite(PWMB, 0);

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

Troubleshooting and FAQs

Common Issues and Solutions

  1. Motors Not Running:

    • Ensure the STBY pin is set HIGH to enable the motor driver.
    • Verify that the power supply voltages (VCC and VM) are within the specified range.
    • Check the connections to the motor terminals and control pins.
  2. Motor Running in the Wrong Direction:

    • Swap the logic levels of the direction pins (AIN1/AIN2 or BIN1/BIN2).
  3. Overheating:

    • Ensure the current drawn by the motors does not exceed 1A per channel.
    • Use heat sinks or improve ventilation if necessary.
  4. PWM Signal Not Working:

    • Verify that the PWM signal is being generated correctly by your microcontroller.
    • Check the duty cycle of the PWM signal to ensure it is within the desired range.

FAQs

Q: Can I use this driver for stepper motors?
A: Yes, the TB6612FNG can be used to drive stepper motors by controlling the two channels in a coordinated manner.

Q: What happens if I exceed the maximum current rating?
A: Exceeding the current rating may cause the driver to overheat or enter thermal shutdown. Prolonged overcurrent conditions can damage the driver.

Q: Is it possible to control the driver without a microcontroller?
A: Yes, you can use external switches or logic circuits to control the direction and speed of the motors, but a microcontroller provides more precise control.