ESP32 CSI getting started — and how it differs from router CSI
2026-10-11 · 1 min read
If you just want to touch real CSI for a few dollars, ESP32 is the best entry point. If you need whole-home coverage and higher resolution, the router route wins. Here is the honest comparison.
Fastest paths in
| Path | Project | Best for |
|---|---|---|
| Official examples | espressif/esp-csi [1] |
seeing raw CSI quickly |
| Capture tool | ESP32-CSI-Tool [2] | datasets and algorithms |
| Smart home | ESPectre (ESPHome) [3] | presence/motion in Home Assistant |
Typical scale: 20 MHz, 30–64 subcarriers, single point, packet-rate-limited sampling.
Ad slot (AdSense/Ezoic once live)
Router CSI (this project) vs ESP32
| ESP32 | Router (MT7986 + mt76 CSI) | |
|---|---|---|
| Bandwidth / subcarriers | 20 MHz / 30–64 | 80 MHz / 256 |
| Chains | 1–2 | 8 (2 Tx × 4 Rx) |
| Coverage | single point | whole home |
| Deployment | extra power + place the board | the router is already there |
| Setup effort | low | medium (OpenWrt + driver patch) |
What to watch when migrating
- 256 subcarriers instead of 30–64 — model input shape changes;
- router CSI needs a dedicated interface plus MAC filter (see the reproduction guide);
- two known performance traps on this platform (firmware ATF and 40 MHz clients) — see the troubleshooting article: Wi-Fi slows down after CSI.
Useful links
espressif/esp-csi[1],StevenMHernandez/ESP32-CSI-Tool[2], ESPectre (ESPHome) [3]NTUMARS/Awesome-WiFi-CSI-Sensing(papers and resources) [4]
References and data sources
Every external claim carries a source and an evidence grade (grading scheme). Grade E marks first-party, reproducible measurements from this project.
- Grade C · official docs
espressif/esp-csi — Applications based on Wi-Fi CSI
Espressif Systems
github.com/espressif/esp-csi · verified: GitHub API 2026-10-11 (stars 1,679) · The official README states: "All ESP32 series support CSI, including ESP32 / ESP32-S2 / ESP32-C3 / ESP32-S3 / ESP32-C5 / ESP32-C6 / ESP32-C61." - Grade C · official docs
StevenMHernandez/ESP32-CSI-Tool — active/passive CSI extraction for ESP32
S. M. Hernandez
github.com/StevenMHernandez/ESP32-CSI-Tool · verified: GitHub API 2026-10-11 (stars 571, MIT, last push 2024-07-16) - Grade C · official docs
francescopace/espectre — Wi-Fi CSI motion sensing for ESP32 (ESPHome)
F. Pace
github.com/francescopace/espectre · verified: GitHub API 2026-10-11 (stars 9,505) - Grade C · official docs
NTUMARS/Awesome-WiFi-CSI-Sensing — curated papers and resources
NTU MARS Lab
github.com/NTUMARS/Awesome-WiFi-CSI-Sensing · verified: GitHub API 2026-10-11 (stars 1129, MIT, last push 2025-07-19)
This page contains affiliate links (rel="sponsored"). Buying through them costs you nothing extra and earns this site a small commission.