Need to disable TG1WDT_SYS_RESET
Posted: Tue Aug 30, 2022 10:20 pm
Hi there!
I am using an ESP32-D0WDQ6-V3 (revision 3) to do some very low level exploration on the board's instruction set, memory layout and other stuff. This is done for a specifically clear purpose to which this system might be an excellent candidate for.
Part of that process consists of hand-brewing some assembly instructions, placing them in memory somewhere and then pointing the PC to that to run them. This is done from within the microcontroller itself, not external toolchain, except the initial code which is written in C and acts as a form of boot sequence.
Unfortunately, the timer watch dog is in my way. I read about it, I understand its purpose, but where I'm at, I don't need it. I want the actual panic trace instead of resetting so I can look at the register and draw some conclusions.
What I tried so far were various combinations of this:
I also read the technical Xtensa ISA (I need that for the asm opcodes anyway), the esp datasheet and this forum and I've got no closer to getting this out of my way.
How can I disable it and other similar mechanisms that would force a reset instead of panic?
Thanks!
I am using an ESP32-D0WDQ6-V3 (revision 3) to do some very low level exploration on the board's instruction set, memory layout and other stuff. This is done for a specifically clear purpose to which this system might be an excellent candidate for.
Part of that process consists of hand-brewing some assembly instructions, placing them in memory somewhere and then pointing the PC to that to run them. This is done from within the microcontroller itself, not external toolchain, except the initial code which is written in C and acts as a form of boot sequence.
Unfortunately, the timer watch dog is in my way. I read about it, I understand its purpose, but where I'm at, I don't need it. I want the actual panic trace instead of resetting so I can look at the register and draw some conclusions.
What I tried so far were various combinations of this:
Code: Select all
rtc_wdt_protect_off();
rtc_wdt_disable();
disableCore0WDT();
disableLoopWDT();
esp_task_wdt_delete(NULL);
How can I disable it and other similar mechanisms that would force a reset instead of panic?
Thanks!