Live status · Read the latest
monad-knowledge Wi-Fi sensing lab · FIIT STU
running csi-impairment-fit simulation simulation

Which CSI receiver impairments can the empty-room sample identify?

In plain words

Which receiver-model parameters can the recorded empty-room channel identify, and how do they change simulated occupancy sensitivity?

clean, from the ray tracer a real card's flaws noise, offsets, gain, rounding what a card would report is the occupancy signal still in there?
The simulator's radio is perfect: no noise, no frequency offset, infinite precision. A real Wi-Fi card is none of those. The design pushes the clean signal through a model of the card's flaws and asks whether the people are still visible on the far side. Schematic of the design, not a measurement.
Why it matters
The simulator's shipped receiver prior needs a measured check before its outputs can represent this hardware.
How it is done
Read per-tone complex CSI from bounded source records, distinguish estimable parameters from channel-confounded bounds, and compare fitted versus shipped profiles over paired simulation seeds.
Where it stands
Executed August 28: ten host segments and sixteen simulations. Three terms were estimated; I/Q and phase-noise terms remain channel-confounded, and the SNR estimate may include gain variation.

Asks, formallyA bounded first-party empty-room sample identifies some receiver-model terms and constrains others only jointly with channel effects. The fitted-versus-shipped profile comparison tests sensitivity of simulated occupancy features; full parameter identification and independent hardware validation remain separate claims.

FoundSession 01M14KGBE9NBQB89AMRZ4N272W estimated CFO 62,258 Hz [60,970, 63,545], timing offset 6.74 samples [6.35, 7.21], and effective SNR 8.57 dB [7.43, 9.61] from ten host segments.

StandingCollecting data now · last activity 2026-08-28

RoomReal first-party capture: `EXP-F2`, 86 sessions, 2,641,389,896 declared records, 2026-07-27 → 2026-08-28, ten AX210/Pi5 nodes in the FIIT library, `useful_yield` 0.927–0.976. Per-tone complex CSI read from the csiq containers on S3 — NOT from the measurement lake, whose `packets` table carries scalars only and whose `ratio_*` columns cancel a common CFO by construction.

The room

fiit · fiit-ground-0 · 10 devices

The floor this experiment runs on — its rooms, walls, furniture and the highlighted sensors placed for it. This is the surveyed layout as last exported; a run's replay below shows the geometry as it was simulated.

Which CSI receiver impairments can the empty-room sample identify?

Current assessment (2026-09-15)

Session 01M14KGBE9NBQB89AMRZ4N272W estimated CFO 62,258 Hz [60,970, 63,545], timing offset 6.74 samples [6.35, 7.21], and effective SNR 8.57 dB [7.43, 9.61] from ten host segments. The reported intervals are bootstrap intervals over hosts, not independent nights. Sixteen simulations over eight paired seeds gave an attenuation contrast of −4.066 dB/person, 95% CI [−4.860, −3.359], fitted minus shipped profile.

The broad hypothesis that every impairment parameter is identifiable failed its own scope test: three terms remain channel-confounded. The fit samples one roughly 2,000-record segment per host, not a month of empty-room evolution. Effective SNR may include AGC variation. This is a measured-profile sensitivity analysis, not full identification of the receiver or proof of real transfer.

Next evidence needed: Preserve raw-channel lineage and acquisition class. Validate fitted terms with independent sessions or a reference instrument, and carry confounded terms as uncertainty. The result motivates the reopened csi-sim2real-transfer comparison without deciding its outcome.

Basis: Thesis Narrative, the September 10 synthesis, and the September 15 register review. See the review record for evidence sources and outstanding checks.

Earlier protocol and dated results

The methods and observations below retain their original scope. Read their readiness statements and proposed next steps as historical. The current assessment above records what has changed; frozen thresholds have not been retrospectively revised.

Original hypothesis (before this review): Every parameter of ImpairmentProfile is estimable from first-party empty-room capture, and the fitted values differ materially from the commodity-NIC literature prior the simulator currently ships. The consequential claim is the second-order one: because the IP-101 impairment grid found that mild NIC impairments halve the occupancy attenuation signature and sign-flip the Rician-K slope, the fitted operating point decides whether the project's in-silico occupancy results were computed at an impairment level the real hardware has.

What each parameter is read from

Parameter Estimated from the empty-room corpus
snr_db per-link amplitude variance against RSSI
cfo_hz packet-to-packet common phase rotation across tones
sto_samples linear phase-ramp slope across subcarriers, per packet
iq_amp_imbalance_db, iq_phase_imbalance_deg mirror-tone conjugate correlation
phase_noise_deg_rms residual per-tone phase RMS after CFO and STO removal
n_bits read from the csiq container. Known, not fitted.

symbol_duration_s is a constant of the standard and is not a free parameter.

The trap in the data path

The measurement lake cannot answer this. packets carries chain_amp_rms, ratio_amp_db and ratio_phase_rad. The last two are inter-chain ratios taken within one NIC, so a common carrier-frequency offset cancels exactly — the column that looks like a phase measurement is the one column in which CFO is invisible. The fit reads per-tone complex CSI from the csiq containers through the csi package.

What a null means

If the fitted values land inside the shipped prior's neighbourhood, the simulator's measurement model was right by luck or by good reading, and every prior in-silico result keeps its current standing. That is a clean, quotable outcome.

If they land far outside — and the impairment grid says the region where the attenuation signature halves and the K-slope sign-flips is close by — then the project's published in-silico occupancy figures were computed at an impairment level the AX210 does not have, and each needs a stated correction rather than a footnote.

Secondary, if the primary lands

OccupancyDiffuse.from_real_anchor fits {k0_db, k_slope_db_per_person} from a real anchor's (count, Rician-K) pairs. It is currently fitted against WiMANS and OPERAnet. A first-party anchor is strictly better, but it needs labelled occupancy, which the fleet does not yet have. Named here so it is not forgotten, and explicitly out of scope for this session.

Campaigns & sessions 1 campaign instantiating this experiment
Campaign Session State Runs Started Report
c-csi-impairment-fit RZ4N272W finished 16 2026-08-28 synthesis →
Simulation runs the 16 most recent, newest first
Run Date Gate Campaign Replay
H5AQ5S9Q 2026-08-28 ✓ c-csi-impairment-fit —
RDPYGXX6 2026-08-28 ✓ c-csi-impairment-fit —
TR40JXFV 2026-08-28 ✓ c-csi-impairment-fit —
3GN45EC7 2026-08-28 ✓ c-csi-impairment-fit —
19WRZM30 2026-08-28 ✓ c-csi-impairment-fit —
001RYDP9 2026-08-28 ✓ c-csi-impairment-fit —
7DTY1GXD 2026-08-28 ✓ c-csi-impairment-fit —
Q74SXRSF 2026-08-28 ✓ c-csi-impairment-fit —
YXMFKP2P 2026-08-28 ✓ c-csi-impairment-fit —
25Y8QXWN 2026-08-28 ✓ c-csi-impairment-fit —
QVB33Q8F 2026-08-28 ✓ c-csi-impairment-fit —
GRB7P96M 2026-08-28 ✓ c-csi-impairment-fit —
RV4RGRQG 2026-08-28 ✓ c-csi-impairment-fit —
MAZJWDZM 2026-08-28 ✓ c-csi-impairment-fit —
GZN350BN 2026-08-28 ✓ c-csi-impairment-fit —
E1ZXKF8W 2026-08-28 ✓ c-csi-impairment-fit —

All exp-csi-static runs in the workbench →

Provenance

Data origin
mixed
Domain
csi
Room layout
fiit-ground-fleet

Data types

  • csi-amplitude
  • csi-phase
  • per-link-summary