Are there any fatal errors in ESP32 programming?

Are there any fatal errors in ESP32 programming?

Guru Meditation Errors ¶ 1 IllegalInstruction ¶. 2 InstrFetchProhibited ¶. 3 LoadProhibited, StoreProhibited ¶. 4 IntegerDivideByZero ¶. 5 LoadStoreAlignment ¶. 6 LoadStoreError ¶. 7 Unhandled debug exception ¶. 8 Interrupt wdt timeout on CPU0 / CPU1 ¶. 9 Cache disabled but cached memory region accessed ¶.

What does the backtrace line in ESP32 mean?

Backtrace line contains PC:SP pairs, where PC is the Program Counter and SP is Stack Pointer, for each stack frame of the current task. If a fatal error happens inside an ISR, the backtrace may include PC:SP pairs both from the task which was interrupted, and from the ISR.

When is register dump not printed in ESP32?

Register values printed are the register values in the exception frame, i.e. values at the moment when CPU exception or other fatal error has occured. Register dump is not printed if the panic handler was executed as a result of an abort () call.

What are some of the exceptions in ESP-IDF?

In certain situations, execution of the program can not be continued in a well defined way. In ESP-IDF, these situations include: CPU Exceptions: Illegal Instruction, Load/Store Alignment Error, Load/Store Prohibited error, Double Exception. Failed assertions, via assert, configASSERT and similar macros.

What does it mean when program counter is zero in ESP32?

Usually this means an attempt to call a function pointer, which does not point to valid code. PC (Program Counter) register can be used as an indicator: it will be zero or will contain garbage value (not 0x4xxxxxxx ). This CPU exception happens when application attempts to read from or write to an invalid memory location.

What happens if Panic handler is enabled in ESP32?

If CONFIG_ESP32_DEBUG_OCDAWARE is enabled (which is the default), panic handler will detect whether a JTAG debugger is connected. If it is, execution will be halted and control will be passed to the debugger.