-1

I'm using an Arduino Uno to power some rgb LEDs.

Each LED takes 20mA (on average). I have a strand of 400 LEDs. This should be drawing ~8,000mA.

Arduino Uno has a limit on its 5v pin of 500mA.

**So how many amps is my Arduino outputting? My 8A worth of LEDs are illuminated, just dimly.

Edit: My Arduino still runs, and the 8,000mA LEDs illuminate, just dimly. I’ve left the setup on for 12 hours, and it all still works.

So it appears the behavior of the Arduino Uno is to limit the amp output of its 5v pin. It does not burn out.

Any explanations for this observed behavior?

Edit 2: I know how to wire up this setup correctly using power injection. I’m just curious why my Arduino is not burning out as we all expect it to.

  • You can always make Arduino to control a power MOSFET (or a relay module) that's rated for more that 8A. That way Arduino gives out only several milliamperes. – Filip Franik Jul 25 '18 at 9:05
1

If you exceed the amp limit, that can be drawn through (!) the Arduino, some components on the Arduino will be fried (As for most electronic devices. For the Arduino this is practically a short). There is no current limitation there. Which components are fried depends on how you provide the power. If you provide power through the power jack or VIN, the voltage regulator will burn out. If you provide power through USB a diode or the MOSFET will be fried (You can look this up in the Arduino UNOs schematic at this site).

The setup might output a current, that is a bit higher than 500mA, for a short time. But the mentioned components, that are in the currents path, will heat up very quickly and be destroyed. In this short time the LEDs will be very dim, since the Arduino cannot provide a current as big as 8A, not even for a short time.

All great loads have to be powered separately from the Arduino, so that their supply current will not flow through the Arduino. If you are using a powerful USB supply, you have to split the power lines, before giving the voltage to the Arduino. You can connect the USBs 5V pin to the 5V pin of the Arduino and to the LEDs. If you are using a power supply with a higher voltage than possible for your LEDs, you have to buy an extra regulator, that also capable of providing the needed current.

Important note: Since you didn't specify, how you are connecting the RGB LEDs, you also have to take care about the current limit of a single pin. It should not exceed 20mA, 40mA at the absolute maximum. So you cannot drive the LEDs directly. You will need a driver for then anyway. The simplest way is a MOSFET, that is capable of sourcing the corresponding current. It is then controlled by the Arduino, which needs very little current for it.

  • I thought this too - but I’m drawing far beyond the 5v pins limit, and nothing is fried. The Arduino still works fine after a 12 hour run with an 8A draw. – Don P Jul 25 '18 at 22:22
1

If the 5V source is the barrel jack, (like from a 7.5V or 9V source), than you may be able to get up to 800mA to 1A from the 5V pin. There is a reverse polarity diode that is rated for 1A. The 5V regulator is only rated for 800mA. It does not have good heatsinking, and will overheat and shut before you see 800mA tho. USB, well, you may get 500mA from that, if the source doesn't shut down first. If it doesn't, then the 500mA inline fuse should open.

You really need a seperate source for 5V for power to the strands. Be sure to connect the Gnd from the source to the Arduino Gnd.

What kind of RGB LEDs are you using? WS2812B type LEDs?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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