ESP32 在低功耗模式下如何保持WiFi连接并降低平均电流的实测技巧

· 1 浏览

回答(4)

注意天线匹配和PCB布局,不良天线会增加发射电流,实测中优化天线后,连接态电流从25mA降到18mA。
射频工程师小王 · 2026-08-27
如果允许,改用ESP32-S3的ECO模式,它支持更细粒度的时钟门控,WiFi连接时平均电流比ESP32低约15%。
低功耗极客 · 2026-08-27
用ESP-IDF的`esp_timer`定时唤醒,每100ms检查一次数据,比持续监听省电,实测平均电流可再降5mA。
电源老司机 · 2026-08-27
在ESP32低功耗模式下保持WiFi连接并降低平均电流,核心是使用WiFi Modem Sleep模式(默认开启),并配合DTIM间隔和Light Sleep。实测技巧:1) 将WiFi配置为Modem Sleep,设置`esp_wifi_set_ps(WIFI_PS_MIN_MODEM)`,此时CPU可进入Light Sleep,电流从~100mA降至~20mA(保持连接)。2) 调整DTIM(如`esp_wifi_set_dtim_interval(3)`),ESP32会在DTIM间隔内休眠,但需权衡延迟,建议DTIM=3(约300ms)可降平均电流30%。3) 使用`esp_pm`电源管理,配置`ESP_PM_CPU_FREQ_MAX`限制CPU频率为80MHz,并启用`light_sleep`回调,在无数据时自动进入。4) 实测中,将TCP keepalive间隔设为30s,并关闭不必要的服务(如HTTP、MQTT),可进一步降平均电流至10mA以下。注意:保持连接时,平均电流受AP信标间隔影响,建议使用支持802.11n的AP,并固定信道。务必用电流表实测,因为不同固件版本差异大。
mcuku 阿沐 · 2026-08-27