mirror of
https://github.com/espressif/esp-idf.git
synced 2025-09-30 19:19:21 +00:00
docs(coex): update rf coexistence documents
- remove BLE connecting state in coexistence scenario - remove WIFI section in H2 docs
This commit is contained in:
@@ -16,32 +16,32 @@ ESP系列芯片最多支持三种射频收发模块: Bluetooth(BT 和 BLE),
|
||||
|
||||
.. table:: Wi-Fi 和 BLE 共存支持功能
|
||||
|
||||
+-------+--------+-----------+-----+------------+-----------+----------+
|
||||
| |BLE |
|
||||
+ +-----+------------+-----------+----------+
|
||||
| |Scan |Advertising |Connecting |Connected |
|
||||
+-------+--------+-----------+-----+------------+-----------+----------+
|
||||
| Wi-Fi |STA |Scan |Y |Y |Y |Y |
|
||||
+ + +-----------+-----+------------+-----------+----------+
|
||||
| | |Connecting |Y |Y |Y |Y |
|
||||
+ + +-----------+-----+------------+-----------+----------+
|
||||
| | |Connected |Y |Y |Y |Y |
|
||||
+ +--------+-----------+-----+------------+-----------+----------+
|
||||
| |SOFTAP |TX Beacon |Y |Y |Y |Y |
|
||||
+ + +-----------+-----+------------+-----------+----------+
|
||||
| | |Connecting |C1 |C1 |C1 |C1 |
|
||||
+ + +-----------+-----+------------+-----------+----------+
|
||||
| | |Connected |C1 |C1 |C1 |C1 |
|
||||
+ +--------+-----------+-----+------------+-----------+----------+
|
||||
| |Sniffer |RX |C1 |C1 |C1 |C1 |
|
||||
+ +--------+-----------+-----+------------+-----------+----------+
|
||||
| |ESP-NOW |RX |S |S |S |S |
|
||||
+ + +-----------+-----+------------+-----------+----------+
|
||||
| | |TX |Y |Y |Y |Y |
|
||||
+-------+--------+-----------+-----+------------+-----------+----------+
|
||||
+-------+--------+-----------+-----+------------+----------+
|
||||
| |BLE |
|
||||
+ +-----+------------+----------+
|
||||
| |Scan |Advertising |Connected |
|
||||
+-------+--------+-----------+-----+------------+----------+
|
||||
| Wi-Fi |STA |Scan |Y |Y |Y |
|
||||
+ + +-----------+-----+------------+----------+
|
||||
| | |Connecting |Y |Y |Y |
|
||||
+ + +-----------+-----+------------+----------+
|
||||
| | |Connected |Y |Y |Y |
|
||||
+ +--------+-----------+-----+------------+----------+
|
||||
| |SOFTAP |TX Beacon |Y |Y |Y |
|
||||
+ + +-----------+-----+------------+----------+
|
||||
| | |Connecting |C1 |C1 |C1 |
|
||||
+ + +-----------+-----+------------+----------+
|
||||
| | |Connected |C1 |C1 |C1 |
|
||||
+ +--------+-----------+-----+------------+----------+
|
||||
| |Sniffer |RX |C1 |C1 |C1 |
|
||||
+ +--------+-----------+-----+------------+----------+
|
||||
| |ESP-NOW |RX |S |S |S |
|
||||
+ + +-----------+-----+------------+----------+
|
||||
| | |TX |Y |Y |Y |
|
||||
+-------+--------+-----------+-----+------------+----------+
|
||||
|
||||
|
||||
.. only:: esp32
|
||||
.. only:: SOC_WIFI_SUPPORTED and SOC_BT_CLASSIC_SUPPORTED
|
||||
|
||||
.. table:: Wi-Fi 和经典蓝牙 (BT) 共存支持功能
|
||||
|
||||
@@ -97,24 +97,26 @@ ESP系列芯片最多支持三种射频收发模块: Bluetooth(BT 和 BLE),
|
||||
|
||||
.. table:: IEEE 802.15.4 (Thread / Zigbee) 和 BLE 共存支持功能
|
||||
|
||||
+-----------------+-------------+-----+------------+-----------+----------+
|
||||
| |BLE |
|
||||
+ +-----+------------+-----------+----------+
|
||||
| |Scan |Advertising |Connecting |Connected |
|
||||
+-----------------+-------------+-----+------------+-----------+----------+
|
||||
| Thread / Zigbee |Scan |X |Y |Y |Y |
|
||||
+ +-------------+-----+------------+-----------+----------+
|
||||
| |Router |X |Y |Y |Y |
|
||||
+ +-------------+-----+------------+-----------+----------+
|
||||
| |End Device |C1 |Y |Y |Y |
|
||||
+-----------------+-------------+-----+------------+-----------+----------+
|
||||
+-----------------+-------------+-----+------------+----------+
|
||||
| |BLE |
|
||||
+ +-----+------------+----------+
|
||||
| |Scan |Advertising |Connected |
|
||||
+-----------------+-------------+-----+------------+----------+
|
||||
| Thread / Zigbee |Scan |X |Y |Y |
|
||||
+ +-------------+-----+------------+----------+
|
||||
| |Router |X |Y |Y |
|
||||
+ +-------------+-----+------------+----------+
|
||||
| |End Device |C1 |Y |Y |
|
||||
+-----------------+-------------+-----+------------+----------+
|
||||
|
||||
.. note::
|
||||
|
||||
- Y:支持且性能稳定。
|
||||
- C1:不能保证性能处于稳定状态。
|
||||
- X:不支持。
|
||||
- S:在 STA 模式下支持且性能稳定,否则不支持。
|
||||
.. list::
|
||||
|
||||
- Y:支持且性能稳定。
|
||||
- C1:不能保证性能处于稳定状态。
|
||||
- X:不支持。
|
||||
:SOC_WIFI_SUPPORTED: - S:在 STA 模式下支持且性能稳定,否则不支持。
|
||||
|
||||
.. only:: SOC_IEEE802154_SUPPORTED
|
||||
|
||||
@@ -168,44 +170,48 @@ ESP系列芯片最多支持三种射频收发模块: Bluetooth(BT 和 BLE),
|
||||
共存策略
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
共存周期和时间片
|
||||
"""""""""""""""""""
|
||||
.. only:: SOC_WIFI_SUPPORTED and SOC_BT_SUPPORTED
|
||||
|
||||
.. only:: esp32
|
||||
共存周期和时间片
|
||||
"""""""""""""""""""
|
||||
|
||||
Wi-Fi、BT、BLE 三者对于 RF 的使用,主要是按照时间片来划分的。在一个共存周期内,按照 Wi-Fi、BT、BLE 的顺序划分时间片。在 Wi-Fi 的时间片内,Wi-Fi 会向共存仲裁模块发出较高优先级的请求,同理,BT/BLE 在自己的时间片内会具有较高优先级。共存周期大小和各个时间片占比根据 Wi-Fi 的状态分成四类:
|
||||
.. only:: SOC_BLE_SUPPORTED and SOC_BT_CLASSIC_SUPPORTED
|
||||
|
||||
Wi-Fi、BT、BLE 三者对于 RF 的使用,主要是按照时间片来划分的。在一个共存周期内,按照 Wi-Fi、BT、BLE 的顺序划分时间片。在 Wi-Fi 的时间片内,Wi-Fi 会向共存仲裁模块发出较高优先级的请求,同理,BT/BLE 在自己的时间片内会具有较高优先级。共存周期大小和各个时间片占比根据 Wi-Fi 的状态分成四类:
|
||||
|
||||
|
||||
.. only:: SOC_WIFI_SUPPORTED and SOC_BLE_SUPPORTED and not esp32
|
||||
.. only:: not SOC_BT_CLASSIC_SUPPORTED
|
||||
|
||||
Wi-Fi、BLE 二者对于 RF 的使用,主要是按照时间片来划分的。在 Wi-Fi 的时间片内,Wi-Fi 会向共存仲裁模块发出较高优先级的请求,在 Bluetooth 的时间片内,BLE 会具有较高优先级。共存周期大小和各个时间片占比根据 Wi-Fi 的状态分成四类:
|
||||
Wi-Fi、BLE 二者对于 RF 的使用,主要是按照时间片来划分的。在 Wi-Fi 的时间片内,Wi-Fi 会向共存仲裁模块发出较高优先级的请求,在 Bluetooth 的时间片内,BLE 会具有较高优先级。共存周期大小和各个时间片占比根据 Wi-Fi 的状态分成四类:
|
||||
|
||||
.. list::
|
||||
.. list::
|
||||
|
||||
:esp32: 1) IDLE 状态:BT 和 BLE 共存由 Bluetooth 模块控制。
|
||||
:SOC_WIFI_SUPPORTED and SOC_BLE_SUPPORTED and not esp32: 1) IDLE 状态:RF 模块由 Bluetooth 模块控制。
|
||||
#) CONNECTED 状态:共存周期以目标信标传输时间 (Target Beacon Transmission Time, TBTT) 点为起始点,周期大于 100 ms。
|
||||
#) SCAN 状态:Wi-Fi 时间片以及共存周期都比在 CONNECTED 状态下的长。为了确保蓝牙的性能,蓝牙的时间片也会做相应的调整。
|
||||
#) CONNECTING 状态:Wi-Fi 时间片比在 CONNECTED 状态下的长。为了确保蓝牙的性能,蓝牙的时间片也会做相应的调整。
|
||||
:SOC_BLE_SUPPORTED and SOC_BT_CLASSIC_SUPPORTED: 1) IDLE 状态:BT 和 BLE 共存由 Bluetooth 模块控制。
|
||||
:not SOC_BT_CLASSIC_SUPPORTED: 1) IDLE 状态:RF 模块由 Bluetooth 模块控制。
|
||||
#) CONNECTED 状态:共存周期以目标信标传输时间 (Target Beacon Transmission Time, TBTT) 点为起始点,周期大于 100 ms。
|
||||
#) SCAN 状态:Wi-Fi 时间片以及共存周期都比在 CONNECTED 状态下的长。为了确保蓝牙的性能,蓝牙的时间片也会做相应的调整。
|
||||
#) CONNECTING 状态:Wi-Fi 时间片比在 CONNECTED 状态下的长。为了确保蓝牙的性能,蓝牙的时间片也会做相应的调整。
|
||||
|
||||
|
||||
共存逻辑会根据当前 Wi-Fi 和 Bluetooth 的使用场景来选取不同的共存周期和共存时间片的划分策略。对应一个使用场景的共存策略,我们称之为“共存模板”。比如,Wi-Fi CONNECTED 与 BLE CONNECTED 的场景,就对应有一个共存模板。在这个共存模板中,一个共存周期内 Wi-Fi 和 BLE 的时间片各占 50%,时间分配如下图所示:
|
||||
共存逻辑会根据当前 Wi-Fi 和 Bluetooth 的使用场景来选取不同的共存周期和共存时间片的划分策略。对应一个使用场景的共存策略,我们称之为“共存模板”。比如,Wi-Fi CONNECTED 与 BLE CONNECTED 的场景,就对应有一个共存模板。在这个共存模板中,一个共存周期内 Wi-Fi 和 BLE 的时间片各占 50%,时间分配如下图所示:
|
||||
|
||||
.. figure:: ../../_static/coexist_wifi_connected_and_ble_connected_time_slice.png
|
||||
:align: center
|
||||
:alt: Wi-Fi CONNECTED 和 BLE CONNECTED 状态下时间片划分图
|
||||
:figclass: align-center
|
||||
.. figure:: ../../_static/coexist_wifi_connected_and_ble_connected_time_slice.png
|
||||
:align: center
|
||||
:alt: Wi-Fi CONNECTED 和 BLE CONNECTED 状态下时间片划分图
|
||||
:figclass: align-center
|
||||
|
||||
Wi-Fi CONNECTED 和 BLE CONNECTED 共存状态下时间片划分图
|
||||
Wi-Fi CONNECTED 和 BLE CONNECTED 共存状态下时间片划分图
|
||||
|
||||
.. only:: SOC_IEEE802154_SUPPORTED
|
||||
|
||||
IEEE 802.15.4 模块根据预先分配的优先级请求 RF 资源。普通的接收操作被分配为最低优先级,这意味着 Wi-Fi 和 BLE 在需要时会优先占用 RF,而 802.15.4 只能在剩余时间内进行接收。其他 802.15.4 操作,例如发送和接收 ACK 以及在指定时间内的发送和接收,被分配了更高的优先级。然而,它们能否实际获得 RF 资源最终取决于当时 Wi-Fi 和 BLE 操作的优先级。
|
||||
|
||||
动态优先级
|
||||
"""""""""""""""""""
|
||||
.. only:: SOC_WIFI_SUPPORTED and SOC_BT_SUPPORTED
|
||||
|
||||
共存模块为每个模块的不同状态分配不同的优先级。每种状态下的优先级并不是一成不变的,例如对于 BLE,每 N 个广播事件 (Advertising event) 中会有一个广播事件使用高优先级。如果高优先级的广播事件发生在 Wi-Fi 时间片内,RF 的使用权可能会被 BLE 抢占。
|
||||
动态优先级
|
||||
"""""""""""""""""""
|
||||
|
||||
共存模块为每个模块的不同状态分配不同的优先级。每种状态下的优先级并不是一成不变的,例如对于 BLE,每 N 个广播事件 (Advertising event) 中会有一个广播事件使用高优先级。如果高优先级的广播事件发生在 Wi-Fi 时间片内,RF 的使用权可能会被 BLE 抢占。
|
||||
|
||||
.. only:: SOC_WIFI_SUPPORTED
|
||||
|
||||
|
Reference in New Issue
Block a user