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.
1.9 KiB
1.9 KiB
ESP32 Soundboard
Soundboard (computer program), a web application or computer program with buttons that play short, often humorous sound clips.
Hardware
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