esp32 soundboard project
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Hendrik Langer f3bf4e63a7 update TODOs 7 years ago
doc documentation stub 7 years ago
lib new platformio project 7 years ago
sounds new boot sound 7 years ago
src move wifi credentials to new header file 7 years ago
.gitignore Exclude downloaded sound samples 7 years ago
.gitlab-ci.yml move wifi credentials to new header file 7 years ago
README.md update TODOs 7 years ago
platformio.ini begin wifi implementation 7 years ago

README.md

ESP32 Soundboard

Soundboard (computer program), a web application or computer program with buttons that play short, often humorous sound clips.

Hardware

  • ESP32 µC
  • MAX98357A PCM Input Class D Audio Power Amplifiers
  • [SD card]

Wiring

SD card

SD card pin ESP32 pin Notes
CS GPIO05
DI GPIO23 (MOSI)
SCK GPIO18 (SCK)
DO GPIO19 (MISO)
CD GPIO17 optional

Touch

ESP32 Touch pad GPIO Notes
T0 04
T1 00 also bootloader (not usable on dev board)
T2 02 also bootloader (not usable on dev board)
T3 15
T4 13
T5 12
T6 14
T7 27
T8 33
T9 32

I2S

MAX98357A ESP32 pin
LRC 25
BCLK 26
DIN 22
GAIN (VCC)
SD -

Build

git clone https://dev.xd0.de/hendrik/soundboard.git
cd soundboard
virtualenv .
source bin/activate
pip install -U platformio
platformio run -t upload && platformio device monitor -b 115200
  • Convert mp3 files: sox ~/Music/input.mp3 -c 1 -r 11025 -b 16 output.wav trim 0 30
  • SD card is tested with one FAT16 partion

ToDo

  • Prototype
  • reimplement tasks with a queue, see i2s_push_sample() from esp-idf/components/driver/i2s.c
  • Keypad layout
  • internal DAC?
  • Add-ons?
  • dynamic keypad thresholds
  • wav file headers
  • stack size in play task
  • global variables for components

References