Paper Cone + Color LED Clock
Introduction: Paper Cone + Color LED Clock
My granddad was an electrical engineer and he always made amazing projects. He also made clocks from time to time (no pun intended), and I've always wanted to make one myself. After countless ideas that never made it past a sketch, I finally made one!
It's simple to build, easy to look at and a bit unusual. Use your phone to choose the colors, brightness and dimming time, without having to take the clock off your wall! It adjusts automatically to your time zone's summer/winter period.
The build is very simple:
* a few soldering connections
* loading the program onto the controller (NodeMCU) with Arduino
* 3D printing the frame with quick / coarse settings
* making the paper cone and disc with a circular cutter
Power for the LEDs and the board is supplied through a USB charger with micro-USB connector.
Using a NodeMCU with Arduino reduces the circuit to the bare physical minimum: the LED strip, one resistor and one capacitor, and a few short wires. Notably it does not use a "Real time clock" (an extra chip and battery to keep time) - instead, it pulls the time from the internet every couple of hours and uses the onboard clock in between. All settings like color and scheduled dimming are handled by using the WiFi capability of this board: it serves a WiFi access point that a mobile device can connect to and send the settings. This data is stored persistently, so even if the power is cut off, it will remember your chosen settings.
Supplies
(Please note, below are affiliate links - I earn a commission from qualifying purchases at no cost to you).
Electronics
NodeMCU (Amazon)
RGB LED strip WS2812B 100 LED / m (Amazon)
Resistor 330 Ohm
Capacitor 100 uF
USB charger (Amazon) / white micro USB cable (Amazon)
Frame and Dial
Basic 3D Printer (at least 120x120 mm build area) (Amazon)
50 g white PLA (Amazon)
Solvent-based glue (Amazon)
Thick white paper (200+ gm/m2) (Amazon)
Circle cutter (Amazon) [must-have for clean result!]
Cutting mat (Amazon)
Step 1: Printing the Frame
The LED strip is 60 cm long (60 LED at 100 LED / m), which determines the basic diameter for the frame: 60 cm / 3.141 = 19.09 cm. Unfortunately that is too big for my small 3D printer so I split the frame into multiple segments that will be clipped together.
The frame consists of
* 4x identical quarter circles
* 2x connecting clips (side)
* 1x connecting clip (top)
* 1x connecting clip (bottom)
You can print them all at once if your printer is big enough, or print them one after the other.
The frame will be practically invisible, so don't worry about achieving perfect print quality. Just try to make sure that there is no steps at the joints, or otherwise the paper cover would warp unsightly when attached.
I designed the parts in Onshape. 769
If you want to modify the design (different LED strips, different boards etc.) then you can clone it directly from this link.
Step 2: Assembling the Electronics
Count 60 LEDs on the strip and make a cut before and after. The strip has a direction: the signal from the NodeMCU can only travel in one direction along the strip. Be sure to cut leave the copper pads on so you can solder the wires to them.
On the end of the strip cut off the copper pads. That way you can wrap the strip around the frame and there is still a small gap to feed the wires through.
Make the following connections
* Red wire between VIN on the NodeMCU and VIN on the LED strip
* Black wire between GND on NodeMCU and GND on the LED strip
* Place the capacitor between the VIN and GND on the NodeMCU
Pull the wires through the hole in the frame and solder the connections directly to the pins of the NodeMCU.
Place the NodeMCU into its holder.
Remove the double sided tape backing and wrap the LED strip around the frame.
Step 3: The Code
Briefly
1. Download the code from Instructables or from my github.
2. Open it with Arduino.
3. Choose your board (mine is a "NodeMCU 0.9").
4. Go to Tools > Library Manager and add the libraries
1. ESP_EEPROM by <PERSON>2. FastLED by <PERSON>
3. 611