根据FAQ中的操作步骤,我们将在安装CSI Tool时已经下载好的linux-80211n-csitool-supplementary
文件夹中的matlab
文件夹以及前文中获得的csi.dat
文件从Ubuntu系统中拷贝会Windows系统,使用MATLAB软件进行处理。
使用函数read_bf_file
将数据从文件中读出,如:
csi_trace = read_bf_file('csi.dat');
使用csi_entry = csi_trace{1}
可以读出其中的值,结果如下:
csi_entry =
timestamp_low: 688066588
bfee_count: 12
Nrx: 1
Ntx: 1
rssi_a: 39
rssi_b: 0
rssi_c: 0
noise: -94
agc: 62
perm: [1 2 3]
rate: 263
csi: [1x1x30 double]
下面详细解释每个数据具体含义:
timestamp_low
:NIC网卡1MHz时钟的低32位。它大约4300s(72min)重复一回。
bfee_count
:驱动记录并发送到用户控件的波束测量值的总数。内核和用户空间中netlink
频道是有损的,可以用该变量来检测被丢弃的测量值。
Nrx
:接收端使用的天线数量。
Ntx
:发送端使用的天线数量。
rssi_a, rssi_b, rssi_c
:由接收端NIC测量出的RSSI值。
perm
:展示NIC如何将3个接收天线的信号排列到3个RF链上,上图中的数据表示天线A被发送到RF链A,天线B被发送到RF链B,天线C被发送到RF链C。
rate
:发包频率。
csi
:CSI值。