So, talking clocks. The world's full of them, but none of them really fit my needs.
Thus I decided to make my own version that can be configured to any voice I want.
1. Most clocks on the market speak in a voice that is either unpleasant or too compressed.
2. The speech quality is honestly horrible.
3. None of them have modern features such as automatic time synchronization.
4. Often the voice prompt is not descriptive enough ("AM TEN OH TWO")
5. They can be not loud enough or too loud.
6. The voice and alarm sounds cannot be changed on those clocks.
7. The interface can be cumbersome to navigate (one button to make the time go up, one button to advance the selection? Nah, I'm not having it)
I aim to create a talking clock that takes care of most if not all problems listed above.
The project may or may not use a GPS module (I haven't decided yet) and radio time sync module seems a bit spotty, so I won't use it.
For the main board, I'm currently using Arduino Uno because that's what I have but if required I may move to Arduino Mega 2560 (either compatible board or 3D printer controller board which basically is Arduino Mega with extra hardware thingamajigs)
For the display, I have few selections:
I2C OLED display (long one, not 128x64)
RepRapDiscount Smart Controller (basically a display, rotary encoder with click button, speaker, a button and a SD card reader with only 20 wires)
RepRapDiscount Full Graphic Smart Controller (128x64 monochrome graphic LCD with all the features of Smart Controller)
For the speakers I plan to use 0.5~1W paper cone speaker with the venerable 2W tiny amp with adjustable volume.
For the nighttime dimming function I'll just use a transistor circuit. I don't think it needs any fancy microcontroller features but if I have any pins left and if I don't muck the code up too much I might add the fancy PWM dimming.