Skip to content

michaelwittig/hoerbox

Repository files navigation

hörbox

DIY MP3 player for kids.

Demo video

Features

  • Press "eye" button: Increase/decrease volume
  • Press and hole "eye": rewind / fast forward (the longer you hole, the more you rewind / fast forward)
  • Press both "eyes": Start MP3 from beginning
  • If no MP3 is found for RFID Tag, a empty file is added to the SD card to help you with the naming.
  • If you forget to turn off, a sound will appear from time to time.

Hints

I combine multiple MP3s into one MP3 using:

audio-join() ffmpeg -i "concat:${(j:|:)@[2,-1]}" -acodec copy $1
audio-join output.mp3 *.mp3

I pre-process all my MP3s using:

ffmpeg -i 8853ade395.mp3 -acodec libmp3lame -ac 2 -ab 128k -ar 44100 8853ade395_.mp3

Hardware

Parts list

Part ~Price Sample Supplier
1 x ESP32 LyraT V4.3 18,00€ mouser
1 x LiPo Akku 3,7V 2500mAh (JST-PHR-2 Connector) 8,94€ Eckstein
1 x JST-PH 2,0mm (20 Paare) 2 Pin 4,19€ Eckstein
2 x Lautsprecher 4 Ohms, 3 W 8,14€ mouser
1 x MicroSD Card 16 GB 12,19€ mouser oder mouser
2 x Pushbutton switch Off (On) 11,60€ mouser
1 x male-female jumper wires (10 pieces) 4,43€ mouser
1 x On/Off switch
1 x Fuse
1 x Fuse holder
1 x RFID/NFC reader RC522 I2C v1.1 6,08€ AliExpress
1 x RFID/NFC Tags (10 pieces) 4,95€ ebay

You likely find better prices. I tried to keep the number of suppliers low.

TODO add fuse details

Wiring

WARNING The polarity of the battery connector does not match the polarity on the board! I had to pull out the socket on the board and turn it 180°.

RFID reader

RFID reader

RFID reader to board

RFID reader to board

Pushbutton switches (eyes) to board

Pushbutton switches (eyes) to board

Battery to board

I'm not sure if the fuse is needed and properly sized. It feels better to have one :)

TODO add pictures

Wooden box

Wood thickness: 10mm

  • A: 116mm x 116mm
  • B: 116mm x 116mm
  • C: 116mm x 96mm
  • D: 96mm x 96mm
  • E: 116m x 96mm
  • F: 96m x 96mm

From botton

From bottom

From behind

TODO add pictures

Software

Docs

Setup env

Requires Python 2.7 (we use https://github.com/pyenv/pyenv) Requires ESP ADF v2.0

/bin/bash
export ADF_PATH=$HOME/esp/esp-adf
. $HOME/esp/esp-idf/export.sh

Build / Flash

Press and hold button, press button and release button.

make flash monitor -j5

press to start application

Can not connect to device

The following command might help:

make erase_flash

ESP ADF version used

Inside ~/esp/esp-adf:

git fetch
git checkout v2.5
git submodule update --init --recursive

About

DIY MP3 player for kids.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published