What's Changed
Bug Fixes
Firmware: Watchdog crash on busy LANs (#321)
edge_dsptask now batch-limits to 4 frames before a 20ms yield- Fixed idle-path busy-spin where
pdMS_TO_TICKS(5)==0at 100Hz tick rate - Added ring buffer drop counter (
drops=Nin serial log) for diagnostics - QEMU validated: All 11 CI jobs pass (7 configs + fuzz + swarm + NVS + build)
Sensing Server: No detection from edge vitals (#323)
- ESP32 nodes running Tier 2+ edge DSP now trigger full
sensing_updatein the UI - Previously, vitals packets (magic
0xC5110002) were broadcast but never generated person detection - Breathing animation now works from edge vitals (non-zero
breathing_band_power)
Python Package: ModuleNotFoundError (#314)
- Added
wifi_densepose/package withWiFiDensePosefacade class from wifi_densepose import WiFiDensePosenow works as documented in README
CI Validation
| Job | Status |
|---|---|
| Build Espressif QEMU | ✅ |
| NVS Matrix Generation | ✅ |
| Fuzz Testing (ADR-061 Layer 6) | ✅ |
| Swarm Test (ADR-062) | ✅ |
| QEMU Test — default | ✅ |
| QEMU Test — edge-tier0 | ✅ |
| QEMU Test — edge-tier1 | ✅ |
| QEMU Test — tdm-3node | ✅ |
| QEMU Test — boundary-min | ✅ |
| QEMU Test — boundary-max | ✅ |
| QEMU Test — full-adr060 | ✅ |
Upgrade Notes
- Firmware: Reflash required for the watchdog fix. Build from source using ESP-IDF v5.4.
- Sensing server: Rebuild from
main—cargo build --release -p wifi-densepose-sensing-server - Python:
pip install -e .from repo root, orfrom wifi_densepose import WiFiDensePose
Full Changelog: v0.5.0-esp32...v0.5.1-esp32