TB6612FNG: Dual DC Motor Driver + DoRobot

SparkFun Motor Driver — 3.2A@13.5v peak — Ardu-Serie#49

J3
Jungletronics
7 min readNov 3, 2018

--

This tiny board is an easy way to use Toshiba’s TB6612FNG dual motor driver, which can independently control two bidirectional DC motors or one bipolar stepper motor.

TB6612FNG SparkFun Breakout

The TB6612FNG Motor Driver can control up to two DC motors at a constant current of 1.2A (3.2A peak). Two input signals (IN1 and IN2) can be used to control the motor in one of four function modes: CW, CCW, short-brake, and stop. The two motor outputs (A and B) can be separately controlled, and the speed of each motor is controlled via a PWM input signal with a frequency up to 100kHz. The STBY pin should be pulled high to take the motor out of standby mode.

Features and specifications

  • Dual-H-bridge motor driver: can drive two DC motors or one bipolar stepper motor
  • Recommended motor voltage (VMOT): 4.5 V to 13.5 V (can operate down to 2.5 V with derated performance)
  • Logic voltage (VCC): 2.7 V to 5.5 V
  • Output current maximum: 3 A per channel
  • Output current continuous: 1 A per channel (can be paralleled to deliver 2 A continuous)
  • Maximum PWM frequency: 100 kHz
  • Built-in thermal shutdown circuit
  • Filtering capacitors on both supply lines
  • Reverse-power protection on the motor supply

Lab 01

Do not use the 5V pin to power the motor. Certainly, the motor will pull more than 40 mA
of current and can ruin the Arduino’s chip;/
In the same position as your prototyping above;)

The Code I

Lab 02

In the same position as your prototyping above;)

The Code II

[TODO: LAB I VIDEO GOES HERE!]

Overview

The TB6612FNG is a great dual motor driver that is perfect for interfacing two small DC motors such as Pololu micro metal gear motors to a microcontroller, and it can also be used to control a single bipolar stepper motor.

What I liked the most about this board is that the pins are arranged such that input pins are on one side and output pins are on the other. Cool!

What I liked least about this board is that the silk is on the bottom. We have to note the pins on a separate paper or once we need to identify the pins we have to remove the board from the perf board. Finicky thing! Don’t do it! get this board from Sparkfun. It has the silk on the face:) It’s a competitive differential! (Thanks to the Sparkfun's expertise staff)

The MOSFET-based H-bridges are much more efficient than the BJT-based H-bridges used in older drivers such as the L298N and Sanyo’s LB1836M, which allows more current to be delivered to the motors and less to be drawn from the logic supply (the LB1836 still has the TB6612 beat for really low-voltage applications).

This little breakout board gives you direct access to all of the features of the TB6612FNG and adds power supply capacitors and reverse battery protection on the motor supply (note: there is no reverse protection on the VCC connection).

In a typical application, power connections are made on one side of the board, and control connections are made on the other. All of the control inputs are internally pulled low. Each of the two motor channels has two direction control pins and a speed control pin that accepts a PWM input with a frequency of up to 100 kHz. The STBY pin must be driven high to take the driver out of standby mode

Logic supply voltage (VCC) can be in the range of 2.7–5.5 VDC, while the motor supply (VM) is limited to a maximum voltage of 15 VDC. The output current is rated up to 1.2A per channel (or up to 3.2A for a short, single pulse).

I bought this little driver in the free market, which has a Chinese origin. However, I recommend you buy directly from Sparkfun.

This little board comes with decoupling capacitors that are included on both supply lines. All pins of the TB6612FNG are broken out into two 0.1" pitch headers — Let’s have to solder the pins — The pins are arranged such that input pins are on one side and output pins are on the other.

Board Overview

Let’s discuss the pinout for the TB6612FNG breakout. We basically have three types of pins: power, input, and output, and they are all labeled on the back of the board.

Points to remember on the handling of ICs (from the datasheet):

(1) Thermal Shutdown Circuit Thermal shutdown circuits do not necessarily protect ICs under all circumstances. If the thermal shutdown circuits operate against the over temperature, clear the heat generation status immediately. Depending on the method of use and usage conditions, such as exceeding absolute maximum ratings can cause the thermal shutdown circuit to not operate properly or IC breakdown before the operation;

(2) Heat Radiation Design In using an IC with a large current flow such as a power amp, regulator, or driver, please design the device so that heat is appropriately radiated, not to exceed the specified junction temperature (TJ) at any time and condition. These ICs generate heat even during normal use. An inadequate IC heat radiation design can lead to a decrease in IC life, deterioration of IC characteristics, or IC breakdown. In addition, please design the device taking into consideration the effect of IC heat radiation on peripheral components;

(3) Back-EMF When a motor rotates in the reverse direction, stops, or slows down abruptly, a current flows back to the motor’s power supply due to the effect of back-EMF. If the current sink capability of the power supply is small, the device’s motor power supply and output pins might be exposed to conditions beyond maximum ratings. To avoid this problem, consider the effect of back-EMF in system design (DC MOTORS — Against Back-EMF — How to Prepare your DC Motor — Quick Advice — Ardu_Serie#50)

References & Resources

With that, you should have the basic knowledge to get started with your next motor-moving project. For more information on the TB6612FNG motor Driver, check out the links below:

Related Posts:

Meet DoRobot — Assembly Techniques J3 Caterpillar-Crawler-Chassis v 1.0 — ArduSerie#46

L9100S — Toy Driver Easy To Use — Toy-low-voltage-h-bridge-easy-to-use-motor — .8A@12v peak — Ardu_Serie#47

EASYDRIVER: 4-Wire-Stepper Motor DriverBrian Schmalz Design on A3967 IC — Bi-Polar Motors — .75A@30v peak — Making Using These a Breeze! Ardu_Serie#48

DRV8825 — High Current Stepper Motor Driver Carrier — Stepper Motor — Bipolar Mode — 2.5A@45v peak — Ardu_Serie #59

L298N — Dual Full-Bridge Driver — Darlington Transistor Arrays Based — 3A@50v peak — Ardu-Serie#52

TB6612FNG: Dual DC Motor Driver — SparkFun Motor Driver — 3.2A@13.5v peak — Ardu-Serie#49

A4988 — Stepper Motor Driver Carrier — Allegro’s A4988 — Bipolar Stepper Motor Driver — 2A@35v peak — Ardu-Serie#53

Adafruit Motor Shield v1 & v2–4 DC Motors or 2 Stepper Motor or 2 Servos — 1.2A@25v & 3.2A@15v peak — Ardu-Serie#54

IFR 520 MOS — Module + DoRobot — Switch Heavy DC Loads — 10A@100v peak — Ardu-Serie#60

L9110 H-bridge module + DoRobot — DC Stepper Motor Driver Board — .8A@12 v peak — Ardu_Serie#62

BTS7960B- High Current PN Half Bridge — High Current Motor Drive Applications — NovalithIC T M — 43A@24v peak — ArduSerie#64

VNH2SP30 — Monster Moto Shield — Use This Board In Extreme High-Demand Application — Full-Bridge Motor Drivers — 30A@16v peak — 30 Ardu_Serie#63

J3C3 Crawler Car Chassis v.1 — Sleeping Outdoors:)

<Revision Feb 2024 — minor text corrections>

--

--

J3
Jungletronics

Hi, Guys o/ I am J3! I am just a hobby-dev, playing around with Python, Django, Ruby, Rails, Lego, Arduino, Raspy, PIC, AI… Welcome! Join us!