diff --git a/docs/en/api-guides/wifi.rst b/docs/en/api-guides/wifi.rst index 0410e84680..db195b6912 100644 --- a/docs/en/api-guides/wifi.rst +++ b/docs/en/api-guides/wifi.rst @@ -1783,6 +1783,18 @@ All of the information in the table can be found in the structure wifi_csi_info_ - If first_word_invalid field of wifi_csi_info_t is true, it means that the first four bytes of CSI data is invalid due to a hardware limitation in {IDF_TARGET_NAME}. - More information like RSSI, noise floor of RF, receiving time and antenna is in the rx_ctrl field. +When imaginary part and real part data of sub-carrier are used, please refer to the table below. + ++----------------+-------------------+------------------------------+-------------------------+ +| PHY standard | Sub-carrier range | Pilot sub-carrier | Sub-carrier(total/data) | ++================+===================+==============================+=========================+ +| 802.11a/g | -26 to +26 | -21, -7, +7, +21 | 52 total, 48 usable | ++----------------+-------------------+------------------------------+-------------------------+ +| 802.11n, 20MHz | -28 to +28 | -21, -7, +7, +21 | 56 total, 52 usable | ++----------------+-------------------+------------------------------+-------------------------+ +| 802.11n, 40MHz | -57 to +57 | -53, -25, -11, +11, +25, +53 | 114 total, 108 usable | ++----------------+-------------------+------------------------------+-------------------------+ + .. note:: - For STBC packet, CSI is provided for every space-time stream without CSD (cyclic shift delay). As each cyclic shift on the additional chains shall be -200 ns, only the CSD angle of first space-time stream is recorded in sub-carrier 0 of HT-LTF and STBC-HT-LTF for there is no channel frequency response in sub-carrier 0. CSD[10:0] is 11 bits, ranging from -pi to pi. diff --git a/docs/zh_CN/api-guides/wifi.rst b/docs/zh_CN/api-guides/wifi.rst index 6476920497..8f02010951 100644 --- a/docs/zh_CN/api-guides/wifi.rst +++ b/docs/zh_CN/api-guides/wifi.rst @@ -1752,7 +1752,7 @@ Wi-Fi 多根天线配置 Wi-Fi 信道状态信息 ------------------------------------ -信道状态信息 (CSI) 是指 Wi-Fi 连接的信道信息。{IDF_TARGET_NAME} 中,该信息由子载波的信道频率响应组成,并在从发送端接收数据包时进行估计。每个子载波信道频率响由两个字节的签名字符记录,第一个字节是虚部,第二个是实部。根据接收数据包的类型,信道频率响应最多有三个字段。分别是传统的长训练字段 (LLTF)、高吞吐量字段 (HT-LTF) 和空间时间块代码 HT-LTF (STBC-HT-LTF)。对于在不同状态的信道上接收到的不同类型的数据包,CSI 的子载波指数和签名字符的总字节数如下表所示。 +信道状态信息 (CSI) 是指 Wi-Fi 连接的信道信息。{IDF_TARGET_NAME} 中,CSI由子载波的信道频率响应组成,CSI从发送端接收数据包时开始估计。每个子载波信道频率响由两个字节的有符号字符记录,第一个字节是虚部,第二个字节是实部。根据接收数据包的类型,信道频率响应最多有三个字段。分别是 LLTF、HT-LTF 和 STBC-HT-LTF。对于在不同状态的信道上接收到的不同类型的数据包,CSI 的子载波索引和总字节数如下表所示。 +------------+-------------+-----------------------------------------+-----------------------------------------------------+--------------------------------------------------------+ | 信道 | 辅助信道 | | 下 | 上 | @@ -1763,7 +1763,7 @@ Wi-Fi 信道状态信息 | +-------------+-------------+-------------+-------------+---------+--------+------+-------------+-------------+---------+---------+--------+-------------+-------------+ | | STBC | 非 STBC | 非 STBC | STBC | 非 STBC | 非 STBC| STBC | 非 STBC | STBC | 非 STBC | 非 STBC | STBC | 非 STBC | STBC | +------------+-------------+-------------+-------------+-------------+---------+--------+------+-------------+-------------+---------+---------+--------+-------------+-------------+ -| 子载波指数 | LLTF | 0~31,-32~-1 | 0~31,-32~-1 | 0~31,-32~-1 | 0~63 | 0~63 | 0~63 | 0~63 | 0~63 | -64~-1 | -64~-1 | -64~-1 | -64~-1 | -64~-1 | +| 子载波索引 | LLTF | 0~31,-32~-1 | 0~31,-32~-1 | 0~31,-32~-1 | 0~63 | 0~63 | 0~63 | 0~63 | 0~63 | -64~-1 | -64~-1 | -64~-1 | -64~-1 | -64~-1 | | +-------------+-------------+-------------+-------------+---------+--------+------+-------------+-------------+---------+---------+--------+-------------+-------------+ | | HT-LTF | — | 0~31,-32~-1 | 0~31,-32~-1 | — | 0~63 | 0~62 | 0~63,-64~-1 | 0~60,-60~-1 | — | -64~-1 | -62~-1 | 0~63,-64~-1 | 0~60,-60~-1 | | +-------------+-------------+-------------+-------------+---------+--------+------+-------------+-------------+---------+---------+--------+-------------+-------------+ @@ -1779,10 +1779,22 @@ Wi-Fi 信道状态信息 - 信道带宽指 rx_ctrl 字段中的 cwb 字段。 - STBC 指 rx_ctrl 字段的 stbc 字段。 - 总字节数指 len 字段。 - - 每个长训练字段 (LTF) 类型对应的 CSI 数据存储在从 buf 字段开始的缓冲区中。每个项目以两个字节的形式存储:虚部和实部。每个项目的顺序与表中的子载波相同。LTF 的顺序是 LLTF、HT-LTF 和 STBC-HT-LTF。但是,根据信道和数据包的信息,3 个 LTF 可能都不存在(见上文)。 + - 每个长训练字段 (LTF) 类型对应的 CSI 数据存储在从 buf 字段开始的缓冲区中。每个元素以两个字节的形式存储:虚部和实部。每个元素的顺序与表中的子载波相同。LTF 的顺序是 LLTF、HT-LTF 和 STBC-HT-LTF。但是,根据信道和数据包的信息,3 个 LTF 可能都不存在(见上文)。 - 如果 wifi_csi_info_t 的 first_word_invalid 字段为 true,表示由于 {IDF_TARGET_NAME} 的硬件限制,CSI 数据的前四个字节无效。 - 更多信息,如 RSSI,射频的噪声底,接收时间和天线 rx_ctrl 领域。 +子载波的虚部和实部的使用请参考下表。 + ++----------------+-------------------+------------------------------+------------------------------+ +| PHY 标准 | 子载波范围 | 导频子载波 | 子载波个数(总数/数据子载波) | ++================+===================+==============================+==============================+ +| 802.11a/g | -26 to +26 | -21, -7, +7, +21 | 52 total, 48 usable | ++----------------+-------------------+------------------------------+------------------------------+ +| 802.11n, 20MHz | -28 to +28 | -21, -7, +7, +21 | 56 total, 52 usable | ++----------------+-------------------+------------------------------+------------------------------+ +| 802.11n, 40MHz | -57 to +57 | -53, -25, -11, +11, +25, +53 | 114 total, 108 usable | ++----------------+-------------------+------------------------------+------------------------------+ + .. note :: - 对于 STBC 数据包,每个空时流都提供了 CSI,不会出现 CSD(循环移位延迟)。由于附加链上的每一次循环移位为 -200 ns,因为子载波 0 中没有信道频率响应,在 HT-LTF 和 STBC-HT-LTF 中只记录第一空时流的 CSD 角度。CSD[10:0] 是 11 位,范围从 -pi 到 pi。 @@ -1799,7 +1811,7 @@ Wi-Fi 信道状态信息配置 - 调用 API :cpp:func:`esp_wifi_set_csi_config()` 配置 CSI。 - 调用 API :cpp:func:`esp_wifi_set_csi()` 使能 CSI。 -CSI 接收回调函数从 Wi-Fi 任务中运行。因此,不要在回调函数中进行冗长的操作。但是需要将必要的数据发布到队列中,并从一个较低优先级的任务中处理。由于 station 在断开连接时不会收到任何数据包,只有在连接时才会收到来自 AP 的数据包,因此建议通过调用函数 :cpp:func:`esp_wifi_set_promiscuous()` 使能 Sniffer 模式接收更多 CSI 数据。 +CSI 接收回调函数从 Wi-Fi 任务中运行。因此,不要在回调函数中进行冗长的操作。可以将需要的数据发布到队列中,并从一个较低优先级的任务中处理。由于 station 在断开连接时不会收到任何数据包,只有在连接时才会收到来自 AP 的数据包,因此建议通过调用函数 :cpp:func:`esp_wifi_set_promiscuous()` 使能 Sniffer 模式接收更多 CSI 数据。 Wi-Fi HT20/40 -------------------------