I'm writing a code for the ESP32 in Arduino IDE with C++ objects defined in C++ files. The code works like this, it configures an interrupt on a pin of the ESP32 and when it receives the interrupt, it reads a message on the SPI as master and then it prints the message to serial.
1) I had ESP32 version 1.0.6 and everything was working fine.
2) after updating to version 2.0.2, everything still works until I try to print to Serial and I get either
Code: Select all
assert failed: taskSelectHighestPriorityTaskSMP tasks.c:3447 (xTaskScheduled == pdTRUE)
Backtrace:0x40083fbd:0x3ffc46700x3ffc472d:0x3ffc4750 |<-CORRUPTED
ELF file SHA256: 0000000000000000
Rebooting...
Code: Select all
Guru Meditation Error: Core 1 panic'ed (Interrupt wdt timeout on CPU1).
Core 1 register dump:
PC : 0x4008bbb4 PS : 0x00060a35 A0 : 0x8008ae26 A1 : 0x3ffbec9c
A2 : 0x3ffb7de8 A3 : 0x3ffc6a90 A4 : 0x00000004 A5 : 0x00060a23
A6 : 0x00060a23 A7 : 0x00000001 A8 : 0x3ffc6a90 A9 : 0x00000018
A10 : 0x3ffc6a90 A11 : 0x00000018 A12 : 0x3ffc1e44 A13 : 0x00060a23
A14 : 0x007beea8 A15 : 0x003fffff SAR : 0x0000001d EXCCAUSE: 0x00000006
EXCVADDR: 0x00000000 LBEG : 0x40085e10 LEND : 0x40085e26 LCOUNT : 0xffffffff
Core 1 was running in ISR context:
EPC1 : 0x400da603 EPC2 : 0x00000000 EPC3 : 0x00000000 EPC4 : 0x00000000
Backtrace:0x4008bbb1:0x3ffbec9c |<-CORRUPTED
Core 0 register dump:
PC : 0x4008bd35 PS : 0x00060035 A0 : 0x8008aa53 A1 : 0x3ffbe7fc
A2 : 0x3ffbeea8 A3 : 0xb33fffff A4 : 0x0000abab A5 : 0x00060023
A6 : 0x00060021 A7 : 0x0000cdcd A8 : 0x0000abab A9 : 0xffffffff
A10 : 0x3ffc1c4c A11 : 0x00000000 A12 : 0x3ffc1c48 A13 : 0x00000007
A14 : 0x007beea8 A15 : 0x003fffff SAR : 0x0000001a EXCCAUSE: 0x00000006
EXCVADDR: 0x00000000 LBEG : 0x00000000 LEND : 0x00000000 LCOUNT : 0x00000000
Backtrace:0x4008bd32:0x3ffbe7fc |<-CORRUPTED
ELF file SHA256: 0000000000000000
Rebooting...