esp32s3进入light_sleep时,出现RTCWDT_RTC_RST重启原因?

linshc
Posts: 59
Joined: Mon Feb 21, 2022 2:06 am

esp32s3进入light_sleep时,出现RTCWDT_RTC_RST重启原因?

Postby linshc » Tue Aug 02, 2022 4:22 am

使用的ESP32-s3r2,使用的外部的flash。单独使用light sleep示例工程进行测试没有问题。
但在station工程中添加light sleep模式,在连接到wifi并获取到IP之后,是设备进入light-sleep模式,此时esp32s3直接重启,没有进入到睡眠模式,查看重启原因为RTCWDT_RTC_RST,请问有人知道是什么原因吗? :?:

Code: Select all

I (1909) wifi:state: run -> init (0)
I (1919) wifi:pm stop, total sleep time: 824097 us / 1243383 us

W (1929) wifi:<ba-del>idx
I (1929) wifi:new:<6,0>, old:<6,0>, ap:<255,255>, sta:<6,0>, prof:1
I (1939) wifi station: retry to connect to the AP
I (1939) wifi station: connect to the AP fail
I (1969) wifi:flush txq
I (1969) wifi:stop sw txq
I (1969) wifi:lmac stop hw txq
I (1969) wifi station: enter low power...
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
[color=#FF0000]rst:0x10 (RTCWDT_RTC_RST),boot:0xa (SPI_FAST_FLASH_BOOT)[/color]
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fcd0108,len:0x164c
load:0x403b6000,len:0xb7c
load:0x403ba000,len:0x2f64
entry 0x403b6248
log见附件
station-light_sleep.log
(7.16 KiB) Downloaded 473 times
Attachments
sdkconfig.h
menuconfig配置项
(23.79 KiB) Downloaded 649 times
station_example_main.c
例程主程序
(7.67 KiB) Downloaded 417 times

ESP_Gargamel
Posts: 786
Joined: Wed Nov 14, 2018 8:45 am

Re: esp32s3进入light_sleep时,出现RTCWDT_RTC_RST重启原因?

Postby ESP_Gargamel » Tue Aug 02, 2022 7:25 am

哪个版本的 IDF?给 sdkconfig,不要给 sdkconfig.h。
单独试了下你的代码,倒也没有遇到问题。

linshc
Posts: 59
Joined: Mon Feb 21, 2022 2:06 am

Re: esp32s3进入light_sleep时,出现RTCWDT_RTC_RST重启原因?

Postby linshc » Tue Aug 02, 2022 9:34 am

好的,使用的IDF为4.4.1。请问一下出现RTCWDT_RTC_RST一般是由什么引起的呢?现在怀疑会不会是由于内存泄漏造成的,比如说进入light sleep时,wifi资源没释放完全。
Attachments
sdkconfig.rar
(9.02 KiB) Downloaded 746 times

linshc
Posts: 59
Joined: Mon Feb 21, 2022 2:06 am

Re: esp32s3进入light_sleep时,出现RTCWDT_RTC_RST重启原因?

Postby linshc » Tue Aug 02, 2022 10:56 am

ESP_Gargamel wrote:
Tue Aug 02, 2022 7:25 am
哪个版本的 IDF?给 sdkconfig,不要给 sdkconfig.h。
单独试了下你的代码,倒也没有遇到问题。
这是我板子的一些信息。
I (24) boot: ESP-IDF v4.4.1 2nd stage bootloader
I (25) boot: compile time 10:27:58
I (25) boot: chip revision: 0
I (26) boot.esp32s3: Boot SPI Speed : 80MHz
I (31) boot.esp32s3: SPI Mode : DIO
I (36) boot.esp32s3: SPI Flash Size : 2MB

请问一下你那边有esp32-s3r2 chip revision:0的开发板,帮忙测试一下,看看有没有问题?

ESP_Gargamel
Posts: 786
Joined: Wed Nov 14, 2018 8:45 am

Re: esp32s3进入light_sleep时,出现RTCWDT_RTC_RST重启原因?

Postby ESP_Gargamel » Wed Aug 03, 2022 9:13 am

还是没看到问题,你可以把你编译出的 boot,partition,app bin 发上来,直接烧入看下。
另外,你使用的是什么开发板?我这边用 S3 的 DevKitC 暂时没遇到问题。你是 enter low power... 后多久复位,大概时间?
RTCWDT_RTC_RST 是 RTC 的 WDT 复位了,在进入到 light sleep 前会使能。

linshc
Posts: 59
Joined: Mon Feb 21, 2022 2:06 am

Re: esp32s3进入light_sleep时,出现RTCWDT_RTC_RST重启原因?

Postby linshc » Wed Aug 03, 2022 9:40 am

我这边是使用s3r2的芯片做的板子,单独使用wifi staion工程或light sleep工程都没有出现问题。但将两者结合在一起,就出现了上述问题。
我使用安信可的ESP-S3-32S开发板没出现这个问题。当前怀疑是自身硬件上出的问题,可能在射频电路上,目前还在查找原因。请问能提供wifi射频参考电路吗?主要想比对一下。

1.你是 enter low power... 后多久复位,大概时间?
我一调用esp_light_sleep_start();函数后,芯片就立马重启,时间太短了。
2.请教一下 RTC 的 WDT 复位是在进入app_main()之前就禁止了,在进入light sleep前,又会自动打开是吗?
Attachments
bin.rar
ssid: esp32s3_test pass:123456789
(362.73 KiB) Downloaded 605 times

ESP_Gargamel
Posts: 786
Joined: Wed Nov 14, 2018 8:45 am

Re: esp32s3进入light_sleep时,出现RTCWDT_RTC_RST重启原因?

Postby ESP_Gargamel » Wed Aug 03, 2022 10:25 am

你的 bin 在通用开发板上没有问题,那接下来查一下硬件,看是否是因为什么外围引起的。可以对比通用开发板,比如:https://dl.espressif.com/dl/schematics/ ... 220413.pdf,然后逐步排查。
射频这块,可以直接参考我们模组的:https://www.espressif.com/sites/default ... sign_0.zip
第 2 点,是的,如果没有打开,会自动打开。
另外,方便的话可以共享一下原理图。

linshc
Posts: 59
Joined: Mon Feb 21, 2022 2:06 am

Re: esp32s3进入light_sleep时,出现RTCWDT_RTC_RST重启原因?

Postby linshc » Wed Aug 03, 2022 12:19 pm

您好,这是我们的原理图,第二页为esp32s3r2部分。
Attachments
esp32s3r2.pdf
(1.8 MiB) Downloaded 767 times

ESP_Gargamel
Posts: 786
Joined: Wed Nov 14, 2018 8:45 am

Re: esp32s3进入light_sleep时,出现RTCWDT_RTC_RST重启原因?

Postby ESP_Gargamel » Thu Aug 04, 2022 5:51 am

你在 components/esp_hw_support/sleep_modes.c 内 704 行,uint32_t stage_timeout_ticks = (uint32_t)(1000ULL * rtc_clk_slow_freq_get_hz() / 1000ULL); 之后加

Code: Select all

esp_rom_printf(DRAM_STR("t = %d\n"), stage_timeout_ticks);
ets_delay_us(1000);
串口终端要能打印时间戳,精确到 ms 的,如:[2022-08-04 13:45:57.957] I (3097) wifi station: enter low power...
然后跑一下看下 log。

linshc
Posts: 59
Joined: Mon Feb 21, 2022 2:06 am

Re: esp32s3进入light_sleep时,出现RTCWDT_RTC_RST重启原因?

Postby linshc » Thu Aug 04, 2022 6:54 am

以下是我的log,在components/esp_hw_support/sleep_modes.c文件中加的打出来的t=150000

Code: Select all

I (1901) esp_netif_handlers: sta ip: 192.168.31.16, mask: 255.255.255.0, gw: 192.168.31.1
I (1901) wifi station: [1970-01-01-00:00:01.645] got ip:192.168.31.16
I (1901) wifi station: [1970-01-01-00:00:01.650] connected to ap SSID:Brains-Guest password:brains@guest
I (11911) wifi:state: run -> init (0)
I (11911) wifi:pm stop, total sleep time: 7990120 us / 11175410 us

W (11911) wifi:<ba-del>idx
I (11911) wifi:new:<6,0>, old:<6,0>, ap:<255,255>, sta:<6,0>, prof:1
I (11911) wifi station: [1970-01-01-00:00:11.663] retry to connect to the AP
I (11921) wifi station: [1970-01-01-00:00:11.669] connect to the AP fail
I (11941) wifi:flush txq
I (11941) wifi:stop sw txq
I (11941) wifi:lmac stop hw txq
I (11941) wifi station: [1970-01-01-00:00:11.685] enter low power...
t = 150000
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x10 (RTCWDT_RTC_RST),boot:0xa (SPI_FAST_FLASH_BOOT)
SPIWP:0xee
mode:DIO, clock div:1
load:0x3fcd0108,len:0x164c
load:0x403b6000,len:0xb7c
load:0x403ba000,len:0x2f64
entry 0x403b6248
Attachments
esp32s3r2.log
(11.28 KiB) Downloaded 526 times

Who is online

Users browsing this forum: Baidu [Spider], Google [Bot] and 84 guests