Simon Jansen wanted an authentic prop to go with the decor of his workshop while he rebuilds an antique Austin 7 car. He got his hands on an old bakelite generator telephone with a hand crank and decided to mod it to play music while he worked.
Using an Adafruit Wave Shield mated to a barebones homemade Arduino, he was easily able to port the sound from the microcontroller hardware to the speaker on the phone. Once done, he programmed it so the music would slow down eventually, as if he had to recharge it using the hand crank on the phone. Since the hand crank only works at 60 VAC through 120 VAC he made his own opto-isolator to translate the electricity coming from the crank. In this way, he can use the original crank to trigger the Wave Shield into speeding the music back up.
Making the best of a limited user interface on the old crank phone, Simon took advantage of a technique called a hookflash, which is the act of rapidly pushing the receiver button on the phone. By using this with a supercapacitor, it causes a short power interrupt on the Arduino which triggers the Wave Shield to advance to the next track on a playlist. Also, unhooking the phone itself triggers the music to start playing.
This is a project with some nice tricks to make it work. Even better, Simon provides extensive documentation on his site if you want to learn more.