github ruvnet/RuView v1041
Release v1041

latest releases: v1056, v1055, v1052...
2 hours ago

Automated release from CI pipeline

Changes:
research(R8): RSSI-only person count retains 95% of full-CSI accuracy (#703)

Builds directly on R5's band-spread observation. If the count-task
signal is spread across the WiFi band (R5: max/mean ratio 2.85× across
56 subcarriers), then RSSI — which is the integral of |H_k|^2 across
the band — keeps most of the information. The naive prior (RSSI throws
away 98% of CSI bytes) is misleading; the relevant metric is how much
of the signal is in the integral, not how many bytes are in the
representation.

Tested by aggregating each existing [56 × 20] CSI window down to a
[20]-vector RSSI proxy (mean across subcarriers per frame), training a
tiny MLP (Linear 20→32→8, 656 params, 5 KB) with vanilla NumPy SGD for
200 epochs on the same random 80/20 split as cog-person-count v0.0.2.

Result:

Full CSI v0.0.2 62.3% accuracy
RSSI-only (this) 59.1% accuracy = 94.82% retained

Per-class is also markedly more balanced (RSSI: 59.5 / 58.6 ; full
CSI: 86.2 / 34.3) — the tiny model on a low-dim input can't cheat by
leaning on class 0 the way v0.0.2's larger model does at inference.

What this enables on a 10-year horizon: phones, laptops, smart
speakers, smart TVs, smart lights — anything with WiFi reports RSSI
and anything with a CPU can run a 656-param MLP. Person counting
becomes a federated property of any room with WiFi, not a property of
the ESP32-S3 fleet.

What this doesn't prove (called out explicitly in the research note):

  • Single room, single operator, single 30-min recording
  • 2-class problem (label distribution is {0, 1})
  • Single random draw — needs K-fold + multi-room replication

Three follow-up experiments queued in R8-rssi-only-count.md §'What's
next on this thread':

  • Multi-room replication once #645 lands
  • 3-class extension (0 / 1 / 2+) — measure the info-rate cliff
  • Run on a non-ESP32 RSSI source (e.g. iw event on Linux laptop)

Files:

  • examples/research-sota/r8_rssi_only_count.py — pure-NumPy, no
    framework deps. Trains + evals in 0.72 s on CPU.
  • examples/research-sota/r8_rssi_only_results.json — full JSON dump
    for cross-tick reproducibility.
  • docs/research/sota-2026-05-22/R8-rssi-only-count.md — method,
    measured numbers, interpretation, what doesn't work yet.
  • docs/research/sota-2026-05-22/PROGRESS.md — updated index + Done
    log.

Coordination note: horizon-tracker is working on tools/ruview-mcp/

  • tools/ruview-cli/ + ADR-104 — this commit deliberately stays out
    of those paths.

Docker Image:
ghcr.io/ruvnet/RuView:d9ca9b368489921f460abf7948921113c0636212

Don't miss a new RuView release

NewReleases is sending notifications on new releases.