v0.5.2-esp32
ruvnet/RuViewv0.5.2-esp32Mar 30, 2026by ruvnet
AI Summary
Fixes critical RSSI byte offset bugs on the server and implements Per-Node State tracking to resolve detection inconsistencies across multiple ESP32 nodes.
Key Highlights
- Fixed RSSI byte offset reading (server-side correction)
- Per-node state pipeline implementation (#249, ADR-068)
- Supports 256 nodes with <13 MB memory overhead
- Firmware CI upgraded to ESP-IDF v5.4
New Features
- Per-node state tracking for classification and vitals
- RSSI data correction (negative dBm values)
- Firmware CI improvements (xxd to od)
Full Release Notes
## What's Changed ### Bug Fixes **RSSI byte offset mismatch (#332)** - Server was reading RSSI from byte 14 (sequence counter high byte) instead of byte 16 (actual RSSI) - Root cause: firmware packs `n_subcarriers` as u16 and `freq_mhz` as u32, but server assumed u8 and u16 - Result: RSSI now shows correct negative dBm values (e.g., -46) instead of bogus positive values (+9) **Per-node state pipeline (#249, ADR-068)** - Each ESP32 node now gets independent classification, person count, and vital sign tracking - Fixes the #1 user-reported issue: detection showing same output regardless of number of nodes/people - Scales to 256 nodes with <13 MB memory overhead **Firmware CI fixed (#327)** - Upgraded from ESP-IDF v5.2 → v5.4, replaced `xxd` with `od` - Pre-compiled binaries now built and uploaded automatically ### Sensing Server Rebuild from source to get all fixes: ```bash git pull origin main cd rust-port/wifi-densepose-rs cargo build --release -p wifi-densepose-sensing-server ``` ### Firmware No firmware binary changes from v0.5.1 — the RSSI fix and per-node state are server-side only. If you already flashed v0.5.1, no reflash needed. **Full Changelog**: https://github.com/ruvnet/RuView/compare/v0.5.1-esp32...v0.5.2-esp32