LED Sign

Status: Complete

This is a project (for pay even!) for a friend of mine. He has an older (non-functional) scrolling LED sign that he would like to use as a caller-ID display. The controller board is completely dead, all it does is get all the chips nice and warm. 🙂 None of the chips are available anymore so I plan to use an ATMega16 to drive the display board. The power section and display board both work fine.

I’ll be posting pictures, schematics, etc as the project progresses and time permits.


Nov 5, 2005
Good news everyone! This weekend I had a chance to breadboard the circuitry and test out the software for the ATMega16. After a little tweaking I had text on the sign. Granted it was flickery and the letters are backwards (oops) but it is a start.

Breadboarded circuit Breadboarded circuit
Left to Right: Programmer, ATMega16, LED board interface Half of the LED matrix

Nov 7, 2005
I corrected the text problem, added a max232 to the breadboard and now have a working sign. Now the Mega will accept a string sent over the serial port and display it on the sign. I’m not too happy with the brightness of the LED’s however. The way the code is now, it refreshes the columns but I am thinking of changing the display code to refresh the rows. This would allow the LED’s to be on longer for each refresh (7 rows vs 96 columns) and thus be brighter. i just need to change the code to shift out the column data and toggle the rows instead of setting the row data and toggling the column.

At any rate, the hardware works so the next time I get some bench time I will solder the circuit and get the sign put back together. Then all that is left is to optimize and tweak the software.

Nov 8, 2005
Partial schematic.
LED Sign Schematic

Nov 13, 2005
Finished PCB board.

Schematic 1

Schematic 2

Schematic 3


Nov 18, 2005
Poor quality webcam picture of the populated PCB.

Now I need to mount the new PCB and reassemble the sign. After that it is just software tweaking until it works the way Josh wishes.

November 19, 2005
Better quality pictures.


There was one small error on the first PCB revision. The Gnd pin on the 3 pin serial connector was hooked to Vcc instead of Gnd. I corrected this with a small wire.

December 23, 2005
I seem to have destroyed both Mega16’s somehow. This project is on hold until I can figure out what is going on with my programmer. 🙁

December 31, 2005
It turns out my programmer was causing problems. I built a different programmer and revived the Megas using an external clock source. The pcb works fine and the sign is now working just as it was when breadboarded. A major code rewrite is in order for better display refreshing. The easy way that I did it is not able to make a bright enough display at a non-flickering refresh rate.

January 2, 2006
The sign is finished! The operation is pretty basic, I wanted to keep the cost low. The sign accepts text strings over a serial connection and displays them. A newline character terminates the string and causes it to be displayed. A newline character with no preceding text will clear the display.

Sign 2

January 21, 2006

Created README.txt file.