Now that the hardware for the clock is pretty much all done (the temperature sensor should be here soon), I have been mainly just working on the firmware. Part of the trouble with this project is timing of the processes. Because the LEDs are multiplexed, display functions have to be refreshed every 2ms or so. This complicates a lot of the other functions such as gettime (get current time from registers on the RTC). On the one hand, I could have it update the time per display refresh, but that will lead to redundancies (you really only need a refresh every second, instead of 2ms). On the other hand, I want the semi-colons to be flashing on the second (so I will need to be updating every 0.1s or so). In the end, I settled for a timed loop so that I could refresh every X display refreshes, and chose a rate of about once every 200ms. It’s fine for now so I will stick with it until further troubleshooting proves it to be otherwise. These timed loops are a savior as I want different systems to update at different times (dates, for example, update every minute). PS – Good to be in the great outdoors again.