Alright, I'm trying to create I guess an LED matrix display(?) so that I can make essentially a text display using 8x5 LEDs per letter, to make 11 letters in total. I'm definitely willing to learn a lot and NEED to learn a lot as I have little experience with something like this. My goal is to be able to display individual letters to make the display show like "Hey there" using 5x8 LEDs for each letter.

I'm looking to use possibly an arduino device, but as they have limited inputs, and I need about 440 inputs.. how would I make this work? I've researched a bit and it seems I could do something related to this https://www.circuitspecialists.com/blog/build-8x8-led-matrix . Would this be my best bet maybe? How would I extend this from 64 to 440 in terms of delivering it to the arduino device?

Also I would like to ask what arduino device might be best for this, and what accessories I might need that aren't mentioned in that page, if the provided link is a good idea.

Edit: Sorry for being somewhat vague. I'd be using 5mm Red LEDs and I only need to be able to turn on and off each individual LED. https://www.circuitspecialists.com/bag-red5mm.html

  • \$\begingroup\$ arduinos don't emit light. It's unclear which bit of the light emitting system you think is too expensive. Perhaps you start with defining the light outputting part, how much power, what size, what colour or RGB, and then work back through the drivers to the controls. \$\endgroup\$
    – Neil_UK
    Oct 21, 2018 at 5:33
  • \$\begingroup\$ Are you looking for off the shelf or are you going to design your own custom PCB? If custom, is $75 too much for the LED driver chips? To have a constant current LED driver for each LED would be about 16.5¢ each. Could be programed with a serial data steam. Two GPIO pins would do it. \$\endgroup\$ Oct 21, 2018 at 5:44
  • \$\begingroup\$ I'd missed the edited addition of, "I only need to be able to turn on and off each individual LED." Does this mean that you will only ever have one LED on at a time? If so, most of my earlier (now deleted) comments aren't/weren't of much use and I apologize. That's a much, much, much easier problem. \$\endgroup\$
    – jonk
    Oct 21, 2018 at 9:43

3 Answers 3


I would start the design by looking for off-the-shelf LED driver IC (ie. google "led matrix ic").

For example the LE171596A allows you to control 96 LEDs, so you would need ~5 of them. The chip costs around $9 at Mouser.

The driver allows you to turn on and off a single LED (or groups of them), so in order to display anything meaningful you need to update the driver registers all the time (think: just like dynamically driving a 7-segment LED display). To achieve that you need a fast MCU with SPI and DMA. It may be too much for a classic AVR (like ATmega328), but an Xmega could do it. Also pretty much any Cortex-M with DMA is suitable for this task.

Once you figure out what to build (the components) you need to lay them out on a PCB. I guess that 4-layers will be the minimum to get any decent spacing between the LEDs. Fortunately you can order them easily for China.

You've chosen THT LEDs - this brings the problem, that if you pack them tightly there will be no space for other components on the other side of the PCB (capacitors, driver ICs). SMD LEDs are much more suitable for matrix displays.

Finally you also need a low-voltage high-current power supply. These are also available off-the-shelf (eg. MeanWell). If the voltage is too high the drivers will dissipate too much power (and go into self-protection or blow up).


Some options:

  • use a LED matrix, with your own row and column drivers. 8 row + 55 column outputs needed, a common approach is to use shift registers for the columns. TPIC6B595 might be a good choice because it can sink a lot of current.

    => best choice if you want to learn a lot

  • use LED driver chips. MAX 7219 drives 8x8 LEDs, so you would need 7. A module with a max7219 + 8x8 LEDs can be bought for less than $1 from China...

    => best value for money for a small display

  • use serially addressable LEDs, like WS2801 or WS2812.

    => recommended if you want to have a lot of room between te LEDs. And they are RGB!

  • buy a ready-made LED panel with built-in (multiplexed...) drivers. A 64x16 panel is < $10, but shipping cost doubles that price.

    => best choice if you later want to extend your expierence to larger displays.


You don't say what "break the bank" means exactly, and you should realize that one of the first things an engineer will (and should) ask is, "What, exactly, are the requirements?" In this case, is 40 bucks for drivers OK?

This trick is to get away from the multiplexed matrix approach and go with the serially-addressed approach as Wouter suggested, but using a home-brew serial network rather than LEDs with the ability built in.

The standard IC for this sort of thing is the 74HC594. One will provide 8 bits of drive, so you'd need 55 or so. Jameco, for instance, will sell them for about 65 cents apiece.

The idea is to hook them up into one long string, and update the entire array in a single 440 bit burst. For instance, if you use an output clock rate of 1 MHz it will only take 0.44 msec and this will be invisible.

You'd also need 440 current limiting resistors, but since you'd be buying in bulk you should be able to get with less than 10 bucks for those.

Finally, you'd need a 5 to 6 volt power supply, and assuming 10 mA per LED you should size this as 5 amps.


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.