User:Wordfa/oldphonehack
Phone Hacking Project
This is a project for SS25 to create a story gathering system using an old phone. What do we want the telephone to do? Fred wants to make it into an API that we can use it later on with the data.
Parts Required
USB interface to 3.5mm
https://www.adafruit.com/product/1475
3.5mm Cables
Old phone (T65)
Raspberry Pi
TRS 3.5 Jack x2
Loads of wires
old headphones with a mic (apple earpod works best)
Things we done
- We took the phone apart and got the speaker to work by connecting the blue and red cables from the phone out to the audio jack to the soundcard to the computer. played show me the body, was good.
- Then we tried the microphone but its a carbon mic and it didnt work. so we atttached a battery and hoped. didnt work.
- We took apart wired headphones that had mic in them to see if we could use the mic from it rather than the carbon mic in the telephone.-> didnt work, headphone cable is TRRS not TRS:
spent a day trying to wire up TRRS to an audio cable, turns out the audio jack was the wrong kind.
then wired it directly to a TRS jack, worked!!!!!!!!!!!!!
then cable managed, looks beautiful now. now we have working speakers and working mic.
This is how you could make it work too:
From the headphones you need to...
Connect th Blue (Ground) to the Sleeve of the TRS jack
Connect the Red (mic) to Pin (Ring) 1 or 2 of the TRS jack
MAKE SURE THE HEADPHONES CONNECTION IS CLOSED!
Next Steps:
Work out how to read the keypad input on the raspberrypi.
We used this project at the end: https://github.com/ralphcrutzen/PTT-Tafeltjes-Telefoon?tab=readme-ov-file
Set up the raspberrypi, named it telephone. Fred made me a user as well and we tested the connections first, adjusted the code accordingly. Fred tested it like this(this is the final working version):
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(23, GPIO.IN, pull_up_down = GPIO.PUD_UP)
GPIO.setup(24, GPIO.IN, pull_up_down = GPIO.PUD_UP)
GPIO.setup(25, GPIO.IN, pull_up_down = GPIO.PUD_UP)
while True:
print('-')
if GPIO.input(23):
print('23')
if GPIO.input(25):
print('25')
if GPIO.input(24):
print('24')
References
Microphone from handset
https://www.youtube.com/watch?v=rIkIkbOw3OQ&t
Rotary Pi
- Really good write up with code:
- https://marks.kitchen/blog/rotary_phone_running_linux/
- Linking Video
- https://www.youtube.com/watch?v=M4eCrctDMEc
Lofi Mic
https://www.youtube.com/watch?v=7gorBkdk8zY
Schematic (v scary)
https://easyeda.com/editor#id=7d0350ec43844219912695cec1a0e156
Rotary MP3 Player
https://www.whizzbizz.com/en/gpo746-t65-rotary-dial-phone-mp3-wav-player
Info on the T65
https://www.cryptomuseum.com/phone/t65/index.htm
Carbon Mic
https://www.youtube.com/watch?v=cwPPoVvljOw
https://www.youtube.com/watch?v=pb-Lu2kzKYc&t=221s
Dutch guide on rotary dail
https://github.com/ralphcrutzen/PTT-Tafeltjes-Telefoon?tab=readme-ov-file
Weird Stuff
how does a carbon mic work