Step 11: Whats been hapening these last few months....


As an update, I have redesigned the Arduino clock controller board - I decided that in reality all I needed was the ATMega Chip itself, and that placing an entire module was a waste of PCB space.

I have further updated it to version 3 - supporting a RTC chip, and reducing the size of the PCB.

Here is a photo of the v2 and v3 boards, and an assembly manual, (which I have been sending out with my kits) - That should make assembly easier for anybody who wants to make one themselves.

The new PCB

The new PCB that I designed has larger tracks, and larger pads, making assembly easier.  When you look at the PDF, you will see that there are large copper masses 'directly over' existing tracks.  Please don't worry - that is normal - it is a ground plane, and the track that it is over is the ground track.  All of my boards try to use ground planes so that I have to etch less copper from the board.

Programming the new board:

One Idea I got from EvilMadScience.com, was to use one of their programming cables, instead of using an entire Duemilanove module.  It is really cool - you pay $20, and you can use the cable for many many projects - all you have to do is include a trivial programming header on the PCB.  The cable is available from: evilmadscience.com/partsmenu/130-usbttl

A New Display PCB

I have been designing a new display PCB - I can etch it on 2 6x6 inch pieces of single sided PCB stock - the neat thing about the new display, is that it gets cut into a set of "LED Strips", with each strip being used to illuminate a word.   the spacing between LEDs is about 23mm, so I can use these strips to make BIG WORDS (Much larger than the 6 inch displays i have been making).  The clock size that I am making currently will be about 240mm x 240mm for the word plane, set into a total display that is about 320x320, making a really nice wall clock - It will take a couple of weeks, but as soon as I have something more tangible to display, I will put it up here.  

I etched the PCB over the Easter weekend, and am looking forward to making a bigger display.

Another side effect of the LED strips, is that you are not limited to English words - we can modify the software for any language, and you can use whatever size strips you need behind words to make the clock work!!!

Updated Software to allow the brightness to be reduced at night

I have modified the software to allow the brightness of the clock to be automatically adjusted based on the time - At 7pm, it will reduce the brightness, and at 7am, it will increase it again - This was to allow the clock to be less intrusive in my daughters bedroom.

Attached is the software that allows that to happen, and Matt Sparks DS1302 library.  It is in the file Wordclock-reduced-brightness.zip attached to this step.

<p>Coolest clock I have ever seen, Thanks for sharing!</p>
Why not a 34 bit constant current serial driver M5450?...
<p>Something worth trying....</p><p>Really Very Innovative....</p><p>Looking forward to make one.....!!!</p>
Wat an awesome project can't wait to make it
<p>cool on the rev 3 version of the circuit you connected the ULN2003A common lines to the connector so I can be tied to the supply line and protect the ULN2003A if it is used to drive inductive loads.</p>
<p>based on the layout of the words five of the LEDs are not connected. Since they are behind the mask why would you populate them?</p>
<p>If you use the board as a relay driver you should connect the common on the UL2003A to ground to provide a fly back diode as relays are an inductive load and you can damage the ULN2003A if the the diode is not included.</p>
<p>hello Doug and thanks for your awesome project. I have made the clock but cant figure out how to stop the test funksjon and make the clock show the actual time, do i need to edit the code ?</p>
The test function is entered when the controller believes that the buttons have been held down during startup.<br><br>Make sure that the buttons are not shorted.<br><br>There was a hardware change at one stage, with the original hardware connecting the buttons to +5V, and the current hardware connecting them to ground - If you are using the updated firmware, then there is a $define early in the code to allow the use of old hardware. simply remove the comment and it will work.
<p>Good day sir ., i would like to ask what if i use Arduino uno, i would like to know the schematic of it., i'm doing this college project hope you could help me with this., </p>
The Arduino UNO should just work - Exactly the same as the duemilanove.
thanks a lot sir., i did it well :) <br>
it will work.<br>
<p>Beauty :)</p>
<p>This is amazing. it should be in the shops.</p>
Thanks for that - I have actually made a small business that sells these.<br><br>www.dougswordclocks.com It is fairly successful :-)<br>
<p>Great Project just Love it. .. Thank you.. </p><p>Shyam</p>
<p>Great Project just Love it. .. Thank you.. </p><p>Shyam</p>
<p>Great Project just Love it. .. Thank you.. </p><p>Shyam</p>
<p>Great Project just Love it. .. Thank you.. </p><p>Shyam</p>
<p>Great Project just Love it. .. Thank you.. </p><p>Shyam</p>
<p>Great Project just Love it. .. Thank you.. </p><p>Shyam</p>
<p>Great Project just Love it. .. Thank you.. </p><p>Shyam</p>
<p>Great Project just Love it. .. Thank you.. </p><p>Shyam</p>
<p>Great Project just Love it. .. Thank you.. </p><p>Shyam</p>
<p>hi, could i maybe get the eagle file? </p><p>it would be awesome :)</p><p>thank you,</p><p>max</p>
<p>Hello good sir! I am doing this project for my capstone at highschool and I gotta ask: what is the schematic for the control board? I'm temporarily housing a bread board with the IC chips and other components, but I would love to know what the actual schematic for the control board is so I know what connects to what. Thanks and keep us the good work!</p>
<p>Hi, Sorry for missing this comment - If it isn't too late, I can email you a schematic as well as the board layout so you can etch one yourself.</p><p>Doug</p>
<p>I cannot do programming . Can you help me ,please ?</p>
Of course I can. I can send you a pre-programmed chip if you like, or even a complete kit.<br><br>My website is www.dougswordclocks.com<br><br>Doug<br>
<p>SO COOL!!!! Better than an ordinary clock :)</p>
<p>thank you so much for your instructions. my wife has seen the qlocktwo in a store, and fel in love with it, but it was waaay out of our budget. after learning how to work wit an arduino and electronics it was an interesting learning project. with as result a beautifull clock (in dutch) and a happy wife :-) .</p>
I see that you are using the atmega 328 and the Arduino so I think that the sketch should be 2 but in 'instructable you put in one ....: (..... or the sketch goes well on both? ... Excuse the spelling .. but I use google translator, I am Italian ....; p
nice one
First of all thanks for the tutorial <br>I got no problem with the programming part but im a complete newb about electronic/circuits and i have a question: <br>since there is 19 I/O pins on the arduino and not all pins can be high at the same time why not just put the hours directly on output 1 to 4 in rows of 3 connected to transistor activated by output 5,6 and 7 ? <br>(like this guy did: http://www.instructables.com/id/Reverse-Geocache/step3/Hardware/) <br>Woulnt you be able to controll all Leds directly from the arduino without any other modules?
something like this?<br> <br> <a href="http://i474.photobucket.com/albums/rr108/gazoutg/schemeit-project_zpsee230494.png" rel="nofollow">http://i474.photobucket.com/albums/rr108/gazoutg/schemeit-project_zpsee230494.png</a>
Ahh - That aproach works well with single LEDs, but remember that each word of this clock is made from somewhere between 2 and 7 LEDs, and I decided to use 12V powered LED strips. <br> <br>Also - the clocks that I make have both hours and minutes. <br> <br>Another way of doing it is to multiples a big array of LEDs, 13 x 13, which allows you to have any word order that you want. <br> <br>Doug <br>
I used the shift register approach, as I wanted 24 words, and using the shift registers meant that I didn't have to do multiplexing. <br> <br>Simple as that!
For a version of this clock I need 5 drivers since it comes to 31 words, is there a kit with support for more display outputs than 24?
Hi, <br> <br>The board that I have designed had 3 driver chips to provide 24 outputs - I do not have any other boards. You could make your own using Veroboard?
I am fairly new to Instructables so I will have to take a look at putting it together. I definitely want to get a video up. I'll let you know when I get either up. (I tried replying but the captcha thing seems messed up)
This project is so awesome ! I'll do something like this probably in the next year... <br>thanks for sharing all the detailed informations about this
Is it possible to alter a PIC word clock to use the Arduino? I fancy playing with one, and have a love of word clocks since I built a version of your first one. <br> <br>Also, loving your new website, got some really nice clocks on the go!
It certainly is- The Arduino clocks were an extension of the original PIC project. Have you seen the PIC version?<br><br>I had to use shift registers and driver chips to replace the output transistors, as the Arduino didn't have enough outputs to drive all of the words.<br><br>Doug<br>
Probably much more harder to make this device thatn all the other ones from here....
Hi,<br>This is a complex project, but many, many people have successfully made it so far :-)<br><br>I do offer kits from my personal website if you like <br>www.dougswordclock.com<br>
i am using arduino deumilanovae, the ATmega328 version, for bootloader i used Arduino IDE, Bootloader, Driver 1.0, I've noticed that one of the red led light is blinking while the other one is not lighting up.

About This Instructable


901 favorites


Bio: I have a background in digital electronics, and am very interested in computers. I love things that blink, and am in awe of the physics ... More »
More by drj113: A Grey Hat A Programming Jig for our DougsWordClock.com DeskClock Boards The Wordclock Grew Up!
Add instructable to: