Hackster is hosting Hackster Holidays, Ep. 6: Livestream & Giveaway Drawing. Watch previous episodes or stream live on Monday!Stream Hackster Holidays, Ep. 6 on Monday!

Nicholas Lekatsas' Raspberry Pi Retrofit Project May Make This the Smartest Cuckoo Clock in History

After its original, poorly-designed, innards met with an unfortunate accident, this kid's clock got a major overhaul.

Gareth Halfacree
12 months ago β€’ Clocks / HW101 / Internet of Things

Electrical engineering manager Nicholas Lekatsas has given an electronic cuckoo clock a major makeover, replacing its innards with a Raspberry Pi Zero W for network time synchronization and programmable noisemaking β€” after initial attempts to adjust its stock electronics went awry.

"For her birthday my daughter received a cuckoo clock. It was unfortunate, she wanted it in her room but it had very limited programming for 'quiet hours' so I fiddled with it and ended up breaking it," Lekatsas explains of the project's inauspicious beginnings. "I didn't want to disappoint her so I gutted it and proceeded to install a Pi Zero W and a headphone amplifier I had built."

Possibly the smartest cuckoo clock around, this Raspberry Pi Zero-powered gadget does more than just spin its hands. (πŸ“Ή: Nicholas Lekatsas)

The second-lowest-cost model in the Raspberry Pi family of single-board computers (SBCs), next to the Raspberry Pi Zero, the Raspberry Pi Zero W offers a single-core 1GHz Arm processor, 512MB of RAM, and an integrated radio module with Bluetooth and Wi-Fi connectivity. That's more than enough to boot Linux β€” while the 40-pin general-purpose input/output (GPIO) header to the top of the board provides an easy way to integrate with external hardware.

"The Pi Zero [boards] don't come with a sound output," Lekatsas explains, "so I built an audio output filter to convert the PWM [Pulse Width Modulation] output to an analog audio output [which I connected] to a [Texas Instruments] OPA1642 based headphone amplifier I designed and built. [I] wired up the cuckoo bird's coil actuator to a simple MOSFET drive circuit to control it from the Pi's weak GPIO out [and] wired up some 5V string lights (used to be battery powered) to a simple MOSFET driver circuit to control it from the Pi's 3.3V GPIO output."

The clock itself is driven using shell scripts, with "quiet hours" scheduling handled as a cron job. With that, the clock replicates the off-the-shelf experience of the original electronics β€” but there's more to the project than that. "I can program it to whatever [suits] our needs and it syncs its time with NTP [Network Time Protocol] servers," Lekatsas explains.

"I even connected her night light to it which turns on at night and off to let her know when its time to get out of bed. This combination also allows us to have dance parties with flashing lights, a dancing bird and fun songs coming out of her cuckoo clock. It's ridiculous and eccentric but it makes us happy! I also have a text to speech engine verbally state the hour after the cuckoo action so my daughter can better learn to tell time by herself."

The project's source code, along with a schematic for the headphone amplifier, is available on Lekatsas' website.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles