Live status · Read the latest
monad-knowledge Wi-Fi sensing lab · FIIT STU
superseded EXP-003 thesis-umbrella

Periodic BLE Calibration Campaigns

In plain words

Can a short, cheap top-up fix a people counter that has drifted, instead of retraining it from scratch?

left alonecalibrated counting error time; each dashed line is a short calibration
The lines show the proposed recovery pattern. Independent labels must establish whether error actually rises and recovers. Score each prediction before refitting; the dashed lines mark calibration events. Schematic of the design, not a measurement.
Why it matters
Retraining needs a large hand-labelled dataset every time. If ten to thirty minutes with a few phones does the job, the sensor can live in a room for years.
How it is done
A handful of people carry phones broadcasting Bluetooth for 10 to 30 minutes. The phone count gives free labels, the model is nudged back into shape, and the picture over time should be a sawtooth: decay, fix, decay.
Where it stands
Superseded historical design. Current work and evidence limits are recorded under EXP-F2; this card has no primary data.

Asks, formallyShort BLE-assisted calibration campaigns (10-30 minutes) can restore CSI crowd counting accuracy to within 5% of the original Day 0 performance, at a fraction of the cost of full retraining.

FoundSuperseded design retained for provenance, reviewed September 15, 2026.

StandingReplaced by later work

RoomFIIT STU — same room as EXP-002, continuation of drift experiment

Periodic BLE Calibration Campaigns

Current assessment (2026-09-15)

Superseded design retained for provenance, reviewed September 15, 2026. No primary data are attributed to this card. The powered trigger follow-up found +0.034 persons error versus fixed cadence, 90% CI [+0.002, +0.066], and failed equivalence. The old 0.93 pilot correlation and parity-at-quarter-budget wording are obsolete as current conclusions.

The powered trigger follow-up found +0.034 persons error versus fixed cadence, 90% CI [+0.002, +0.066], and failed equivalence. The old 0.93 pilot correlation and parity-at-quarter-budget wording are obsolete as current conclusions.

Next evidence needed: Use EXP-F2 for the current protocol and evidence. The earlier plan below is not an instruction to reopen this experiment.

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.

The problem, in plain words

Picture teaching a child "five coats on the rack means five people are here." They learn it perfectly in your living room. Now move the rack, add a mirror, push the sofa against a different wall — and the same five people look different to them. Wi-Fi crowd counting has exactly this weakness. The model learns "this pattern of signal distortion means five people," but the pattern is glued to the room's exact layout and the usual reflective surfaces. Rearrange things — or just let weeks pass as furniture, plants, and habits shift — and the model quietly drifts until its count is wrong. This is not a bug; it is a well-documented property of CSI sensing over time (brunello2025_d781 ↗; santos2024_1e39 ↗).

The blunt fix is to retrain: send someone to the room, count people by hand for hours, relabel, and rebuild the model. Accurate, but so expensive nobody does it on schedule — so the model stays broken. The thesis idea is to make relabelling cheap and frequent by borrowing the head-count from a second, independent radio: Bluetooth. BLE beacons on people's phones give a coarse but honest occupancy estimate (demrozi2021_bf55 ↗; longo2019_b72f ↗). Feed those BLE-derived labels back to the Wi-Fi model in a short session and it can re-fit to today's room. The open questions this umbrella must answer: how short can the session be, how much accuracy comes back, and how often must you do it.

What we are trying to prove

  • Primary hypothesis (falsifiable): a 10–30 minute BLE-labelled campaign, used to fine-tune the last layers of an already-trained CSI counter, restores its accuracy to within 5% of Day 0. If a campaign of realistic length cannot claw back most of the lost accuracy, the whole "cheap periodic cure" premise fails and the honest recommendation becomes full retraining or a different sensor.
  • Secondary hypothesis: an event-driven trigger (recalibrate when Wi-Fi and BLE disagree) beats a fixed timer on error at equal cost. This is the sceptical claim, and the sibling sim already refutes the accuracy version of it — the payoff is fewer recalibrations, not lower error (see below).
  • What a null means: if fine-tuning on 10–30 minutes of BLE-labelled data does not recover accuracy, either the campaign is too short to contain the room's new variability, or fine-tuning on so little data causes catastrophic forgetting (the model over-fits the campaign and loses general skill). Both are real failure modes for continual adaptation of Wi-Fi sensors (wang2026_2758 ↗), and a null here is scientifically informative, not just disappointing.

How the experiment works (plain method)

  1. Start from a drifted model. Take a CSI counter trained on Day 0 and let it degrade in the real room (this is what EXP-002 / EXP-F2 measures). Record its pre-campaign accuracy on the last hour of data.
  2. Run a campaign. A phone app is told (over TCP/UDP) to enter "calibration mode": it raises its BLE advertising rate so occupancy is tracked tightly, and a few participants walk the room naturally for 10–30 minutes. The system logs CSI with BLE-derived head-counts as labels.
  3. Fine-tune, gently. Update only the last few layers of the model on the fresh labelled data, at a learning rate ~10x lower than original training and for only 5–10 epochs — deliberately weak, to re-fit the room without erasing what the model already knew. This is the standard few-shot / transfer recipe for wireless counting (hou2023_bf83 ↗; khan2023_b7c5 ↗).
  4. Measure recovery. Record post-campaign accuracy on the next hour. Recovery = post-campaign accuracy / Day 0 accuracy.
  5. Compare strategies as ablations on the same collected data (per the EXP-F2 reorganisation): Daily (10 min every working day), Weekly (30 min Mondays), Trigger (recalibrate when Wi-Fi and BLE counts diverge), Never (the frozen control). Then sweep campaign duration (5/10/15/30/60 min) to find the shortest session that still hits within-5%-of-Day-0.

What we've found so far — and what's still only planned

What has run is the trigger sub-experiment csi-recalibration-trigger on a synthetic corpus:

Question tested (in-silico only) Result Honest reading
Can a ground-truth-free signal detect prediction-relevant drift? cross-modal xmodal disagreement: Spearman rho = 0.93 [0.72, 1.0] vs true error; false-fires on error-irrelevant room change 5.6% Detection works — but on a self-authored corpus
Does triggering beat a fixed timer on accuracy? trigger error 0.407 vs fixed-cadence 0.399 at matched budget Refuted — fixed cadence is no worse
Does triggering save effort? 2.0 vs 8.0 estate-wide recalibrations The real win: about a quarter of the recalibrations at parity error

Two other campaigns are attached to the sibling card (c-ble-trigger-equivalence, c-csi-ble-condition-switch); their numbers are not reproduced here because they concern trigger equivalence/switching, not campaign recovery, and quoting them as recovery evidence would be misleading.

The plan (unexecuted). The umbrella becomes a real result only when: (a) a first-party BLE-calibrated CSI capture exists on AX210/Pi5 hardware (IP-106); (b) the recovery curve (accuracy vs campaign duration) is measured on that data, not assumed; and (c) forgetting is checked directly — does the fine-tuned model still count correctly on earlier conditions, or only on the campaign's? Until then, the sawtooth figure is an illustration of an expectation, not a finding.

Key references

  • brunello2025_d781 ↗ — real empirical evidence that CSI sensing drifts over time; the premise this whole cure targets.
  • santos2024_1e39 ↗ — environment/layout dependence of CSI crowd counting specifically.
  • hou2023_bf83 ↗, khan2023_b7c5 ↗ — the few-shot / transfer recipe the campaign fine-tuning inherits.
  • wang2026_2758 ↗, zhang2025_a250 ↗ — continual/online adaptation and its forgetting hazard.
  • demrozi2021_bf55 ↗, longo2019_b72f ↗, iannizzotto2025_b55c ↗ — BLE occupancy: the second modality's real-world basis and its noise.
  • angelopoulos2025_8070 ↗ — turning "within 5% of Day 0" into a statistically guaranteed bound.
  • guarino2026_e72c ↗, zhang2026_ccac ↗ — the reproducibility bar for the eventual real capture.
  • huang2025_060d ↗ — a public real-CSI anchor for the red-team's cross-check demand.
  • koo2026_a08d ↗ — the "lightweight self-calibration without uploading data" vision this experiment operationalises.

Provenance

—
not recorded

Data types

  • csi-amplitude
  • csi-phase
  • ble-ground-truth
  • calibration-campaign-log
  • model-accuracy-before-after