Lite Brite pegs look like LED's don't they?  That's what I though the other day after working on an LED cube for a few hours.  I happened to see my daughter's Lite Brite sitting there, and I looked at the pile of LED's on my desk.  What a perfect match!

In this instructable I will show you how to make a Lite Brite clock using a Lite Brite, an Arduino, 46 LED's and a few other miscellaneous parts.

This project is an upper-beginner level project.  The most difficult part of building the Lite Brite clock is the soldering.  The soldering is fairly detailed and intricate.  You can very easily short two leads or two wires together, or break solder joints when you're closing the project up.  You need to be very precise and detailed in your inspection of your work.

The code I wrote is fairly straightforward, and you can either just use my code, or use it as an example to come up with your own.  I don't claim to be a programmer, but i get by.

You can find more about the Lite Brite clock at my blog at http://www.meanpc.com/2012/08/arduino-lite-brite-clock-project_3.html

Ready to build?  Let's go!

I documented nearly the entire build with a video camera and photos.  Watching the video is not necessary if you follow the steps, but it might help you through some tricky parts.  Always be sure to defer to the written instruction when there is a difference.  I changed my mind about several things during the build and they had to be redone - but I left the video intact so you could see the entire process.

Step 1: Parts and Tools

Note:  The parts in the following list have changed since the video was shot.  Use the parts below.


1 Lite Brite
1 Arduino Uno or equivalent. 
46 LED's - I used 5mm.  Diffused LED's will save you some work.
Twelve 100 ohm 1/4 watt resistors
Hookup wire - 20 or 22 gauge, or both.  For wires connecting to the Arduino, I recommend 20 gauge for a tight fit.
Small perfboard, breadboard or whatever you would like to use to mount the 12 resistors feeding each column of LED's.  I used a small piece of perfboard.
Velcro - applied to the back of the Arduino and perfboard and the inside of the Lite Brite to secure the electronics.
Black construction paper - alternatively, you could use some of the paper that came with the Lite Brite if you still have it.

Needle nose pliers
Diagonal cutters
Wire strippers
Soldering iron
Sandpaper or sanding block if you don't use diffuse LED's.  I used a 320 grit sanding sponge.
Optional - alligator clips - I found these very helpful when testing the LED matrix.

<p>Congrats on this really awesome and well documented project.</p><p>Do you think that by adding two more vertical columns of LEDs we could turn this into a Military type clock (22:00 instead of 10:00 o clock) ? Are the arduino pins sufficient, or do we need to add more hardware apart from the 8 LEDs and the two resistors? Of course I will need to alter the code....</p><p>I m thinking of starting this project in about a month...</p>
<p>Awesome project! Made mine for a programming class, however there is one thing i recommend: Don't use red LED's they don't show up as nicely as green or yellow. Great instructable!</p>
Thanks a lot for this great tutorial! We made it! <br>There a couple of things I'd like to share with you from our making experience: <br>a) We marked the anodes of each led in advance so it was easier not to get mixed up between anodes and cathodes in the soldering process. <br>b) We discovered an error in the code. The following lines had to be modified for the second colon mark to lite: <br>digitalWrite(column[11],HIGH); <br>digitalWrite(column[12],HIGH); <br>digitalWrite(column[11],LOW); <br>digitalWrite(column[12],LOW); <br> <br>Change them to the following, so they correspond to the Arduino wiring as described above: <br> <br>digitalWrite(column[10],HIGH); <br>digitalWrite(column[11],HIGH); <br>digitalWrite(column[10],LOW); <br>digitalWrite(column[11],LOW); <br> <br>Great job and thanks again!!
This is my first project using Arduino and I am quite new on the programming scene. This is a really great instructable and seems to cover all of the details. Although I have encountered a small problem. I can't seem to program my Arduino with the program which you have provided. The Arduino programmer is telling me that certain lines &quot;Aren't declared&quot;. As I have said, I've never used Arduino before so I have no idea what this means. <br>If you could help me out with this problem I would greatly appreciate it.
Hi there, I encountered the same problem. After some looking in the Arduino guide, I found that the Time.h library was copied to the wrong location. Here's a quote from the guide (source: http://arduino.cc/en/Guide/Libraries): <br>The library won't work if you put the .cpp and .h files directly into the libraries folder or if they're nested in an extra folder. For example: <br> <br> Documents\Arduino\libraries\ArduinoParty.cpp and <br> Documents\Arduino\libraries\ArduinoParty\ArduinoParty\ArduinoParty.cpp <br>won't work. <br> <br>Hope this helps!
Very awesome i been following your video tut for a while now. I'm also building a clock my self right now just wiring it i finish Soldering the anodes and cathodes now onto the wiring. Soon i hope to be finished and try out the coding on this.
I like your project and all the video tutorial. At the beginning of the project you said to pretend it was an Arduino UNO. What would be the code for using the analog inputs on an actual UNO or duemilanove. I asume you would have to change this: int row[] = {14,15,16,17,18}; <br> to something else. I'm a beginner...
Hi, thanks for the kind words. I'm a beginner too!<br><br>The code should work as is. Analog pins A0,A1,A2... can be used as analog or digital pins. You can reference them in your program as either A0,A1.... or as 14,15,16... It will work either way.<br><br>You building a clock? If you endup having trouble, drop me a line and I'll take a look.
Hi, I got really ambitious after viewing tutorials about circular infinity lights. I want to build a clock that is both. <br>thanks for your explanation on how to use analogs as digitals. I will have to scavenge for parts. <br>If i ever get it made I will post some pics.
lol epic music when you were putting the clock down
LOL, didn't even notice it! That music was from the opening cermonies of the Olympics.
Nice Job, I really enjoyed ur detailed explanations which made the job look very easy. <br>I think what i really want is a circuit without Arduino, please show us the circuit with complete chips and the programming
Hi, glad you enjoyed the instructable. The Arduino pin assigments are shown in step 10. Basically, I have the 5 rows of common cathodes going directly to 5 pins on the Arduino. The 10 columns of common anodes each go to a 100 ohm resistor, then to 10 pins on the Arduino. <br> <br>The code is listed in step 12. <br> <br>I'm afraid I can't help you with a non-Arduino design - I'm a beginner myself. Are you looking to go with a different micro-controller, or are you just going to do it with IC logic?
Looking good. Liked the way you presented the whole project.
Thanks! Making the Instructable was a lot more work than I though it would be. Very rewarding though.
Very cool! Now what will your daughter play with? ;)
Supposed to be buying her a new one - haven't done it yet. :) She better be careful - her Powerwheels is looking like a really solid outdoor robot chassis.
It looks awesome. Well done. :)

About This Instructable




Bio: Electronics are a newly re-found hobby for me. I'm not an engineer - I'm an ordinary guy who likes to tinker with electronics in ... More »
More by meanpc:How to Negotiate at Garage Sales How to Plan Your Garage Sale Route Using Google Earth (for EBay Sellers) Potentiometers and AnalogRead - How to Arduino #4 
Add instructable to: