Neopixel Clock

Made by Ryan Gill

About the project

NeoPixel Clock uses lights to display the time in colors like an analog clock.

Connectivity contest winner

Project info

Difficulty:

Estimated time:

1 day

Published:

24th April 2018

Items used in this project


Hardware components

1689 Interface Development Tools Dithering USB Driver for NeoPixe... x 1
DEV-14277 ARM Raspberry Pi Zero W x 1
2846 White PCB 60 LED/m 1m x 1
555-28027 Board Mount Motion & Position Sensors PIR Sensor (Motion Det... x 1

Software app and online services

Node.js
Johnny-five

For access to the PIR motion sensor.

Hand tools and fabrication machines

3D printer x 1

Story


I used a Raspberry Pi Zero W along with FadeCandy to control the LEDs. The system uses Node.js and provides the user with a webpage for setting the colors of the hours, minutes, seconds and background. 

I'm from Houston so I loaded it with a few local sports teams. The user can quickly set all 4 colors at once by selecting the team logo. The user could always manually adjust the colors by selecting one and turning the desired color.

How it works

I'm using 5 LEDs to represent the hour hand, 3 LEDs to represent the minutes and a single ticking LED to represent the seconds hand.

8:27:17

6:13:56

Future Plans

Since this clock is connected to the internet, I would like to add additional features that would allow for the user to be notified in the event of certain actions. Some examples would be:

  • Timers
  • Email notifications
  • Interface with OctoPrint API for printer notifications

Software

This app is built using Node.js. It runs a simple Express webserver which provides the user with a webpage connected via web sockets. When the user selects a color, that event is emitted to the server. The server then sets the color and fadecandy updates the neopixels. When the user selects a sports team, it just sets all 4 colors and emits the same change event.

Schematics


NeoPixel Clock Wiring

Connect the led strip to the fadecandy channel 0. Wire up the power and ground to the battery. Plug in fadecandy to raspberry pi zero w via usb cable. Power pi with same battery.

CAD


Mount

Enclosure for electronics.

Clock Ring

Ring for clock split in to 4 sections for smaller printers.

Code


All the code needed to run the NeoPixel Clock on a raspberry pi zero w.

Credits


Ryan Gill

Web developer who loves tinkering with hardware.


Leave your feedback...