OEUR — Wireless occupancy estimation via RSSI signal processing
A device-free occupancy estimation system built from Wi-Fi RSSI fluctuations.
Developed under Hashi Tech, OEUR explores whether indoor occupancy can be estimated from changes in wireless signal strength rather than dedicated sensors or cameras. The work combines commodity Wi-Fi hardware, digital signal processing, statistical analysis, and feature engineering into a privacy-preserving occupancy classification system.
Reported for the occupancy classification system in the conference presentation.
A sensing problem without a dedicated sensor
OEUR — Wireless Occupancy Estimation via RSSI Signal Processing — estimates how many people are present in an indoor environment by observing fluctuations in Wi-Fi Received Signal Strength Indicator measurements between two ESP8266 devices.
Human presence changes the way wireless signals propagate through a room. Absorption, reflection, scattering, shadowing, and multipath fading leave measurable changes in the signal distribution. OEUR investigates whether those changes are enough to distinguish occupancy states without cameras, PIR sensors, or other dedicated occupancy hardware.
OEUR was presented at an international conference. The work has not been published as a paper.
The signal processing pipeline
- Collect high-frequency raw RSSI measurements.
- Remove impulsive spikes with a median filter using a nine-sample window.
- Smooth remaining fluctuations with an exponential moving average using α = 0.2.
- Generate histograms and probability mass functions to represent signal distributions.
- Extract statistical features including mean, variance, distribution shape, and divergence measures.
- Classify the resulting signal characteristics into occupancy states.
Hardware, software, and interface
A fixed ESP8266 transmitter sends packets through the indoor environment while a second ESP8266 receiver samples RSSI continuously and passes measurements to a host computer over serial communication.
The processing pipeline uses Python, PyQt, NumPy, SciPy, Matplotlib, and custom serial-processing code. Its interface provides live RSSI graphs, filtered signal views, histograms, probability mass functions, divergence readouts, occupancy predictions, and recording controls.
Jensen–Shannon divergence, Kullback–Leibler divergence, and Bhattacharyya distance provide different ways to compare the probability distributions associated with occupancy classes.
What the research established
- RSSI contains useful statistical information for occupancy estimation under controlled conditions.
- Signal distributions are more informative than individual raw RSSI samples.
- Careful filtering improves the interpretation of noisy measurements.
- Feature engineering is more important here than increasing model complexity without evidence.
- Consistent experimental procedures are essential for reproducible results.
Useful boundaries and next questions
The approach remains sensitive to furniture changes, device calibration, Wi-Fi interference, multipath variability, and environmental differences. Generalization beyond the recorded conditions requires further work and retraining.
The documented next directions include multi-room and multi-channel estimation, Channel State Information integration, automatic calibration, edge processing, real-time dashboards, and multi-floor deployments.
Have a related question?
Have a technical question, uncertain assumption, or sensing problem to investigate? Start with the context you have.
Discuss a related research question