Code: Select all
Guru Meditation Error: Core 0 panic'ed (Cache disabled but cached memory region
accessed)
Core 0 register dump:
PC : 0x400f1774 PS : 0x00060034 A0 : 0x80083c0e A1 : 0x3f
fb05b0
0x400f1774: gpio_set_level at C:/msys32/home/user/esp/esp-idf/components/driver/
gpio.c:537
A2 : 0x3ffb08f0 A3 : 0x00000008 A4 : 0x00000000 A5 : 0x00
000003
A6 : 0x3ff42000 A7 : 0x700000bb A8 : 0x800826e6 A9 : 0xd0
000040
A10 : 0x00000010 A11 : 0x00000001 A12 : 0x00000000 A13 : 0x00
000000
A14 : 0x3ff42000 A15 : 0x700000bb SAR : 0x0000001c EXCCAUSE: 0x00
000007
EXCVADDR: 0x00000000 LBEG : 0x4000c2e0 LEND : 0x4000c2f6 LCOUNT : 0xff
ffffff
Core 0 was running in ISR context:
EPC1 : 0x400621b0 EPC2 : 0x00000000 EPC3 : 0x00000000 EPC4 : 0x40
0f1774
0x400f1774: gpio_set_level at C:/msys32/home/user/esp/esp-idf/components/driver/
gpio.c:537
Backtrace: 0x400f1774:0x3ffb05b0 0x40083c0b:0x3ffb05d0 0x40082016:0x3ffb0600 0x4
00621ad:0x00000000
0x400f1774: gpio_set_level at C:/msys32/home/user/esp/esp-idf/components/driver/
gpio.c:537
0x40083c0b: spi_intr at C:/msys32/home/user/esp/esp-idf/components/driver/spi_ma
ster.c:432
0x40082016: _xt_lowint1 at C:/msys32/home/user/esp/esp-idf/components/freertos/x
tensa_vectors.S:1105
Code: Select all
(nvs_set_blob(kv_store, NVS_NAMESPACE_CFG, pbuf, size) == ESP_OK)
The NVS has long been initialized and the above code is *only* accessed from the thread which triggers a save to the NVS after a request to do so and a timeout. Though I presume the NVS has semaphores to protect against simultaneous access, in my case only one access is possible at a time.
I've read other discussions of "Guru Meditation Error: Cache disabled but cached memory region accessed" but none seems applicable, as I have no ISR in this project (except for ESPNOW callbacks) and the cache was initialized "long ago".
Any idea why this might happen?
The topics closest were:
https://github.com/espressif/esp-idf/issues/1396
https://github.com/espressif/arduino-esp32/issues/855