Reading the ULN2803A datasheet, especially the part "Figure 13. ULN2803A as Inductive Load Driver" and after various fails to properly drive 12v RGB led strips, as i can't find the proper mosfets. i was thinking to get more of those ULN2803 and use them like a "mosfet".

500-mA-Rated Collector Current

Total substrate-terminal current –2.5 A

This means if i connect one pin of my 3.3v or 5v microcontroller to all 8 intputs , and all 8 outputs (gnd) to the leds , basically solder them all together, i get a max of [email protected]=30W on one ULN2803A.

Using PWM on 3x ULN2803A, doing the same as above, would allow me to get [email protected]=90W Led strip to run properly.

Would i be able to properly power the 2x 5m led strip or less, assuming i have 7.5A@12v=90W and the strip consumes 7.2W/m*10m=72W, without problems (except the obious voltage drop on a 10m strip)?

Said that, if it's correct, the ULN2803A is for 3.3v & 5v and so has already all the protection and logic stuff inside, so i don't need any resistors, diodes, transistors or whatever to protect my Microcontroller?

Basically i just need to connect the Arduino(5v) OR Raspberry (3.3v) signal pins to the ULN2803A inputs, the GND of the led strip to the outputs and the ground to the microcontroller and 12v powersupply.


simulate this circuit – Schematic created using CircuitLab

note.: i use a industrial 12v 10A/5A(with a shorter led strip) power supply if everything is clear

btw if i connect the Raspberry that has very low output (20-40mA) on one single 3.3v PIN how much current sucks each ULN2803 input?

II(on) Input current VI = 3.85 V, See Figure 6 0.93 1.35 mA

So if max is 1.35mA, let's say 1.5mA*8inputs=12mA there are no problems to power them all with just one pin???

And regarding the length of the strip this would also allow me to easely gie power at every 1-2 or 3m to have a nice stable 12v....And so i would have no voltage drop.

What about PWM on 8in and 8out... it could create some errors on the linearity of the PWM signal???

"No, your totally wrong, the reaspberry has not enough mA to power all 8 inputs with one PIN" or "Yes, you can handle 7.5A at 12v and the Raspberry is safe" would be enough as answer.

I'm not a electronical enginer. So sorry for my low knowledge about electronics.

Are my assumptions correct?


1 Answer 1


I can only answer part of your questions.

1) I simply don't know how much current a Raspberry pin will put out, and Broadcom is very short on information. I recommend this: buy one 2803, hook it up with all the inputs tied together but no load, and measure the voltage at the inputs.

2) I can guarantee that with all the inputs tied together, you will draw less than 12 mA with an input of 3.3 volts. How can I say this? The spec you listed gives an input of 3.85 volts, not 3.3 volts. Lower voltage will give you lower current. But measure it. If the Raspberry cannot provide close to 3.3 volts when driving all 8 inputs, you may have extra problems with point 3.

3) Yes, you can pull 2.5 amps with one chip. I don't recommend it, but you can do it. If you do, you MUST provide a decent heat sink for the 2803. If you just use a bare IC you will burn it out. You should assume something like 1.3 volts across the 2803, and at 2.5 amps, your total power will be about 3.3 watts. The thermal resistance to ambient for this chip (section 7.4 in the data sheet) is 74 degrees per watt, so the heart of the chip will reach (3.3 x 74) + 20 degrees, or about 260 degrees C. Per the data sheet, the maximum is 125 C.

If your input voltage is low, the outputs will not turn on as hard, and the voltage drop across the outputs may be greater. In that case, the power dissipation of the chip will be higher, and you will need a bigger heat sink. But this is something that you will need to experiment with to find out. I suspect you'll be OK, but I'm not giving any guarantees.

  • \$\begingroup\$ 1. From various sources a Raspberry pi can output [email protected] max per pin and a total of 50mA. So using only one 3 pin's theoretically would allow me to stay in the limits? \$\endgroup\$
    – cocco
    Commented Jun 9, 2015 at 18:39
  • \$\begingroup\$ 2.Good so i even consume less on the raspberry pi side and can use more pins. \$\endgroup\$
    – cocco
    Commented Jun 9, 2015 at 18:39
  • \$\begingroup\$ 3.You should assume something like 1.3 volts across the 2803? Are there heatsinks for those dip IC's? btw i'm naturally not using all the 2.5A per chip but around 1.5A-2.0A would be nice. without heatsinks. now if i get how you get those 3.3W i can calculate myself how hot i get it with 2A \$\endgroup\$
    – cocco
    Commented Jun 9, 2015 at 18:45
  • \$\begingroup\$ Input voltage is should be 3.3v using Pulse with modulation.+1 thx \$\endgroup\$
    – cocco
    Commented Jun 9, 2015 at 18:46
  • \$\begingroup\$ @cocco 1. With a 3.3 volt line, you may well be able to source 16 mA, but I guarantee that voltage will be somewhat less than 3.3 volts. Exactly how much, I don't know, and the data sheets I've found are not silent on the subject. You'll have to experiment. \$\endgroup\$ Commented Jun 9, 2015 at 21:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.