Arduino Current Sourcing for Common Anode RGB

Is it safe for the arduino to sink more current then the arduino is sourcing? (see diagram below)

My project requires 12 of large 10mm RGB leds,  broken down this is 36 leds in total, which exceeds maximum draw,  the design calls for the LED's to share a 5v+ from a seperate 5v regulator, then sink each pin to low to turn them on

is this correct?

Picture of Arduino Current Sourcing for Common Anode RGB
sort by: active | newest | oldest
iceng8 months ago

A nice drawing deserves another...

Be sure to click the pic, to view the whole image.

iceng iceng8 months ago

A 5V emitter follower common cathode LED version


OK, if you have the head room on the drive to overcome the load drop.

Cant imagine the OP will respond or even knows what is happening..

iceng8 months ago

Maybe you seek a lower power driver like a MOSFET with resistor adjustment for each LED Forward Voltage.

Be sure to click the pic, to view the whole image.. -.-. . --. -.

seandogue8 months ago

Ideally, you want to ~isolate the Arduino's I/O circuitry from real world loads by using an intermediary circuit for driving loads.

Downunder35m8 months ago

It does not really matter which way you look at it if you look correctly.
An Arduino is a microcontroller but not a power switch.
That mean logic levels only but nothing to power things up.
All pins on most Arduinos are designed for little electronics projects and if you check the Arduino Playground you will realise that everything else runs through transistors/mosfets and external power supplies.
Create a nice matrix for your LED's and reduce pincount this way.
Then use suitable transistors and current limiting for the LED colors and you are good to go.

steveastrouk8 months ago

Depends on the current, which you don't state. Not only is there a PIN limit, there is a port limit, and a PACKAGE limit which mustn't be exceeded.

Broadly, you must sink NO more than 40mA per pin ABSOLUTE MAX, and happier to stay at 20mA, and NO MORE than 200mA, all up, on all pins.

The best way to do this is to use drivers designed for it, like the ULN2803