Powering Large Numbers of LED's With One Pin

I have been researching the Arduino and designing a project for a while now but came to a snag and I need advice. I would like to power large numbers of LED's (35+) with one pin from the Arduino. For simplicity, just imagine the Arduino controlling an 8 x 8 matrix of LED strips containing 35 or more LEDs. Could I run all the LED's in parallel and use a transistor such as the 2N3904 to up the current? I'm just having trouble figuring out what voltage source to use and how to properly power the large amounts of LEDs per pin (and collectively).

If I'm not explaining myself properly I can try to draw up a visual to help.

Thanks in advance for any advice.

-Brad Harbison

Yes you can use a transistor to get the current up. Note that each LED will need it's own current limiting resistor.

I’m not sure that a 2n3904 will be able to supply the needed current for 35+ LEDs (what kind of LEDs? what’s their specs?)…

LEDs are 3.5V, 20ma, and power dissipation of 100mW. From what I’m reading here, the Arduino can perform the task I’m looking to do. So I need to use an external power supply to power the LEDs and use the Arduino to switch on the LEDs with a relay or transistor? That seems simple enough to me now… is it that easy though?

is it that easy though?

Yes, it is that easy. Choosing the correct external voltage, current capacity and rating for the switching device are important part of a successful design to power the load device(s), but it is that easy.


Pretty much one of these circuits.
If you have a higher voltage source you can put more LEDs in series, and then put the LEDs strings in parallel to the same transistor pin, selecting a transistor that can handle 20, 40, 60, 80, 100 mA, however many strings you put in parallel.


Note that each LED will need it's own current limiting resistor.

Each series string of leds will need it's own current limiting resistor. Many leds have a forward voltage drop of less than 2v which means that you could power two of them in series from an Arduino pin with a single series current limiting resistor. You could control a string of more than two leds in series with a single current limiting resistor using an Arduino pin and a suitable transistor (as shown in the previous post) if the LEDs are powered from a higher voltage. You could also use several such strings and each of those strings would require its own current limiting resistor.