This clock displays time in a unique manner:
With grouped, rectangular RGB-pixels. Hours, decadic-minutes and minutes each have their own colour.
As this clock is meant to be the main clock in my kitchen/living room, it had to feature a nice design as well, so I put lots of effort into the appearance of the clock itself and the "must not be visible" wall-mount.
Aluminium u-profile 22x 10x 630mm
Source: hardware store
miscellaneous laser-cutted aluminium parts (.dxf available)
WS2813 RGB LED strip (60LEDs/m). 34LEDs used.
Arduino Nano V3 (CH340 Type)
DS3231 RTC with breakout board
View all 8 components
03/05/2017 at 11:42 •
My recent version of the software does not support auto-brightness. The clocks' LEDs light up at value 64 of a possible 255. This is what I found suitable in a quite bright room, plus you can set the brightness +/- with the buttons on the back.
So, that's not very user-friendly at all. I don't want to manually walk up to the clock, set the brightness to be able to read the time and then be annoyed by the bright, colorful light later at night...
So, I added a LDR/resistor-divider to "control" the LEDs. It's really just four settings:
- dim room
- "normal" day, a bit overcast
- bright, sunny day
The LDR is a A905014 type, the resistor is a 5% 11K type. The sensor is mounted in the back of the clock because I don't want it to be visible. This means the value has some offset because it's always more or less "in the shade": no problem at all.
Implementation is straight-forward. NO smoothing of the sensor-value, the routine just looks if the value is within one of the four value ranges. Interval is set to 5 seconds, so bright/sudden changes of light won't trigger a brightness-change. There is a hysteresis anyway. It checks if the recent value is at least "amount x" lower/higher than the last reading. All values were found by trial and error. I found the LDR datasheet of no real use. The stated values are all widely spread.
The sensor is glued in and covered with black tape to make sure that no light from the strip or Arduino LEDs gets to it...
02/17/2017 at 16:43 •
Today I'd like to talk about what really annoyed me while building the clock. There were a few occasions I'd rather throw everything into the next corner than continue working. It's always worth looking at those mistakes to not make them again, right?
Case and front plate
- Using the smallest possible profile because design
This one got frustrating really quickly. I chose this particular profile to be pretty against the wall. This led to a "everything has to be cramped into the case"-situation. With the front plate pressed in there's as little as 0,5mm space left at some spots. I had to open and close it often to check for proper fit of this and that.
Solution: Don't be too selective next time regarding looks but think more about assembly!
- Screws are bad, like really bad?
Deciding to not use screws in any visible part of a design does need a lot of thinking to get it straight. It worked for me but was a PITA to get right.
Find the proper dimensions for the interference fit between front plate/spacer and profile. Working as an mechanical engineer helped a lot to get it right first time but anyway: Things have to fit properly and be easy to (dis)assemble. You have to guess the profiles springiness and hope that the laser-cutting company complies with the theoretical dimensions you sent them.
Solution: Regarding clean look there's not much to do here except maybe using different techniques (like clips or magnets) or really pretty, hard to get screws.
- Start building stuff without thinking everything trough
This is a general problem I have with most of my personal projects. I think like "ah, this is a detail I can wrap my head around later". Noooope, doesn't work that way. Just finish your whiteboard or CAD session like you're supposed to and get to work when everything is sorted out.
That's about it. Won't make these mistakes again. I hope.
02/05/2017 at 14:40 •
After a long time of absence (and other projects in abeyance) I present you my latest, finished project. To keep it short - a detailed build log is in the works - I'll just show you the finished clock. It's as simple as counting a few dots and summarize them.
Yes I know, nothing beats a nice, round standard clock in terms of readability, but if I wanted a standard clock I would've bought one...
The system is simple: from left to right: Red = hours 1 - 12, green = decadic minutes 10 - 50, blue = single minutes 1 - 9. Better pics will follow, I promise! See gallery for a few additional pics. The ones I took are a bit washed out color-wise and really don't do it justice.
Have a look at my
12/10/2016 at 17:25 •
Building the clock
Design (preliminary considerations)
Mode of operation
- time mode only, in minute-precision
- no numbers, layout as a straight line of "RGB-pixels"
- keep time when mains power is switched off
- sleek, flat design, preferably white
- no screws or electronics (e.g. parts of LED strip) visible
- individual pixels easily distinguishable
- pixels rectangular or round
Those were the first few thoughts I wrote down. Of course everything got more refined as time went by. But the fundamental mode of operation has been in my mind for a long time:
Read more »
View all 4 project logs
Enjoy this project?