Get Wi-Fi CSI from a home router

A hands-on lab: 256 subcarriers, 80 MHz, 8 Tx/Rx chains on a GL-MT6000 (MT7986) router. Full reproduction guide, raw datasets, Python tooling and hard-won troubleshooting.

Start with the guide →

CSI amplitude heatmap (256 subcarriers)

Measured CSI amplitude heatmap (256 subcarriers; vertical = subcarriers, horizontal = time)

256subcarriers @80MHz
95.5/savg frame rate (10 min)
57,293frames in 10 min
5.2MBdaemon RSS

Latest

Digital product

Wi-Fi CSI on a router: practical handbook (PDF) + reproduction scripts

30-page Chinese edition, currently being expanded (v0.1): hardware selection, OpenWrt/mt76 build, flashing and rollback, CSI capture and parsing, performance troubleshooting (ATF / 40 MHz collapse), Python analysis and visualisation. Includes one-command scripts and checksums. An English edition is planned.

  • Documents the data layout of this project's 10-minute raw capture
  • Includes the mt76-csi deployment checklist and watchdog script
  • Free preview (Chinese): 5-page sample
¥69 / $19
Get it
Gumroad checkout (Chinese edition)

Tools & datasets

Capture scripts, analysis tooling and the 10-minute raw I/Q dataset.

Open →

Troubleshooting (exclusive)

Wi-Fi collapses after enabling CSI? Root cause: firmware ATF + a 40 MHz client in an 80 MHz BSS.

Read →