Show HN: Mum's 80th birthday present- a rotary phone from the 1970's
I should do a technical writeup - ion the meantime:<p>Here&#x27;s a video I made mainly for myself so no polish at all: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=jjLPGDQlgKQ" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=jjLPGDQlgKQ</a><p>Here&#x27;s the Python code: <a href="https:&#x2F;&#x2F;gist.github.com&#x2F;bootrino&#x2F;9c6c82e3243782da23308e50a38686db" rel="nofollow">https:&#x2F;&#x2F;gist.github.com&#x2F;bootrino&#x2F;9c6c82e3243782da23308e50a38...</a><p>In short I installed a Raspberry Pi Zero into the case of the phone.  I considered using an esp32 but the Raspberry Pi is alot more straightforward because I can simply run Linux and code in Python.  On the esp32 I could write the code in C++ but it would take longer, or use micropython for esp32 but that no doubt would be harder than the Raspberry Pi.<p>I found several YouTube videos and also some web ages that described how to connect the rotary dialler to the GPIO pins on the Raspberry Pi, and I found some example code that captured the number dialled on the dialler.<p>To connect the speaker in the handset it was a little more involved.  First I had to work out which wires coming out of the handset cable were the speaker wires - there were four wires coming out, two yellow and two pink.  I screwed off the speaker portion of the handset and pulled out the speaker, revealing two yellow wires.  The Raspberry Pi zero does not have an audio out port.  So I bought the cheapest possible USB audio card for about $20 <a href="https:&#x2F;&#x2F;www.centrecom.com.au&#x2F;shintaro-usb-audio-adaptor-with-35mm-headphone-and-microphone-jack-convert-35mm-headset-to-usb" rel="nofollow">https:&#x2F;&#x2F;www.centrecom.com.au&#x2F;shintaro-usb-audio-adaptor-with...</a> and also bought a 3.5MM audio cable which I cut and stripped back the two wires and connected them to the two yellow wires from the handset speaker.<p>I knew that the hangup&#x2F;pickup switch must allow&#x2F;deny a flow of electricity, so I got out my cheap multimeter and started randomly touching parts of the phones circuit board in two places, and lifting and pressing the hangup switch.  Eventually I found two points which resulted in electricity flowing or stopping when the switch went up and down, so I knew this must be right connection points, which I then connected to two of the GPIO pins on the Raspberry Pi.<p>I removed the wire which connected the phone to the plain on telephone line and instead put a USB power cable there.<p>At this point I had worked out how all the various bits and pieces worked so I wrote a Python program to tie it all together.<p>When the phone handset was lifted, I played a dial tone audio file.  I had about 60 audio files, which I uploaded to the Linux file system.  I gave each audio file a number from 100.mp3 to 160.mp3 so when a phone number was dialled, I searched a list of the files, and if the dialled number matched an mp3 filename then I played that file.<p>I had to remove the bells from the phone unfortunately to fit the computer in.<p>One of the disappointing things is that it is not possible to make the phone ring because the ringer requires a much higher voltage than can be generated by a small computer.  You could probably fake this by installing a small speaker and just playing the sound of a phone ringing.<p>Credit should be given to the various people who&#x27;ve written blog posts and on YouTube who have done something like this before me - I read lots of pages and viewed lots of videos that do this in differing ways. This guy was most helpful: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=JChn7tV_qBk" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=JChn7tV_qBk</a>. also this person is a real inspiration, she&#x27;s very creative: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;channel&#x2F;UCEFrHGqsKTvBXk0FC-q_iag" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;channel&#x2F;UCEFrHGqsKTvBXk0FC-q_iag</a>. and this guy takes a completely different approach which does not require pulling the phone apart: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=siwq1FxvRrw" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=siwq1FxvRrw</a>