L293D motor control problem


I have a DC motor that I would like to control with an L293D H-bridge IC. When I apply 9V directly from the batteries to the motor, it works fine, however when I apply it through the L293D IC with full speed (enable is connected to 5V here) it barely starts! You can feel and hear the difference that it’s weaker. I suppose it should have no noticable difference.

Have someone encountered this problem before? Am I doing something wrong? Any explanation?

It’s a 12V DC motor (0.32A), but works just fine with 9V (6xAA). It’s wired up like this on a breadboard (see pic), I have common grounds everywhere (Arduino, 9V battery, L293D all common grounds). And the simple code I’m using for this:

int lmp = 10;
int lmg = 11;

void setup() {

void loop() {





Is that 0.32A the stall current? (It draws stall current at start up.)

The L293 drops about 2V (iirc) btw, so you won't get the full 9V, closer to 7V.

Do you have a DMM?

Measure the voltage at your motor terminals.

You do have gnd of the 293 connected to the Arduino gnd and the motor battery gnd.

Tom... :slight_smile:

The L293D is old technology. It "looses" about 2.5volt in bridge mode at that motor current.
Not a big problem if you compensate for that.
e.g. a 15volt supply for a 12volt motor.

If you don't want that, then get a modern mosfet-based motor driver board.

Have someone encountered this problem before? Am I doing something wrong? Any explanation?

Basically you are trying to use an inadequate power supply for a motor - small 9V batteries cannot source
much current, they struggle above 100mA or so.

You need a supply capable of powering a motor, a 0.32A motor (rated current) probably has a stall
current of 1 to 2A, so your supply should handle 0.5A without cutting out or dropping in voltage much.
A 12V SLA would work. The voltage drop in the L293 is still going to affect the top speed though.