Built a wireless drum kit with ESP32 — buttons → WiFi AP → iPhone plays sounds, no cables, no laptop, no router
Built a wireless drum kit using just an ESP32 and an iPhone — no extra audio hardware, no laptop, no router.
Here's how it works:
- ESP32 creates its own WiFi hotspot
- iPhone connects and opens Safari → loads a drum web app served directly from the ESP32's flash memory
- Press a physical button → hardware interrupt fires → WebSocket pushes a command → iPhone's Web Audio API plays the sound
Built in progressive phases — starting from literally just a USB cable and a browser, adding hardware one step at a time.
What I learned along the way:
- ISR-driven GPIO with software debounce for < 1ms input detection
- ESP32 WiFi AP mode — no infrastructure needed at all
- SPIFFS to serve a self-contained web app (HTML + WAV samples bundled as base64) directly from the microcontroller
- WebSocket for real-time push to mobile Safari
- iOS AudioContext quirks — resume() must be called before every play, not just on startup
Full source code, wiring guide, and step-by-step replication docs: https://github.com/kiranj26/Electronic_Drum_Using_ESP32
Next up: on-device I2S audio so the phone isn't needed at all.
Posted Apr 6, 2026, 12:54 AM UTC
10