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.
| Driver | Current | Motors | Good for |
|---|---|---|---|
| L298N | 2A per channel | 2 | BO motors, small gear motors, school robots |
| BTS7960 | 43A peak | 1 | Wheelchair 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.