ESP32 Guru Meditation Error: Core 0 panic'ed (LoadProhibited). when using BLE

0

I am developing on ESP32 WROOWER using Arduino IDE.

When I use BLE in my sketch it bricks down, I dont know why. My sketch is big, 1416000 bytes and in Tool>Partition Scheme I selected "HUGE APP 3MB....".

Here is the backtrace:

    Guru Meditation Error: Core  0 panic'ed (LoadProhibited). Exception was unhandled.
Core 0 register dump:
PC      : 0x401d084e  PS      : 0x00060930  A0      : 0x800d7080  A1      : 0x3ffd35f0  
A2      : 0x3ffe3b84  A3      : 0xca5091d7  A4      : 0x3ffc6234  A5      : 0x3ffd39f0  
A6      : 0xca5091d7  A7      : 0x3ffbb9cc  A8      : 0x00000000  A9      : 0x3ffd3870  
A10     : 0x3fff273c  A11     : 0x3fff273c  A12     : 0x00060320  A13     : 0x3ffd39f8  
A14     : 0x3f29b3ec  A15     : 0x3f29b3ec  SAR     : 0x00000018  EXCCAUSE: 0x0000001c  
EXCVADDR: 0x0000000c  LBEG    : 0x4000c349  LEND    : 0x4000c36b  LCOUNT  : 0xffffffff  

Backtrace: 0x401d084e:0x3ffd35f0 0x400d707d:0x3ffd3610 0x400d62de:0x3ffd3630 0x400d66b9:0x3ffd38e0 0x400d9720:0x3ffd3900 0x400d9b95:0x3ffd3950 0x400d90cd:0x3ffd3970 0x400d7249:0x3ffd39d0 0x4014389a:0x3ffd39f0 0x4013d5f6:0x3ffd3a30 0x40090ee5:0x3ffd3a60

And when I use decoder here is what it shows to me:

enter image description here

When I test BLE using Examples it works fine, but when I combine it with my sketch it fails...

If you know how to fix this please help me!

arduino
bluetooth
bluetooth-lowenergy
esp32
decoder
asked on Stack Overflow Mar 30, 2020 by Antisa • edited Apr 10, 2020 by ChristianYami

2 Answers

1

Check the following:

  • Do you use String Class and do a lot off String constructions with String c = "a" + "b"
  • are you creating char arrays on the fly e.g. char d[] = "efg";
  • are you using delay() - get rid of it its blocking

If there is one Yes than you've found the reason, if its 3x No we need your code (github, pastebin) to do further analysis

answered on Stack Overflow Mar 31, 2020 by Codebreaker007
-1

Thanks for the answer!

I fixed it somehow. I am not sure how but there is no more that problem, but there is another one.

When I turn on my ESP32 or when I put a new sketch on it it shows me this:

    CORRUPT HEAP: multi_heap.c:432 detected at 0x3ffe3b74
abort() was called at PC 0x40091c5b on core 0

Backtrace: 0x40092624:0x3ffd1510 0x40092855:0x3ffd1530 0x40091c5b:0x3ffd1550 0x40092252:0x3ffd1570 0x40084f68:0x3ffd1590 0x4008520b:0x3ffd15b0 0x40085277:0x3ffd15d0 0x4017e09b:0x3ffd1620 0x401bcd96:0x3ffd1640 0x401b11ea:0x3ffd1660 0x4001791d:0x3ffd1680 0x401b17ed:0x3ffd16a0 0x401b18ca:0x3ffd16e0 0x400188f5:0x3ffd1710 0x4004d2ae:0x3ffd1750 0x401b923d:0x3ffd1770 0x4004c94d:0x3ffd1790 0x4001a637:0x3ffd17b0 0x40019d11:0x3ffd17e0 0x40055b4d:0x3ffd1800 0x401b032f:0x3ffd1820 0x401b0885:0x3ffd1840 0x4008eb69:0x3ffd1870

and it happens 5 times and then it starts normaly:

Other 4 errors are:

        CORRUPT HEAP: multi_heap.c:432 detected at 0x3ffe3b74
    abort() was called at PC 0x40091c5b on core 0

    Backtrace: 0x40092624:0x3ffd1510 0x40092855:0x3ffd1530 0x40091c5b:0x3ffd1550 0x40092252:0x3ffd1570 0x40084f68:0x3ffd1590 0x4008520b:0x3ffd15b0 0x40085277:0x3ffd15d0 0x4017e09b:0x3ffd1620 0x401bcd96:0x3ffd1640 0x401b11ea:0x3ffd1660 0x4001791d:0x3ffd1680 0x401b17ed:0x3ffd16a0 0x401b18ca:0x3ffd16e0 0x400188f5:0x3ffd1710 0x4004d2ae:0x3ffd1750 0x401b923d:0x3ffd1770 0x4004c94d:0x3ffd1790 0x4001a637:0x3ffd17b0 0x40019d11:0x3ffd17e0 0x40055b4d:0x3ffd1800 0x401b032f:0x3ffd1820 0x401b0885:0x3ffd1840 0x4008eb69:0x3ffd1870



     CORRUPT HEAP: multi_heap.c:432 detected at 0x3ffe3b64
    abort() was called at PC 0x40091c5b on core 0

    Backtrace: 0x40092624:0x3ffd23b0 0x40092855:0x3ffd23d0 0x40091c5b:0x3ffd23f0 0x40092252:0x3ffd2410 0x40084f68:0x3ffd2430 0x4008520b:0x3ffd2450 0x40085277:0x3ffd2470 0x4017e09b:0x3ffd24c0 0x401bcd96:0x3ffd24e0 0x401b11ea:0x3ffd2500 0x4001791d:0x3ffd2520 0x401b17ed:0x3ffd2540 0x401b18ca:0x3ffd2580 0x400188f5:0x3ffd25b0 0x4004d2ae:0x3ffd25f0 0x401b923d:0x3ffd2610 0x4004c94d:0x3ffd2630 0x4001a637:0x3ffd2650 0x40019d11:0x3ffd2680 0x40055b4d:0x3ffd26a0 0x401b032f:0x3ffd26c0 0x401b0885:0x3ffd26e0 0x4008eb69:0x3ffd2710




    CORRUPT HEAP: Bad head at 0x3ffe3b28. Expected 0xabba1234 got 0x00000000
    assertion "head != NULL" failed: file "/home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/heap/multi_heap_poisoning.c", line 214, function: multi_heap_free
    abort() was called at PC 0x4010792b on core 0

    Backtrace: 0x40092624:0x3ffd4800 0x40092855:0x3ffd4820 0x4010792b:0x3ffd4840 0x40092299:0x3ffd4870 0x40085066:0x3ffd4890 0x40085621:0x3ffd48b0 0x4000bec7:0x3ffd48d0 0x4013a7ad:0x3ffd48f0 0x4008eb69:0x3ffd4920

        CORRUPT HEAP: Bad head at 0x3ffe3b28. Expected 0xabba1234 got 0x00000000
    assertion "head != NULL" failed: file "/home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/heap/multi_heap_poisoning.c", line 214, function: multi_heap_free
    abort() was called at PC 0x4010792b on core 0

    Backtrace: 0x40092624:0x3ffd4800 0x40092855:0x3ffd4820 0x4010792b:0x3ffd4840 0x40092299:0x3ffd4870 0x40085066:0x3ffd4890 0x40085621:0x3ffd48b0 0x4000bec7:0x3ffd48d0 0x4013a7ad:0x3ffd48f0 0x4008eb69:0x3ffd4920



     CORRUPT HEAP: Bad head at 0x3ffe3b28. Expected 0xabba1234 got 0x00000000
    assertion "head != NULL" failed: file "/home/runner/work/esp32-arduino-lib-builder/esp32-arduino-lib-builder/esp-idf/components/heap/multi_heap_poisoning.c", line 214, function: multi_heap_free
    abort() was called at PC 0x4010792b on core 0

    Backtrace: 0x40092624:0x3ffd4800 0x40092855:0x3ffd4820 0x4010792b:0x3ffd4840 0x40092299:0x3ffd4870 0x40085066:0x3ffd4890 0x40085621:0x3ffd48b0 0x4000bec7:0x3ffd48d0 0x4013a7ad:0x3ffd48f0 0x4008eb69:0x3ffd4920

Do you know how to fix this?

answered on Stack Overflow Mar 31, 2020 by Antisa • edited Apr 9, 2020 by ChristianYami

User contributions licensed under CC BY-SA 3.0