Another way to look at Charlieplexing


Charlieplexing is a technique that allows you to drive a larger number of LEDs than wouldn’t be possible with the same number of I/O pins on a traditional multiplexed matrix. If we lost you there just think of it as lots of blinky lights connected to a small number of pins. It works by leveraging the one-way nature of a diode. Current will only flow through an LED in one direction so if you hook up your display in a clever way you can drive multiple LEDs from one I/O by switching the polarity of that pin between voltage and ground. [M.Rule] recently looked at using Charlieplexing with LED modules. His conceptual approach to the problem is different from those¬†we remember seeing before and it’s worth a look.

Instead of just using the formula to calculate how many LEDs he can drive [M.Rule] is using a table of I/O pins to establish how many and in what order these displays can be connected. Each colored set of blocks represents an LED module. The graphic above shows how 18-pin can be utilized. He even filled in the unused pin combinations with input buttons.

7 thoughts on “Another way to look at Charlieplexing

  1. Great writeup! Detailed, good figures, easy to understand. All writeups should strive to have the same quality as this one. Plus who doesn’t love the blinkenlights ;)

  2. This is really brilliant work!

    Except that, at hobby level, i would always prefer to make a tiny board with shift registers+driver on each led array. Then all boards connect with 6 wires.

  3. Where is a good place for a tutorial on this? I’d like to make a big audio visualizer display in my new house (one day if I can stop buying every electronic along the way). What are some other good electronic projects places as I trying to learn more by building, seems to make more sense to me that way.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s