[solved] Hunting down the error: guru meditation error: core 0 panic'ed.

idahowalker
Posts: 19
Joined: Wed Aug 01, 2018 12:06 pm

[solved] Hunting down the error: guru meditation error: core 0 panic'ed.

Postby idahowalker » Thu Dec 06, 2018 7:23 pm

For me the guru meditation error: core 0 panic'ed occurs once every several hours, after the addition of my last 2 tasks.

Running ESP32 and freeRTOS.

With freeRTOS, I am using the xTaskCreatePinnedToCore function.

So the fisrt thing I did was move one of the two newest functions over to the other core; from 0 to 1. I also made the tasks variables volatile. Whiles a 2nd task accessed the variables it did not modify them but *shrug* gotta try something.

Now I wait. In the mean time if anyone has any ideas, I all 'ears', errr I mean eyes.
Last edited by idahowalker on Wed Dec 12, 2018 3:29 pm, edited 1 time in total.

ESP_igrr
Posts: 1260
Joined: Tue Dec 01, 2015 8:37 am

Re: Hunting down the error: guru meditation error: core 0 panic'ed.

Postby ESP_igrr » Fri Dec 07, 2018 12:10 am

You can try this documentation page, it explains more about various exceptions. Perhaps you can use the backtrace and core dump features to find the place in the code where error happens.

https://docs.espressif.com/projects/esp ... rrors.html

idahowalker
Posts: 19
Joined: Wed Aug 01, 2018 12:06 pm

Re: Hunting down the error: guru meditation error: core 0 panic'ed.

Postby idahowalker » Sun Dec 09, 2018 3:28 pm

ESP_igrr wrote:
Fri Dec 07, 2018 12:10 am
You can try this documentation page, it explains more about various exceptions. Perhaps you can use the backtrace and core dump features to find the place in the code where error happens.

https://docs.espressif.com/projects/esp ... rrors.html
I have managed to belay the number of times the error is happening by improving my code through the addition of (freeRTOS) semaphoremutex. Also, at this time the code, with the meditation error doing a reboot recovers as if nothing happened and the number of times the error happens has been reduced.

I have read over and bookmarked the link you posted. I will use the info provided in the link as I work on eliminating the error. Right now the error is only happening over the course of many hours and lots of waiting for it to happen again is on order.

Thanks for the link.

idahowalker
Posts: 19
Joined: Wed Aug 01, 2018 12:06 pm

Re: Hunting down the error: guru meditation error: core 0 panic'ed.

Postby idahowalker » Sun Dec 09, 2018 8:42 pm

What does this mean :" [V] esp32-hal-i2c.c:1387] i2cSetFrequency(): Fifo threshold=9" ?

idahowalker
Posts: 19
Joined: Wed Aug 01, 2018 12:06 pm

Re: Hunting down the error: guru meditation error: core 0 panic'ed.

Postby idahowalker » Mon Dec 10, 2018 9:37 pm

Update.

From the link, as posted above, I was able to determine that a null pointer to a structure was being given as the error message. With 3 queues on core 0, I, changed, one at a time, each queue sending a copy of the queue instead of a pointer. I am now left with one queue pointer on core 0 that has given me, finally, the guru meditation error. Now I am working, on the one queue that is using a pointer to a structure on core 0, on eliminating the error.

As a note: There are 3 structures on core 1 being passed by pointers, core 1 has not shown to have a problem.

idahowalker
Posts: 19
Joined: Wed Aug 01, 2018 12:06 pm

Re: Hunting down the error: guru meditation error: core 0 panic'ed.

Postby idahowalker » Tue Dec 11, 2018 8:02 pm

Guru Meditation Error: Core 0 panic'ed (LoadProhibited). Exception was unhandled.
Core 0 register dump:
PC : 0x400d3ee8 PS : 0x00060830 A0 : 0x800d161c A1 : 0x3ffb7860
A2 : 0x3ffc2574 A3 : 0x3ffc2d61 A4 : 0x3ffc3e04 A5 : 0x00000000
A6 : 0x00000041 A7 : 0x0000000e A8 : 0x800d3ee8 A9 : 0x3ffb7840
A10 : 0x00000000 A11 : 0x0000002c A12 : 0xfffffc01 A13 : 0x000003ff
A14 : 0x7ff00000 A15 : 0x408f4000 SAR : 0x0000001d EXCCAUSE: 0x0000001c
EXCVADDR: 0x00000001 LBEG : 0x400014fd LEND : 0x4000150d LCOUNT : 0xffffffff

Backtrace: 0x400d3ee8:0x3ffb7860 0x400d1619:0x3ffb78a0

As per: https://docs.espressif.com/projects/esp ... rrors.html
LoadProhibited, StoreProhibited
This CPU exception happens when application attempts to read from or write to an invalid memory location. The address which was written/read is found in EXCVADDR register in the register dump. If this address is zero, it usually means that application attempted to dereference a NULL pointer. If this address is close to zero, it usually means that application attempted to access member of a structure, but the pointer to the structure was NULL. If this address is something else (garbage value, not in 0x3fxxxxxx - 0x6xxxxxxx range), it likely means that the pointer used to access the data was either not initialized or was corrupted.
When I received the above error, which is the error I have been continuously getting, I did not have any structures on core0. Also, all the structures that ran on core0 were moved to core1 and core1 has not given me such an error message.

I have, at this point, put in a new ESP32.

idahowalker
Posts: 19
Joined: Wed Aug 01, 2018 12:06 pm

Re: [solved] Hunting down the error: guru meditation error: core 0 panic'ed.

Postby idahowalker » Wed Dec 12, 2018 3:30 pm

The new ESP32 did not want to upload and I did not feel like messing with it so I kept at it with the original ESP32.

Ends up that the Adafruit Ultimate GP library caused the error.

Who is online

Users browsing this forum: No registered users and 5 guests