Diy Oversized Mirror Neopixel Wordclock
by edwin-chege in Circuits > Arduino
2096 Views, 29 Favorites, 0 Comments
Diy Oversized Mirror Neopixel Wordclock
Hello everyone. greetings from Mombasa, Kenya. I absolutely love designing and building stuff. recently I saw an awesome 3d printed animated word clock by Techkiwigadgets on youtube and Instructables. I loved it soon as I saw it. I thought it was so cool and I wanted to make a huge one immediately.
The Word Clock has a couple of animations
- Matrix-style
-Typewriter Style
-Rainbow Color
It has three buttons that enable animation style, color and time to be set. It has an optional LDR resistor (light dependent resistor) which enables it to automatically sense the amount of light in the environment. It uses data from the LDR to dim or increase brightness when it detects more light or darkness e.g day/night or when lights are switched off/on. I wanted to make my own version of the clock but I'm new in programming Arduino and i haven't been good enough to write my own from scratch. I looked on the internet for a good Arduino-powered word clock code and I liked this code to be the best for I had all the required hardware and it has beautiful animations. I had ws2812 strips, an Arduino nano, and RTC lying around. most of the other parts were easy to find. Unfortunately, I do not own a 3d printer or any fancy equipment but I'm creative. I've improvised all my life so I always find a solution. I've done more with very little. The other problem with a 3d printer is that the build size is rather limited and I wanted something big, Something visible from a distance. A well-visible piece of art on a wall was my goal. something oversized at least 2x2ft big. I started this build with materials I could easily find. I decided to build the clock using an aluminum frame and a sandblasted mirror. I've had no experience doing any of this but I was really excited to see my idea come to reality. the following is a build process I took on building this beauty.I will be brief but ill try my best to be as informative as I possibly can in case anyone would like to make this too. for more info check out the original version clock on Techkiwigadgets
Supplies
- 60x60 mirror 4mm thick
- 60x60 2" square aluminum profile
- 110 ws2812b LEDs
- 1x Arduino nano v3
- 1x ds1307 or ds3132 RTC module
- 1x LDR
- 2mm foam board
- sandblaster or sandblasting services
- vinyl cutter or services
- silicon glue or mirror mastic
- soldering iron + solder
- 2mm acrylic sheet 55xx55 cm
- 4mm black acrylic sheet 60x60cm
- hot glue gun+ glue sticks
- 3x capacitive touch buttons or regular pushbuttons
- wires
- 10k resistor
- power supply 5v 5-10 amps
I have not included links to purchase the required items most items can be purchased online on sites like eBay and Aliexpress. I bought mine on Jumia a local online seller that only ships to 11 countries in Africa. they deliver faster than other sellers but their prices are quite steep compared to Chinese online stores.
The Mirror and the Clock Face
this build was on a tight budget so I choose a mirror are which was cheaper than an acrylic sheet of the same size. the other thing I like about mirrors is that their reflective surface looks good with lights, especially neopixel LEDs. I thought to myself, wouldn't it be cool if you could get a mirror and a word clock all in one??. I wanted a huge piece of art on a wall. something visible from a distance so I bought a 2ft by 2ft (60x60cm) 4mm thick mirror for 1500kes (13.63 USD). I've sandblasted mirrors before and it works great if done precisely. most people sandblast on the front side of the mirror, on the front reflective surface, or on clear glass. I had never tried sandblast on the black backside of a mirror and I wasn't really sure it would work. the idea was to engrave or etch letters on the mirror from the backside using a sticker cut by a vinyl cutter and a sandblaster. I first designed the clock face using Corel which took me about 3 hours or so. I used outline fonts as they had a nicer look than normal fonts. once I was pleased with my design I flipped the design because I was going to stick it in the back of the mirror. I exported the design file to a vinyl cutter, cut the design then applied the vinyl to the back of my mirror and did all the weeding until I was left with blank spaces of outline letters left for the sandblasting process. to my surprise the sandblasting did go absolutely fantastic.it actually exceeded my expectations. unfortunately, I couldn't take images while doing some parts of this build. the last image above shows how one letter looks like from the back. the white part in the letter is the part that was sandblasted. the mirror coating was rubbed off and left only what I wanted parts I wanted to create letters on a mirror.
The Aluminum Frame
With the mirror nicely done, it was time to build an enclosure to hold everything together. During this process, I handed it over to a friend of mine who works with aluminum and all types of glass. He's an expert on this kind of work. I wanted something sleek and minimal. he recommended a 2inch square aluminum profile so I asked him to build me a 60x60cm square frame from a 2innch square aluminum profile. wood can be used too but I recommend an aluminum frame because it is stylish, lightweight, and durable. the mirror fits perfectly on the frame. the mirror was then glued using strong silicon glue and left overnight to cure. the result was really beautiful.it was better than how I imagined it to be. the frame cost me 950 Kenya shillings. (about 8 USD) .my friends' work was flawless. I simply couldn't do it better and I'm glad I went to him with this work. I really loved the frame. I then drilled a 3mm hole on the center-top of the frame for the light sensor and another one on the bottom for the power cable. now it was time to work on the led grid.
The Led Grid
At this point, it is important to separate each individual led in order to avoid light leaking from one letter to the next. the best way to solve this is to create a grid that separates each led. if I had a laser cutter I would have cut 2mm MDF to create a nice accurate grid but instead, I went for foam board which was the "cheapest cuttable by hand" method I could get my hands on. the results were horrible as some letters were wider than others so the foam wouldn't stay in one position and would leak light. I had to find a better way on a low budget to fix this so I got a hot glue gun and sealed the leaks, used superglue too to permanently keep things in place. it kinda worked but it was messy and I did not like it at all but I couldn't undo some things. Also, I accidentally broke the mirror on the clock. I got one big crack across while working on it. such bad luck!! I don't regret using glass because it was really good until i messed up. honestly, I was really disappointed. I really put in work only to get this build successful and the crack made me lose some motivation and I had absolutely no more money to get a new mirror. I didn't see the point of continuing this project. after a few days, I got my motivation back. well, not all of my motivation but enough to continue where I left off. I wasn't gonna stop there. it was time to work on the matrix.
The Led Matrix
Unfortunately, I did not have single ws2812b LEDs but I had some 144 and 60led/meter strips lying around. I carefully cut 110 LEDs apart, tinned, and then soldered each led terminal. then I cut 660pcs of 1mm 5cm long wires to extend the length of the strip. I peeled the insulators of both ends of the wires and soldered all 660 pieces. then I soldered all 660 pieces of wire to the LEDs (Vcc gnd data) and created a stretched strip with five cm gaps to fit in each individual square on the clock. this was the longest part of this build.it took me a couple of hours a day for days. some were damaged so I had to repeat the process while testing using the strandtest sketch in the adfruit neo pixel library and fastled until at last, I had a very long strip of 110leds 5cm apart. unfortunately, I did not have time to record this part. I was testing the matrix using examples from Arduino libraries and everything was good. soon I resumed my original plan to build a wordclock. now, with the LEDs are out of the way it was time to bring the actual clock to life.it was time to upload the clock code and play with this beautiful piece of code.
The Clock Circuitry
Now after I have tested the LED matrix it's time we assemble the circuit, I have provided a schematic that was shared by techwikigadgets. Solder in the Nano, Switches, the RTC module, and LDR on a perfboard then connect up the wiring as per the circuit diagram.be careful not to short circuit your Arduino and always check your connections before you plug the power in. good soldering iron is recommended when soldering small things like Arduino. I recommend getting a sufficiently powerful power supply. I've read that one ws2812b pixel consumes about 60ma at full brightness. using 110 LEDs at full brightness will consume about 6.6amps. I did not have a decent power supply so I used a phone charger rated at 2amps max. with this power, I experienced problems so I recommend lowering the overall brightness in the code or use an LDR to automatically dim the brightness. without enough power, LEDs won't display colors correctly. especially color white or when brightness increased. might even not work at all as the Arduino needs a stable source of power.
The Code
first of all, we require some Libraries
These need to be added to the Arduino IDE that runs on your computer used to write and upload computer code to the physical board.
TimeLib.h
Wire.h
DS1307RTC.h
FastLED.h
I will not go into details on how to add libraries or upload code to an Arduino as there are many detailed tutorials on youtube so Follow the Arduino IDE update library procedure to do this before uploading any code. after libraries are installed Use the "Time Set" Sketch provided in this step, select the correct board and port and upload to the Nano. ensure that RTC is functioning correctly by checking the current time displayed on the serial monitor. if all is working well you should see the current time on the serial monitor. Next, upload the clock code provided in the same procedure. after the code is done uploading you should see the clock light up with an RGB color change sequence. this is it booting up. the clock will then display the current time in five-minute intervals. eg "it is quarter past twelve" (12:15 pm). you can modify a few things in the code. without any changes, the code is awesome just the way it is. however, you can change time, animation as well as time settings using push buttons on the clock.
The Light Sensor
It is very important to place the LDR someplace exposed to light. if your environment is too dark make sure the sensor faces the source of light. in my case, I chose to place my sensor right in the middle-top part of the aluminum frame. I wanted to build something compact with no circuitry visible to the outside.no even the buttons.I preferred capacitive touch buttons but unfortunately, I got the touch sensing buttons way later after finishing the circuitry. I couldn't undo things just to add touch-sensor buttons. but it would have been really awesome to have touch buttons on the mirror however I will save them for a future update of this clock where ill add more features.
Almost Done
Now after all this work there remain a few things to be done. first of all, I need to get a 4mm black acrylic sheet 60x60 cm to cover the back. I went to buy a piece but I couldn't find the black colored and 4mm thickness. I've tried to place an order but it became ridiculously pricey so I have no choice but to wait for my local dealer to deliver. he is way cheaper. by doing this project, I learned and had a lot of fun. in the future, I will improve everything. I could do better with good equipment, materials, and software so I will invest. this is my first time documenting anything I've built and there are lots of things I didn't cover. this project is a remix and it's not perfect but I hope I give someone the inspiration to open your minds to creativity and try something out.
Whats Next?
in the future, I want to build lots of clocks of this kind and many other different. id like to make a version of this which is equipped with some or all the following features;
- inbuilt rechargeable battery
- capacitive touch buttons
- proximity triggered ambient lighting from the back
- wifi enabled
- mobile app
- NTP time with alarm
- inbuilt temperature and humidity sensors
there are more awesome projects coming in the near future so stay tuned. I hope I have been informative as possible, if not please leave your queries in the comments, and ill be happy to help. there are lots of improvements that can be done but for now, ill end this project here., I would like to give kiwitechgadgets my appreciation for his inspiring work and the Instructables team for making this awesome site.bless you all.