After coming to the conclusion that the traditional analog clock just isn’t enough and the digital clock is too boring, Hans Andersson decided to make his own version that integrates both RGB LEDs and fiber optics to show the current time in a far more entertaining manner. Rather than moving a set of three hands around in a circle or toggling a bunch of digits, the “O-Clock” lights up a series of 60 slits in a hollow ring in red, green, and blue, as well as many other colors, to indicate the hour, minute, and second.
The O-Clock is composed of six segments that each have 10 cutouts. Underneath each one, a strand of side-emitting fiber optic filaments was run that carries the light from the WS2812B LED on the inside of the ring to the top and outer edge, which has the added benefit of diffusing the light in a clean way. Time is kept with the help of the ubiquitous DS3231 RTC module and it feeds the current time via I2C to an Arduino Nano, which also controls the LED strip. Instead of having an ugly button protrude from the clock, Andersson implemented a photoresistor that tells the Arduino when to change the animation based on ambient light levels.
This project can be seen in action below, while instructions and code for building it can be found here on Instructables.
Read more about this on: Arduino Blog