Archive for December, 2007

GPL’d clock software released


As promised, the software is released under the GPL (v3) at (only available in a subversion repository right now).

A slight flaw was detected in the hardware design (schematics and pcb) in the last week that made it not work, so rather than release something that is known not working, I’m gonna fix it and then release. There is an easy workaround for the flaw, but no sense anyone printing boards that don’t work as-is. So the hardware design files are coming soon. Stay tuned.


presentation today


I gave a short presentation on my project today in class.

I took a picture of the face from an analog watch I have and had my clock display the picture behind the hands:
Yes, the “3” is a slightly modified version of the “8.”

a word of warning


Don’t plug a 7.5V battery into a device with a maximum 5.5V tolerant dc-dc converter and a maximum 6V tolerant capacitor.

the printed circuit board works! (sort of)


After a day of wondering why the microcontroller + crystal didn’t oscillate at all, it was discovered that the 4 pin crystal was wired backwards (4321 instead of 1234). Two methods of fixing this were attempted (rotating the part 90 degrees and shifting the part on the circuit were both found to connect the two leads that were crystal to the microcontroller’s xin and xout). Both failed. It is unknown why. Guesses include using the wrong capacitance crystal, or blowing up the oscillator inside the microcontroller in some way. My vote’s on the latter at the very least since the prototype used a crystal with the internal oscillator and worked fine since September until two days ago but doesn’t oscillate anymore with a crystal.

Then, after a couple days of worrying about why the crystal didn’t work, full-size oscillators were aquired instead because that’s all that could be found locally (parts kit + electronics supply store). Both the prototype and the circuit board now function with external oscillators. The circuit board looks a little funny with such a large, non-surface mount part hot-glued to it. Not really as elegant as I wanted, but it works.

The vectorboard pictured below is just for the temporary jtag header for programming.


but functional:

the arm7-oled-clock pcb arrived!




Here’s what it looks like populated (click for full-size):




Tonight, I got two things done. The first I named “vectored calls,” where I can have the clock display a completely different face based on the mode selected with a rotary encoder. The second is that now it displays latin numbers around the clock hands instead of just dots. See the pictures below.

As it was earlier today, with dots (red=hour, blue=minute, green=second):

After I did the numbers thing (I think my 9 is a little wonky):

And here’s a pic of the whole circuit board along with it just drawing the ends of the hands:

Note that I was able to take the pictures in quick succession because the vectored calls let me select the different display modes just by turning the knob (yes, I retook the last one a half-hour later).