Sleep Buddy
Sleep Buddy analyses the integrated microphones of the Waveshare ESP32-P4 touch display directly on the device. It shows live snoring confidence, records detected events and creates an easy-to-read summary and timeline for each monitored night.
- Build time
- TBD
- Cost
- TBD
- Firmware
- 0.1.0-beta.1 beta
Features
Private local analysis
EfficientAT AudioSet inference runs directly on the ESP32-P4. Normal monitoring does not send microphone audio to a cloud service.
Live snoring confidence
The monitor screen shows the current snoring confidence and whether an event is active. The detection threshold can be adjusted directly on the touch display.
Night summary and timeline
After monitoring, Sleep Buddy shows monitored time, detected snoring time, longest phase, event count and a touch-selectable night timeline.
Seven-night history
Completed and recovered nights are stored locally on microSD and remain available in a compact seven-night history.
Optional WAV recording
Start + Record stores a 32 kHz, 16-bit stereo WAV recording. Recording is always an explicit choice and is not enabled during normal Start monitoring.
Resilient night storage
Checksummed checkpoints preserve an active session periodically. After an unexpected power loss, a valid interrupted night is recovered on the next start.
Touch-first operation
Monitor, summary, history and settings are operated directly on the 4.3-inch display. The panel can be switched off and woken again by touch while analysis continues.
Browser-based installation
The tested firmware can be installed from the SpacePC Web Flasher without Arduino IDE, PlatformIO or a local ESP-IDF setup.
Required hardware
Assembly and wiring
Assembly and wiring are described in the linked project documentation.
Open documentationFirmware installation
Connect the Waveshare ESP32-P4-WIFI6-Touch-LCD-4.3 to a desktop computer with a USB data cable. Open the SpacePC Web Flasher in Chrome or Edge, select Sleep Buddy, confirm that settings will be erased and start the installation. Keep the cable connected until the installer reports completion.
Checking browser firmware installation support...
Home Assistant setup
Home Assistant support is not currently published for this project.
Troubleshooting
- Monitoring cannot be started
- Power the device off, insert a FAT32-formatted microSD card and restart it. exFAT is not supported.
- Clock times are missing or incorrect
- Open Settings, configure Wi-Fi and select the correct time zone. Internet access is required for NTP synchronization, but not for local audio classification.
- Too many or too few events are detected
- Adjust the threshold using the pink marker on the monitor screen. A higher threshold reduces sensitivity; a lower threshold increases it.
- The Web Flasher does not detect the board
- Use Chrome or Edge on a desktop computer, HTTPS and a USB cable that supports data. Close other programs using the serial port and reconnect the board.
Comments (0)
Questions, experiences or notes about this project. New contributions are reviewed before publication.
No comments yet. Start the discussion.

