| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| partition-table-4mb.bin | 2026-03-31 | 3.1 kB | |
| bootloader.bin | 2026-03-31 | 18.9 kB | |
| esp32-csi-node-4mb.bin | 2026-03-31 | 773.8 kB | |
| esp32-csi-node.bin | 2026-03-31 | 990.5 kB | |
| ota_data_initial.bin | 2026-03-31 | 8.2 kB | |
| partition-table.bin | 2026-03-31 | 3.1 kB | |
| ESP32-S3 CSI Firmware v0.5.3 -- Cross-Node Fusion + DynamicMinCut source code.tar.gz | 2026-03-31 | 26.7 MB | |
| ESP32-S3 CSI Firmware v0.5.3 -- Cross-Node Fusion + DynamicMinCut source code.zip | 2026-03-31 | 27.7 MB | |
| README.md | 2026-03-31 | 2.3 kB | |
| Totals: 9 Items | 56.3 MB | 12 | |
What's Changed
Cross-Node Mesh Fusion
- RSSI-weighted feature fusion across multiple ESP32 nodes — closer node gets higher weight
- DynamicMinCut person separation via
ruvector_mincuton subcarrier temporal correlation graph - RSSI-based skeleton position tracking — walk between nodes and the skeleton follows
- Motion-responsive skeleton — arm swing (0-80px), leg kick (0-50px), walking bob, head nod all driven by real CSI data
Per-Node State (ADR-068)
- Each ESP32 gets independent classification, vitals, person count
- Stale node eviction after 60s inactivity
- Multi-node aggregation: max(per_node_counts)
RuVector Signal Processing (Phases 1-3)
- Subcarrier importance weighting via mincut partition
- Temporal EMA keypoint smoothing with coherence gating
- Skeleton kinematic constraints (Jakobsen relaxation, 12-bone COCO-17 tree)
- Compressed pose history for trajectory matching
Smoothing & Quality
- Client-side lerp interpolation (alpha=0.15) for fluid skeleton
- Server EMA (alpha=0.15) for temporal blending
- Dampened procedural animation, recalibrated for real ESP32 data
- Vital sign filtering: larger median window (31), faster EMA, looser jump filter
Hardware Benchmarks (2 ESP32 nodes, 30s)
| Metric | v0.5.2 (baseline) | v0.5.3 (fusion) | Improvement |
|---|---|---|---|
| Keypoint jitter | std=4.5px | std=1.3px | -72% |
| Feature noise | 109.4 | 77.6 | -29% |
| Feature stability | std=154.1 | std=105.4 | -32% |
| Confidence | 0.643 | 0.686 | +7% |
| Presence accuracy | 93.4% | 94.6% | +1.3pp |
Bug Fixes
- RSSI byte offset (#332), stack overflow, stale node leak, unsafe pointer removed
- Person count: sum→max aggregation, recalibrated thresholds
- Firmware CI: IDF v5.4, xxd→od
Binaries
| File | Flash Size | Description |
|---|---|---|
esp32-csi-node.bin |
8MB | Main firmware |
esp32-csi-node-4mb.bin |
4MB | For 4MB flash boards |
bootloader.bin |
— | Bootloader |
partition-table.bin |
8MB | Partition table |
partition-table-4mb.bin |
4MB | Partition table (4MB) |
ota_data_initial.bin |
— | OTA data |
Full Changelog: https://github.com/ruvnet/RuView/compare/v0.5.2-esp32...v0.5.3-esp32