espressif / esp-idf

Espressif IoT Development Framework. Official development framework for Espressif SoCs.
Apache License 2.0
13.37k stars 7.21k forks source link

ESP Modem: crash when a response from the Modem is received while another AT command is in progress (IDFGH-9215) #10603

Open MartinPatarinski opened 1 year ago

MartinPatarinski commented 1 year ago

Answers checklist.

IDF version.

v5.0-rc1

Operating System used.

Windows

How did you build your project?

Command line with idf.py

If you are using Windows, please specify command line type.

PowerShell

Development Kit.

ESP32-S3-WROOM-1-N16R

Power Supply used.

Battery

What is the expected behavior?

The Appl source code is requesting info (signal quality) from the modem(SIM7070) via AT command, that has an extended timeout of 15 sec. After that it issues another AT command to get the battery status. When no response to the first command is received by the SIM7070 within the defined timeout, the ESP Modem driver shall abort the execution of the command and any upcoming response.

What is the actual behavior?

Sporadically, the ESP modem driver crashes whenever a response is received by the SIM7070 while the ESP expects a response to the next AT command

} (12:34:13.259) command_lib: Command: {AT+CSQ I (12:34:14.990) EcuManager: Temperature value 52.50 ℃ I (12:34:25.010) EcuManager: Temperature value 52.94 ℃ E (12:34:28.259) ESPmodem_Cmux: Read SIMCOM signal strength failed // timeout 15 sec } (12:34:28.579) command_lib: Command: {AT+CBC // new AT command issued by the SIM7070 } (12:34:28.601) command_lib: Token: { I (12:34:28.602) command_lib: Token: {+CSQ: 19,99} // response at the first AT command after the timeout has expired } (12:34:28.602) command_lib: Token: { I (12:34:28.605) command_lib: Token: {OK} } (12:34:28.610) command_lib: Token: { E (12:34:28.610) ESPmodem_Cmux: Read SIMCOM battery status failed I (12:34:28.614) command_lib: Token: {+CBC: 0,97,4272} Guru Meditation Error: Core 0 panic'ed (StoreProhibited). Exception was unhandled. ...

Steps to reproduce.

  1. Step. Send AT+CSQ
  2. Step. AT+CBC while no reponse to the request from step 1 is received .

Debug Logs.

I (12:33:55.432) command_lib: Token: {OK}
} (12:33:55.749) command_lib: Command: {AT+CSQ
} (12:33:55.755) command_lib: Token: {
I (12:33:55.756) command_lib: Token: {+CSQ: 19,99}
} (12:33:55.756) command_lib: Token: {
I (12:33:55.759) command_lib: Token: {OK}
E (12:33:55.869) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:33:56.079) command_lib: Command: {AT+CBC
} (12:33:56.101) command_lib: Token: {
I (12:33:56.102) command_lib: Token: {+CBC: 0,97,4272}
} (12:33:56.102) command_lib: Token: {
I (12:33:56.106) command_lib: Token: {OK}
} (12:33:56.439) command_lib: Command: {AT+COPS?
} (12:33:56.446) command_lib: Token: {
I (12:33:56.447) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:33:56.448) command_lib: Token: {
I (12:33:56.451) command_lib: Token: {OK}
} (12:33:56.770) command_lib: Command: {AT+CSQ
} (12:33:56.775) command_lib: Token: {
I (12:33:56.776) command_lib: Token: {+CSQ: 19,99}
} (12:33:56.776) command_lib: Token: {
I (12:33:56.779) command_lib: Token: {OK}
E (12:33:56.869) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:33:57.099) command_lib: Command: {AT+CBC
} (12:33:57.121) command_lib: Token: {
I (12:33:57.122) command_lib: Token: {+CBC: 0,97,4272}
} (12:33:57.122) command_lib: Token: {
I (12:33:57.125) command_lib: Token: {OK}
} (12:33:57.460) command_lib: Command: {AT+COPS?
} (12:33:57.467) command_lib: Token: {
I (12:33:57.468) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:33:57.468) command_lib: Token: {
I (12:33:57.472) command_lib: Token: {OK}
} (12:33:57.789) command_lib: Command: {AT+CSQ
} (12:33:57.795) command_lib: Token: {
I (12:33:57.796) command_lib: Token: {+CSQ: 19,99}
} (12:33:57.796) command_lib: Token: {
I (12:33:57.799) command_lib: Token: {OK}
E (12:33:57.869) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:33:58.119) command_lib: Command: {AT+CBC
} (12:33:58.141) command_lib: Token: {
I (12:33:58.142) command_lib: Token: {+CBC: 0,97,4272}
} (12:33:58.142) command_lib: Token: {
I (12:33:58.145) command_lib: Token: {OK}
} (12:33:58.479) command_lib: Command: {AT+COPS?
} (12:33:58.486) command_lib: Token: {
I (12:33:58.487) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:33:58.488) command_lib: Token: {
I (12:33:58.491) command_lib: Token: {OK}
} (12:33:58.809) command_lib: Command: {AT+CSQ
} (12:33:58.815) command_lib: Token: {
I (12:33:58.816) command_lib: Token: {+CSQ: 19,99}
} (12:33:58.816) command_lib: Token: {
I (12:33:58.819) command_lib: Token: {OK}
E (12:33:58.869) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:33:59.139) command_lib: Command: {AT+CBC
} (12:33:59.163) command_lib: Token: {
I (12:33:59.163) command_lib: Token: {+CBC: 0,97,4271}
} (12:33:59.164) command_lib: Token: {
I (12:33:59.167) command_lib: Token: {OK}
} (12:33:59.239) command_lib: Command: {AT+CPSI?
} (12:33:59.250) command_lib: Token: {
I (12:33:59.250) command_lib: Token: {+CPSI: GSM,Online,284-01,0x0960,2759,978 EGSM 900,-77,0,34-34}
} (12:33:59.254) command_lib: Token: {
I (12:33:59.258) command_lib: Token: {OK}
} (12:33:59.499) command_lib: Command: {AT+COPS?
} (12:33:59.506) command_lib: Token: {
I (12:33:59.507) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:33:59.507) command_lib: Token: {
I (12:33:59.511) command_lib: Token: {OK}
} (12:33:59.829) command_lib: Command: {AT+CSQ
} (12:33:59.835) command_lib: Token: {
I (12:33:59.836) command_lib: Token: {+CSQ: 18,99}
} (12:33:59.836) command_lib: Token: {
I (12:33:59.839) command_lib: Token: {OK}
E (12:33:59.869) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:00.160) command_lib: Command: {AT+CBC
} (12:34:00.181) command_lib: Token: {
I (12:34:00.182) command_lib: Token: {+CBC: 0,97,4272}
} (12:34:00.183) command_lib: Token: {
I (12:34:00.186) command_lib: Token: {OK}
} (12:34:00.519) command_lib: Command: {AT+COPS?
} (12:34:00.526) command_lib: Token: {
I (12:34:00.527) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:00.527) command_lib: Token: {
I (12:34:00.531) command_lib: Token: {OK}
} (12:34:00.849) command_lib: Command: {AT+CSQ
} (12:34:00.855) command_lib: Token: {
I (12:34:00.856) command_lib: Token: {+CSQ: 18,99}
} (12:34:00.856) command_lib: Token: {
I (12:34:00.859) command_lib: Token: {OK}
E (12:34:00.869) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:01.179) command_lib: Command: {AT+CBC
} (12:34:01.202) command_lib: Token: {
I (12:34:01.202) command_lib: Token: {+CBC: 0,97,4272}
} (12:34:01.203) command_lib: Token: {
I (12:34:01.206) command_lib: Token: {OK}
} (12:34:01.539) command_lib: Command: {AT+COPS?
} (12:34:01.546) command_lib: Token: {
I (12:34:01.547) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:01.548) command_lib: Token: {
I (12:34:01.551) command_lib: Token: {OK}
E (12:34:01.869) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:01.871) command_lib: Command: {AT+CSQ
} (12:34:01.877) command_lib: Token: {
I (12:34:01.878) command_lib: Token: {+CSQ: 18,99}
} (12:34:01.881) command_lib: Token: {
I (12:34:01.886) command_lib: Token: {OK}
} (12:34:02.209) command_lib: Command: {AT+CBC
} (12:34:02.231) command_lib: Token: {
I (12:34:02.232) command_lib: Token: {+CBC: 0,97,4272}
} (12:34:02.232) command_lib: Token: {
I (12:34:02.236) command_lib: Token: {OK}
W (12:34:02.258) OS: Name ipc0, Stack[alloc 1024/occup 780], Task load 0
W (12:34:02.259) OS: Name ipc1, Stack[alloc 1024/occup 792], Task load 1
W (12:34:02.263) OS: Name esp_timer, Stack[alloc 4096/occup 988], Task load 0
W (12:34:02.270) OS: Name main, Stack[alloc 4096/occup 988], Task load 0
W (12:34:02.278) OS: Name IDLE, Stack[alloc 1536/occup 840], Task load 39
W (12:34:02.285) OS: Name IDLE, Stack[alloc 1536/occup 836], Task load 47
W (12:34:02.292) OS: Name Tmr Svc, Stack[alloc 8192/occup 896], Task load 0
W (12:34:02.300) OS: Name OSTimerTask, Stack[alloc 1024/occup 816], Task load 0
W (12:34:02.308) OS: Name APPTask, Stack[alloc 6144/occup 2736], Task load 6
W (12:34:02.315) OS: Name OTATask, Stack[alloc 5120/occup 768], Task load 0
W (12:34:02.323) OS: Name EspModemTask, Stack[alloc 4096/occup 3232], Task load 0
W (12:34:02.331) OS: Name IsoLibTask, Stack[alloc 4096/occup 2496], Task load 0
W (12:34:02.339) OS: Name SysStateTask, Stack[alloc 4096/occup 2192], Task load 0
W (12:34:02.347) OS: Name TWAI_ctrl, Stack[alloc 4096/occup 2000], Task load 0
W (12:34:02.355) OS: Name BLETask, Stack[alloc 4096/occup 736], Task load 0
W (12:34:02.362) OS: Name tiT, Stack[alloc 4608/occup 2468], Task load 0
W (12:34:02.370) OS: Name wifi, Stack[alloc 6656/occup 1656], Task load 0
W (12:34:02.377) OS: Name sys_evt, Stack[alloc 2816/occup 2208], Task load 0
W (12:34:02.385) OS: Name btController, Stack[alloc 4096/occup 2212], Task load 0
W (12:34:02.393) OS: Name uart_task, Stack[alloc 4096/occup 2596], Task load 1
W (12:34:02.401) OS: Name mqtt_task, Stack[alloc 6144/occup 2328], Task load 0
I (12:34:02.498) BE_CommManager: MQTT_EVENT_BEFORE_CONNECT
} (12:34:02.709) command_lib: Command: {AT+COPS?
} (12:34:02.716) command_lib: Token: {
I (12:34:02.717) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:02.717) command_lib: Token: {
I (12:34:02.721) command_lib: Token: {OK}
E (12:34:02.969) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:03.039) command_lib: Command: {AT+CSQ
} (12:34:03.045) command_lib: Token: {
I (12:34:03.046) command_lib: Token: {+CSQ: 18,99}
} (12:34:03.046) command_lib: Token: {
I (12:34:03.049) command_lib: Token: {OK}
} (12:34:03.370) command_lib: Command: {AT+CBC
} (12:34:03.391) command_lib: Token: {
I (12:34:03.392) command_lib: Token: {+CBC: 0,97,4270}
} (12:34:03.392) command_lib: Token: {
I (12:34:03.396) command_lib: Token: {OK}
} (12:34:03.729) command_lib: Command: {AT+COPS?
} (12:34:03.736) command_lib: Token: {
I (12:34:03.737) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:03.737) command_lib: Token: {
I (12:34:03.741) command_lib: Token: {OK}
E (12:34:03.969) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:04.059) command_lib: Command: {AT+CSQ
} (12:34:04.065) command_lib: Token: {
I (12:34:04.066) command_lib: Token: {+CSQ: 18,99}
} (12:34:04.066) command_lib: Token: {
I (12:34:04.069) command_lib: Token: {OK}
} (12:34:04.389) command_lib: Command: {AT+CBC
} (12:34:04.411) command_lib: Token: {
I (12:34:04.412) command_lib: Token: {+CBC: 0,97,4270}
} (12:34:04.413) command_lib: Token: {
I (12:34:04.416) command_lib: Token: {OK}
} (12:34:04.489) command_lib: Command: {AT+CPSI?
} (12:34:04.500) command_lib: Token: {
I (12:34:04.501) command_lib: Token: {+CPSI: GSM,Online,284-01,0x0960,2759,978 EGSM 900,-76,0,35-35}
} (12:34:04.504) command_lib: Token: {
I (12:34:04.508) command_lib: Token: {OK}
} (12:34:04.739) command_lib: Command: {AT+COPS?
} (12:34:04.746) command_lib: Token: {
I (12:34:04.747) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:04.747) command_lib: Token: {
I (12:34:04.751) command_lib: Token: {OK}
I (12:34:04.939) EcuManager: Temperature value 52.94 ℃
E (12:34:04.969) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:05.070) command_lib: Command: {AT+CSQ
} (12:34:05.075) command_lib: Token: {
I (12:34:05.076) command_lib: Token: {+CSQ: 18,99}
} (12:34:05.077) command_lib: Token: {
I (12:34:05.079) command_lib: Token: {OK}
} (12:34:05.399) command_lib: Command: {AT+CBC
} (12:34:05.421) command_lib: Token: {
I (12:34:05.422) command_lib: Token: {+CBC: 0,97,4270}
} (12:34:05.422) command_lib: Token: {
I (12:34:05.425) command_lib: Token: {OK}
} (12:34:05.759) command_lib: Command: {AT+COPS?
} (12:34:05.766) command_lib: Token: {
I (12:34:05.767) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:05.767) command_lib: Token: {
I (12:34:05.771) command_lib: Token: {OK}
E (12:34:05.969) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:06.089) command_lib: Command: {AT+CSQ
} (12:34:06.095) command_lib: Token: {
I (12:34:06.096) command_lib: Token: {+CSQ: 18,99}
} (12:34:06.096) command_lib: Token: {
I (12:34:06.099) command_lib: Token: {OK}
} (12:34:06.419) command_lib: Command: {AT+CBC
} (12:34:06.442) command_lib: Token: {
I (12:34:06.443) command_lib: Token: {+CBC: 0,97,4269}
} (12:34:06.443) command_lib: Token: {
I (12:34:06.446) command_lib: Token: {OK}
} (12:34:06.779) command_lib: Command: {AT+COPS?
} (12:34:06.786) command_lib: Token: {
I (12:34:06.787) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:06.787) command_lib: Token: {
I (12:34:06.791) command_lib: Token: {OK}
E (12:34:06.969) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:07.109) command_lib: Command: {AT+CSQ
} (12:34:07.115) command_lib: Token: {
I (12:34:07.116) command_lib: Token: {+CSQ: 18,99}
} (12:34:07.116) command_lib: Token: {
I (12:34:07.119) command_lib: Token: {OK}
} (12:34:07.439) command_lib: Command: {AT+CBC
} (12:34:07.461) command_lib: Token: {
I (12:34:07.462) command_lib: Token: {+CBC: 0,97,4270}
} (12:34:07.462) command_lib: Token: {
I (12:34:07.465) command_lib: Token: {OK}
} (12:34:07.799) command_lib: Command: {AT+COPS?
} (12:34:07.806) command_lib: Token: {
I (12:34:07.807) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:07.807) command_lib: Token: {
I (12:34:07.811) command_lib: Token: {OK}
E (12:34:07.969) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:08.129) command_lib: Command: {AT+CSQ
} (12:34:08.135) command_lib: Token: {
I (12:34:08.136) command_lib: Token: {+CSQ: 19,0}
} (12:34:08.136) command_lib: Token: {
I (12:34:08.139) command_lib: Token: {OK}
} (12:34:08.459) command_lib: Command: {AT+CBC
} (12:34:08.482) command_lib: Token: {
I (12:34:08.483) command_lib: Token: {+CBC: 0,97,4270}
} (12:34:08.483) command_lib: Token: {
I (12:34:08.486) command_lib: Token: {OK}
} (12:34:08.819) command_lib: Command: {AT+COPS?
} (12:34:08.826) command_lib: Token: {
I (12:34:08.827) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:08.827) command_lib: Token: {
I (12:34:08.831) command_lib: Token: {OK}
E (12:34:08.969) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:09.149) command_lib: Command: {AT+CSQ
} (12:34:09.155) command_lib: Token: {
I (12:34:09.156) command_lib: Token: {+CSQ: 19,0}
} (12:34:09.156) command_lib: Token: {
I (12:34:09.159) command_lib: Token: {OK}
} (12:34:09.479) command_lib: Command: {AT+CBC
} (12:34:09.501) command_lib: Token: {
I (12:34:09.502) command_lib: Token: {+CBC: 0,97,4270}
} (12:34:09.502) command_lib: Token: {
I (12:34:09.505) command_lib: Token: {OK}
} (12:34:09.599) command_lib: Command: {AT+CPSI?
} (12:34:09.610) command_lib: Token: {
I (12:34:09.611) command_lib: Token: {+CPSI: GSM,Online,284-01,0x0960,2759,978 EGSM 900,-75,0,36-36}
} (12:34:09.614) command_lib: Token: {
I (12:34:09.618) command_lib: Token: {OK}
} (12:34:09.839) command_lib: Command: {AT+COPS?
} (12:34:09.846) command_lib: Token: {
I (12:34:09.847) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:09.847) command_lib: Token: {
I (12:34:09.851) command_lib: Token: {OK}
E (12:34:09.969) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:10.169) command_lib: Command: {AT+CSQ
} (12:34:10.175) command_lib: Token: {
I (12:34:10.176) command_lib: Token: {+CSQ: 19,0}
} (12:34:10.176) command_lib: Token: {
I (12:34:10.179) command_lib: Token: {OK}
} (12:34:10.500) command_lib: Command: {AT+CBC
} (12:34:10.522) command_lib: Token: {
I (12:34:10.523) command_lib: Token: {+CBC: 0,97,4269}
} (12:34:10.523) command_lib: Token: {
I (12:34:10.526) command_lib: Token: {OK}
} (12:34:10.860) command_lib: Command: {AT+COPS?
} (12:34:10.867) command_lib: Token: {
I (12:34:10.868) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:10.868) command_lib: Token: {
I (12:34:10.872) command_lib: Token: {OK}
E (12:34:10.969) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:11.189) command_lib: Command: {AT+CSQ
} (12:34:11.195) command_lib: Token: {
I (12:34:11.196) command_lib: Token: {+CSQ: 19,99}
} (12:34:11.196) command_lib: Token: {
I (12:34:11.199) command_lib: Token: {OK}
} (12:34:11.519) command_lib: Command: {AT+CBC
} (12:34:11.541) command_lib: Token: {
I (12:34:11.542) command_lib: Token: {+CBC: 0,97,4269}
} (12:34:11.542) command_lib: Token: {
I (12:34:11.545) command_lib: Token: {OK}
} (12:34:11.879) command_lib: Command: {AT+COPS?
} (12:34:11.886) command_lib: Token: {
I (12:34:11.887) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:11.887) command_lib: Token: {
I (12:34:11.891) command_lib: Token: {OK}
E (12:34:11.969) HAL_CAN_DRV: hw_CanSendMsg failed, 263 ESP_ERR_TIMEOUT
} (12:34:12.209) command_lib: Command: {AT+CSQ
} (12:34:12.215) command_lib: Token: {
I (12:34:12.216) command_lib: Token: {+CSQ: 19,99}
} (12:34:12.216) command_lib: Token: {
I (12:34:12.219) command_lib: Token: {OK}
E (12:34:12.508) esp-tls: [sock=54] select() timeout
E (12:34:12.510) esp-tls: Failed to open new connection
E (12:34:12.511) transport_base: Failed to open a new connection
E (12:34:12.516) mqtt_client: Error transport connect
E (12:34:12.522) BE_CommManager: MQTT_EVENT_ERROR
E (12:34:12.527) BE_CommManager: Last error code reported from esp-tls: 0x8006: ESP_ERR_ESP_TLS_CONNECTION_TIMEOUT
E (12:34:12.538) BE_CommManager: Last tls stack error number: 0x0: ESP_OK
E (12:34:12.545) BE_CommManager: Last captured errno : 0 (Success)
I (12:34:12.552) BE_CommManager: MQTT_EVENT_DISCONNECTED
} (12:34:12.570) command_lib: Command: {AT+CBC
} (12:34:12.592) command_lib: Token: {
I (12:34:12.593) command_lib: Token: {+CBC: 0,97,4269}
} (12:34:12.593) command_lib: Token: {
I (12:34:12.596) command_lib: Token: {OK}
} (12:34:12.929) command_lib: Command: {AT+COPS?
} (12:34:12.936) command_lib: Token: {
I (12:34:12.937) command_lib: Token: {+COPS: 0,0,"A1 BG",0}
} (12:34:12.937) command_lib: Token: {
I (12:34:12.941) command_lib: Token: {OK}
} (12:34:13.259) command_lib: Command: {AT+CSQ
I (12:34:14.990) EcuManager: Temperature value 52.50 ℃
I (12:34:25.010) EcuManager: Temperature value 52.94 ℃
E (12:34:28.259) ESPmodem_Cmux: Read SIMCOM signal strength failed
} (12:34:28.579) command_lib: Command: {AT+CBC
} (12:34:28.601) command_lib: Token: {
I (12:34:28.602) command_lib: Token: {+CSQ: 19,99}
} (12:34:28.602) command_lib: Token: {
I (12:34:28.605) command_lib: Token: {OK}
} (12:34:28.610) command_lib: Token: {
E (12:34:28.610) ESPmodem_Cmux: Read SIMCOM battery status failed
I (12:34:28.614) command_lib: Token: {+CBC: 0,97,4272}
Guru Meditation Error: Core  0 panic'ed (StoreProhibited). Exception was unhandled.

Core  0 register dump:
PC      : 0x42036622  PS      : 0x00060930  A0      : 0x82030cef  A1      : 0x3fce0b70
0x42036622: std::_Function_handler<esp_modem::command_result (unsigned char*, unsigned int), esp_modem::dce_commands::generic_get_string(esp_modem::CommandableIf*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string_view<char, std::char_traits<char> >&, unsigned long)::{lambda(unsigned char*, unsigned int)#1}>::_M_invoke(std::_Any_data const&, unsigned char*&&, unsigned int&&) at D:/Krone/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_command_library.cpp:85
 (inlined by) __invoke_impl<esp_modem::command_result, esp_modem::dce_commands::generic_get_string(esp_modem::CommandableIf*, const string&, std::string_view&, uint32_t)::<lambda(uint8_t*, size_t)>&, unsigned char*, unsigned int> at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/invoke.h:61
 (inlined by) __invoke_r<esp_modem::command_result, esp_modem::dce_commands::generic_get_string(esp_modem::CommandableIf*, const string&, std::string_view&, uint32_t)::<lambda(uint8_t*, size_t)>&, unsigned char*, unsigned int> at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/invoke.h:114
 (inlined by) _M_invoke at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/std_function.h:291

A2      : 0x3fcb7450  A3      : 0x00000010  A4      : 0x00000000  A5      : 0x3fce1105
A6      : 0x0000000f  A7      : 0x3fce1105  A8      : 0x820365f2  A9      : 0x3fce0b50
A10     : 0x00000000  A11     : 0x00000045  A12     : 0x3fce1110  A13     : 0x3fca4f68
A14     : 0x3c1575f0  A15     : 0x0000000f  SAR     : 0x00000004  EXCCAUSE: 0x0000001d
EXCVADDR: 0x00000000  LBEG    : 0x400556d5  LEND    : 0x400556e5  LCOUNT  : 0xfffffffc

Backtrace: 0x4203661f:0x3fce0b70 0x42030cec:0x3fce0bf0 0x42035111:0x3fce0c20 0x420353f1:0x3fce0c50 0x42035490:0x3fce0c80 0x420354ad:0x3fce0cb0 0x4202ffc5:0x3fce0cd0 0x4203017d:0x3fce0d40 0x403867be:0x3fce0d60
0x4203661f: std::_Function_handler<esp_modem::command_result (unsigned char*, unsigned int), esp_modem::dce_commands::generic_get_string(esp_modem::CommandableIf*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string_view<char, std::char_traits<char> >&, unsigned long)::{lambda(unsigned char*, unsigned int)#1}>::_M_invoke(std::_Any_data const&, unsigned char*&&, unsigned int&&) at D:/Krone/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_command_library.cpp:85
 (inlined by) __invoke_impl<esp_modem::command_result, esp_modem::dce_commands::generic_get_string(esp_modem::CommandableIf*, const string&, std::string_view&, uint32_t)::<lambda(uint8_t*, size_t)>&, unsigned char*, unsigned int> at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/invoke.h:61
 (inlined by) __invoke_r<esp_modem::command_result, esp_modem::dce_commands::generic_get_string(esp_modem::CommandableIf*, const string&, std::string_view&, uint32_t)::<lambda(uint8_t*, size_t)>&, unsigned char*, unsigned int> at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/invoke.h:114
 (inlined by) _M_invoke at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/std_function.h:291

0x42030cec: std::function<esp_modem::command_result (unsigned char*, unsigned int)>::operator()(unsigned char*, unsigned int) const at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/std_function.h:560
 (inlined by) operator() at D:/Krone/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_dte.cpp:47
 (inlined by) __invoke_impl<bool, esp_modem::DTE::command(const string&, esp_modem::got_line_cb, uint32_t, char)::<lambda(uint8_t*, size_t)>&, unsigned char*, unsigned int> at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/invoke.h:61
 (inlined by) __invoke_r<bool, esp_modem::DTE::command(const string&, esp_modem::got_line_cb, uint32_t, char)::<lambda(uint8_t*, size_t)>&, unsigned char*, unsigned int> at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/invoke.h:114
 (inlined by) _M_invoke at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/std_function.h:291

0x42035111: std::function<bool (unsigned char*, unsigned int)>::operator()(unsigned char*, unsigned int) const at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/std_function.h:560
 (inlined by) esp_modem::CMux::data_available(unsigned char*, unsigned int) at D:/Krone/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_cmux.cpp:142

0x420353f1: esp_modem::CMux::on_footer(esp_modem::CMux::CMuxFrame&) at D:/Krone/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_cmux.cpp:268

0x42035490: esp_modem::CMux::on_cmux_data(unsigned char*, unsigned int) at D:/Krone/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_cmux.cpp:317

0x420354ad: std::_Function_handler<bool (unsigned char*, unsigned int), esp_modem::CMux::init()::{lambda(unsigned char*, unsigned int)#1}>::_M_invoke(std::_Any_data const&, unsigned char*&&, unsigned int&&) at D:/Krone/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_cmux.cpp:369
 (inlined by) __invoke_impl<bool, esp_modem::CMux::init()::<lambda(uint8_t*, size_t)>&, unsigned char*, unsigned int> at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/invoke.h:61
 (inlined by) __invoke_r<bool, esp_modem::CMux::init()::<lambda(uint8_t*, size_t)>&, unsigned char*, unsigned int> at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/invoke.h:114
 (inlined by) _M_invoke at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/std_function.h:291

0x4202ffc5: std::function<bool (unsigned char*, unsigned int)>::operator()(unsigned char*, unsigned int) const at d:\espressif\tools\xtensa-esp32s3-elf\esp-2022r1-11.2.0\xtensa-esp32s3-elf\xtensa-esp32s3-elf\include\c++\11.2.0\bits/std_function.h:560
 (inlined by) esp_modem::UartTerminal::task() at D:/Krone/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_uart.cpp:139

0x4203017d: esp_modem::UartTerminal::s_task(void*) at D:/Krone/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_uart.cpp:83

0x403867be: vPortTaskWrapper at D:/Espressif/frameworks/esp-idf-v5.0/components/freertos/FreeRTOS-Kernel/portable/xtensa/port.c:151

ELF file SHA256: 8cb59781b73ddf99

I (24423) esp_core_dump_flash: Save core dump to flash...
E (24429) esp_core_dump_flash: Not enough space to save core dump!
E (24436) esp_core_dump_elf: Failed to prepare core dump storage (257)!
E (24443) esp_core_dump_common: Core dump write binary failed with error=257
I (24451) esp_core_dump_flash: Core dump has been saved to flash.
Rebooting...
ESP-ROM:esp32s3-20210327
Build:Mar 27 2021
rst:0x3 (RTC_SW_SYS_RST),boot:0x29 (SPI_FAST_FLASH_BOOT)
Saved PC:0x40375e11
0x40375e11: esp_restart_noos_dig at D:/Espressif/frameworks/esp-idf-v5.0/components/esp_system/esp_system.c:46 (discriminator 1)

SPIWP:0xee
mode:DIO, clock div:1
load:0x3fce3ae0,len:0x3118
load:0x403c9700,len:0xbf0
load:0x403cc700,len:0x4cfc
entry 0x403c9908
W (32) boot.esp32s3: eFuse virtual mode is enabled. If Secure boot or Flash encryption is enabled then it does not provide any security. FOR TESTING ONLY!
I (48) boot: ESP-IDF v5.0-rc1-dirty 2nd stage bootloader
I (48) boot: compile time 18:17:58
I (49) boot: chip revision: V001
I (51) boot_comm: chip revision: 1, min. bootloader chip revision: 0
I (58) boot.esp32s3: Boot SPI Speed : 80MHz
I (63) boot.esp32s3: SPI Mode       : DIO
I (68) boot.esp32s3: SPI Flash Size : 16MB
I (72) boot: Enabling RNG early entropy source...
I (78) boot: Partition Table:
I (81) boot: ## Label            Usage          Type ST Offset   Length
I (89) boot:  0 otadata          OTA data         01 00 0000d000 00002000
I (96) boot:  1 reserved         WiFi data        01 02 0000f000 00001000
I (104) boot:  2 ota_0            OTA app          00 10 00010000 00280000
I (111) boot:  3 ota_1            OTA app          00 11 00290000 00280000
I (119) boot:  4 prod             Unknown data     01 ff 00610000 00003000
I (126) boot:  5 safeNVrb0        Unknown data     01 ff 00613000 00003000
I (134) boot:  6 safeNVrb1        Unknown data     01 ff 00616000 00003000
I (141) boot:  7 safeNVrb2        Unknown data     01 ff 00619000 00003000
I (149) boot:  8 config           WiFi data        01 02 0061c000 00046000
I (156) boot:  9 appl             WiFi data        01 02 00662000 00004000
I (164) boot: 10 shared           WiFi data        01 02 00666000 00003000
W (172) efuse: Loading virtual efuse blocks from flash
EFUSE_BLKx:
0) 0x00800101 0x000f0000 0x09c0d1f5 0x00500000 0x00000022 0x00000000
1) 0xb32a0b3c 0x000068b6 0x00000000 0x02040000 0xb829f6d0 0x6c05c024
2) 0xc23619fd 0xca35ce22 0x3ae7be7c 0x4546815e 0x93ab7671 0xf1d240bc 0xc2d2d6d9 0x3b6ce8de
3) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
4) 0x7e68a2e3 0x08fe1124 0x53ed80b5 0xa7d5faa7 0x1b37941e 0x0b3d3af1 0x7e3e1a92 0x7dee2768
5) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
6) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
7) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
8) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
9) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
10) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000

I (264) boot: 11 efuse_em         efuse            01 05 00669000 00002000
I (271) boot: 12 nvs_key          NVS keys         01 04 0066b000 00001000
I (279) boot: 13 nvs              WiFi data        01 02 0066c000 00004000
I (286) boot: 14 coredump         Unknown data     01 03 00670000 00008000
I (294) boot: 15 log              Unknown data     01 82 00678000 00050000
I (301) boot: 16 spiffs           Unknown data     01 82 006c8000 00137000
I (309) boot: End of partition table
[boot] Custom bootloader message defined in the KConfig file.
I (319) boot: Loading Image: 0!
I (323) boot_comm: chip revision: 1, min. application chip revision: 0
I (330) esp_image: segment 0: paddr=00010020 vaddr=3c140020 size=624a0h (402592) map
I (411) esp_image: segment 1: paddr=000724c8 vaddr=3fc9d400 size=07924h ( 31012) load
I (417) esp_image: segment 2: paddr=00079df4 vaddr=40374000 size=06224h ( 25124) load
I (423) esp_image: segment 3: paddr=00080020 vaddr=42000020 size=1343e8h (1262568) map
I (651) esp_image: segment 4: paddr=001b4410 vaddr=4037a224 size=13184h ( 78212) load
I (669) esp_image: segment 5: paddr=001c759c vaddr=50000000 size=00010h (    16) load
I (669) esp_image: segment 6: paddr=001c75b4 vaddr=600fe000 size=0003ch (    60) load
I (675) esp_image: segment 7: paddr=001c75f8 vaddr=00000000 size=089d8h ( 35288)
I (689) esp_image: Verifying image signature...
I (690) secure_boot_v2: Verifying with RSA-PSS...
I (696) secure_boot_v2: Signature verified successfully!
I (710) boot: Loaded app from partition at offset 0x10000
I (711) secure_boot_v2: enabling secure boot v2...
I (711) secure_boot_v2: secure boot v2 is already enabled, continuing..
I (718) boot: Disabling RNG early entropy source...
I (736) esp_psram: Found 2MB PSRAM device
I (736) esp_psram: Speed: 80MHz
I (736) cpu_start: Pro cpu up.
I (737) cpu_start: Starting app cpu, entry point is 0x40375910
0x40375910: call_start_cpu1 at D:/Espressif/frameworks/esp-idf-v5.0/components/esp_system/port/cpu_start.c:142

I (0) cpu_start: App cpu up.
I (973) esp_psram: SPI SRAM memory test OK
I (988) cpu_start: Pro cpu start user code
I (988) cpu_start: cpu freq: 160000000 Hz
I (988) cpu_start: Application information:
I (991) cpu_start: Project name:     ksc2n_Appl
I (996) cpu_start: App version:      Tag_Plan_SW_2250_v1.0-71-g3688b
I (1003) cpu_start: Compile time:     Jan 23 2023 18:11:10
I (1009) cpu_start: ELF file SHA256:  8cb59781b73ddf99...
I (1015) cpu_start: ESP-IDF:          v5.0-rc1-dirty
I (1021) heap_init: Initializing. RAM available for dynamic allocation:
I (1028) heap_init: At 3FCC3DF8 len 00025918 (150 KiB): D/IRAM
I (1035) heap_init: At 3FCE9710 len 00005724 (21 KiB): STACK/DRAM
I (1042) heap_init: At 3FCF0000 len 00008000 (32 KiB): DRAM
I (1048) heap_init: At 600FE03C len 00001FC4 (7 KiB): RTCRAM
I (1054) esp_psram: Adding pool of 1956K of PSRAM memory to heap allocator
I (1063) spi_flash: detected chip: gd
I (1066) spi_flash: flash io: dio
W (1070) cpu_start: eFuse virtual mode is enabled. If Secure boot or Flash encryption is enabled then it does not provide any security. FOR TESTING ONLY!
W (1085) efuse: Loading virtual efuse blocks from flash
EFUSE_BLKx:
0) 0x00800101 0x000f0000 0x09c0d1f5 0x00500000 0x00000022 0x00000000
1) 0xb32a0b3c 0x000068b6 0x00000000 0x02040000 0xb829f6d0 0x6c05c024
2) 0xc23619fd 0xca35ce22 0x3ae7be7c 0x4546815e 0x93ab7671 0xf1d240bc 0xc2d2d6d9 0x3b6ce8de
3) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
4) 0x7e68a2e3 0x08fe1124 0x53ed80b5 0xa7d5faa7 0x1b37941e 0x0b3d3af1 0x7e3e1a92 0x7dee2768
5) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
6) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
7) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
8) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
9) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
10) 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000

W (1177) ADC: legacy driver is deprecated, please migrate to `esp_adc/adc_oneshot.h`
I (1187) sleep: Configure to isolate all GPIO pins in sleep state
I (1192) sleep: Enable automatic switching of GPIO sleep configuration
I (1199) esp_core_dump_flash: Init core dump to flash
I (1205) esp_core_dump_flash: Found partition 'coredump' @ 670000 32768 bytes
I (1213) coexist: coexist rom version e7ae62f
I (1218) cpu_start: Starting scheduler on PRO CPU.
I (0) cpu_start: Starting scheduler on APP CPU.
I (1228) esp_psram: Reserving pool of 32K of internal memory for DMA/internal allocations
I (12:34:25.308) SystemLogger: Partition size: total: 293921, used: 34136
I (12:34:25.309) SystemLogger: Initialized
I (12:34:25.309) SystemLogger: log output destination changed to 2
W (12:34:25.316) SystemLogger: Output mode OUTPUT_UART_FILE is for developing use only!
I (12:34:25.631) SystemLogger: ESP logs get written to file now.
0 I (12:34:25.632) PMA: No Coredump recorded.
1 I (12:34:25.812) NVManager: Initializing NVManager
2 I (12:34:25.813) NVManager: NV Manager Start Internal Status check !
3 I (12:34:25.814) NVManager: Checking Safe NV Blocks...
4 I (12:34:25.821) NVManager: Start 3 blocks verifying for Safe NV Data
5 I (12:34:25.830) NVManager: Extracted payload length: 5109
6 I (12:34:25.834) NVManager: Safe NV Extracted from NV memory for redundant block '0' CRC32: OK! [crc32: 0x97ABFD89]
7 I (12:34:25.845) NVManager: Safe NV Extracted from NV memory occurrence counter: 0x0 !
8 I (12:34:25.856) NVManager: Extracted payload length: 5109
9 I (12:34:25.860) NVManager: Safe NV Extracted from NV memory for redundant block '1' CRC32: OK! [crc32: 0x97ABFD89]
10 I (12:34:25.871) NVManager: Safe NV Extracted from NV memory occurrence counter: 0x0 !
11 I (12:34:25.884) NVManager: Extracted payload length: 5109
12 I (12:34:25.888) NVManager: Safe NV Extracted from NV memory for redundant block '2' CRC32: OK! [crc32: 0x97ABFD89]
13 I (12:34:25.897) NVManager: Safe NV Extracted from NV memory occurrence counter: 0x0 !
14 I (12:34:25.911) NVManager: All CRC32 for all Safe NV blocks are correct!
15 I (12:34:25.962) NVManager: All CRC32 for all Safe NV blocks are equal!
16 I (12:34:25.966) NVManager: Start occurrence counter check...
17 I (12:34:25.973) NVManager: Verified Safe NV Block with ID 3 has highest occurrence counter 0.
18 I (12:34:25.982) NVManager: 'NVManager_Verify_SafeNVDataBlocks' used only for verification and recovery!
19 I (12:34:25.992) NVManager: No blocks for recovery !
20 I (12:34:25.998) NVManager: Safe NV Block validity check: OK !
21 I (12:34:26.005) NVManager: Checking Production Block...
22 I (12:34:26.020) NVManager: Validation of 'Production Data Block' extracted from NV memory with CRC32: OK! [crc32: 0x108D6E86]
23 I (12:34:26.026) NVManager: Production Block validity check: OK !
24 W (12:34:26.033) NVManager: There are not parameters in Operation Data!
25 E (12:34:26.041) NVManager: Read all Operation Data: FAILED !
26 I (12:34:26.076) NVManager: Read all Error Data: OK !
27 I (12:34:26.077) NVManager: Request for Read, ID: 128, data type: 2
28 I (12:34:26.082) NVManager: Request for read Configuration Data !
29 I (12:34:26.086) NVManager: RAM mirror store interval set to: 120 minutes (7200000 ms)
30 I (12:34:26.156) DEM: The DEM is initialized.
31 I (12:34:26.170) BE_CommManager: Initializing SNTP
32 I (12:34:26.214) system_api: Base MAC address is not set
33 I (12:34:26.221) system_api: read default base MAC address from EFUSE
34 I (12:34:26.224) BE_CommManager: Client initialized successfully
35 I (12:34:26.230) BE_CommManager: OTAMessageRequest kscnfz/C0131000000000005/local/_otaupdaterbackend/_private/local/_otaupdater/_rpc/request
36 I (12:34:26.244) BE_CommManager: OperatingRecordMessage kscnfz/C0131000000000005/local/_orc/_public/datamessage
37 I (12:34:26.255) BE_CommManager: OTAMessageStatus kscnfz/C0131000000000005/local/_otaupdater/_public/status
38 I (12:34:26.265) BE_CommManager: OTAMessageReply kscnfz/C0131000000000005/local/_otaupdater/_private/local/_otaupdaterbackend/_rpc/reply
39 I (12:34:26.282) BE_CommManager: LogFileTopic kscnfz/C0131000000000005/local/_dlc/_public/loggingmessage
40 I (12:34:26.292) gpio: GPIO[1]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
41 I (12:34:26.302) gpio: GPIO[2]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
42 I (12:34:26.312) gpio: GPIO[6]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
43 I (12:34:26.362) gpio: GPIO[7]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
44 I (12:34:26.372) gpio: GPIO[10]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
45 I (12:34:26.382) gpio: GPIO[11]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
46 I (12:34:26.392) gpio: GPIO[45]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
47 I (12:34:26.402) gpio: GPIO[46]| InputEn: 0| OutputEn: 0| OpenDrain: 0| Pullup: 1| Pulldown: 0| Intr:0
48 I (12:34:26.413) gpio: GPIO[4]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 1| Intr:0
49 I (12:34:26.423) gpio: GPIO[5]| InputEn: 1| OutputEn: 0| OpenDrain: 0| Pullup: 0| Pulldown: 1| Intr:0
50 I (12:34:26.434) HAL_CAN_DRV: Driver installed
51 I (12:34:26.438) MC3479: Initializing I2C...

52 I (12:34:26.580) MC3479: MC3479 chip found. ID:
53 I (12:34:26.581) MC3479: A4
54 I (12:34:26.643) MC3479: ACC_Manager_Init passed!
55 I (12:34:26.646) ACC: Configuration data for motion detection:
56 I (12:34:26.702) ACC: Thresh: 2500
57 I (12:34:26.703) ACC: Debounce: 100
58 I (12:34:26.707) ACC: Timeout: 3
59 I (12:34:26.718) RPC_UART:  =======================
60 I (12:34:2��62 I (12:34:26.733) RPC_UART: Configure uart params OK!
63 I (12:34:26.738) RPC_UART: Set uart pins OK!
64 I (12:34:26.738) RPC_UART: RPC UART [0] Initialized OK!
65 I (12:34:26.743) RPC_UART:  =======================
66 I (12:34:26.749) temperature_sensor: Range [-10°C ~ 80°C], error < 1°C
67 I (12:34:26.764) EcuManager: Internal temperature sensor is installed, expected temp ranger range: -20~80 ℃
68 I (12:34:26.769) EcuManager: +++++++  initialisation completed
69 I (12:34:26.783) ResourceManager: WiFi AP name: C0131000000000005
70 I (12:34:26.803) ResourceManager: WiFi AP pass: 12345678
71 I (12:34:26.807) ResourceManager: ++  Initialization completed
72 I (12:34:26.811) DataLogger: Initialized
73 I (12:34:26.823) SystemLogger: log output destination changed to 0
W (12:34:26.879) HAL_CAN_DRV: CAN SelfTest passed
I (12:34:26.880) HAL_CAN_DRV: Driver started
I (12:34:26.881) HAL_CAN_DRV: Starting transmissions
E (12:34:26.883) NVManager: Read all Operation Data: FAILED !
I (12:34:26.918) pp: pp rom version: e7ae62f
I (12:34:26.919) net80211: net80211 rom version: e7ae62f
I (12:34:26.932) wifi_init: rx ba win: 6
I (12:34:26.933) wifi_init: tcpip mbox: 32
I (12:34:26.933) wifi_init: udp mbox: 6
I (12:34:26.935) wifi_init: tcp mbox: 6
I (12:34:26.940) wifi_init: tcp tx win: 5744
I (12:34:26.945) wifi_init: tcp rx win: 5744
I (12:34:26.950) wifi_init: tcp mss: 1440
I (12:34:26.954) wifi_init: WiFi/LWIP prefer SPIRAM
I (12:34:26.960) wifi_init: WiFi IRAM OP enabled
I (12:34:26.965) wifi_init: WiFi RX IRAM OP enabled
I (12:34:26.971) ResourceManager: ++  Modem initialized
I (12:34:26.976) BT_INIT: BT controller compile version [76c24c9]
I (12:34:26.983) phy_init: phy_version 503,13653eb,Jun  1 2022,17:47:08
W (12:34:26.990) phy_init: failed to load RF calibration data (0x110f), falling back to full calibration
I (12:34:27.031) BT_INIT: Bluetooth MAC: 68:b6:b3:2a:0b:3e

I (12:34:27.036) ResourceManager: ++  BLE initialized!
I (12:34:27.037) statusLED: statusLED initialization!
I (12:34:27.039) statusLED: statusLED initialized!
I (12:34:27.044) ResourceManager: ++  Modem initialized
I (12:34:27.050) EcuManager: +++++++  ECU state changed from ECU_STATE_NOT_INIT to ECU_STATE_INITIALIZING
I (12:34:27.060) EcuSleepWakeup: Wakeup cause undefined, probably normal startup.
I (12:34:27.068) EcuManager: NV data check status OK !
I (12:34:27.075) ResourceManager: ++  CAN0 proceed to starting
I (12:34:27.080) ResourceManager: ++  IsoLib CAN0 shutting down
I (12:34:27.087) ResourceManager: ++  WiFI AP starting
I (12:34:27.087) uart: queue free spaces: 30
I (12:34:27.093) ResourceManager: ++  Modem initialized
I (12:34:27.103) ResourceManager: ++  BLE proceed to starting
I (12:34:27.104) ESPmodem_Cmux: Create Modem objects DCE, DTE, Netif and register events.
I (12:34:27.110) EcuManager: +++++++  ECU state changed from ECU_STATE_INITIALIZING to ECU_STATE_NORMAL
I (12:34:27.120) ESPModem: Modem successfully initialized
I (12:34:27.129) DataLogger: Send OPERATING_RECORD_MESSAGE based on interval.
W (12:34:27.142) DataLogger: Enqueueing message of type OPERATING_RECORD_MESSAGE failed due to unsynchronized system time, retry in 30000 ms
I (12:34:27.155) EcuManager: Post time request 1 in ECU state 3 set to 1.
I (12:34:27.163) EcuManager: Post time request 1 in ECU state 2 set to 1.
I (12:34:27.170) DataLogger: Sending all log files (5) to backend (reset)
I (12:34:27.179) DataLogger: Log file 0 size is 6301, chunks remaining 1
I (12:34:27.197) DataLogger: Log file 1 size is 6246, chunks remaining 0
I (12:34:27.217) DataLogger: Log file 2 size is 6246, chunks remaining 0
I (12:34:27.231) DataLogger: Log file 3 size is 6301, chunks remaining 0
I (12:34:27.276) DataLogger: Log file 4 size is 6301, chunks remaining 0
I (12:34:27.277) DataLogger: Starting log transfer.
I (12:34:27.279) ResourceManager: ++  RESOURCE_CAN_0 changed state: from RESOURCE_STATE_INIT to RESOURCE_STATE_STARTING with target state: RESOURCE_TARGET_STATE_STARTED
I (12:34:27.294) ResourceManager: ++  CAN0 starting
I (12:34:27.300) ResourceManager: ++  CAN0 started successfully
I (12:34:27.306) ResourceManager: ++  RESOURCE_ISOLIB_CAN_0 changed state: from RESOURCE_STATE_INIT to RESOURCE_STATE_STOPPED with target state: RESOURCE_TARGET_STATE_STARTED
I (12:34:27.322) ResourceManager: ++  ISOLIB CAN0 starting
I (12:34:27.329) ResourceManager: ++  RESOURCE_WIFI_CON changed state: from RESOURCE_STATE_INIT to RESOURCE_STATE_STARTING with target state: RESOURCE_TARGET_STATE_STARTED
I (12:34:27.344) ResourceManager: ++  send start AP command
I (12:34:27.351) WiFi_AP: WiFi starts as AP
I (12:34:27.358) WiFi_AP: received WIFI_EVENT_AP_START
I (12:34:27.362) ResourceManager: ++  Modem initialized
I (12:34:27.367) ResourceManager: ++  Modem starting
I (12:34:27.372) ResourceManager: ++  RESOURCE_BLE changed state: from RESOURCE_STATE_INIT to RESOURCE_STATE_STARTING with target state: RESOURCE_TARGET_STATE_STARTED
I (12:34:27.388) ResourceManager: ++  BLE starting
W (12:34:27.394) DataLogger: Enqueueing message of type LOG_FILE_MESSAGE failed due to unsynchronized system time, retry in 30000 ms
I (12:34:27.407) UDS: Session changed from 0x0 to 0x1
W (12:34:27.411) UDS: Evaluating reset reason flag!
I (12:34:27.417) UDS: calculated CRC: 0xca851959
I (12:34:27.422) UDS: reproramming_flag addr: 0x50000010
I (12:34:27.428) UDS: reproramming_flag crc: 0x83de821a
I (12:34:27.434) UDS: reproramming_flag: 0xcb1eb3c3
I (12:34:27.439) UDS: resetReasonFlag: 0x86e28911
I (12:34:27.445) ResourceManager: ++  RESOURCE_CAN_0 changed state: from RESOURCE_STATE_STARTING to RESOURCE_STATE_STARTED with target state: RESOURCE_TARGET_STATE_STARTED
I (12:34:27.460) ResourceManager: ++  RESOURCE_ISOLIB_CAN_0 changed state: from RESOURCE_STATE_STOPPED to RESOURCE_STATE_STARTING with target state: RESOURCE_TARGET_STATE_STARTED
I (12:34:27.477) ResourceManager: ++  IsoLib CAN0 starting
I (12:34:27.483) ResourceManager: ++  RESOURCE_INTERNET changed state: from RESOURCE_STATE_INIT to RESOURCE_STATE_STARTING with target state: RESOURCE_TARGET_STATE_STARTED
I (12:34:27.499) ResourceManager: ++  send start Modem command
I (12:34:27.505) ResourceManager: ++  BLE starting
I (12:34:27.513) ResourceManager: ++  RESOURCE_WIFI_CON changed state: from RESOURCE_STATE_STARTING to RESOURCE_STATE_CONNECTING with target state: RESOURCE_TARGET_STATE_STARTED
I (12:34:27.528) ResourceManager: ++  connect the STA to the remote AP
W (12:34:27.535) WiFi_AP: WiFi_AP::connect called but not supported
I (12:34:27.541) ResourceManager: ++  BLE starting
I (12:34:27.561) ESPModem: Switching off the Modem...
I (12:34:27.562) CF1_BDC: READ_iso_manuf_code: 111 - 0 6f
I (12:34:27.565) CF1_BDC: READ_iso_serial_no: 5 - 5 - 0 0 5
I (12:34:27.592) CF1_BDC: iso_self_cnf_addr: 1 iso_ind_group: 2 iso_dev_class_inst: 0 iso_dev_class: 11 iso_padding: 0 iso_func: 132 iso_func_inst: 2 iso_ecu_inst: 1 iso_man_code: 111 iso_serial_no: 5
I (12:34:27.611) statusLED: Displayed code (status) changed to STATE_BLINK_CODE_22 - J1939 Error
W (12:34:27.670) CF1_BDC: BROADCAST -> FE C0
I (12:34:27.673) CF2_IsoBus: READ_iso_manuf_code: 111 - 0 6f
I (12:34:27.675) CF2_IsoBus: READ_iso_serial_no: 5 - 5 - 0 0 5
I (12:34:27.701) CF2_IsoBus: iso_self_cnf_addr: 1 iso_ind_group: 2 iso_dev_class_inst: 0 iso_dev_class: 11 iso_padding: 0 iso_func: 132 iso_func_inst: 0 iso_ecu_inst: 1 iso_man_code: 111 iso_serial_no: 5
W (12:34:27.769) CF1_BDC: BROADCAST -> FD C5
I (12:34:27.782) CF3_Telematic: READ_iso_manuf_code: 111 - 0 6f
I (12:34:27.784) CF3_Telematic: READ_iso_serial_no: 5 - 5 - 0 0 5
I (12:34:27.808) CF3_Telematic: iso_self_cnf_addr: 0 iso_ind_group: 2 iso_dev_class_inst: 0 iso_dev_class: 11 iso_padding: 0 iso_func: 132 iso_func_inst: 1 iso_ecu_inst: 1 iso_man_code: 111 iso_serial_no: 5
I (12:34:27.819) ResourceManager: ++  IsoLib CAN0 started successfully
I (12:34:27.829) ResourceManager: ++  RESOURCE_ISOLIB_CAN_0 changed state: from RESOURCE_STATE_STARTING to RESOURCE_STATE_STARTED with target state: RESOURCE_TARGET_STATE_STARTED
I (12:34:27.834) HAL_CAN_DRV: Surpassed Error Warning Limit
I (12:34:27.843) ResourceManager: ++  connect the STA to the remote AP
I (12:34:27.847) HAL_CAN_DRV: Entered Error Passive state
W (12:34:27.857) WiFi_AP: WiFi_AP::connect called but not supported
I (12:34:27.867) ResourceManager: ++  BLE starting
W (12:34:27.876) CF1_BDC: BROADCAST -> FE DA
W (12:34:27.969) CF1_BDC: BROADCAST -> FC 8D
W (12:34:28.069) CF1_BDC: BROADCAST -> FE EC
W (12:34:28.169) CF1_BDC: BROADCAST -> FE B1
W (12:34:28.269) CF1_BDC: BROADCAST -> FE CA
W (12:34:28.369) CF1_BDC: BROADCAST -> FE CB
I (12:34:28.371) statusLED: Displayed code (status) changed to STATE_05_HZ_BLINK_RATE - Normal
I (12:34:28.399) CF2_IsoBus: NETWORK EVENT CF2 32
I (12:34:28.400) CF3_Telematic: NETWORK EVENT CF3 32
I (12:34:28.400) CF2_IsoBus: NETWORK EVENT CF2 200
I (12:34:28.405) CF3_Telematic: NETWORK EVENT CF3 200
W (12:34:28.569) CF1_BDC: START INDEPENDENT DATA COLLECTION.

More Information.

No response

franz-ms-muc commented 1 year ago

thanks @RilabsAutomotive for raising this Issue. 

do we have a Minimal Example to test it ?

MartinPatarinski commented 1 year ago

No, we don't have currently such SW application

david-cermak commented 1 year ago

@RilabsAutomotive Could you please apply this patch to the modem sources?

diff --git a/components/esp_modem/src/esp_modem_uart.cpp b/components/esp_modem/src/esp_modem_uart.cpp
index e082473..783a5be 100644
--- a/components/esp_modem/src/esp_modem_uart.cpp
+++ b/components/esp_modem/src/esp_modem_uart.cpp
@@ -64,6 +64,7 @@ public:

     void set_read_cb(std::function<bool(uint8_t *data, size_t len)> f) override
     {
+        Scoped<Lock> lock(on_read_guard);
         ESP_MODEM_THROW_IF_FALSE(signal.wait(TASK_PARAMS, 1000), "Failed to set UART task params");
         on_read = std::move(f);
     }
@@ -97,6 +98,7 @@ private:
     uart_resource uart;
     SignalGroup signal;
     uart_task task_handle;
+    Lock on_read_guard;
 };

 std::unique_ptr<Terminal> create_uart_terminal(const esp_modem_dte_config *config)
@@ -120,6 +122,7 @@ void UartTerminal::task()
     while (signal.is_any(TASK_START)) {
         signal.set(TASK_PARAMS);
         if (get_event(event, 100)) {
+            Scoped<Lock> lock(on_read_guard);
             signal.clear(TASK_PARAMS);
             switch (event.type) {
             case UART_DATA:

Could you please try to test it with this additional mutex? It seems like a race condition between the uart-task and DTE's command parser, based on the log. I just wanted to see if that was the case. Thanks!

MartinPatarinski commented 1 year ago

I think that it does not solve the problem. Here is the log:

Modem is started .... I (00:00:52.370) esp-netif_lwip-ppp: Connected I (00:00:52.370) ESPmodem_Cmux: ~~~~~~ I (00:00:52.375) ESPmodem_Cmux: IP : 100.82.79.105 I (00:00:52.381) ESPmodem_Cmux: Netmask : 255.255.255.255 I (00:00:52.388) ESPmodem_Cmux: Gateway : 10.64.64.64 I (00:00:52.394) ESPmodem_Cmux: Name Server1: 217.14.160.130 I (00:00:52.400) ESPmodem_Cmux: Name Server2: 217.14.164.35 I (00:00:52.406) ESPmodem_Cmux: ~~~~~~ I (00:00:52.411) ESPmodem_Cmux: GOT ip event!!! I (00:00:52.417) esp_modem_netif: PPP state changed event 0 } (00:00:52.418) command_lib: Command: {AT+CBC I (00:00:52.423) ESPmodem_Cmux: PPP state changed. Event PPP_PHASE_RUNNING, id: 266 I (00:00:52.423) ResourceManager: ++ connection to the Internet established I (00:00:52.445) ResourceManager: ++ RESOURCE_INTERNET changed state: from RESOURCE_STATE_CONNECTING to RESOURCE_STATE_STARTED with target state: RESOURCE_TARGET_STATE_STARTED } (00:00:52.449) command_lib: Token: { } (00:00:52.449) command_lib: Command: {AT+CSQ I (00:00:52.464) command_lib: Token: {+CBC: 0,95,4243} } (00:00:52.475) command_lib: Token: { I (00:00:52.480) cGuru Meditation Error: Core 1 panic'ed (LoadProhibited). Exception was unhandled.

Core 1 register dump: PC : 0x4038375d PS : 0x00060430 A0 : 0x8205bf3c A1 : 0x3fcae470 0x4038375d: xQueueGiveMutexRecursive at C:/Espressif/frameworks/esp-idf/components/freertos/FreeRTOS-Kernel/queue.c:676

A2 : 0x0000000f A3 : 0x00000001 A4 : 0x00000000 A5 : 0x3fcd454c A6 : 0x00000001 A7 : 0x3fcd454c A8 : 0x803860dd A9 : 0x3fcae450 A10 : 0x3fca5018 A11 : 0x3fca5018 A12 : 0x00060420 A13 : 0x00060423 A14 : 0x00000007 A15 : 0x0000abab SAR : 0x00000018 EXCCAUSE: 0x0000001c EXCVADDR: 0x00000017 LBEG : 0x40056f5c LEND : 0x40056f72 LCOUNT : 0xffffffff

Backtrace: 0x4038375a:0x3fcae470 0x4205bf39:0x3fcae490 0x42057098:0x3fcae4b0 0x42056ea6:0x3fcae530 0x42061466:0x3fcae560 0x4205b60d:0x3fcae5d0 0x4202458e:0x3fcae5f0 0x42023648:0x3fcae630 0x42023999:0x3fcae650 0x42133be7:0x3fcae670 0x42010ce9:0x3fcae690 0x40386796:0x3fcae6b0 0x4038375a: xQueueGiveMutexRecursive at C:/Espressif/frameworks/esp-idf/components/freertos/FreeRTOS-Kernel/queue.c:668 (discriminator 1)

0x4205bf39: esp_modem::Lock::unlock() at C:/Projects/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_primitives_freertos.cpp:26

0x42057098: esp_modem::Scoped::~Scoped() at C:/Projects/ksc-2n/src/SERVICES/EspModem_Driver/include/cxx_include/esp_modem_primitives.hpp:65 (inlined by) esp_modem::DTE::command(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::function<esp_modem::command_result (unsigned char*, unsigned int)>, unsigned long, char) at C:/Projects/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_dte.cpp:66

0x42056ea6: esp_modem::DTE::command(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::function<esp_modem::command_result (unsigned char*, unsigned int)>, unsigned long) at C:/Projects/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_dte.cpp:70

0x42061466: esp_modem::dce_commands::get_signal_quality(esp_modem::CommandableIf, int&, int&) at C:/Projects/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_command_library.cpp:69 (inlined by) esp_modem::dce_commands::get_signal_quality(esp_modem::CommandableIf, int&, int&) at C:/Projects/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_command_library.cpp:498

0x4205b60d: esp_modem::GenericModule::get_signal_quality(int&, int&) at C:/Projects/ksc-2n/src/SERVICES/EspModem_Driver/src/esp_modem_modules.cpp:48

0x4202458e: esp_modem::command_result esp_modem::DCE::get_signal_quality<int&, int&>(int&, int&) at C:/Projects/ksc-2n/src/SERVICES/EspModem_Driver/include/cxx_include/esp_modem_dce.hpp:117 (inlined by) ModemManager_UpdateModemInfo at C:/Projects/ksc-2n/src/SERVICES/EspModem_Manager/ModemManager_Wrapper.cpp:1988

0x42023648: ModemManager_ReadModemInfo at C:/Projects/ksc-2n/src/SERVICES/EspModem_Manager/ModemManager.c:785

0x42023999: ModemManager_MainFunction at C:/Projects/ksc-2n/src/SERVICES/EspModem_Manager/ModemManager.c:174

0x42133be7: osw::Event::run() const at C:/Projects/ksc-2n/src/OS/os_wrapper/src/Event.cpp:27

0x42010ce9: osw::Task<2u>::run(void*) at C:/Projects/ksc-2n/src/OS/os_wrapper/include/Task.hpp:213

0x40386796: vPortTaskWrapper at C:/Espressif/frameworks/esp-idf/components/freertos/FreeRTOS-Kernel/portable/xtensa/port.c:151

ELF file SHA256: 5cb461b0acd0906f

I (25666) esp_core_dump_flash: Save core dump to flash... E (25672) esp_core_dump_flash: Not enough space to save core dump! E (25679) esp_core_dump_elf: Failed to prepare core dump storage (257)! E (25686) esp_core_dump_common: Core dump write binary failed with error=257 I (25694) esp_core_dump_flash: Core dump has been saved to flash. Rebooting... ESP-ROM:esp32s3-20210327 Build:Mar 27 2021 rst:0x10 (RTCWDT_RTC_RST),boot:0x2f (SPI_FAST_FLASH_BOOT)

david-cermak commented 1 year ago

Thanks for sharing the test results! This I think look more like a memory corruption, then a race condition. Load-Prohibited error when unlocking the recently added mutex here:

https://github.com/espressif/esp-idf/blob/release/v5.0/components/freertos/FreeRTOS-Kernel/queue.c#L676

seems like the memory location of the the on_read_guard variable was 0x17 at the time of execution. Looking at the position of that variable, inside the terminal and DTE respectively, it looks like it's located near

unique_buffer buffer;                                   /*!< DTE buffer */

Does your application take a pointer of some of the replies to process them? Is it possible that this you write to that location, when parsing? Are you using CMUX mode?

david-cermak commented 1 year ago

@RilabsAutomotive Please provide a minimal sample application that would exhibit the problem, as so far it looks like a memory corruption in your project.

MartinPatarinski commented 1 year ago

Ok, thank you for the answer. Creating a sample application would be a significant effort and for the moment this is a minor issue.

Alvin1Zhang commented 1 year ago

@RilabsAutomotive Thanks for reporting, would you please help share if any updates for the issue? Thanks.