The build

I was going to build it all on a prototyping pcb, which normally would be brown-ish. For my purposes, it would be best if the white color of the active segments would contrast with the background as much as possible, so the first course of action was to paint it black. I put duct tape on the side with the copper, so paint leaking through the holes wouldn't mess up my soldering later, and took a spraycan.

Next up were the resistors. Because I decided to make the segments 5 resistors long and the clock needed 3*7+2=23 segments, I ended up soldering 115 resistors end-to-end.

I still needed to put the paint on the resistors. My first idea was to cover as much of them as possible. Because the paint is water-based and the resistors aren't really water-absorbent, the paint chipped off fairly easily, so I coated a layer of silicon-based glue over it to protect the contraption.

And then, on to the testing. Unfortunately, I found out that the layers of paint and glue insulated the heat way too much. I fiddled with heating times quite a lot but the end result always was a set of resistors that either heated up too little, making parts stay grey, or too much which meant the segments stayed white long after one minute has passed:

I decided to rip out all 115 resistors and try a different approach: I soldered together 23 new segments and sanded the top of them for a bit to roughen up the surface. I then soldered them on the PCB and painted only the top with a thin layer of paint. Because of the sanded surface, the paint didn't chip off nearly that easily.

That worked a lot better.

Now, all that was needed was some time-keeping firmware and a routine to convert the binary time to an array of segments to light, to be shoved into the '595 shift registers. I also coded in an extra feature: the software will make sure not to heat more than 3 segments at any time, making sure I can run the clock from one 12V/1A power supply. As usual, the software is licensed under the GNU GPLv3 and can be downloaded here.

« Prev 3 Next »

© 2006-2021 Sprite_tm - Contact