GL-MT6000 Wi-Fi CSI 数据集:样例、完整包与使用边界

作者 Wu Jun · 更新于 2026-11-02 · Wi-Fi CSI, 信道状态信息, Wi-Fi 感知, 数据集, MT7986, OpenWrt · 约 6 分钟

这里提供一个可下载、可校验、可复现的路由器 CSI 数据集。10 秒样例用于先跑通解析器; 完整 10 分钟数据用于研究时间轴、选链、幅度/相位处理和基线算法。

数据来自 GL.iNet GL-MT6000(MT7986A + MT7976)+ OpenWrt + mt76 CSI [1], 采集与分析脚本公开 [2]。数据集是实验证据,不是“算法准确率”的证明;能做什么与不能做什么 在本文中有明确列表。

截至 2026-11-02 检查时,Zenodo 记录显示 51 次下载、 44 次浏览,其中 41 次为唯一浏览。这些是平台计数器,不等同于引用影响、背书或算法质量证明。

1. 文件清单

文件 大小 用途
csi_sample_10s.bin 322 KB 10 秒原始抓包,312 条链记录
csi_sample_amplitude.csv 16 KB 前 200 条记录、前 8 个子载波的幅度摘要
csi_demo_60s_anonymized.bin 2.8 MB 在线 Demo 的 60 秒源:2,777 条链记录、347 个完整组、1 条尾部残片
60 秒 manifest 约 1 KB 记录数、完整组、时间跨度、RSSI/SNR 与 SHA-256
完整 10 分钟数据(Zenodo) 约 58 MB 8 个分片 + manifest + 重组说明 + 两张分析图
manifest.json 约 2 KB 每片/整包 SHA-256、采集元数据
analysis_heatmap.png 约 300 KB 幅度热图
analysis_motion.png 约 160 KB 1 秒滚动幅度运动指标

Zenodo DOI:https://doi.org/10.5281/zenodo.23434789;concept DOI: https://doi.org/10.5281/zenodo.23434788。前者指向当前版本,后者用于跨版本引用。

2. 采集环境

项目 值
设备 GL.iNet GL-MT6000(MT7986A + MT7976)
系统 OpenWrt SNAPSHOT / Linux 6.18
Wi-Fi 固件 mt7986_wm.bin 20260515,MD5 3ce21edabe201608e7bec0dd16898019
频段 / 带宽 / 信道 5GHz / HE80 / ch44
子载波 / 链路 256 子载波;tx 0–1 × rx 0–3(8 条链)
采集时间 2026-10-10
许可 CC BY 4.0

这是一次真实家庭环境测量,不是多房间、多受试者、多设备的数据集。换房间、换姿势、换固件或换客户端, 信道条件都会变化。

3. 数据字典

每帧由外层容器和内层 CSI payload 组成:

outer: double file_ts (8, little endian)
       uint16 length    (2, little endian)
       payload          (length bytes)

inner: 24-byte v1 header
       或 28-byte v2 header(24-byte v1 + uint32 sequence)
       int16 I/Q interleaved
字段 类型 说明
file_ts float64 接收端文件时间,适合跨 session 对齐
ts uint32 设备侧时间戳,微秒
ta 6 bytes 发送端地址;完整包已统一脱敏为 02:00:00:00:00:01
rssi int8 RSSI,dBm
snr int8 设备报告的 SNR
bw uint8 带宽代码,不能直接当 MHz
ch uint8 信道
mode uint8 设备模式/字段代码
pad uint8 v1 中保留;v2 中用作 sequence epoch
data_num uint16 本帧复数 I/Q 数量
tx / rx uint16 发射/接收链编号
chain_info uint16 bit15 标记一次测量的最后一条链

I/Q 为 <i2 小端交错:

iq = np.frombuffer(payload, dtype="<i2", offset=header_size)
i, q = iq[0::2], iq[1::2]
amplitude = np.hypot(i, q)
phase = np.angle(i + 1j * q)

chain_info 不是“链条总数”,也不是子载波索引;它是测量结束标记。一次测量可能包含 4 或 8 条链。

4. 实测统计

指标 值
外层记录 57,293
时间跨度 599.924 秒
平均链记录率 95.5 条/秒
bit15 完整测量组 7,609
8 链组 / 4 链组 6,714 / 895
简单选链后的矩阵 约 7,608 × 256
分析剔除异常后 7,583 次测量
闭合测量组率 约 12.68Hz
剔除后的分析率(7,583 组) 约 12.64Hz
子载波记录 256 子载波 57,289 条;64 子载波 4 条
RSSI 最小/平均/最大 −48 / −31.3 / −26 dBm
SNR 最小/平均/最大 52 / 53.29 / 55
时间空档 p95 / max 0.322 / 2.373 秒
可用 256 子载波时间轴上的 >1 秒 / >5 秒空档 57 / 0

这些数字不是从页面介绍里抄来的,而是解析原始包后计算的;逐行流程见数据集解析实战。 另见10 分钟 CSI 质量审计:组间隔中位数 41.019ms、p95 321.838ms、 p99 945.690ms,57 个间隔超过 1 秒,最大 2.373 秒。对应的 脚本、README 与 JSON可以在本地复跑。 进一步分析空档如何改变频谱时,长空档频谱代价给出一个可复现结果: 10 Hz 均匀网格有 1,823/6,000 个点落在超过 0.5 秒的原始间隔内;已知 0.25 Hz 控制信号的插值 相对 RMS 误差为 14.094%。该实验不提供呼吸或人体真值。 CSI 链健康审计进一步检查 8 条链是否等价:6,714 个组有 8 链,895 个组只有 4 链;组内 RSSI/SNR 对每条链相同,因此不能用于单链排序。该页同时公开分析脚本、逐链 CSV 和图。 CSI 子载波冗余审计则固定 tx0/rx0,对 7,608 个 256-bin 幅度向量做 PCA:6 个主成分解释 90% 方差,相邻 bin 相关中位数为 0.901。该结果只描述这两段 抓包的幅度相关结构,不把数组索引映射为物理频率。

5. 校验完整包

  1. 从 Zenodo 下载 8 个分片和 manifest.json;
  2. 按文件名顺序合并;
  3. 校验整包 SHA-256。
cat csi-10m.part-*.bin > csi_10m.bin
shasum -a 256 csi_10m.bin
# macOS: shasum;Linux 也可用 sha256sum
# 期望:
# 527466ceb8b5f835e55ff348f02808736b947db39e7baac1f34e375de146a440

也可逐片比较 manifest.json 中的 sha256。如果分片名称相同但 hash 不同,不要继续分析;先重新下载。

6. 最小复现检查

先检查文件级,再检查解析级:

检查 期望
样例记录数 312
完整包记录数 57,293
bit15 组数 7,609
时间跨度 约 600 秒
尾记录 1 条未闭合记录
256 子载波 绝大多数帧
4 链组 895 组,不能假设永远 8 链
完整包 SHA-256 与 manifest 一致

解析器还要处理 24/28 字节头、小端 I/Q、v2 sequence 和 bit15 边界。只运行一次“能打开文件”不算验证。

7. 这份数据能支持什么

可以用于:

不能单独证明:

这不是谦虚措辞,而是数据缺少同步真值、受试者标签和多环境重复。要做这些结论,需要新的采集和参考设备。

8. 隐私与许可

完整包已把发送端 MAC 替换为 02:00:00:00:00:01;RSSI 和 I/Q 数值未改动。抓包外层的绝对 Unix 时间戳也保留下来,因此当前版本属于MAC 脱敏后的去标识/伪匿名数据,不能保证法律意义上的完全匿名。 活动节律和同一 session 内部的时间关联仍然存在。威胁模型与未来时间平移版本的规则见 Wi-Fi CSI 隐私与公开数据集脱敏。

许可为 CC BY 4.0:研究和商业使用允许,但必须保留署名。不要把数据重新上传为未注明来源的“自有数据集”。

推荐引用:

Router CSI Lab. (2026). GL-MT6000 (MT7986) Wi-Fi CSI dataset — 10 minute capture, 80 MHz / 256 subcarriers [Data set]. Zenodo. https://doi.org/10.5281/zenodo.23434789

9. 版本与勘误

10. 相关文档

参考与数据来源

本文的每条外部结论都标注来源与证据等级(分级标准);标注 E 级的是本项目可复现的实测数据。

  1. E 级 · 本项目实测 Router CSI Lab — GL-MT6000 (MT7986) Wi-Fi CSI dataset, 10 s sample + 10 min capture
    Router CSI Lab · 2026
    doi:10.5281/zenodo.23434789 · 核实: CC BY 4.0;SHA-256 已发布;Zenodo DOI 10.5281/zenodo.23434789 · 数据集已获 Zenodo DOI(10.5281/zenodo.23434789),可直接引用。
  2. E 级 · 本项目实测 Router CSI Toolkit — 采集/分析/守护脚本(MIT,公开仓库)
    Router CSI Lab · 2026
    github.com/jjjwu/router-csi-toolkit · 核实: GitHub API 于 2026-11-02 核实公开仓库、抓包质量预检、成功 CI 与 v0.1.3 Release;归档 SHA-256 为 59f144c0…adea7 · 公开版含无第三方依赖的抓包质量预检;网页端检查器使用同一容器定义和边界口径。
  3. E 级 · 本项目实测 本项目 10 分钟实测抓包(57,293 条 / 600.0 s,SHA-256 00373f83…95e2)
    Router CSI Lab · 2026
    okwujun.pw/zh/datasets/ · 核实: 分片重组逐字节校验通过(2026-10-11) · 本地原始母片 SHA-256 为 00373f83…95e2;公开下载的是去标识派生文件,SHA-256 为 527466ce…a440,两者不可混用。
  4. E 级 · 本项目实测 CSI subcarrier redundancy and effective-dimensionality audit (script, metrics, PCA spectrum)
    Router CSI Lab · 2026
    okwujun.pw/zh/csi-subcarrier-redundancy/ · 核实: From the public 10-minute and 60-second captures with input SHA-256 527466ce…a440 and 41c35d9d…87a6; script, JSON, CSVs and figure published together (2026-11-01) · 只证明这两段幅度抓包中的相关结构与有效维度,不把数组索引映射为物理频率,也不提供人体真值。