Designing a good clock takes a lot of considerations. It’s not just hands, faces, and numbers anymore; there are also word clocks, electronic clocks, marble clocks, or water clocks, and just about anything else imaginable can be used to tell time. Of course, electronic clocks are great for their versatility, and this one shows off an analog-looking clock that is (of course) digital, leveraging all of the perks of analog with all of the upsides of digital electronics.
One of the key design considerations that [Sasa] had while building this piece was that it needed to be silent. LEDs certainly fit that description, so the decision was made to go with an WS2812b ring. It runs using a STM ST32F103 Nucleo board (and a cheaper version of it in later versions of this clock) which shows a red LED for the current hour, yellow LEDs for the traditional analog clock divisions, a green LED for the current minute, and glows the rest of the LEDs up to the current minute with a rainbow pattern.
This is a really clean, simple build with good design at its core, and would be easy to replicate if you’re looking for an eye-catching clock to build. As a bonus, all of the schematics and code are available on the project site, so everything you need is there. If you’re looking for more inspiration, there are some clocks that are even more unique, like this marble clock that is a work of art — but is anything but silent.
12 thoughts on “Analog Clock Goes Digital, Or Vice Versa”
The STM32F103 seems like a bit of overkill for this. Perhaps he chose it for the inbuilt RTC.
I made something similar but I used an ATmega and a TXCO RTC (DS3231). Mine had buttons to set the time and I was unhappy with that. I want to rebuild it but this time I don’t want buttons.
I tried GPS but it doesn’t work so good indoors. Then I couldn’t decide weather to use a ESP8266 and NTP or a HC-06 and make a bluetooth phone app.
Or I could use an ESP32 with both wi-fi for NTP and Bluetooth for a smartphone app and it can drive the LEDS as well.
And that’s how it happens …
The ESP32 seems like a bit of overkill for this. Perhaps he chose it for …
At $2 / board from eBay, the STM32F103 boards aren’t really overkill for anything, IMO. You get a voltage regulator, USB connection, an LED, a reset button, and even two rows of pinheaders thrown in for the price, too.
They’re practically jellybeans.
Exactly. I picked STM32F103 intialy because I had it laying around but BluePil is $2 which is dirt cheap. You can de solder the IC and solder it on your board, or if you are making it for open-source open-hardware community, people can make it on their own with really low BoM and no need to make their own PCB.
If you design your RTC oscillator right, your drift is going to be negligible over a span of year or two, especially since you are looking at minutes, not seconds.
Elegantly simple looks with much of pretty colors.
I wonder how it would look like during daytime (in bright sunlight) or during the evening (when it’s dark). If birghtness is a problem it could be easily fixed as the device already knows the time, so brightness of the LED’s could be a function proportional to the time of day (saves a sensor).
Or perhaps even a nighttime mode, where the colorful ring is non present, saves energy too.
Anyway, cool project!
PS: regarding the components used, who cares? If it works it works, power consumption cannot be an issue, otherwise why some many LED’s lit at the same time. Size of a “overkill” uC is almost the same as an “almost under powered” one. So in the end it all comes down to what’s left in the parts bin or what you are most comfortable with.
Don’t underestimate those LED’s. They’re frickin bright, even dimmed down. That’s why I added the sensor to my linear RGB clock back then…
@ power consumption: it might get a problem though. Those LED’s suck 60mA full on white (worst case I know). That’s 3.6A at 5V… Of course this is not what the clock is intended to do, being full bright white but you get the point. @ 20mA per LED that’s still >6W from the outlet.
Saving energy is always a good idea!
Thank you for the feedback, really appreciate it!
LEDs are driven at around ~60% brightness from 7AM to 8PM, then they dim to 40% brightness since you don’t want them lighting up your whole room (or maybe you do so just comment that line in code) :)
And during day time it’s super easy to read, even when sun is shining directly on the LEDs. :)
It’s interesting that definition of Analog has become “not digital”.
So what’s this then –
In case of the clocks analog is a bit of a misnomer. We just borrow the analogy from other domains where it’s less incorrect.
Mechanical digital is still digital.
Awesome! I understand that the clock the article is about solves a problem for the creator, but these old mechanical clocks are a marvel. A synchronous electric motor for a time base, creative mechanicals and you get a cool clock that runs for decades. I wonder how many of the LED ring clocks around now will even be powered on in a few years.
Depends on how the clock was built I think. User-controls do have a big influence here. If you build a clock which can only be set over bluetooth via proprietary app, no-one will know how to set it anymore in a few years.
If it has a few clearly labeled buttons to set the time (and a standard button cell for battery backup) chances are much higher it will survive a few relocations.
Please be kind and respectful to help make the comments section excellent. (Comment Policy)