Introduction: Turntable LED RGB Clock
I like turntables. Not just how they look but their components, their cables, their switches, their cogs. I like them so much that I would hang one on one of my walls as an art piece. And if you want to do that, then why not make it a clock too?
This isn't a breakthrough idea, I know! However, the typical solution I can see around the internet is people placing an analog clock mechanism at the place of the turntable's spindle. I don't like that. Analog mechanisms are not thin and so to make such a clock, you have to destroy the turntable by removing its spindle.
Wouldn't it be nice if there was a way to keep the turntable in its original state and place a non-destructive clock? Well, here's one idea. Place an LED clock!
Does it look interesting? If so, then please have a look at the step-by-step instructions.
Step 1: Design
First, let's speak about the "RGB" part which is something that I genuinely haven't seen been done before for a clock.
The "traditional" analog clock design consists of 3 moving hands.
There is a small "hour hand" making two revolutions every day.
There is a longer "minute hand" that is faster and is making one revolution every hour.
There is also a thinner "second hand" which makes one revolution every minute.
This LED RGB clock essentially replaces hands with light in the following way:
The hour is indicated by a Red light
The minute is indicated by a Green light
The second is indicated by a Blue light
All other conventions remain intact.
When the hands meet... the colours combine and make a different colour...
Is it midnight? 00:00:00 means that Red and Green and Blue will combine and make... White!
Have 30 seconds past? 00:00:30 means that Red and Green will make Yellow at the top and there will also be a Blue light at the bottom.
Step 2: Components
Here's what we will need:
- Arduino microcontroller
- RTC Module
- LED Ring
- A power source
- A simple switch
- Cables to connect everything together
- A turntable
- A vinyl record.
I chose a simple Arduino Nano. It did the job perfectly, there was no need for a 'larger' arduino model.
You can find nice LED Rings from Adafruit (search for "NeoPixel"). I went for a small 24 LED one. A bigger 60 LED ring one would look better. Or you can create your own by connecting individual LEDs together yourself.
You do not need to go and find a functional Technics SL-1200 MK2 for the turntable. I used an old one that I removed from an entry level 70's music centre.
Step 3: The Clock
In this step we will create the clock and admire it "ticking" while it is connected to our computer's usb port.
Before you begin, make sure you have:
- the correct time set on your RTC module
- a coin cell battery in your RTC module
- The Arduino software on your computer with NeoPixel library imported
All ready? OK, let's start connecting 3 major components together to make our clock.
- Connect the Arduino with the RTC module. We will need 4 cables to do this and we also need to follow the instructions that came with the RTC module (I connected a DS1307 giving it 3.3V from the Arduino)
- Connect the Arduino with the LED ring. We will need 3 cables to do this. I connected the ring giving it 5V from the Arduino. As you will notice, the code has a line mentioning "NEOPIN 6" which means that you need to connect the "Data In" from the LED ring to Pin 6 of the Arduino.
- Program the Arduino. We need a program that will enter a constant loop doing 2 things:
- Ask the time from the RTC module
- Tell the LED ring which LEDs to light up and in which colour.
When all this is done you will have a fully working clock simply by powering the Arduino. You can take a different path and create a different case/enclosure, you don't necessarily need to go find a turntable.
The attached code will work as-is for a 24 LED ring. Do you have a 12 LED ring? Or a 60 LED ring? Or are you building one with say... 38 or them? No problem. Simply enter this number at the NEORING line at the top. Do you find the lights too bright? Or not THAT bright? No problem. Simply experiment with the BRIGHTNESS line.
Do you find it difficult to tell the time? Try to un-comment the "Every minute, light up the 'cross' of 4 leds that indicate 12, 3, 6 and 9 o'clock" part at the bottom. This will result in four white lights to be lit at the start of every minute so that the 12,3,6 and 9 positions are made clear.
Remember, you will need to add the NeoPixel library. Compile, Upload and it's all done!
Note: If your RTC module does not have the correct time set, you can use the same code to do so in the following way:
- Uncomment the "RTC.adjust" line
- Upload the sketch
- Comment it back out
- Upload the sketch again.
Step 4: Power the Clock
After we confirm that our clock looks and works great connecting to our computer's usb port, it's then time to think about what will power it when it is disconnected from it.
Essentially, we only need to power the Arduino module and it will then power the RTC module and also the LED ring.
The Arduino microcontroller I used is happy to get its power from a usb mini port so we simply need something to give it 5V of DC.
Here's what I went for: I got two 18650 batteries together and I also got the PCB from a cheap "USB power bank". As I don't want the clock to run all the time I added a switch.
Step 5: VinylRecord+Platter+LEDRing
It's unavoidable, you will need to drill 3 holes through a vinyl record. So find one that looks nice (I went with a traditional black one with a red label) and one that wouldn't sell for $5000 on eBay.
We mark the location of the 3 holes from the LED ring (Data In, Power+, Power-) and drill holes small enough for a cable to pass.
We then solder the cables to the ring.
We then place the Vinyl Record on the turntable's platter. It's not necessary to glue it but you might want to do that just in case.
Step 6: Bringing Everything Together
Take your time and plan where things fit better. We need to avoid destroying anything. The turntable will most probably give us holes for us to place our switch, secure in place the batteries and our other PCBs (usb power bank, Arduino, RTC)
Again, be careful here to avoid the risk of short circuit.
Step 7: Operating Instructions & Essential Maintenance
And we are done!
Once we are happy that everything is nicely and securely held together (glue/screws/bolts/tape etc), we need to find a place for our clock. I have chosen not to wall mount it and instead use an existing tall cupboard.
We flip the switch to turn it on, we flip the switch to turn it off. Simple!
There is Essential Maintenace to be performed too:
1) The 18650 batteries will run out at some point. When this happens, we will simply connect a USB cable to the pcb to charge them. Or we will remove the batteries and place charged ones in the battery holder.
2) As you are familiar, the time will change twice a year (daylight savings). When this happens, we will connect a USB cable to the arduino and set the correct time
3) The coin cell battery of the RTC module will also run out at some point. When this happens, we will simply replace it.
Step 8: Other Models / Final Thoughts / Future Ideas
- Admitedly the ratio of the size of the LED ring and the turntable isn't ideal. A larger 60-LED ring would look better. Or, this same 24 LED ring would look better on a smaller turntable (for example one that was meant for 7'' vinyl records).
- Depending on the time, you might find it challenging to actually understand what time it is. It's definately more diffucult than a digital clock, but also definately easier than a binary clock :-)
- I have made this clock to rely on a battery and added a switch to turn it on/off, if you need a clock that will be on all the time, you will need to power it from the mains.
I enjoyed designing and creating this clock. Please go ahead and build your own, add your own twists, change a code line or two. Build one with 60 LEDS (one LED for every second, Nice!). Add some sound (Big Ben chimes?). Replace the switch with a light sensor. I hope this instructable inspires you to build your own version and create something that you will proudly hang on your wall.