This repository provides a real-time CSI sensing system that processes Wi-Fi Channel State Information (CSI) for multi-device visualization and deep learning-based human activity and location recognition. It supports 1 or 2 ESP32-S3 devices and includes both SVM and deep neural models (2D CNN, Transformer). CSI data is denoised using a Butterworth filter, and visualized via a PyQt5 GUI interface.
- 🧠 Real-time inference of both human activity and zone-based location
- 📊 PyQt5 GUI with CSI heatmaps and prediction display
- 🧼 Preprocessing pipeline using Butterworth filtering
- 🧮 Supports SVM, 2D CNN, and Transformer models
- 📡 Real-time CSI streaming via MQTT from ESP32-S3 devices
- 💾 Timestamped CSI data logging for training and analysis
All dependencies are listed in requirements.txt.
pip install -r requirements.txt💡 Please ensure the correct versions are installed to avoid compatibility issues.
Download pretrained models below. Place them in the root directory (./) after downloading:
| ESP Devices | Location Model (2D CNN) | Activity Model (Transformer) |
|---|---|---|
| 1 Device | 📥 Download | 📥 Download |
| 2 Devices | 📥 Download | 📥 Download |
| ESP Devices | Location Model (SVM) | Activity Model (SVM) |
|---|---|---|
| 1 Device | 📥 Download | 📥 Download |
| 2 Devices | 📥 Download | 📥 Download |
# Edit mqtt_config_1D.py
BROKER_ADDRESS = "localhost"
PORT = 1883
TOPIC = "csi/data"
MAC_ADDRESS = ["MAC_1"]# Edit mqtt_config_2D.py
BROKER_ADDRESS = "localhost"
PORT = 1883
TOPIC = "csi/data"
MAC_ADDRESS = ["MAC_1", "MAC_2"]Each script assumes real-time inference (batch = 1) and supports both action and location recognition, depending on the task selected internally.
# Neural model (2D CNN for localization, Transformer for action recognition)
python 1D_csi_sensing_nn.py
# Classical SVM model
python 1D_csi_sensing_svm.py# Neural model (2D CNN for localization, Transformer for action recognition)
python 2D_csi_sensing_nn.py
# Classical SVM model
python 2D_csi_sensing_svm.py-
Taehyeon Kim, et al.
Wifi Channel State Information Sensing based on Introspective Metric Learning
IEEE ICSPIS, 2024
🔗 Link -
Taehyeon Kim, et al.
WiFi's Unspoken Tales: Deep Neural Network Decodes Human Behavior from Channel State Information
IEEE/ACM BDCAT, 2023
🔗 Link -
Taehyeon Kim, et al.
Neural Representation Learning for WiFi Channel State Information: A Unified Model for Action and Location Recognition
To be submitted, IEEE Access, 2025
Taehyeon Kim, Ph.D.
Senior Researcher, Korea Electronics Technology Institute (KETI)
📧 taehyeon.kim@keti.re.kr | 🌐 Homepage
Dongwoo Kang
Researcher, Korea Electronics Technology Institute (KETI)
📧 dongwookang@keti.re.kr
This project is released under a custom license inspired by the MIT License.
See LICENSE for full terms.
Use of this code — including academic research, model training, product integration, or distribution — requires prior written permission from the authors.
This research was supported by the Technology Innovation Program [20026230] Development of AIoT device utilizing Channel State Information (CSI) for AI-based lifestyle recognition, funded by the Ministry of Trade, Industry & Energy (MOTIE) and the Korea Evaluation Institute of Industrial Technology (KEIT).
