Stream real-time microphone audio from an M5StickC PLUS2 over Wi-Fi and listen directly in a web browser.
The device runs a fully self-hosted system:
- HTTP web interface on port 80
- WebSocket audio stream on port 81
- Raw PCM 16-bit mono audio at 16 kHz
- No external server or cloud required
Built for Arduino IDE using M5Unified.
- Uses the built-in SPM1423 microphone
- Low-latency live streaming over local Wi-Fi
- Works on phone, tablet, and desktop browsers
- Supports multiple listeners simultaneously
- Simple Start / Stop UI with gain control
- Runs entirely on the ESP32 inside M5StickC PLUS2
- M5StickC PLUS2
- 2.4 GHz Wi-Fi network
- USB-C cable for programming
- Arduino IDE
- M5Stack board package
- Arduino libraries:
M5UnifiedWebSockets(by Markus Sattler / Links2004)
Open Arduino IDE β Preferences
Add this Board Manager URL: https://static-cdn.m5stack.com/resource/arduino/package_m5stack_index.json
Then:
- Open Boards Manager
- Install M5Stack
- Select board: M5StickCPlus2
Arduino IDE β Library Manager
Install: M5Unified WebSockets
Edit inside the sketch:
const char* WIFI_SSID = "YOUR_WIFI_NAME";
const char* WIFI_PASS = "YOUR_WIFI_PASSWORD";This project:
- Has no authentication
- Uses unencrypted WebSocket audio
- Is intended for trusted private LAN use only
- Do not expose directly to the internet without adding security.