Choosing a motor driver

Beginner | 7 min read

A microcontroller pin can give about 20 milliamps. Even a small toy motor needs hundreds of milliamps, and big motors need tens of amps. A motor driver sits in between: your board sends a tiny signal, and the driver switches the real battery power to the motor. It can also reverse the motor and control its speed.

The one number that matters: current

Every motor lists a stall current: the most it pulls when it's stuck or starting. Pick a driver rated above that number.

DriverCurrentMotorsGood for
L298N2A per channel2BO motors, small gear motors, school robots
BTS796043A peak1Wheelchair motors, go-karts, heavy robots

Example

A BO motor stalls at 0.8A, so an L298N (2A) is fine. A 12V wiper motor can pull 10A: the L298N would overheat, so use a BTS7960, one per motor.

Not for drones: brushless (BLDC) drone motors need an ESC (electronic speed controller), not an L298N or BTS7960.

Tips

  • The L298N loses about 2V inside it. For 6V motors, use a 7.4V battery.
  • Use thick wires and a fuse with the BTS7960.
  • Always connect the driver's GND to the board's GND.