esp-idf/examples/wifi/power_save
Song Ruo Jing bc09031496 refactor(uart_vfs): Move uart implementation of vfs to esp_driver_uart
Deprecated esp_vfs_dev_uart_xxx APIs
vfs_uart test case moved to esp_driver_uart test_apps
Astyle fixed for uart_vfs
2023-12-15 17:14:55 +08:00
..
image
main refactor(uart_vfs): Move uart implementation of vfs to esp_driver_uart 2023-12-15 17:14:55 +08:00
CMakeLists.txt
README.md ci(fix): pre-commit check wifi power save rules 2023-08-21 14:36:41 +08:00
pytest_wifi_power_save.py ci(wifi): add wifi powersave pytest case 2023-08-10 16:26:28 +08:00
sdkconfig.ci.c2_xtal26m ci(wifi): add wifi powersave pytest case 2023-08-10 16:26:28 +08:00
sdkconfig.ci.default ci(wifi): add wifi powersave pytest case 2023-08-10 16:26:28 +08:00
sdkconfig.ci.pd_top ci(wifi): add wifi powersave pytest case 2023-08-10 16:26:28 +08:00
sdkconfig.defaults examples/wifi/power_save: use 1000Hz freertos tick to lower sleep time threshold 2023-03-06 10:58:18 +08:00

README.md

Supported Targets ESP32 ESP32-C2 ESP32-C3 ESP32-C6 ESP32-S2 ESP32-S3

Wifi Power Save Example

This example shows how to use power save mode of wifi.

Power save mode only works in station mode. If the modem sleep mode is enabled, station will switch between active and sleep state periodically after connecting to AP successfully. In sleep state, RF, PHY and BB are turned off in order to reduce power consumption. Station can keep connection with AP in modem sleep mode.

  • No power save: This is default mode. And the esp32 will work with full power.

  • Minimum modem sleep: In minimum modem sleep mode, station wakes up every DTIM to receive beacon. Broadcast data will not be lost because it is transmitted after DTIM. However, it can not save much more power if DTIM is short for DTIM is determined by AP.

  • Maximum modem sleep: In maximum modem sleep mode, station wakes up every listen interval to receive beacon. Broadcast data may be lost because station may be in sleep state at DTIM time. If listen interval is longer, more power is saved but broadcast data is more easy to lose.

  • others: not supported yet.

Typical current consumption with management enabled

current consumption with CONFIG_PM_ENABLE enabled

Typical current consumption with management disabled

current consumption with CONFIG_PM_ENABLE disabled

Note that current consumption and average current are higher when disabled.