ETS-PoliTO/esp32-sniffer

ETS: [SNIFFER] Starting Guru Meditation Error

dmqgit opened this issue · 1 comments

Hi,

(for the other issues - I am able to compile the project with the curent 3.3.5 branch of ESP-IDF)

Unfortunately I get the following error:

I (2737) ETS: [WI-FI] Connected
I (2827) ETS: [SPIFFS] Partition size: total: 896321, used: 502
I (2827) ETS: Connecting to WiFi and getting time over NTP.
I (2827) ETS: Waiting for system time to be set... (1/15)
I (4837) ETS: TIME INFO: The Greenwich date/time is: Fri Sep 10 11:27:38 2021
I (4877) ETS: File /spiffs/probreq.log initialized
I (4887) ETS: File /spiffs/probreq2.log initialized
I (4887) ETS: [!] Starting sniffing task...
I (4887) ETS: [!] Starting Wi-Fi task...
I (4887) ETS: [SNIFFER] Sniffer task created
I (4897) ETS: [WIFI] Wi-Fi task created
I (4897) system_api: Base MAC address is not set, read default base MAC address from BLK0 of EFUSE
I (4907) ETS: [SNIFFER] Starting Guru Meditation Error: Core  0 panic'ed (LoadProhibited). Exception was unhandled.
Core 0 register dump:
PC      : 0x400014fd  PS      : 0x00060e30  A0      : 0x80001459  A1      : 0x3ffcb5e0  
A2      : 0x00000050  A3      : 0x0000004c  A4      : 0x000000ff  A5      : 0x0000ff00  
A6      : 0x00ff0000  A7      : 0xff000000  A8      : 0x00000000  A9      : 0x3ffcb5b0  
A10     : 0x3ffcb7f4  A11     : 0x3ffcb530  A12     : 0x00000002  A13     : 0x3f40583c  
A14     : 0x00000002  A15     : 0x3ffcb454  SAR     : 0x00000000  EXCCAUSE: 0x0000001c  
EXCVADDR: 0x00000050  LBEG    : 0x400014fd  LEND    : 0x4000150d  LCOUNT  : 0xffffffff

Can someone help?

Thanks in advance

J4NN0 commented

The error you're getting is related to LoadProhibited: according to official ESP32 documentation this is a CPU exception that happens when application attempts to read from or write to an invalid memory location.

The address which was written/read can be found in EXCVADDR register in the register dump. In your case is:

Core 0 register dump:
EXCVADDR: 0x00000050

Since the address is close to zero (i.e. 0x00000050), it usually means that application attempted to access member of a structure, but the pointer to the structure was NULL.

Therefore, I suggest you to debug the code step by step in order to understand which pointer is NULL, understand why and then fix it.