乐鑫技术交流
直播中

徐磊

7年用户 936经验值
私信 关注
[问答]

ESP32 MQTT发送数据失败导致重启的原因?

我的MQTT通信偶尔会有以下报错导致重启,什么原因导致的?谁能帮忙解答一下
I (134496) MQTT: MQTT_EVENT_ERROR
I (134496) MQTT: Last errno string (Success)
E (134496) MQTT_CLIENT: Error write data or timeout, written len = 0, errno=0
Guru Meditation Error: Core  0 panic'ed (Store access fault). Exception was unhandled.

Stack dump detected
Core  0 register dump:
MEPC    : 0x40388ac2  RA      : 0x40388456  SP      : 0x3fcad710  GP      : 0x3fc8e200  
0x40388ac2: uxListRemove at C:/ESP32Tool/ESP32-IDF/esp-idf/components/freertos/list.c:177

0x40388456: vTaskDelete at C:/ESP32Tool/ESP32-IDF/esp-idf/components/freertos/tasks.c:1311 (discriminator 4)

TP      : 0x3fc8d0e8  T0      : 0x3fca9090  T1      : 0x00000000  T2      : 0x00000002
S0/FP   : 0x42009c18  S1      : 0x3fc97e9c  A0      : 0x42009c1c  A1      : 0x3c0c69e8  
0x42009c18: mqtt_test_task at F:ESP32C3projectsmart_configbuild/../main/mymqtt.c:399

0x42009c1c: mqtt_test_task at F:ESP32C3projectsmart_configbuild/../main/mymqtt.c:399

A2      : 0x00000002  A3      : 0xcf290027  A4      : 0x3fc927b7  A5      : 0x10100793
A6      : 0x42008eb2  A7      : 0x3fca9efc  S2      : 0x42009c1c  S3      : 0x00003463
0x42008eb2: mqtt_event_handler at F:ESP32C3projectsmart_configbuild/../main/mymqtt.c:194

0x42009c1c: mqtt_test_task at F:ESP32C3projectsmart_configbuild/../main/mymqtt.c:399

S4      : 0x00000000  S5      : 0x00000000  S6      : 0x00000000  S7      : 0x00000000
S8      : 0x00000000  S9      : 0x00000000  S10     : 0x00000000  S11     : 0x00000000
T3      : 0x0000004b  T4      : 0x0000004b  T5      : 0x3fca9f19  T6      : 0x00000000
MSTATUS : 0x00001881  MTVEC   : 0x40380001  MCAUSE  : 0x00000007  MTVAL   : 0xcf29002f
0x40380001: _vector_table at ??:?

MHARTID : 0x00000000

Failed to run gdb_panic_server.py script: Command '['riscv32-esp-elf-gdb', '--batch', '-n', 'f:\esp32c3project\smart_config\build\smart_config.elf', '-ex', 'target remote | "C:\ESP32Tool\.espressif\python_env\idf4.3_py3.8_env\Scripts\python.exe" "c:\ESP32Tool\ESP32-IDF\esp-idf\tools\..\tools\gdb_panic_server.py" --target esp32c3 "C:\Users\??????\AppData\Local\Temp\tmpul294ipa"', '-ex', 'bt']' returned non-zero exit status 3221225781.
b''


Core  0 register dump:
MEPC    : 0x40388ac2  RA      : 0x40388456  SP      : 0x3fcad710  GP      : 0x3fc8e200
TP      : 0x3fc8d0e8  T0      : 0x3fca9090  T1      : 0x00000000  T2      : 0x00000002
S0/FP   : 0x42009c18  S1      : 0x3fc97e9c  A0      : 0x42009c1c  A1      : 0x3c0c69e8
A2      : 0x00000002  A3      : 0xcf290027  A4      : 0x3fc927b7  A5      : 0x10100793
A6      : 0x42008eb2  A7      : 0x3fca9efc  S2      : 0x42009c1c  S3      : 0x00003463
S4      : 0x00000000  S5      : 0x00000000  S6      : 0x00000000  S7      : 0x00000000
S8      : 0x00000000  S9      : 0x00000000  S10     : 0x00000000  S11     : 0x00000000
T3      : 0x0000004b  T4      : 0x0000004b  T5      : 0x3fca9f19  T6      : 0x00000000
MSTATUS : 0x00001881  MTVEC   : 0x40380001  MCAUSE  : 0x00000007  MTVAL   : 0xcf29002f
MHARTID : 0x00000000

Stack memory:
3fcad710: 0x00000000 0x3fca9d6c 0x3fca9054 0x42008a40 0x00000001 0x00000000 0x3fca9e48 0x4038619a
3fcad730: 0x00000000 0x00000000 0x3fca9e48 0x403887d4 0x00000000 0x00000000 0x3fca9df0 0x00386dfc
3fcad750: 0x00000000 0x00000000 0x3fca9df0 0x00003463 0x00000000 0x3fca9d6c 0x3fcaaf48 0x42008ebc
3fcad770: 0xffffffff 0x00000000 0x3fca9df0 0x420bb700 0x3fc98a08 0x3fca9d6c 0x3fca9090 0x420bbf48
3fcad790: 0x00000101 0x3c0c69e8 0x00000002 0x3fca9054 0x00000101 0x3c0c69e8 0x00000002 0x3fca9054
3fcad7b0: 0x00000101 0x3c0c69e8 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000001
3fcad7d0: 0x3fc98a08 0x00000000 0x3fca9090 0x4200bde8 0x3fc98a08 0x00000000 0x3fca9090 0x4200be04
3fcad7f0: 0x3fc98a08 0x00000000 0x3fca9090 0x4200c4a8 0x3fc98a08 0x00000000 0x3fca9090 0x4200e51c
3fcad810: 0x3c0ca2d8 0x3fc9884c 0x3fc98a08 0x00009bbe 0x00000000 0x00000000 0x00000000 0x00000000
3fcad830: 0x3fc98d58 0x3fc9884c 0x3fc98a08 0x42009bd4 0x00000000 0x00000002 0x69666977 0x7665642d
3fcad850: 0x2f656369 0x74737075 0x6d616572 0x6634382f 0x35333037 0x32623034 0x00000034 0x00000000
3fcad870: 0x00000000 0x00000000 0x00000000 0x42009c74 0x00000000 0x00000000 0x00000000 0x40389564
3fcad890: 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5
3fcad8b0: 0x27146414 0x01010107 0x00000001 0x000000ff 0x00000000 0x00000000 0x7f7fffff 0x00000000
3fcad8d0: 0x00000000 0x3ff00000 0x00000000 0x40000000 0x94a03595 0x3fdfffff 0x35afe535 0x3fe00000
3fcad8f0: 0x94a03595 0x3fcfffff 0x00000000 0x3fc00000 0x00000000 0x40300000 0x00000000 0x3ff80000
3fcad910: 0x636f4361 0x3fd287a7 0x8b60c8b3 0x3fc68a28 0x509f79fb 0x3fd34413 0x00000000 0x40140000
3fcad930: 0x00000000 0x43500000 0x00000000 0x7ff80000 0x7fc00000 0x3fc8da00 0x000034b0 0x3c0de610
3fcad950: 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0x00000514 0x00000000 0x3fcad9b4 0x04c404c4
3fcad970: 0x00010080 0x00000000 0x00000000 0x00070000 0x00000000 0x00000000 0x3fca8af0 0x00000000
3fcad990: 0x3fcad9a0 0x000a8640 0x3fcad9c4 0x00000000 0x00000100 0x06ff6453 0x00000101 0x00000000
3fcad9b0: 0x00000000 0x5b0703d8 0x4f4772ca 0x00000000 0x00000850 0x000025bf 0x0002f530 0x66697721
3fcad9d0: 0x65642d69 0x65636976 0x7370752f 0x61657274 0x34382f6d 0x33303766 0x62303435 0x0a7b3432
3fcad9f0: 0x6c662209 0x3a226761 0x52442209 0x2c224e55 0x6d22090a 0x6c65646f 0x22093a22 0x30364342
3fcada10: 0x0a2c2231 0x64692209 0x32093a22 0x31333731 0x33363639 0x22090a2c 0x2263616d 0x3822093a
3fcada30: 0x30376634 0x30343533 0x22343262 0x22090a2c 0x61746164 0x7b093a22 0x2209090a 0x67617473
3fcada50: 0x093a2265 0x090a2c33 0x74732209 0x22317065 0x2c30093a 0x2209090a 0x70657473 0x093a2232
3fcada70: 0x090a2c30 0x74732209 0x22337065 0x3239093a 0x09090a2c 0x65747322 0x3a223470 0x0a2c3009
3fcada90: 0x73220909 0x35706574 0x30093a22 0x09090a2c 0x65747322 0x3a223670 0x0a2c3009 0x73220909
3fcadab0: 0x37706574 0x30093a22 0x09090a2c 0x65747322 0x3a223870 0x0a2c3009 0x76220909 0x3a226c6f
3fcadad0: 0x32333109 0x0a2c3333 0x73220909 0x3a22636f 0x2c353909 0x2209090a 0x22727563 0x3234093a
3fcadaf0: 0x090a2c33 0x616c2209 0x3a226576 0x32393209 0x0a2c3535 0x74220909 0x6c61746f 0x39093a22



ELF file SHA256: cf3f5f1934102e8f
ELF file SHA256: cf3f5f1934102e8f

Rebooting...
���0ESP-ROM:esp32c3-api1-20210207
Build:Feb  7 2021
rst:0xc (RTC_SW_CPU_RST),boot:0xe (SPI_FAST_FLASH_BOOT)
Saved PC:0x40382faa
0x40382faa: esp_restart_noos at C:/ESP32Tool/ESP32-IDF/esp-idf/components/esp32c3/system_api_esp32c3.c:137 (discriminator 1)
                                                                                                                                                                                                                        
               

回帖(1)

杨平

2024-7-1 15:24:32
根据您提供的错误信息,我们可以分析出以下几个可能导致ESP32 MQTT发送数据失败并导致重启的原因:

1. **网络问题**:MQTT通信依赖于稳定的网络连接。如果网络不稳定或连接中断,可能会导致发送数据失败。请检查您的网络环境,确保设备与MQTT服务器之间的连接稳定。

2. **MQTT服务器问题**:如果MQTT服务器出现故障或响应超时,也可能导致发送数据失败。请检查MQTT服务器的状态,确保其正常运行。

3. **内存不足**:ESP32的内存有限,如果程序运行过程中占用了大量内存,可能会导致内存不足,从而引发错误。请检查您的程序,确保没有内存泄漏或不必要的内存占用。

4. **程序错误**:程序中可能存在逻辑错误或异常处理不当,导致在发送数据时出现异常。请检查您的程序代码,确保异常处理得当,避免因异常导致程序崩溃。

5. **固件问题**:ESP32的固件可能存在问题,导致在发送数据时出现错误。您可以尝试升级到最新版本的固件,看看是否能解决问题。

6. **硬件问题**:如果ESP32硬件存在问题,可能会导致发送数据失败。请检查您的硬件设备,确保其正常工作。

针对这些可能的原因,您可以尝试以下解决方案:

1. 确保网络连接稳定,避免因网络问题导致发送数据失败。

2. 检查MQTT服务器状态,确保其正常运行。

3. 优化程序代码,减少内存占用,避免内存不足导致的错误。

4. 检查程序中的异常处理,确保异常能够被正确处理,避免程序崩溃。

5. 升级ESP32固件,解决可能存在的固件问题。

6. 检查硬件设备,确保其正常工作。

希望这些分析和建议能帮助您解决问题。如果问题仍然存在,请提供更多详细信息,以便我们能够更准确地分析问题并提供解决方案。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分