Page 1 of 1

Interrupt Watchdog Timeout issue

Posted: Wed Jun 21, 2017 5:49 pm
by Ritesh
Hi,

I have been working into ESP32 SDK and application since last 6 month and we have found Interrupt Watchdog Timeout issue after storing downloaded firmware into SPI Flash and it has been running into one Task.

So, After that I have checked some ESP32 configurations and found one Watchdog Interrupt Timeout configurations which is set as default 300 msec. I have also checked help of it and found range is 10 msec to 10 seconds.

After that, I have increased my current settings from 300msec to 5 seconds and tested same application again and it has been solved that issue.

So, does it 5 seconds Watchdog Timeout Interrupt is recommended to use or will it create any impact into normal firmware?

Re: Interrupt Watchdog Timeout issue

Posted: Thu Jun 22, 2017 2:13 am
by ESP_Sprite
It depends. What the interrupt watchdog is checking is how long interrupts are disabled, e.g. by work done in an interrupt handler, explicit disabling of interrupts, or implicit disabling of interrupts due to a spinlock (vTaskEnterCritical and friends). If you happen to have an ISR that takes longer than 300ms or code that disables interrupts for that amount of time, then either refactoring that code or increasing the watchdog time is a good idea.

Re: Interrupt Watchdog Timeout issue

Posted: Sun Sep 02, 2018 3:05 am
by Ritesh
Hi ESP_Sprite,

One of ESP32 Developer using Arduino IDE and files for there project development purpose and he needs to change Interrupt Watchdog Timeout as per his project requirement.

So, Do you have any like how it can be changed into Arduino IDE to update it's value?

It will be great and appreciated if anyone will provide quick response for same if you know regarding that.

Re: Interrupt Watchdog Timeout issue

Posted: Sun Sep 02, 2018 1:08 pm
by minhan74
Thank you very much for your support Ritesh Prajapati.
First, if we want to change Watchdog Interrupt Timeout configurations in ESP-IDF environment, we can use the make menuconfig command --> Component config -->ESP32-specific, and change the Interrupt watchdog timeout (ms) to the desire value (between 10ms to 10s).

However in Arduino IDE, all libs are already pre-built from IDF. (https://esp32.com/viewtopic.php?t=5225, https://github.com/espressif/arduino-esp32/issues/229)

So if we want to change setting in sdkconfig in order to change Watchdog Interrupt Timeout configurations, we have to re-build "libesp32.a". Follow the instruction here to do that:
https://github.com/espressif/arduino-esp32/issues/1142

After update the new "libesp32.a"
(tended to be in the directory: C:\Users\<User>\AppData\Local\Arduino15\packages\esp32\hardware\esp32\1.0.0\tools\sdk\lib), everything should run as you wanted it to be.

I take no credit of finding any information above. All thanks to Mr. Ritesh Prajapati.

Re: Interrupt Watchdog Timeout issue

Posted: Sun Sep 02, 2018 4:45 pm
by Ritesh
Great. minhan74.

Thanks for providing details to configure it for Arduino ESP32 Projects which will be helpful to others which are using same for their requirements.