esp32 低功耗deep sleep 如何存储WiFi连接状态

xiaoyao
Posts: 18
Joined: Wed Apr 10, 2019 9:04 am

esp32 低功耗deep sleep 如何存储WiFi连接状态

Postby xiaoyao » Mon Sep 14, 2020 1:56 am

我目前有一个应用是deep sleep睡眠唤醒后能维持wifi的连接,不需要重新连接路由器。在规格书上有写deep sleep低功耗模式下可以存储wifi的连接信息。但是我找不到相关的接口和实现。请问下这个wifi连接信息具体指哪些数据?如果说在睡眠之前保存IP连接信息,在唤醒后能直接导入这些IP连接信息维持上一次的路由器连接吗?
Attachments
QQ图片20200914095026.jpg
QQ图片20200914095026.jpg (66.03 KiB) Viewed 5892 times

sioiot
Posts: 8
Joined: Wed Nov 14, 2018 11:17 am

Re: esp32 低功耗deep sleep 如何存储WiFi连接状态

Postby sioiot » Wed Sep 23, 2020 9:52 am

您好:

1. deep sleep睡眠时 CPU 与 SRAM 均掉电,唤醒后 CPU 需要重新初始化 wiif,睡眠后连接会断开。
2. 连接是一个双方验证的过程,超时断开后连接信息会废弃,保持一方的连接参数信息没有意义。所以仅仅保存路由器的信道可以加速连接,并无方法维持上一次连接。

13413605725
Posts: 3
Joined: Tue Sep 03, 2024 9:23 am

Re: esp32 低功耗deep sleep 如何存储WiFi连接状态

Postby 13413605725 » Wed Oct 30, 2024 8:43 am

那么蓝牙的可以这样操作吗?现在我们的应用和他的应用基本相同,但是我们是使用BLE_MESH进行通讯的。尽管我们使用了 store BLE MESH
configuration persistently这个选项来配置。但是我们发现bluetooth_init()这个操作大约需要 50~60ms, esp_ble_mesh_init(&provision, &composition)这个操作需要90~120ms,这两个时间加在一起太长了,对于低功耗设备来说是个毁灭性的灾难。每次deep_sleep唤醒后,都需要进行一次蓝牙和mesh的初始化,这个时间太耗时了。有没有方法仔上电的时候初始化一次,然后将ble_mesh的配置信息提前放在RTC里面,下次唤醒后,利用RTC内的配置信息快速完成蓝牙通讯?

Who is online

Users browsing this forum: No registered users and 182 guests