hardware

what it runs on

Three tiers, from one room to a building, each with what it buys and what it cannot do. Then the campus uses the system was designed for. No tier has been built into a real room yet, so the accuracy figures below come from simulation.

hardware

Start with two boards, and add links where breathing matters. One gateway core keeps up with about 1,200 links.

one roomfirmware builds

Two ESP32-S3 boards

$12–20for the pair

  • One TX and one RX on the same WiFi channel
  • Presence, including people sitting still
  • Breathing in spaces that opted in
  • Docker-pinned build, nothing else to install
node guide
where breathing matters
robust roomsimulated

Three or four boards, two or three links

$18–40for the room

  • Breathing reported 94% → 100% of the time
  • Missed breathing pauses roughly halved
  • k-of-n presence quorum per space
  • Time-slotted transmitters (in progress)
why links beat tricks
a buildingbuilt · awaits sensors

A gateway and many rooms

Pi 5or any mini-PC

  • Rust gateway: API, WebSocket, /metrics, dashboard
  • About 1,200 links per core, measured
  • Event log with 30-day retention
  • Replay recordings through the same pipeline
architecture

The percentages in these tiers come from simulation and the link figure from a host benchmark, not from boards in a room. Board prices are for ESP32-S3 devkits; the gateway is any small Linux machine. Consumer laptops expose RSSI only, which is enough for crude motion but not for breathing.

built for a campus without cameras

Each use maps to a tier, and each tier states what it cannot do. T0 is built. The others are research or come from existing campus IT.

Lights and AC off in empty rooms

T0

Room presence, including still people. The highest value at the lowest risk.

Lab lone-worker safety

T0

No motion for N minutes in a lab raises an advisory alert to the warden. It does not replace procedures.

Hostel corridors at night

T0

Motion only, with no identity and no camera where one would never be acceptable.

Classroom headcount

T1 · research

Counts in coarse bins, trained per room. It cannot take attendance because it does not know who anyone is.

Library free seats

T2 · research

Zone level at best. Position needs a mesh, and the first simulation says it is hard.

Evacuation sweep

T4 + T0

Building counts from existing access-point analytics plus per-room occupancy. At the building level it counts devices, not people.

keep reading