Here is an Arduino controlled Charliplexed LED heart just in time for Valentine's Day. It uses a total of 6 wires to controll the 27 LEDs. A PIC or AVR could easily be used for this, but I have Arduinos lying around and they are easy to program. Plus I want to be able to have input options later when I have time to write them.

Go here for a great explination of Charliplexing.

Update 5/20/08:
I've actually made a kit for this, and I'm now taking pre-orders on my website. I also created a flash-based animation programmer. Check them out and let me know what you think. The programmer generates the newest version of the code, so it will still be a useful tool if you make your own heart. You will just need to change out the LED array with one that maps to your own.

Update 2/12/08:
I've updated the software to v 1.3. I found a function called PROGMEM in the avr/pgmspace.h library (included with Arduino software) that allows you to write directly to the Flash ROM. That now gives about 500+ frames of animation, and is an extremely easy thing to implement. You can check out the new software here.

Two of my friends are currently working on getting a bitmath version that should increase this even further (to around 4,500 frames), but while working, it is not very easy to work with in creating animations. I'll release that once I have my Processing program up and generating the animation codes.

Update 2/11/08:
I've put the schematic on step 1. There is a direct link to it on my flickr as well.

First Animation

Second Animation

Step 1: Required materials

- 27 LEDs I would suggest red, but these would be cool too.
- 6 resistors to match your LEDs I used 100R, but go here to figure it out yourself.
- 6+ wire cable, I used Cat5 because I had it lying around
- soldering setup
- some type of prototype PCB, I used this one from Radioshack and it fits the heart perfectly.

Update 2/11/08:
Here is the schematic as viewed from the top. You will want to review that before, during, and after building. Once it is built, you will need to test thoroughly. Each 2 wire combination to a battery should light up one, and only one, LED. If 2 light up, then something is wrong. There will be 3 combinations that won't light anything up, so don't worry, and just make a note. If more than 3 combinations fail to light up, then you probably have a short, or a fried LED.
<p>Hello, I have the new version of your heart, but i can't find the schema for the pin of the arduino ? Can you tell me this please ?</p>
<p>Ok so on the schematic- that is &quot;viewed from the top&quot; so I am assuming that is meaning from the side where the LED light shines from? So when I am on the back side soldering leads the image should be mirrored so that all connections match up correclty?</p>
<p>Hey could you mark on the schematic where you connected the wires respectively? your pictures of the wires are not very clear. Thanks </p>
<p>nice job! do you have a regular schematic for this project that has the arduino and the leds together.</p>
<p>What size LEDs did you use?</p><p>I can buy a pack of 5mm LED's but I want it to fit</p>
<br> <div class="media_embed"> <object height="385" width="480"><param name="movie" value="http://www.youtube.com/v/FPcJ-hUoD-0?fs=1&amp;hl=en_US"><param name="allowFullScreen" value="true"><param name="allowscriptaccess" value="always"><embed allowfullscreen="true" allowscriptaccess="always" height="385" src="http://www.youtube.com/v/FPcJ-hUoD-0?fs=1&hl=en_US" type="application/x-shockwave-flash" width="480"></embed></object></div>
Made one of my own on PIC12F675 (coz i'm into PIC mcu world :] ). Driving 16 LEDs on 5 pins. Take a look here: http://www.youtube.com/watch?v=FPcJ-hUoD-0
hello jaypee 4227 are you sure that your schemantic is correct ?? i have built the same and something is wrong :-/
Fun project! I built this for my valentine and it dazzled her so. Turns out she's a demanding ladyfriend and wanted to see the project go further. So as per her request it now pulses along to the music. Soon it will all get stuffed into a yo gabba gabba plex doll. Your polished code was quite an asset. Thank you! flickr vid: www.➡.ws/念
Wow, that's really cool. Your link was broken, so I had to look you up. Here is the link: <a rel="nofollow" href="http://www.flickr.com/photos/moosebumps/3327504758/">http://www.flickr.com/photos/moosebumps/3327504758/</a><br/> I'm going to do a writeup of this on <a rel="nofollow" href="http://blog.jimmieprodgers.com">my blog</a>. Do you have a copy of the code online?<br/><br/>Great build!<br/>Jimmie<br/>
Wow! thanks for the blog feature and fixing my poor link. I will get the code posted this evening and drop you a comment. Thanks again.
finaly i found a program that works with no errors ty vm!
Great project. I don't really see the C shapes, could you mark the positions somehow on the schematic or give the numbers of the LEDs with pin to which to solder?
what size are the leds you used?
I suggest using the I/O port registers for setting the state of the pin. It uses less cycles and would be faster, thus improving the quality of animation.<br/><br/><a rel="nofollow" href="http://www.arduino.cc/en/Reference/PortManipulation">http://www.arduino.cc/en/Reference/PortManipulation</a><br/>
Really cool Instructable! Very nicely done, it's really cool. And awesome job winning the random prize! :P
looks kool.. got a schematic? the photos are a little confusing on thier own :)
Just added it to step 1. Here is a direct link:<br/><a rel="nofollow" href="http://www.flickr.com/photos/jaypee4227/2258491228/sizes/o/">http://www.flickr.com/photos/jaypee4227/2258491228/sizes/o/</a><br/>
you could add this to a nice box with an on/off switch as well, instead of the normal gray project box, why not try to put it inside of a jewelry box lid
I've actually got a plan to make a PBC for this, so that it could function as a broach, or be pined onto a bag easily enough. I'll update my <a rel="nofollow" href="http://blog.jimmieprodgers.com">project blog</a> once that stuff is done, but between school and work, my time is limited. This is just the prototype, and I uploaded it early because of the &quot;Get the LED out&quot; contest.<br/>
<em>I've actually got a plan to make a PBC for this, so that it could function as a broach, or be pined onto a bag easily enough.</em><br/><br/>Avoid Logan Airport here in Boston. The natives are a simple and ignorant people, easily frightened by glowing lights on one's clothing.<br/><br/>See: <a rel="nofollow" href="http://www.boston.com/news/globe/city_region/breaking_news/2007/09/mit_student_arr.html">http://www.boston.com/news/globe/city_region/breaking_news/2007/09/mit_student_arr.html</a><br/>
I actually live in Somerville, where that whole ATHF thing happened (1-31-07 nevar forgit!), and I remember when the whole Logan thing happened as well. Somerville is actually generally pretty cool about such things, and the thing about the city being paralyzed for a while isn't really true. They closed the Sullivan T stop for about 2 hours while they tried to determine what the device was, and then the media took hold of the story and ran with it. I guess it's more sensational when people are "paralyzed with fear". As for Star Simpson, the stories I've read seem to convey that it wasn't as much the device, but her confronting officials asking her basic questions. However, I've not spoken with her directly, so I'm not going to pass any kind of judgement. Once I get this thing finished, I'll be sporting it around town, and I doubt I'll get anything other than "wow, where can I get one of those?"
I'm in Mattapan myself. I was listening to the police scanner, and I heard the following on one of the media feedback channels: "Aqua Teen Hunger Force? What the hell is that?" I then knew instantly what was going on. My only regret was that the weather had been so filthy for a while, that I wasn't doing my usual walking about the city. My usual routes lead me past two or three of the sites where these things were. It would have been easy to snag one!. BTW, nice job with the thing! The videos are impressive.
Added to the Arduino Group! ;D

About This Instructable


104 favorites


Bio: My name is Jimmie Rodgers, and I like to dabble with hobby electronics for fun. Visit my project blog for more things I've done ... More »
More by jaypee4227: Arduino Charliplexed Heart, just in time for Valentines Day.
Add instructable to: