|The NodeMCU Amica Module from electrodragon.com is the brains of this device. This ~$7 part has a 32 micro controller and WiFi interface built in so no other application processor is required. |
|This NeoPixel clock is made up of three NeoPixel devices (two rings and a strip) which are Adafruit parts. They are mounted on a piece of frame mat material with a couple of drops of super glue. Connections to these devices are via wires that run thru the back of the mat material. |
The larger ring has 24 NeoPixels, the smaller has 12 and the strip has 8.
NeoPixels are individually addressable RGB LEDs with built in PWM and serial data controllers.
|Back of the frame mat. |
You can see there isn't much to the clock circuit. The Node MCU module was super glued to the mat so it would remain in place while it was connected. As you can clearly see here only three wires connecting the NodeMCU to the NeoPixel devices.
A 100 ohm resistor is placed between the NodeMCU Amica RX output and the input to the large NeoPixel ring to reduce noise on the connection. The output of the large ring connects to the input of the small ring. The output of the small ring drives the input to the NeoPixel strip. The +5V Vin and Gnd connections on the Amica are wired to all three NeoPixel devices.
The clock is powered externally via the USB cable shown and a USB power module of at least 1 amp output current which is not shown.
|The following pictures are not that great because the NeoPixels are so bright and the colors so saturated it messes with my camera. In person, the colors are just beautiful. |
The NeoPixel assembly mounted in a small metal frame makes a nice looking DIY clock.
The firmware reduces the brightness of the NeoPixels otherwise this clock would be blindingly bright.
|An image of the 10 minute event. Every 10 minutes the display of time ceases and the NeoPixels display a rainbow of colors that move across all of the LEDs. |
There is also a 15 minute event which flashes colors across all of the pixels.
The 30 minute event displays the current date using the large ring with each component of the date displayed in a different color. First up, the day of the week is displayed on the LEDs with Sunday being the first day. Next the month is displayed with January being month one, followed by the day of the month (1..31) and the year minus 2000. This year the year display shows 16. It takes a little practice to read the date from the LEDs but once you are used to it, reading the date is easy.