soundspy

Public

@rojosinalma

Download board files

Files for version 1. Pick what you came for.

Share soundspy

Check access before sharing the link.

Who can open this board

Anyone can open this board. No sign-in is required.

This link opens the latest version. Copying it does not grant additional access.

Loading…

README

soundspy

Real-time multi-node sound monitoring system for ESP32


ESP32 nodes with I2S microphones sample audio, perform 6-band frequency analysis, and publish to a web dashboard via MQTT. Designed to monitor when audio production might be disturbing neighbors through shared walls.

Requirements

Hardware (per node)

  • ESP32 development board
  • ICS-43434 or INMP441 I2S MEMS microphone

Software

  • Docker + Docker Compose
  • Arduino CLI (for firmware builds) — or Arduino IDE

Setup

1. Configure environment

cp .env.example .env
# Edit .env with your WiFi credentials and server IP

2. Start services

docker compose up -d

Dashboard: http://<server-ip>:8091

3. Build and flash firmware

./scripts/build_firmware.sh
# Initial flash via USB:
arduino-cli upload -p /dev/ttyUSB0 --fqbn esp32:esp32:esp32 \
  --input-file builds/soundspy_latest.bin

Subsequent updates can be done via OTA from the dashboard.

Hardware wiring (I2S mic → ESP32)

Mic PinESP32 GPIO
VDD3.3V
GNDGND
SDGPIO32
WSGPIO25
SCKGPIO33
L/RGND

Development

Project structure

node_firmware/node_firmware.ino   — ESP32 firmware
dashboard/dashboard.py            — Flask + SocketIO backend
dashboard/templates/dashboard.html — Web UI
dashboard/threshold_monitor.py    — Alert service
scripts/build_firmware.sh         — Build script
scripts/deploy_ota.sh             — OTA deploy script

OTA deploy to a node

./scripts/deploy_ota.sh <chip_id>
# chip_id visible in dashboard or serial output on boot

Useful commands

docker logs -f soundspy_dashboard   # Dashboard logs
docker logs -f soundspy_monitor     # Alert service logs

Documentation

Full documentation is available on the project wiki:

Screenshot

License

AGPL-3.0

Comments

No comments yet. Be the first to ask about this board.

Ask about this board

Sign in to BoardRepo

New here? Signing in creates your account; there is no separate sign-up.