Introduction: Talking Clock Bilingual (EN+PT)
The Talking Clock 2 (Bilingual) is the new version of Talking Clock I have published some time ago.
The code was updated to support two languages (English/Portuguese) and new features were introduced into the code:
- Mode 1: Set the time (hour & minute)
- Mode 2: The clock talks every minute
- Mode 3: The clock talks every hour
- Mode 4: The clock speaks the time when a button is pressed
- Mode 5: Set the language for English or Portuguese
Note: The language status is stored in Arduino - EEPROM to keep this information even when it is restarted or turned on.
It was introduced as optional a mini amplifier PAM8403 (3W + 3W) for better control of the sound level in the speaker.
I am using only one speaker (one sound channel), but you can add another if you want.
Step 1: Components
- Arduino UNO R3
- DFPlayer Mini MP3 Player
- Display TM1637
- PAM8403 - Mini Audio Aplifier (3W+3W) - This is optional
- SD mini - Memory Card
- Pushbutton Switch
- Resistor 1k Ohm
- Speaker 3W
- Breadboard
- Jumpers
Note: Details of DFPlayer Mini on:
Step 2: Schematics
Important: It is not recommended to use the USB port as a power source in this project. Connect the Arduino to an external power source of 9V x 1A (or higher) because there are power surges when the speaker is working, causing Arduino instability.
Step 3: The Code & MP3 Files
A SD card must be formatted for FAT32 and a folder named "MP3" must be created.
In MP3 folder are stored all files of voices (74 in total) in English and Portuguese.
In mode 3, when the clock speaks every hour, there is a "church bell" sound that only works between 08:00 and 18:00. This sound is repeated as many times as the hour of that moment.
Note: All files must be named according to pattern "nnnn.mp3", starting in "0000.mp3".
Step 4: DFPlayerMini Library
The library "DFRobotDFPlayerMini" can be found at:
Step 5: Setup
There are 3 push buttons used for the operation with following functions:
#1:
Moves to the next operational mode.
#2:
Adjust the hour in Setup Mode
Speaks the time in Press Button Mode
Set to Portuguese in Language Mode.
#3:
Adjust the minute in Setup Mode
Speaks the time in Press Button Mode
Set to English in Language Mode.
Note: To move to next mode, press the button #1 until the next speech starts (blue LED of DFPlayer is on in this moment).

Participated in the
Epilog Challenge 9
13 Comments
Tip 3 years ago
If anyone want's a fast and easy to understand library to use with this module, I suggest using this one: https://github.com/PowerBroker2/DFPlayerMini_Fast. You can also download and install through the Arduino IDE's Libraries Manager (search "DFPlayerMini Fast").
Question 3 years ago on Step 2
Bro where is code??
3 years ago on Step 3
Sir I couldn’t find sound files on step 3...
Question 4 years ago
Have the same issue. Built the project and although the time module can be set okay
using buttons there is no sound from DFPlayer. Created the folder MP3, placed audio files in this folder but it does not play any sound when button is pressed ?
Please can you advise ?
Thanks,
Lee
Answer 4 years ago
Did you connect the Arduino in a external power supply? The LED display is working?
4 years ago
I must be losing it. I have been all over the site and cannot find a place from which to download the 74 voice files.
Reply 4 years ago
They are on step #3 at a Zip file.
Question 4 years ago
Dear lagsilva. I am trying to work your project. It seems that works well but DFplayer does not work, It is not switch on LED and It is not sound. Could you help me? Many thanks
5 years ago
I also have a few RTC's about so I think I will go unilingual for a blind friend and use the RTC so I do not have to reset after each power-off. Am busy for the next few weeks so I will not have any progress to report until end of March.
Question 5 years ago
I have several Nano's lying around. Will this setup work with it?
Answer 5 years ago
Go ahead and if you have any questions, please contact me.
Answer 5 years ago
I'll give it a shot!
Answer 5 years ago
Yes