This is one of my little side projects I do, sometimes, just to test some features of a new board, or, like in this case, just for fun.
The goal was simple: build a "Binary clock", a digital clock showing the time in binary format, using simple components, easy to build and replicate.
In fact, the hardware is very simple, just a cheap ESP8266 and a strip of 20 single addressable LEDs like the WS8212.
After some test, I choose to replicate necessary commands (change timezone, brightness and color) both physical and via serial interface, so you can choose to command it as you like, via buttons, command, or both.
Can you read what time is it?
The working principle is easy:
The ESP get the time from a NTP server (and thats why we need to connect it to the internet) and then breaks it down to binary in form HH:MM:SS, and each digit is displayed in form of a little led matrix, weighted like 1, 2, 4, 8.
The combination of the digits give the numbers for the time.
Basically, all can be done also with "simple" LEDs, but the WS2812 give the advantage to drive all the LEDs with a single wire, and also give a nice RGB color, so you can better personalize the clock.
The code is fully customizable and upgradable; you can increase or change the color sequence to use, the brightness levels and, of course, change inputs/outputs according to the board you are using.
For a complete project, I have also design and 3d print a small case, that fit the Wemos D1 and the WS2812 strip used.
Code, Schemas, source, firmware and STL for 3D printing are available on GitHub, here: https://github.com/No-CQRT/Binary_clock/
For your convenience, I have also made a web installer for the firmware, here https://no-cqrt.github.io/Binary_clock/ to help you for the first configuration (basically the wifi connection) and/or change colors and brightness
Comments