Charlieplexed row of LED lights, for the Arduino

PrintPrint PDF FacebookFacebook TwitterTwitter Send this to a friendE-mail
by computergeek
 

introCharlieplexed row of LED lights, for the Arduino

 This is my instructable on charlieplexing a LED row/string with the arduino. I noticed that there weren't many instructables on charlieplexing using an arduino, so i made this. I tried to keep the project simple, but that didn't work very well. The soldering is complex, I wouldn't recommend this as a first time soldering project.

Here's some background on charlieplexing: en.wikipedia.org/wiki/Charlieplexing

I took about 80 pictures & not all of them made it into the main steps, but you can find them in step 9: Extra Pictures

If you have any comments, questions &/or suggestions please ask them!


 
Charlieplexed row of LED lights, for the Arduino
100_4144.JPGCircuit.png
 
Remove these adsRemove these ads by Signing Up.
 

step 1Parts List:

Parts:
- 12 LED's; I'm using some 3 mm Red LED's
- 4, 270 Ohm resistors; You can use other values as well
- Perfboard/Veroboard; I used a piece 27 holes x 5 holes
- Wire; I used some 26 gauge, solid core wire
- Header pins (optional)
- Arduino

Tools:
- Soldering Iron
- Hot glue gun (optional)
- Helping hand (optional)
Parts List:
100_4033.JPGCircuit Diagram.png
To Download the PDF or View All Steps,   
Become a Pro Member »
19 comments
Sep 7, 2010. 7:17 AMnoik says:
open it with notepad and copy it to your arduino program, should work
Aug 26, 2010. 12:28 PMRobot Lover says:
How could I do this with 22 LED's?
Aug 8, 2010. 11:33 PMidiotjohn says:
also on a different point, is it possible to change the pins used? I see that there is a place to define them, but even if i change them there, it does not change it.
Aug 8, 2010. 8:40 PMidiotjohn says:
I made it and got it all working without any modification of your code. I went through labeling each LED, using the turnon() function. When I ran turnon(12); it turned on the LED that I had previously labelled as 4. I figured my soldering or something must be wrong... BUT, when I ran the sequence, it ran correctly, all I had to do was place LED 12 in front of LED 1 and then it works. I am very very confused. John
Aug 3, 2010. 11:24 AMVick Jr says:
I wired everything together, all the leds can turn on, and the cylon scanner works, but when certain leds turn on, other random ones will glow dimly. Is this because I left out the resistors or does it mean there's a short somewhere? This is my first charlieplexing project and although it's not perfect, I'm still glad it partially works. thanks!
Aug 3, 2010. 8:25 AMVick Jr says:
Are the resistors there to protect the LEDs? If the arduino is using around 3 volts then can we skip them? I made a cylon eye scanner that works fine with no resistors. I'm using blueish white xmas light LEDs, so they might take higher voltage anyway.
Jul 6, 2010. 8:14 AMsarath12445 says:
i am not able to download the code... it is downloading as .tmp format and not as .pde
Jun 23, 2010. 11:16 AMtonysofla says:
It's easy to include some type of PWM dimming as Charlieplexing is already a type of duty mode. If counter is higher that fade value, just skip that LED this time.

I have 8bit level PWM here:
http://www.youtube.com/watch?v=8apRaZQbv5w
Feb 16, 2010. 7:04 AMnoik says:
 Yes, I managed to make it work.! Thank's al lot, for this great instructable, :)
Feb 16, 2010. 6:35 AMnoik says:
 Code doesn't work with my arduino, it gives a error. 
Nice instructable!

Oct 26, 2009. 7:11 AMnolte919 says:
I know it would be a pain to change at this point but your schematic is a bit confusing.  I think you call it "Circuit Diagram.png".  It appears the red wire coming from pin 3 through the resistor is going to BOTH the anode and cathode of the three pins it's attached to.  After a little thought it's clear you meant it to go only to the cathode but this might be more confusing to somebody else.

Great instructable.
Oct 21, 2009. 5:49 AMWyoJustin says:
Sweet!  Clever design. Great instructions.  Great photos.

Nice work.
Oct 21, 2009. 3:07 AMrichms says:
An easier way is to put half the resistance into each of the wires, and then you can swap the polarity of 2 neighbouring LEDs to get less of the looping around connections happening.
Oct 21, 2009. 2:47 AMbeardy says:
 Brilliant!  Thank you.

Seems to be a relatively 'simple' how-to.  I've been wanting to do this for a while but have been a bit bamboozled when it comes to actually wiring it.
Oct 7, 2009. 4:25 PMDarkStarPDX says:
Dude, I'm thinking that we need to replace those LEDs with some 12 volt relays and wire up some real lights onto the back of the car! :-)
Oct 7, 2009. 1:12 PMBongmaster says:
looks fun and complex O_o