Strange esp reset reason ( RTC_SW_SYS_RESET :Software reset digital core)

c.Hicham
Posts: 11
Joined: Fri Dec 13, 2019 9:25 pm

Strange esp reset reason ( RTC_SW_SYS_RESET :Software reset digital core)

Postby c.Hicham » Mon Oct 02, 2023 8:42 am

Hello,

I'm using esp32 target and esp-idf v4.3
In my application I'm using `rtc_get_reset_reason()` to get the reset reason for each core and report it in my data.

Code: Select all

rtc_get_reset_reason(0);
rtc_get_reset_reason(1);

In deployed devices in the field I get from time to time reset reasons 3 and 14 for core 0 and 1 respectively.
3, Software reset digital core
14 doesn't exist anywhere ?

I have never encountered these values while doing tests so I was wondering if you can help me identify what 3, Software reset digital core mean first ?

Code: Select all

typedef enum {
    NO_MEAN                =  0,
    POWERON_RESET          =  1,    /**<1, Vbat power on reset*/
    RTC_SW_SYS_RESET       =  3,    /**<3, Software reset digital core*/
    DEEPSLEEP_RESET        =  5,    /**<5, Deep Sleep reset digital core*/
    TG0WDT_SYS_RESET       =  7,    /**<7, Timer Group0 Watch dog reset digital core*/
    TG1WDT_SYS_RESET       =  8,    /**<8, Timer Group1 Watch dog reset digital core*/
    RTCWDT_SYS_RESET       =  9,    /**<9, RTC Watch dog Reset digital core*/
    INTRUSION_RESET        = 10,    /**<10, Instrusion tested to reset CPU*/
    TG0WDT_CPU_RESET       = 11,    /**<11, Time Group0 reset CPU*/
    RTC_SW_CPU_RESET       = 12,    /**<12, Software reset CPU*/
    RTCWDT_CPU_RESET       = 13,    /**<13, RTC Watch dog Reset CPU*/
    RTCWDT_BROWN_OUT_RESET = 15,    /**<15, Reset when the vdd voltage is not stable*/
    RTCWDT_RTC_RESET       = 16,    /**<16, RTC Watch dog reset digital core and rtc module*/
    TG1WDT_CPU_RESET       = 17,    /**<17, Time Group1 reset CPU*/
    SUPER_WDT_RESET        = 18,    /**<18, super watchdog reset digital core and rtc module*/
    GLITCH_RTC_RESET       = 19,    /**<19, glitch reset digital core and rtc module*/
    EFUSE_RESET            = 20,    /**<20, efuse reset digital core*/
    USB_UART_CHIP_RESET    = 21,    /**<21, usb uart reset digital core */
    USB_JTAG_CHIP_RESET    = 22,    /**<22, usb jtag reset digital core */
    POWER_GLITCH_RESET     = 23,    /**<23, power glitch reset digital core and rtc module*/
} RESET_REASON;
I found in technical manual the following
Attachments
Capture.PNG
Capture.PNG (65.22 KiB) Viewed 2101 times

c.Hicham
Posts: 11
Joined: Fri Dec 13, 2019 9:25 pm

Re: Strange esp reset reason ( RTC_SW_SYS_RESET :Software reset digital core)

Postby c.Hicham » Tue Oct 03, 2023 11:43 am

Any help would be much appreciated !

MicroController
Posts: 1708
Joined: Mon Oct 17, 2022 7:38 pm
Location: Europe, Germany

Re: Strange esp reset reason ( RTC_SW_SYS_RESET :Software reset digital core)

Postby MicroController » Tue Oct 03, 2023 4:15 pm

What you observed seems to align with esp_restart_noos().
In your case, esp_restart_noos() seems to have been called on the PRO CPU (core0) so that the PRO CPU first forced a reset of the APP CPU (core1) before resetting itself.

If your application didn't intentionally cause a restart, esp_restart_noos() may have been called by the panic handler.

Who is online

Users browsing this forum: Bing [Bot], rsimpsonbusa and 88 guests