How Wi-Fi sensing detects movement
Wi-Fi signals do more than carry data. As they cross a room, their reflections change whenever people move. ESPectre measures those changes with a low-cost ESP32, without cameras, microphones, or cloud processing.
1 · First position
2 · A moment later
The room becomes part of the signal
A Wi-Fi signal rarely follows one straight route from the access point to the receiver. It also bounces off walls, furniture, objects, and people. These copies arrive together and combine with one another, sometimes reinforcing the signal and sometimes cancelling part of it. This is called multipath.
In a quiet room, the paths and the way they combine remain comparatively stable. When somebody moves, reflections from their body move too: some paths become longer, shorter, stronger, or weaker. The radio signal reaching the ESP32 changes as a result.
From a Wi-Fi packet to CSI
The access point begins each Wi-Fi transmission with a known preamble that helps receivers synchronize and decode the packet. Because the ESP32 knows what this reference signal should look like, its Wi-Fi hardware can estimate how the room changed it along the way. That estimate is called Channel State Information, or CSI: a snapshot of the radio channel at that moment.
Wi-Fi divides its channel into many closely spaced frequencies called subcarriers. CSI describes how each one was attenuated and shifted before it reached the ESP32. Each subcarrier measurement has two components, I and Q, which together capture both the strength and phase of that part of the signal.
From channel changes to movement
ESPectre follows CSI over a sequence of packets. A quiet room produces a comparatively repeatable pattern; movement produces wider, coordinated changes across several subcarriers. The detector filters ordinary radio noise, combines the useful changes over time, and turns them into a movement score and a motion state. The score describes how strongly the channel is changing in that room; it is not a physical unit or a universal measurement.
Supported ESP32 chips expose CSI through their Wi-Fi stack and have enough processing capacity to run the detector locally. ESPectre can therefore add Wi-Fi motion sensing without a separate radar module or a service that receives raw measurements.
Going deeper
The algorithm reference documents the signal processing, feature definitions, and detector behavior in detail.