Resistance required with L293D?


I want to start using the L293D H-bridge with the Arduino 101.
I have used the L293D before with the Arduino UNO and the Raspberry Pi. Because of bad wiring I fried my Raspberry Pi at the time.
This Raspberry Pi runs at 3.3v, and the Arduino 101 I want to use now does too.
The Arduino can't provide more current than 20 mA, so I want to protect it using a resistor. I don't want it to provide more than 15 mA so the L293D and an optional resistor must together be at least 220 Ohm.
The L293D requires at least a 2.3v input, and I'm afraid my resister would work as a voltage divider, so not enough voltage is left for the L293D.

I couldn't find the internal resistance of the L293D for the input, I looked in this and this pdf file, but I could not find it.
Am I right in that I need to add an extra resistor between the L293D and the Arduino 101 if the internal resistance of the L293D is below 220 Ohm?

Thank you in advance!

No, you're not correct. No resistor needed. As long as you use the Arduino as an input for the L293. But note, you need 5V for the L293 as well. And yeah, don't connect the 5V or motor voltage to the Arduino :smiley:

The L293 has two supplies, a 5V one for the logic called Vss which can be shared with the Arduino
5V, and one for the motor drivers themselves, called Vs and which should not be shared with
the Arduino 5V.

The motor supply Vs should be >= Vss at all times you are using the motor driver else it will
steal current from the Vss supply to power the motors via internal diodes, which is not a good
idea. I think thats the case (I might be confusing with the similar L298 chip though).

Hi septillon and MarkT,

thanks for your help! I should have stated more clearly that I was referring to the Arduino 101 output pins.
When I want a motor to run, I have to output a signal to 'Input X'.

When I do this, can the Arduino 101 be damaged because it can only supply 20 mA of current through its output pins?

If you don't mess with resistors, don't accidentally connect it to Vcc and use the right voltages for Vcc1 and Vcc2 then I don't see a problem. It's just a logic with a high impedance input.

No resistors needed! If you want to see a simple start-and-go application of the L293D with Arduino, try this wiring method (taken from my blog, see here:

This wiring should get you up and running with a 4-wire stepper and Arduino. From here you should be able to tweak your setup as you like.