Major updates - A much better enclosure for this clock has been designed, and a better controller using an AtMega controller now exists. check out
This is a project to tell the time using words.
I saw a cool clock on the Make Blog the other day (http://blog.makezine.com/archive/2009/09/qlocktwo_clock_tells_time_with_word.html), and thought 'Hey - I can make one of those', so here it is!
There are two new photos of a completed clock kit, mounted in an enclosure, and hanging in my dining room. The clock module in the center is 150mm x 150mm, and the enclosure surround is 300mm x 300m craftwood, painted with automotive paint. I think that it looks really great!
I am now able to sell all sorts of components, ranging from complete clocks, through to kits, through to individual modules and components. Please visit my web site www.dougswordclock.com for further information.
If you want an arduino version of this project, then have a look here:
This version uses a PIC microcontroller.
I am in Australia, where the mains frequency is 50 Hz (50 cycles per second). This clock uses mains to ensure that it stays accurate. I have realised that people in other countries (USA) may want to construct the clock, so I have modified the firmware to cater for 60Hz countries. Just download either the 50hz, or 60hz firmware depending on where you live.
Another update - I have modified the clock to allow Minute LEDs to be used around the edge - Have a look at the last step of this instructable for details.
Step 1: Construct the Hardware
I printed the PCBs out using my laser printer, and photocopied the layouts onto PressnPeel Blue film. You can use any PCB manufacturing process you like.
Having etched, and drilled the boards, populate them as shown in the two photos.
I have attached the schematic diagram, and the PCB layout.
Both boards are connected together using jumper wires along the edge.
As an update, I have been using Blue Flat Top LEDs, with a forward voltage drop of about 3.3v @ 20mA. The supply that I was using was about 10.5VDC. With the original design, with 2 LEDs, the voltage drop across the LEDs was 6.6v, meaning that 3.9v was being dropped across the resistor (11-6.6). With a 360R resistor, this limited the current to 10.8mA, and with 3 LEDs, the voltage drop across the LEDs was 9.9v, meaning that 0.6v was being dropped across the resistor (11-6.6). With a 36R resistor, this limited the current to 16mA.
DO I *REALLY* USE 360R AND 36R RESISTORS?
What I have subsequently discovered is that with supply voltages of 12V, the current through the leds ends up being way too high (15 & 58mA), which is a problem.
In my most recent versions, I have setled on 680R for the 2 Leds and 270R for the 3 Leds, providing 7.9 and 7.8 mA respectively. Much lower current, and still ample illumination.
Step 2: Make the Stencil
Just etch the board using the same method you used for the controller and display PCB, and lacquer it to protect the front of the display.
In order to reduce light breakthrough to adjacent words, I used 30mm baffels made from spare PCB stock. These were held in place using hot melt glue.
Step 3: Program the Micro
Just use whatever PIC programmer you use.
The Hex file is attached! Remember to use either the 50Hz or the 60Hz firmware depending on your region.
I have also added support to keep the clock running on battery backup when power is lost.
[Update] - I have updated the 50Hz and 60Hz firmware files - there was a simple coding error that affected the accuracy of the clock.
Step 4: Make a Case for Your Clock - and Enjoy!
Step 5: A Version With the Stencil Reversed!
It makes the lettering so much clearer.
Here are some photos!
Step 6: PCB Layout, Overlay and Schematic Files
[Update - 21Dec2009] I have updated the PCB file to allow construction of a 6 inch x 6 inch (150x150) display. This allows construction on commonly available (in Australia) board stock - I have also repaired a layout fault that resulted in a misalignment with the headers and the pcb mounts.
You will need to scale the output to get the PCB to be the correct size!
The file uploader mucked around with the resolution of the schematic making it difficult to read - I have uploaded a PDF of it, so people can see a high resolution version.
I have been asked for the parts list. Here it is:
U1 PIC 16F877
D1 1A Bridge
D3 5V1 Zener
D10-D126 5mm Blue LED
X1 4Mhz resonator
All resistors 1/4 watt
Q1-Q24 2N2222, BC547 etc
J1, J3 2 Way PCB terminal Block
J2 3 Way PCB terminal Block
J4 5 pin header (0.1)
PB1, PB2 Momentary Action Push Buttons (Time set)
B1 4.5v Battery Pack (3xAAA Cells)
XFRMR 1 7.5V AC / 400Ma Transformer
4x 3mm screws
2x 10mm spacers
11 30mmx170mm PCB Strips (Light Baffles)
25 30mmx15mm PCB Strips (Light Baffles)
40 Pin IC Socket
Hot Melt Glue
I have also added the 'C' Source code as a download.
Several people have asked for the original source PCB layout file - I have attached it - It is *NOT* in eagle cad format - it is in express PCB format - A PCB drawing tool that is free of charge from express PCB. I hope it is useful to you.
Step 7: Updated Instruction Manuals
Since I created this instructable, there have been many requests for parts, and kits. I have created some assembly manuals for the clock kits that I have decided to share online. My goal is to give you other ideas for how to make your own clocks.
There are 3 manuals, because people ask for different things depending on their skill level;
A Controller Manual - covers the construction of a controller.
A LED Display Manual - Covers the construction of the LED Display (which can plug into the controller)
A Stencil Manual - Covers the construction of the stencil kit which covers the LED display to form the words.
I hope that people find them useful.
Here is a photo of my clock on my desk at work - I have not built a case yet.... one day!!
Step 8: Houston - We Have Minute LEDS!
There is new firmware for the PIC micro - but the firmware does not mind if the LEDs are there or not - meaning that if you would like to have the minute LEDs you can add them, and if you don't want them, you don't have to have them.
Start by downloading the new firmware into your micro - you can find the HEX file for your micro attached to this page.
Then, we need to add the cabling for the LEDs onto the back of the controller board - There are a few spare pins that are not really used that we can use for the minute LEDs.
LED1 - Pin17
LED2 - Pin18
LED3 - Pin10
LED4 - Pin33
Ground - Pin12
Simply connect some 5 conductor ribon cable to the pads shown above.
Drill some holes in the front of the clock for the LEDs in each corner and mount the LEDs using a small amount of hot melt glue. Solder a 270 Ohm resistor to each cathode (Short lead), and wire the ground lead from your 5 conductor cable to each resistor.
Finally, connect the LED leads to the anode of each LED, and tidy up your wiring.
When the clock is turned on – the self test will cycle through all of the LEDs to re-assure you that you have connected them correctly.
Simple as that - You may mount your minute LEDs however you like.
the photos I have attached should be helpful!
Finally - Remember when you download the files - you will need to rename the file with the correct extension .c .h, and .hex depending on which file you downloaded.