[Craig] had a busted 2nd Gen iPod Nano that was well out of warranty. The play/pause button no longer worked, leaving him unable to play or pause music, nor power off the device. He didn’t want to scrap the iPod, so he figured out a way to add an external play/pause button instead.
He ordered an iPod dock connector from SparkFun and found that it had just enough space inside for the electronic components he would be adding. He consulted some online references for pinout information, then got busy cramming an ATiny13 and a pushbutton into the dock connector.
To minimize the drain on the iPod’s battery, he puts the ATiny into sleep mode when it is not being used. When the button is pressed, it wakes up the microcontroller and sends the proper signal to the iPod. Based on his estimations, it would take nearly 250 years for the ATiny to drain the iPod’s battery completely, so he’s pretty comfortable leaving the dongle attached at all times.
If you have an iPod with similar issues, he has made his source code available so you can save yours from the trash heap as well.