ESP32 測試(十):ESP32 Wi-Fi 和 藍牙 並存時開始睡眠模式的電流功耗

測試目的:ESP32 Wi-F 和 藍牙 並存時測量出 sleep 模式下 Wi-Fi 和 藍牙並存時的電流功耗。

以下是測試環境與過程、測試結果:

1.測試環境與過程:

  • 硬件部分:ESP32-WROVER-B 模組,ESP-IDF: V4.0 (abdf12dc),與一臺示波器。

  • 軟件部分:在 esp-idf/examples/wifi/power_save 示例裏結合了 /esp-idf/examples/bluetooth/bluedroid/ble/ble_ibeacon 示例(將 ble_ibeacon 中實現的功能複製添加到 power_save 即可)。 menuconfig 中可以按照 特殊配置 進行配置。如下:

    ESP-IDF menuconfig options:
    Enable Power Management:
    menuconfig ---> Component config ---> Power management --->
    [*] Support for power management
    
    Enable Tickless Idle:
    menuconfig ---> Component config ---> FreeRTOS --->
    [*] Tickless idle support
    (3) Minimum number of ticks to enter sleep mode for (NEW)
    
    Note: Tickless idle needs to be enabled to allow automatic light sleep. FreeRTOS will enter light sleep if no tasks need to run
    for 3(by default) ticks, that is 30ms if tick rate is 100Hz. Configure the FreeRTOS tick rate to be higher if you want to allow
    shorter duration light sleep, for example:
    menuconfig ---> Component config ---> FreeRTOS ->
    (1000) Tick rate (Hz)
    
    Configure external 32.768Hz crystal as RTC clock source:
    menuconfig ---> Component config ---> ESP32-specific --->
    RTC clock source (External 32kHz crystal)
    [*] Additional current for external 32kHz crystal
    Note that the "additional current" option is a workaround for a hardware issue on ESP32 that the crystal can fail in oscillating.
    Please enable this option when you use external 32kHz crystal. This hardware issue will be resolved in the next ECO chip.
    
    Enable Bluetooth modem sleep with external 32.768kHz crystal as low power clock:
    menuconfig ---> Component config ---> Bluetooth ---> Bluetooth controller ---> MODEM SLEEP Options --->
    [*] Bluetooth modem sleep
    Bluetooth Modem sleep mode (ORIG mode(sleep with low power clock))
    Bluetooth low power clock (External 32kHz crystal)
    

2.測試結果:

2.1 BLE 廣播(不使用 Wi-Fi)
首先需要驗證只用 /esp-idf/examples/bluetooth/bluedroid/ble/ble_ibeacon 示例測試 BLE 廣播(不使用 Wi-Fi)的電流功耗,測得的平均功耗與 樂鑫官方數據基本吻合,表格如下:

CPU 頻率 adv internal(ms) MODE 平均值 最大值 最小值
80 mHz 20 ms Light-sleep 33.1 mA 142 mA <1 mA
160 mHz 20 ms Light-sleep 34.3 mA 150 mA <1 mA

2.2 BLE 廣播(使用 Wi-Fi)
然後將 /esp-idf/examples/bluetooth/bluedroid/ble/ble_ibeacon 示例與 esp-idf/examples/wifi/power_save 示例結合後, 在 menuconfig 按照要求配置與燒寫固件後,結果如下:

CPU 頻率 adv internal(ms) MODE 平均值 最大值 最小值
80 mHz 20 ms Light-sleep 34.7 mA 166 mA 0.72 mA
80 mHz 80 ms Light-sleep 17.2 mA 168 mA 0.73 mA
80 mHz 160 ms Light-sleep 11.1 mA 166 mA 0.75 mA
160 mHz 20 ms Light-sleep 35.2 mA 166 mA 0.8 mA
160 mHz 80 ms Light-sleep 20.3 mA 168 mA 0.77 mA
160 mHz 160 ms Light-sleep 12.5 mA 166 mA 0.75 mA
240 mHz 20 ms Light-sleep 35.9 mA 166 mA <1 mA
240 mHz 80 ms Light-sleep 15.9 mA 166 mA <1 mA
240 mHz 160 ms Light-sleep 13.0 mA 168 mA <1 mA
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章