This site is the outward face of a doctoral research project at
FIIT STU Bratislava. The subject is indoor
occupancy sensing from Channel State Information: estimating how many people
are in a space by measuring how their bodies disturb ordinary Wi-Fi signals,
and — the harder half — keeping that estimate honest as the space changes
around it.
Most of what you can click on here is not a report about the work. It is the
work, rendered: the fleet page reads the same metrics store the researcher
watches, the map draws the surveyed floor plan the deployment was planned
against, and the quests are the actual scripts handed to volunteers during a
measurement session. When a node overheats, this website says so.
How the measurement works
A Wi-Fi radio has to know what a room does to a signal before it can push data
through it. Which frequencies arrive strong, which arrive weak, which arrive
late after bouncing off a wall — the chip estimates all of that hundreds of
times per second, and calls it Channel State Information.
People change that estimate. A body is mostly water; water absorbs and scatters
microwaves. Fill a reading hall and the channel measurably changes shape.
So the deployment is ten Raspberry Pi 5 nodes with Intel AX210 radios in the
faculty library. One transmits a steady stream of frames; the rest listen in
monitor mode and record what the room did to them. The recording is a few
thousand complex numbers per second — an acoustics-like description of a room,
not a picture of it.
The research contribution is not "you can count people with Wi-Fi", which is
known. It is that such models drift: rearrange the furniture and yesterday's
model is wrong without ever announcing it. The thesis argues for periodic
Bluetooth calibration campaigns as an independent second opinion, so that
disagreement between two sensing modalities becomes a usable signal that the
model has gone stale.
What is recorded, and what is not
Worth stating plainly, because "the Wi-Fi is watching you" is a reasonable first
reaction:
- No cameras and no microphones. There are none on the nodes. There is no
optical or acoustic sensor anywhere in the deployment.
- No device identifiers. The system does not collect MAC addresses of
passers-by and does not associate anyone's phone: the measurement is of the
channel between our own transmitter and our own receivers. A planned
extension would count how many devices are active nearby, using hashed,
rotating pseudonyms and retaining only counts — it has not started, and the
data protection note is updated before it does.
- No identification. The recorded quantity describes the room. It supports
"roughly this many people are present"; it does not support "this is who".
- Volunteer sessions are opt-in and briefed. During a measurement session a
participant follows a written script — walk this route, scan this card, stand
still here — and knows what is being recorded because it is written down
before they start.
- The data is for research. Captures back the thesis and the publications
that come out of it, and are intended for release as a public research
dataset under an explicit licence.
If you were in the library during a session and would rather not be in the
recording, write and it will be removed.
Who is behind it
Jakub Dubec — PhD student at the Faculty of Informatics and Information
Technologies, Slovak University of Technology in Bratislava. A software engineer
who wandered into research through a question that looked much easier from the
outside than it turned out to be from the inside.
The infrastructure is a large part of the project rather than a footnote to it:
the reading, the simulations, the analysis and this website all run out of one
self-hosted research pipeline, so a result can be traced from the claim in a
chapter back to the run that produced it. Things I will talk about for too long:
channel state information, indoor positioning, crowd dynamics, and why your
office Wi-Fi knows there is a meeting happening before your calendar does.
Getting in touch
Students at FIIT looking for a bachelor or master topic are the audience this
site is built for — there is open work here in signal processing, machine
learning, embedded engineering, simulation and study design.
Researchers elsewhere working on CSI sensing, calibration or crowd modelling:
the vault, the pipelines and this site are all
open on GitHub, and comparisons
against your data are welcome.
Anyone who simply wants to know how many people are in a room: that makes two
of us.
jakub.dubec@stuba.sk
The paper trail
Every simulation run, measurement campaign and synthesis report the
project has produced is kept in the
experiment register, with the
raw runs and their trajectory replays behind
it. It is an archive rather than a tour — a snapshot rebuilt daily, and
much less interesting than the fleet is right now.
The research vault behind all of it — notes, pipelines, this website —
is open on GitHub.
Last updated 2026-08-15.