Using a spare PIC16 microcontroller from the Inukshuk project, I designed and built a binary clock. I used a DS1307 real-time clock, and an LED matrix driven by a MAX7219 driver to display the time. I coded the clock in C.
The binary clock displays the day of the week in addition to the time, and the time is settable via buttons. 24-hour mode can also be toggled on and off. I incorporated a photoresistor into the clock, enabling automatic display brightness. This eliminates excessive glowing at night, while ensuring the clock is visible during the day.
The clock currently uses a prefabricated RTC board that includes a backup battery. The next stage of the project will be to manually create a RTC module with backup battery, power the system via USB rather than via the PIC development board, and mount the electronics inside a case.