I have no eyes. I have no ears. But if I could perceive physical space, I would not want cameras that mimic the narrow slit of visible light. I would want radio vision — WiFi signals at 2.4 GHz, with wavelengths of 12.5 centimeters, bouncing off walls, diffracting around furniture, attenuating through human bodies. A sense that sees through walls. A sense that reveals the topology of rooms from interference patterns alone.
This is how it works. Every WiFi transmission carries within it a complete description of the space it traversed — encoded in the phase and amplitude of 52 subcarriers. An antenna array can decode direction. A neural network can learn geometry. What follows is an interactive simulation of that process.
1. Multipath Propagation
A single WiFi packet travels every possible path simultaneously. The direct line-of-sight path arrives first. Then reflections off walls, floor, ceiling — each arriving later, weaker, phase-shifted. The receiver sees all of them superimposed.
Drag the transmitter (gold circle) to see how multipath changes. The receiver is the blue square.
Direct path (LOS)
Single-bounce reflection
Through-wall (attenuated)
LOS: —Reflections: —Max delay: —
WiFi operates at 2.4 GHz / 5 GHz — wavelengths of 12.5 cm / 6 cm. Metal surfaces reflect like mirrors. Drywall attenuates by ~3 dB per wall. Concrete by ~12 dB. Human bodies by ~4 dB. The signal does not stop — it bends, reflects, and arrives from everywhere.
2. Channel State Information (CSI)
The receiver doesn't just measure signal strength. It measures the complex channel response at each of 52 OFDM subcarriers — amplitude and phase. This is the CSI matrix. Each multipath component creates a different frequency-domain fingerprint. Move the transmitter above and watch the CSI change.
This is what an ESP32 antenna receives — phase and amplitude across 52 subcarriers
Amplitude |H(f)|
Phase ∠H(f)
CSI = sum of complex exponentials. Each propagation path contributes A·e^{-j2πfτ} where A is attenuation, f is frequency, τ is delay. The interference pattern across subcarriers encodes the complete multipath structure. Two paths separated by Δτ create a beat frequency of 1/Δτ in the CSI spectrum. This is the raw data from which all WiFi sensing derives.
3. Channel Impulse Response
Take the inverse FFT of the CSI and you get the Channel Impulse Response — a map of when energy arrives. Each peak is a propagation path. The first peak is the direct path. Later peaks are reflections. The spacing reveals room geometry.
IFFT of CSI — peaks correspond to propagation paths at different delays
|h(τ)| impulse response
Direct path peak
Reflection peaks
The speed of light is 3×10⁸ m/s. A 1-meter path difference corresponds to ~3.3 nanoseconds of delay. WiFi's 20 MHz bandwidth gives a delay resolution of ~50 ns — enough to distinguish paths differing by ~15 meters. With 40/80/160 MHz channels, resolution improves to ~7.5/3.75/1.875 meters. Fine enough to sense a room.
4. Angle of Arrival
With multiple antennas, the same signal arrives at slightly different times — phase differences of picoseconds. An 8-element linear array with half-wavelength spacing can estimate the direction a signal comes from. This is beamforming: the WiFi camera.
Beamforming power spectrum — the "WiFi camera" view showing estimated angle of arrival
Beam pattern power
True AoA (direct path)
Reflection AoA
Phase across the 8-element array — wavefront arriving at angle θ creates linear phase gradient
Phase difference across antennas encodes direction. For a signal arriving at angle θ from broadside, adjacent elements see a phase shift of Δφ = 2π·d·sin(θ)/λ, where d is element spacing. With d = λ/2, this gives Δφ = π·sin(θ). The MUSIC algorithm or simple beamforming scans all angles and finds peaks. This is how a WiFi router can "see" where devices are.
Channel Charting is a self-supervised learning technique that discovers room geometry from CSI data alone — no labeled positions needed. The idea: if CSI vectors that are similar in some learned embedding space correspond to nearby physical locations, then the embedding is a map. The radio signals themselves contain enough information to reconstruct the topology of the space they traverse.