Bluetooth in the room.
Every library node also listens for Bluetooth. It hears the phones, watches and laptops of whoever is on the floor, as anonymous addresses that change every few minutes. This page says what that stream is made of, when the crowd arrived, how far it counts, and what it teaches the Wi-Fi channel.
Every number is read from an evidence file the ble-daily notebooks pin in the vault (notebooks/ble-daily/, _attachments/figures/src/). No request reaches the lake, S3 or the fleet. Counts are addresses, not devices and not people: a salted address is anonymous by design and cannot be followed.
The static background is the public addresses
Not built: ble-background-evidence.json is absent.
The crowd arrived on 14 September
Not built: ble-onset-evidence.json is absent.
A week by the hour
Not built: ble-daily-evidence.json is absent.
From addresses to people: the model, and why it is not calibrated
Each node's minute count is the static background plus what the people bring. Each person brings a random number of addresses, so people who carry more devices are part of the model rather than noise around one ratio:
Not built: ble-occupancy-v0-evidence.json is absent.
CSI calibrated by Bluetooth
Not built: ble-csi-calibration-evidence.json is absent.
The literature models, on the labels that exist
Not built: ble-label-comparators-evidence.json is absent.
What this page does not show
- A people count. No labelled minute lies in the occupied range of 60–200 addresses a minute.
- A device count. How many addresses one device sends is not recoverable from salted addresses.
- Who is in the room. The data fit the start of term; staff and visitors look the same.
- A floor-wide CSI calibration. Two links on one channel so far; coverage is local.