Talking Clock

I am legally blind and I want to make a talking clock before I go totally blind. Are there any Arduino kits or detailed instructions on how to make a talking clock with an Arduino? - Rob

I've never done this and I have no idea if you'll find a "recipe".

I'm pretty sure you can find an example of a clock with an LCD display. If you want an LCD display as well as audio, that would be a good place to start.

You can get a Real Time Clock module, which has a built-in battery, a crystal oscillator, and a serial interface for connection to the Arduino.

You can also get an MP3/Audio Shield that has memory and a DAC to play sounds.

You'll need an audio "power amplifier" to drive a speaker. The LM386 is a popular amplifier chip, or there are plenty of others. Or if you want to take a shortcut, you can connect the MP3/audio shield to "powered" computer speakers. You may also want to use computer speakers (or your stereo system, etc.) during the development phase, so you can get-on with testing & programming before you add the amplifier & speaker.

Of course, you'd need to add some buttons for setting the time and "playing" the time.

Just take it one step at a time...
I'd start with the audio shield.... Just write a program that plays audio files...

Once you can play an audio file or two, you can make the files with the numbers, "O-Clock", "minutes" and whatever you need. (You can use and audio editor/recorder such as [u]Audacity[/u] to record yourself (or someone else) and create the MP3 files.)

Next, you can connect the Real Time Clock Module, write the code to read it and play the appropriate MP3s to announce the time. (The time probably won't be correctly set at this point.)

Finally, add some buttons to set the time and announce the time.

There looks to be a pretty neat Arduino talking project here that should work as a basis for your own clock.

Attached is my talking clock/thermometer sketch based off the link that Riva provided.
Maybe you can find some use with it, compiles on IDE 1.0.6.
Press button attached to D2 , Arduino awakes speaks the time(female voice) in 12hr format, speaks temp(male voice) in Fahrenheit then goes back to sleep.
Toggle switch attached to D11 for DST, though DST could be handled through software.
LM386 amp connected to pin D3 and controlled by the p-channel Mosfet connected to pin D8.
DS18B20 connected to pin D7 and controlled by the p-channel Mosfet connected to pin D8.
Using a DS3231 RTC.
Powered through a DC-DC buck converter.
Draws 21mA @ 12V when speaking data and .31mA @ 12V when in standby.

LM386 works great as a night clock when it’s quiet, but a PAM8403 or larger amp would be better for noisy settings.

TalkingClockThermometer.ino (47.1 KB)


Thank you for the great tech tips. I was also thinking along those lines. I am thinking about ordering the "Adafruit Wave Shield for Arduino Kit".



Thank you for the awesome link! I was able to download the sample programs and they actually work. I may use some of the code for my project. Thanks again.



That's exactly what I was looking for! A hand-held device that will say the time and temperature when I press a button. I've created electronic projects and computer programs in the past but I am new at creating things with the Arduino.

I was able to download your sketch but I think I will also need the following files: avr/sleep.h, avr/power.h, Wire.h, RTClib.h, OneWire.h, DallasTemperature.h, talkie.h

Also, do you have a diagram of how everything is connected? Do you have any photos or videos of your completed project?

Thank you for all your help.


I’ve attached a file with pics of outside and in, here’s a link to a YouTube video of it talking and showing the night light function.
Links to needed libraries:

Parts list:
1x Enclosure $3.99 + shipping
1x Speaker $1.15 + shipping It’s the “Small speaker” on that page.
1x DC-DC converter $1.63 for 2 These have an extremely low quiescent current draw of .0025mA
1x LM386 amp $1.18
1x DS3231 RTC $1.14
1x Pro Mini (clone) $2.35
1x NDP6020P P-channel Mosfet $1.66 + shipping It’s overkill, but what I have on hand.
1x DS18B20 $1.75 + shipping
1x 5x20mm Fuse holder $0.35 + shipping
1x Fuse 160mA $0.18 + shipping
2x DC power jack $0.28 + shipping I use 2 so I can power additional projects but 1 is all that’s needed.
1x Momentary push button $0.25 + shipping
1x On-Off-On toggle switch $0.47 + shipping
2x On-On toggle switch $0.47 + shipping These can be the On-Off type.
toggle switches. I had On-On on hand.
1x 4.7K ohm resistor $0.12 for 10 + shipping
1x 10K ohm resistor $0.12 for 10 + shipping
1x 150 ohm resistor $0.12 for 10 + shipping
3x 330 ohm resistor $0.12 for 10 + shipping
22 AWG wire $0.10 per foot + shipping

Prices listed are current as of 2/12/15.

If you decide to order from Tayda then check their Facebook page first as they sometimes post a 15% off coupon code, though it does not apply to their enclosures.

For the night lights I used 2x warm white piranha leds that I pick up on Ebay a few years back and no longer have the link to. Any white/warm white 5mm leds can be used but might stick out a bit from the enclosure top.
For the “high” setting I use 330 ohm resistors connected to the leds, for the “low” setting I use a 330 ohm resistor that is connected in series by the switch with the leds 330 ohm resistor.

I run this from a 12v battery, it will run from a DC 6v-14V power supply just fine. You can use a wall wart within those voltages that can supply at least 100mA of current with a 2.1mm barrel jack.

*I’ve attached the circuit diagram. (824 KB)