MaliosDark

wifi-3d-fusion: Sense Motion with WiFi Signals

WiFi-3D-Fusion captures WiFi CSI or RSSI data and visualizes motion in 3D, with optional research bridges for pose estimation and RF field reconstruction. It is aimed at researchers and experimenters with compatible hardware, not production or safety-critical use.

Stars
1.7k
Forks
194
Stars, last 8 days
+6

Our take

Health score

17/100

How it is scored
Activity
20
Community
4
Issues
21
Pull requests
21

+6 stars in the last 8 days

  • Fewer contributors than 92% of the projects we track

Overview

WiFi-3D-Fusion is a Python research project for sensing movement from WiFi channel state information (CSI) and signal strength (RSSI), then presenting the results in a 3D viewer. It connects wireless data capture, movement detection, and visualization in one pipeline, offering an alternative to camera-based sensing in controlled experiments.

It supports ESP32 CSI data over UDP and Nexmon packet capture, with optional integrations for WiFi-based 3D pose estimation and neural RF fields. The project is best understood as an experimental platform to explore wireless sensing, rather than a validated pose-tracking or safety system.

Key Features

  • Ingests CSI data from ESP32 devices over UDP or from Nexmon packet captures.
  • Supports monitor-mode RSSI streams as another input source.
  • Processes signal windows to detect movement and generate events.
  • Provides a real-time 3D viewer, including a web-based Three.js interface and an Open3D viewer.
  • Includes model training and re-identification workflows described in the README.
  • Offers optional bridges to Person-in-WiFi-3D, NeRF², and 3D Wi-Fi Scanner tooling.
  • Includes dummy-data and simulation options for testing without a live capture source.

Use Cases

  • Wireless sensing research: Researchers can experiment with CSI-based motion detection and compare wireless sensing workflows with camera-based approaches.
  • Hardware prototyping: Developers with an ESP32 CSI setup or compatible monitor-mode adapter can test live signal capture and visualization.
  • Pose-estimation exploration: Researchers can try the optional Person-in-WiFi-3D bridge when they have the required data and model checkpoint.
  • Demonstrations and teaching: Instructors and experimenters can use dummy or simulated input to illustrate how signal changes can be mapped to movement visualizations.

Getting Started

Clone the repository and run the provided installer, then start the web visualizer:

git clone https://github.com/MaliosDark/wifi-3d-fusion.git
cd wifi-3d-fusion
bash scripts/install_all.sh
source venv/bin/activate
python run_js_visualizer.py

The interface is available at http://localhost:5000. See the README for hardware setup, source configuration, training, and optional integrations.

Considerations

  • The README labels the project for research, education, and experimentation. It warns that WiFi sensing has resolution limits and is affected by signal interference, and advises against critical use without validation.
  • Live capture requires compatible hardware and setup. Nexmon and monitor-mode workflows may require Linux tools, driver configuration, and elevated privileges; ESP32 input requires suitable CSI firmware.
  • Pose estimation and NeRF² integrations are optional and experimental, and may require additional repositories, checkpoints, and dependencies.
  • The repository metadata reports the license as NOASSERTION, while the README displays a GPL-2.0 badge. Confirm the license terms in the repository before reuse.

Found this useful?

Share it with someone who would like wifi-3d-fusion.