Introduction
This is my Open Design 7 Segment Display Clock. “Open Design” because I intentionally didn't encase the clock. I kept the digit plate open for every one to see. So on the back side you will see the leds, and the wires. Hopefully now everyone who sees this clock will want to know how it's made and can admire my soldering work ;-)
Although I designed this clock from the ground up, the idea for the plate is inspired by several other similar clocks.
After some experimentation I ended up with the thick and conical diffusers to spread the light more evenly.
This is design 2 of my WAF Incrementor series ;-).
Printing
Everything is printed with PLA, a 0.4 nozzle and a 0.2 layer height. I used the Structural profile but I think the Speed profile will work just as well.
Only the base of the stand needs support (for the USB connector hole).
For the diffusers I used transparent PLA with 100% infill. The digit plate is printed with a matte black PLA on the textured steel sheet.
Bill Of Materials
- 1x esp8266 microcontroller (I used a generic d1 mini)
- 30x WS2812B RGB Leds
- a few feet of 22 AWG 3 pin wire
- 2x 12mm momentary switches
- 4x 8mm M4 screws and 2 M4 bolts
- USB-C Connectors (or USB-A whatever you want)
- 5V, 3A USB Charger
Build Instructions
Solder the leds with the 3 pin wires to make a long string of 30 leds. I had about 5 cm of wire in between the leds, and a bit more for in between the digits, and a longer wire at the beginning to connect to the microcontroller.
Push the diffusers into the segment- and dot houses. Mine were tight enough, but you could use a tiny drop of super glue to make sure they stay in.
Click the leds into the retainers, with a little bit of pressure they should fit snuggly and not come out easily.
Connect the rings on the legs with a 8mm M4 screw and bolt. Put some locktite or super glue on the screw and make the fit hand tight. Leave to dry. This will enable the rings to turn on the leg without loosening.
Connect the legs to the base of the stand with 8 mm M4 screws. The holes will self-tap.
I made a breakout board for the esp2866 with some screw terminals to connect the leds and the esp8266.
The power for the leds and the microcontroller are separately supplied by a 5v USB charger. I used a small USB-C solder connector. Pin A1 is GND, A4 is VBUS (+5V). Depending on your charger and the connector, you might have to add two 5.1KΩ resistors between pin A5 and GND and B5 and GND to pullup these pins so the adapter knows you have a device connected. Some USB-C breakout boards already include these resistors.
The easier way is to use a plain old USB-A connector or just the cable with stripped wires. USB-A doesn't need the negotiating.
People all over the Internet tell me to use a level shifter to make the data signal 5V, but it appears that the 3.3v from the esp8266 works just fine.
I had some random crashes of the microcontroller, I now added a 1000 µF in parallel with the ground and +5V of the LEDs. I am currently testing if the crashes are solved. Anyway a crash just means the clock restarts and after a few seconds the Internet time is diplayed again.
Install the sketch onto the esp2866
Software
You can find the code here: https://github.com/Dawied/7sdc
This is for platformio, but you can easily use the code in the Arduino IDE, just rename main.cpp to main.ino. Don't forget to include the needed libraries.
The sketch includes a setup routine that can be entered by long pressing the first button. The first long press will setup minutes, single press to increase. The second long is for the hours. The third long press will enter the Access Point setup.
In Access Point setup, the display shows: AP:0 short press to enable the access point, the display will show AP:1. Now you can find a new WiFi access point “DP_7S_CLOCK_01” on your network. Connect to the access point.
Now you can enter the WiFi setup on the url http://192.168.4.1 (or http://setwifi.dpc). Fill in your wifi credentials and save. The access point will disconnect (AP:0 is shown on the clock). Long press to exit the setup and the clock will synchronize with Internet time from now on.
The second pushbutton changes the colors of the display. Long press for the rainbow coloring, which is very nice and has a strong WAF effect.
Single press to cycle through red, green and blue.
모델 소스
