Skip to content

TuriSc/Jukephone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Jukephone

Repurposing a landline telephone into a jukebox with Raspberry Pi Pico and an Mp3 player.

Jukephone See it in action: YouTube video

How it works

I found a big button corded telephone and decided to paint it red and turn it into a jukebox. A Raspberry Pi Pico is used to read the keypresses, process the input, send the Mp3 player instructions via UART, and provide feedback through the LED and buzzer. The output pins of the Mp3 player are connected to the speaker inside the headset. There's also a 3.5" mini-jack port, to use headphones. The switch below the handset is used as a power switch. The whole Jukephone is powered by a lithium battery rechargeable via USB. I loaded the MicroSD card with 999 Mp3 files, organized so that there's one hundred per genre (except the first one). Specific tracks can be invoked by typing their number on the keypad. Other available functions are:

  • Previous / Next track
  • Adjust volume
  • Pause / Resume
  • Play a random track (with no repeats)
  • Change equalizer settings (5 presets available)
  • Repeat single track on / off
  • Restart current track

Required libraries

The code uses a few libraries I wrote or ported.

Schematic and BOM

  • Landline telephone (I'm afraid rotary dials are not covered here)
  • Raspberry Pi Pico
  • DFPlayer mini (or MP3-TF-16P clone) - MH2024K-24K, MH2024K-16SS and many more chips are supported
  • MicroSD card. 8GB or more is recommended.
  • TP4056 battery charger module
  • 18650 or equivalent lithium battery
  • 1000uF electrolytic capacitor
  • 2x 1K resistor
  • 3.5" audio socket

Schematic

The specific telephone I used had a keypad matrix with 17 keys, an LED, a buzzer, and another key not on the matrix. You should be able to adapt the code to your hardware.

Among the telephone components you should be able to use the keypad matrix, headset speaker, headset switch, buzzer, LED, as well as most of the wiring and connectors.

MicroSD card structure

A typical setup would have the player read Mp3 files off a microSD card (formatted as FAT-32), with the audio files at the root level and named sequentially starting with four digits. So, for example:

- root
    - 0001-file name here.mp3
    - 0002-no file name after digits is ok too.mp3
    - 0003.mp3

Compiling

Required: make sure the Pico SDK is installed and accessible.

git clone https://github.com/TuriSc/Jukephone
cd Jukephone
git submodule init
mkdir build && cd build
cmake .. && make

After that, simply connect your Pico to your computer via USB holding the BOOTSEL button and copy the .uf2 file to flash the program.

More info

Jukebox is an original project. More info and pictures on my blog: turiscandurra.com/circuits

Version history

  • 2023.10.23 - v1.0.1 - Lowered default volume to the absolute minimum
  • 2023-10-04 - v1.0.0 - First release

About

Repurposing a landline telephone into a jukebox with Raspberry Pi Pico and an Mp3 player

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published