📞 i found an old telephone and made it control spotify

Final Project Image

i wasn't planning to build anything that day

i was just cleaning my room

you know that phase where you start opening random boxes and suddenly you're 3 hours deep into "why do i even own this"

that's when i found it

an old beetel m59 landline telephone
just sitting there
probably hasn't been touched in like 5-6 years

normal people would either ignore it or throw it away

i opened it


okay but what's inside a telephone?

i had zero expectations

but inside was actually kinda interesting:

the keypad was the first thing i focused on

it wasn't wired like "one pin per button"
it was a matrix

basically like a cheap keyboard
press a button -> it connects two lines

so yeah
multimeter time


reverse engineering (aka poking random pins until something makes sense)

this part was honestly messy

no datasheets
no labels
just me checking continuity like:

"okay if i press 5... does this connect... this? no. okay what about this?"

repeat that like 50 times

eventually i mapped enough keys:

not everything worked
but i didn't need everything

just enough

Key Mapping

the idea didn't come from the phone

it came from being annoyed

i was cleaning
music was playing
and i kept needing to go back to my laptop to change songs

and at some point my brain went:

what if i could just... press something nearby?

then i looked at the phone again

and yeah

that was it


what if i could dial a number and it plays a song

not search
not scroll
not click

just:

pick up -> dial -> music plays

it sounded stupid

which is usually a good sign


hardware hacking begins

first problem:
this thing was not meant to be reused

so i basically forced it to work

and then there was this tiny detail that turned out to be insanely useful:

the hook switch

you know the thing that detects if the handset is lifted?

yeah that

i wired that too

so now:

and i used it to do something subtle but nice:

this wasn't planned
but it made the whole thing feel... real


the lcd had to go

the original display was cursed

so i didn't

i just replaced it with a 16x2 i2c lcd

way easier

now it shows:

done


now the actual system

this is where it stopped being "random hardware experiment"

and became an actual project

there are basically two sides:

1. ESP32 (inside the phone)

handles:

2. web app (flask + mongodb)

handles:

so instead of hardcoding songs, i made it dynamic

System in Action

how dialing actually works

this part is simple but important

you pick up the phone
start pressing numbers

esp32 stores them like:

"4" -> "42" -> "421"

then:

it sends that number to the backend

backend checks:

does this code exist?

if yes -> return spotify uri
if no -> ignore


example

56 -> "Let it Happen"
99 -> "some playlist"

so if i dial 56

spotify just starts playing that track on my device


controls

i reused extra buttons:

(yeah yeah i know)


one important design decision

the esp32 caches all songs on boot

so:

it only talks to spotify when it actually needs to play something

this made a huge difference


the moment it worked

this is the part that actually matters

i picked up the handset
dialed a number

and it just... worked

music started playing

through a phone that was literally dead for years

that moment is the whole reason this project exists


also

there's something weirdly satisfying about using old hardware for something modern

like you're not just building

you're continuing something that already existed


anyway

that's the beetel - yeah the name's a bit of a joke, the phone itself is from Beetel and somewhere in my head that immediately connected to The Beatles, and it just stuck. it felt fitting though - something old, something iconic, but doing something completely different now. a dead landline turned into a music machine. honestly, the name probably made less sense at the start, but after building it... it kinda earned it.


if you want to build it, the repo has everything:

https://github.com/natyavidhan/the-beetel