Glowing LED Wall Watch
This Instructable describes how to build a nice "furniture compatible" LED wall watch. I often argue with my wife because I am like to fill my house with LEDs, while she wants to keep our furniture "traditional", so in my project, I always try to find a good tradeoff between tech and tradition. With this in mind, I designed this wall watch which is, in my opinion, cool from both a tech and a traditional point of view.
Basically it is composed by a ring-shaped wood frame having carved roman digits and notches every 5 minutes (30 degrees) and LEDs onto its border. The light pattern indicates the time. I used a moving cyan dot for seconds, a moving purple dot for hours and a gradient arc of leds from yellow to red for minutes.
The effect is a nice coloured glow on the wall. Also, even when the clock is off, it is a nice piece of furniture, making it suitable for any home furnishing style.
Gather Materials
Here follows the list of material required for completing the project:
- 0.8 cm thick plywood sheet measring at least 32x65 cm
- 1m of ws2812b 60 led/m strip
- Arduino or microcontroller of your choice (small form factor preferred, I used pro mini)
- DS3231 clock breakout board (do not use DS1307 since it is very unprecise)
- One 470 Ohms resistor
- One 1000 µF capacitor
- 5v DC power supply (2A or more preferred)
- DC socket connector compatible with your supply
- Some wires
- Paint of your choice (I used wrought iron effect paint)
In order to simplify your work try to have these tools available, note they are not all essential:
- Jigsaw (required)
- Soldering iron (required)
- Sand paper
- Hot glue
- Vinyl glue
- Acrylic glue
- Dremel-like drill
- Brush
- Hammer
- Small cable clips
Some Notes on Cuttng Circles
Basically, you need to cut a ring-shaped frame, that is, you need to cut circles. you have two choices. You can either draw a circle on the wood and then follow the line using the jigsaw (or any other saw of your choice) or you can use a diy compass saw to cut directly a circle. See this other instructable I made for instructions for building your compass saw (THIS IS NOT ONLINE YET!).
Whatever your choice, you need to know the size of your circles, some are up to you, some are mandatory.
Take Measures
First of all you need to take measures for the frame. You will cut the frame into two parts, a top part, visible and wider, and a bottom port, not visible and narrower, so that you could make room for the electronic components, without tickening the frame.
Since you are using a 1m led strip, the outer circle should have a 1m circumference. So the diameter for your circle needs to be 1m/2pi =~ 31,83cm, let's round the measure to 32cm, better a bit more than a bit less. This holds both for top and bottom frame. Draw two 32x32cm squares on the plywood, mark also its center.
The inner circle is up to you, I used a 22cm diameter (for a 5cm wide ring) for the top frame and 28cm (for a 2cm wide ring) for the bottom frame. Anyway, I suggest you to keep a 3cm difference between top and bottom frame inner circle to save enough room for the components. Very important: Divide the "to-be" circles in twelve sectors. These will be the marking for the notches and the digits. It is essential that you mark them before cutting, because after the cuts you will lose the reference to the center of the circle and will be very difficult to find the notches position accurately. Use a goniometer to locate 30° sectors, then trace lines from the circle passing by these marks. You are ready to cut
Cut Top and Bottom Frames
I cut the outer circle for both the top and bottom frame at the same time, while cuts for inner circle were done separately. If you use a compass saw, drill an hole at the circle center and insert the compass pivot in it. Slowly cut, keep the saw still and rotate the wood panel with your free hand, until you reach the end of the circle.
After cutting the outer circle, you will need an hole for inserting the saw before starting. Drill two hole in the part that will be cut away and using the saw cut a triangle having two of its vertices in these holes, the third one on the edge of the circle you want to cut. Now you will be have enough room to start cutting the inner circle. Cut both the top and bottom frame circles and here you are, you have two wooden rings!
Cut Notches From Top Frame
Take the top frame ring, you should have segments corresponding to the previously marked 30 degrees sectors. From the inner circle, take marks and draw 1x2.5cm rectangles. You could change these sizes (or the shape) but take care not to make the ring too fragile or not to leave too small space for the digits.
After you drawn the 12 shapes, cut them out. You need to cut only vertically. Using an hammer and a flat screwdriver you can rip the rest off. Use a file or sandpaper to remove scales.
Hey! You got a glamourous collar for your dogs!
Glue Top and Bottom Frame
Now, you can proceed to glue the top and bottom frame together. Use vinyl glue for this purpose and wait at least half an hour before proceeding.
Probably, you will notice some misalignments between the two circles (ok they are not perfect actually). However, this is not golng to be a problem. Mainly for two reasons:
- We need to smooth the wood, it is very crisp due to tearout.
- We need to be sure that the led strip fits the border of the frame.
We will address both issues at the same time.
Pick your led strip and remove (if present) the waterproof shell. Use the strip to wrap the frame. Most likely (and hopefully) it is too short. The solution, sand the border of the frame, I used a belt sander. Sand again and again, and from time to time, try to wrap the led strip again. Stop when the distance between the first and the last led is the same as two consecutive pixels. Now you have a smooth frame of the exact size you need. Don't glue the led strip yet!
Carve the Digits
This step is the most creative and free, thus the one I was the worst to... Basically you need to draw you favourite digits where you wish (I drawn them over the notches). You can draw them by hand, use a stencil or carbon paper. When you are happy with your design, use a dremel-like drill to carve the shapes. Carving is not mandatory but I think makes the final result more appealing.
I suggest some sanding on the edges and the surfaces.
This is the end of the woodworking phase.
Paint the Frame
The painting phase is probably the simplest but this does not mean it should not be underestimated. An approximative painting could ruin all the work done.
Starting from the digits, use your favourite color to paint them. It is preferrable to begin with digits because you do not have to be extremely precise, if you paint out of the edges, you can easily do corrections.
Once you have finished with the digits, paint the rest of the frame. Use at least two coats, and slightly sand the surface between each coat.
I used bronze for the digits and metallic dark gray for the frame. Feel free to use your favourite paint or finiture, you could also decorate the frame with your favourite patterns.
Set Up the Circuit
The circuit is quite simple, but it has to be arranged properly under the frame to make it invisible from the front. Basically it is composed by the following elements:
- The microcontroller
- The clock
- The led strip
- The power source
In the first image you can see how each part is wired to the others:
- Pin D12 of the microcontroller is wired to the input of the led strip, inbetween place the optional 470R resistor, this is suggested but not strictly required.
- Pin A4 is wired to SDA of the clock
- Pin A5 is wired to SCL of the clock
- GND of the clock is wired to A2 which will be put to LOW to act as ground
- 5V power source is connected to microcontroller and led strip, put the optional capacitor in parallel between positive and negative terminals, this is suggested but not strictly required.
- Optionally, also add a jumper between A0 and A1, this will be used to enter summer time (daylight savings time) mode
Test Components and Upload Sketch
Before uploading any code, you need to install two libraries:
- Adafruit Neopixel - https://learn.adafruit.com/adafruit-neopixel-uberg...
- DS3231 - https://github.com/rodan/ds3231
After download, copy them into your libraries folder and restart the IDE.
I decided to prepare the circuit incrementally, as follows:
- Wire Arduino Pro Mini, check programming and functioning
- Wire the clock, check flashing and functioning
- Wire the leds, check functioing
- Upload the complete watch code
Wire Arduino Pro Mini, check programming and functioning
Just to test that your Arduino is functioning correctly, wire it to your usb-to-serial adapter and try uploading some code (blink sketch for example). Don't forget to select the correct COM port and to select Pro Mini from the board type menu.
Wire the clock, check flashing and functioning
Now let's test the DS3231 clock. Wire A4 to SDA, A5 to SCL, Vcc to Vcc and GND to GND. Upload the program_clock.ino sketch and when complete run the Serial Monitor, hit enter and follow instructions to set the time. Once finished, reset to see if the clock was correctly flashed.
Wire the leds, check functioning
For checking the leds are functioning correctly, wire + to Vcc, - to GND and pin 12 to Din. Upload the srand_test sketch from neoxpixels libreary example, and check all the leds light up.
Upload the complete watch code
Now that you know that the main parts of the circuit are functioning individually, combine the two test circuits, and upload the glowatch.ino sketch to flash the arduino with glowatch program.
You are almost done. The clock shoud be functioning displaying the correct time. You should see a moving pixel for the seconds, three pixels for the hour and a stripe of leds for the minutes. You can hack the code to change the colors according to your preferences. To swtich to summer time, you just need to add a jumper between pin A0 and A1. You can do it at runtime, there is no need to turn the watch off. It is time to attach the leds on the frame.
Mounting the Circuit on the Frame
Before arranging the circuit, an important part is about fixing the led strip onto the frame. I used acrylic glue for this purpose, as it was the first one I found serving for the purpose. Probably you could even use something else...
Pay attention: starting from the last led (marked with Dout or just Do) glue the strip to the frame. Start from the position of digit 12 (XII) and go backward, use a drop of glue every 5 leds (so that each drop is applied in the same position as each digit). Before proceeding with the next piece, wait about 30 seconds whle pressing on to the strip as it glues, Hopefully, every 5th led is next to each digit, but some misalignments may occur.
As already done in the previous step, check that the distance beween the first and the last led is the same as the distance of any pair of consecutive leds.
If you have cables soldered to first or last contacts, or both, keep only the ones on the first (+, - and Din)
Finally, move the circuit in the rear of the frame. Before proceeding, keep in mind some issues:
- Nothing should be visibile from the front
- The components should be well balanced, otherwise the clock will rotate once hang on the wall
- It is better to take power for the leds dirctly from the power source instead of arduino Vcc and GND
- Keep cables and components tidy!
As you can see from the picture, I placed the arduino on top left, the DS3231 on top right, and the DC connector on the bottom.
Important! Before nailing or glueing anything, be sure that nothing is visible from the front! I used nails inside in the corner holes to block the DS3231 and between (unused!) pins to block the Arduino. Wire the power leds of arduino and led strip directly to the DC connector. Once wiring is complete, block the DC connector using hot glue or silicone.
Finally, in order to keep cables and wires firm, gather as much of them as you can together and use other hot glue or silicone, or, better in my opinion, small cable clips. Try to position them as nearer to the fence as you can, so that the chance to see them from the front is minimized.
If you have one, add an hanger on the top, otherwise you can hang the clock from one of the notches.
You Are Done!
Now you have your fully functional Glowatch! There are some modifications and/or improvements that could be done, if you try something, please let me know! For example:
- You can add network (for exampe with esp8266) to set the time using an NTP server
- You can use more appealing led colour patterns
- You can use an LDR to vary the light intensity depending on the lights in the environment
- You can add sounds for setting alarms
- You can add a remote controller to turn on/off the clock
- More!
Please make comments, suggestions, improvements!