wifi-densepose/examples/research-sota
rUv bcfdf0a4d0
research(R13): NEGATIVE — contactless BP from CSI is physically inferior to a cuff (#713)
Critical-physics scrutiny of published 'contactless BP from WiFi CSI'
claims (Yang 2022, Liu 2021, others). Four physics floors quantified;
all four make CSI-based BP provably worse than a 20 dollar arm cuff.

1. PTT temporal resolution: need 0.5 ms for 1 mmHg precision; ESP32-S3
   maxes at 1 ms (1000 Hz CSI) and typical deployment is 10 ms (100 Hz)
   = 20 mmHg precision floor. Achievable but requires sacrificing every
   other sensing pipeline.

2. Spatial separation: carotid-femoral distance 55 cm, Fresnel envelope
   at 5 m link is 40 cm. Single-link CSI cannot resolve the two sites
   independently. Multistatic with 4-6 anchors is severely ill-posed
   (same regime that defeated R12).

3. Pulse-contour SNR: pulse motion at chest is 0.3 mm; breathing is
   8 mm (27x larger). After 4th-order bandpass we get +20 dB HR-band
   SNR; literature (Mukkamala 2015) says +25 dB minimum for waveform-
   shape recovery. **5 dB short.**

4. Vs 0 arm cuff: best published CSI BP is +/-10 mmHg with per-subject
   calibration; arm cuff is +/-2 mmHg uncalibrated. CSI is 5x worse
   AND requires calibration the user doesn't otherwise need.

Verdict: do not ship BP as a primary RuView feature. The breathing/HR
features we already ship work because their motion amplitudes are
30-100x larger than the pulse waveform. Adding BP would force 1 kHz
CSI rate (degrading every other pipeline), require per-subject
calibration (defeating no-setup story), and ship a feature that's
worse than a 20 dollar device the user can buy.

Three niche scenarios remain open:
- Single-subject trend monitoring (relative not absolute)
- Bed-instrumented controlled-still subject (25+ dB achievable)
- Multistatic PWV with 6+ anchors + per-installation calibration

The general 'BP from a 9 dollar ESP32 in the corner' claim does not close.

Composes:
- R1 (CRLB) confirms temporal-resolution floor for PTT
- R6 (Fresnel) provides the spatial floor that defeats two-site PTT
- R5 (saliency) explains why whole-chest observable but 0.3 mm pulse not
- R12 = loop's other negative result, same failure pattern
- R14's assumption (no BP) is now empirically validated

Two negative results in this loop (R12, R13) prevent the field from
biasing toward overclaiming. This is the most valuable kind of tick
because it marks BP-from-CSI as off-roadmap with explicit numbers, so
future contributors don't waste cycles attempting it.

Coordination: ticks/tick-11.md, no PROGRESS.md edit.
2026-05-22 02:00:35 -04:00
..
r1_toa_crlb.py research(R1): ToA CRLB — precision floor for WiFi multistatic localisation (#711) 2026-05-22 01:38:35 -04:00
r1_toa_crlb_results.json research(R1): ToA CRLB — precision floor for WiFi multistatic localisation (#711) 2026-05-22 01:38:35 -04:00
r5_subcarrier_saliency.py research(sota): kick off SOTA research loop + first R5 saliency measurement (#702) 2026-05-21 23:05:55 -04:00
r6_fresnel_results.json research(R6): Fresnel-zone forward model — bedrock physics for CSI sensitivity (#710) 2026-05-22 01:31:09 -04:00
r6_fresnel_zone.py research(R6): Fresnel-zone forward model — bedrock physics for CSI sensitivity (#710) 2026-05-22 01:31:09 -04:00
r7_multilink_consistency.py research(R7): Stoer-Wagner mincut detects adversarial CSI nodes 3/3 in synthetic (#704) 2026-05-21 23:28:46 -04:00
r7_multilink_consistency_results.json research(R7): Stoer-Wagner mincut detects adversarial CSI nodes 3/3 in synthetic (#704) 2026-05-21 23:28:46 -04:00
r8_rssi_only_count.py research(R8): RSSI-only person count retains 95% of full-CSI accuracy (#703) 2026-05-21 23:18:09 -04:00
r8_rssi_only_results.json research(R8): RSSI-only person count retains 95% of full-CSI accuracy (#703) 2026-05-21 23:18:09 -04:00
r9_rssi_fingerprint_knn.py feat(tools/ruview-mcp): M2 — wire real inference via cog health (#706) 2026-05-21 23:43:32 -04:00
r9_rssi_fingerprint_results.json feat(tools/ruview-mcp): M2 — wire real inference via cog health (#706) 2026-05-21 23:43:32 -04:00
r10_foliage_attenuation.py research(R10): through-foliage wildlife sensing — physics feasibility + per-species gait taxonomy 2026-05-22 00:59:11 -04:00
r10_foliage_results.json research(R10): through-foliage wildlife sensing — physics feasibility + per-species gait taxonomy 2026-05-22 00:59:11 -04:00
r11_maritime_propagation.py research(R11): maritime sensing — through-bulkhead impossible, through-seam works (#712) 2026-05-22 01:53:51 -04:00
r11_maritime_results.json research(R11): maritime sensing — through-bulkhead impossible, through-seam works (#712) 2026-05-22 01:53:51 -04:00
r12_rf_weather_eigenshift.py research(R12): RF weather mapping eigenshift — negative-ish, with clearly-actionable revision path (#707) 2026-05-21 23:52:49 -04:00
r12_rf_weather_results.json research(R12): RF weather mapping eigenshift — negative-ish, with clearly-actionable revision path (#707) 2026-05-21 23:52:49 -04:00
r13_bp_physics_floor.py research(R13): NEGATIVE — contactless BP from CSI is physically inferior to a cuff (#713) 2026-05-22 02:00:35 -04:00
r13_bp_results.json research(R13): NEGATIVE — contactless BP from CSI is physically inferior to a cuff (#713) 2026-05-22 02:00:35 -04:00