乐鑫技术交流
直播中

世态薄凉

8年用户 1183经验值
私信 关注
[问答]

esp32-wroom-32E mqtt异常断开是什么原因导致的?

我在使用mqtt在接受处理后发布消息时,mqtt接受消息不定时的出现接受发布有延时的情况、mqtt断开重连,有时会出现wifi:bcn_timout,ap_probe_send_start,WiFi也会有断开的情况,这是wifi断开时的logCode: Select all
I (710643) wifi:bcn_timout,ap_probe_send_startW (715733) TRANSPORT_BASE: Poll timeout or error, errno=Connection already in progress, fd=54, timeout_ms=10000E (715733) MQTT_CLIENT: Writing didn't complete in specified timeout: errno=119I (715733) USER_MQTT: MQTT_EVENT_ERRORI (715743) USER_MQTT: Last errno string (Success)E (715743) MQTT_CLIENT: Error to resend dataI (715753) USER_MQTT: MQTT_EVENT_DISCONNECTEDE (715753) MQTT_CLIENT: Client has startedW (725783) TRANSPORT_BASE: Poll timeout or error, errno=Connection already in progress, fd=-1, timeout_ms=10000E (725783) MQTT_CLIENT: Writing didn't complete in specified timeout: errno=119I (725783) USER_MQTT: MQTT_EVENT_ERRORI (725793) USER_MQTT: Last errno string (Success)E (725793) MQTT_CLIENT: Error sending pingE (725803) MQTT_CLIENT: Can't send ping, disconnectedI (725803) USER_MQTT: MQTT_EVENT_DISCONNECTEDE (725813) MQTT_CLIENT: Client has startedI (727373) wifi:bcn_timout,ap_probe_send_startI (735823) USER_MQTT: Other event id:7I (736893) wifi:bcn_timout,ap_probe_send_startI (739393) wifi:ap_probe_send over, resett wifi status to disassocI (739393) wifi:state: run -> init (c800)I (739393) wifi:pm stop, total sleep time: 16178413 us / 735831852 usW (739393) wifi:idxI (739403) wifi:new:<1,0>, old:<1,0>, ap:<255,255>, sta:<1,0>, prof:1E (739413) TRANSPORT_BASE: poll_read select error 113, errno = Software caused connection abort, fd = 54I (739413) wifi station: retry to connect to the APE (739413) MQTT_CLIENT: mqtt_message_receive: transport_read() error: errno=119I (739433) USER_MQTT: MQTT_EVENT_ERRORE (739433) USER_MQTT: Last error captured as transport's socket errno: 0x71I (739443) USER_MQTT: Last errno string (Software caused connection abort)E (739453) MQTT_CLIENT: esp_mqtt_connect: mqtt_message_receive() returned -1E (739453) MQTT_CLIENT: MQTT connect failedfree heap size: 187676 bytesI (739463) USER_MQTT: MQTT_EVENT_DISCONNECTEDE (739473) MQTT_CLIENT: Client has startedI (740073) wifi:new:<6,0>, old:<1,0>, ap:<255,255>, sta:<6,0>, prof:1I (740073) wifi:state: init -> auth (b0)I (740093) wifi:state: auth -> assoc (0)I (740133) wifi:state: assoc -> run (10)I (740283) wifi:connected with ICkey-GC-Tmp, aid = 1, channel 6, BW20, bssid = f0:5c:19:84:d2:82I (740283) wifi:security: WPA2-PSK, phy: bgn, rssi: -79I (740383) wifi:pm start, type: 1I (740383) wifi:AP's beacon interval = 102400 us, DTIM period = 1W (740453) wifi:idx:0 (ifx:0, f0:5c:19:84:d2:82), tid:0, ssn:2, winSize:64W (740703) wifi:idx:1 (ifx:0, f0:5c:19:84:d2:82), tid:7, ssn:0, winSize:64I (741693) esp_netif_handlers: sta ip: 10.8.85.154, mask: 255.255.255.0, gw: 10.8.85.254I (741693) wifi station: got ip:10.8.85.154I (749483) USER_MQTT: Other event id:7I (749633) USER_MQTT: MQTT_EVENT_CONNECTEDI (749633) USER_MQTT: sent subscribe successful, msg_id=65052I (749673) USER_MQTT: MQTT_EVENT_SUBSCRIBED, msg_id=12091I (749683) USER_MQTT: sent publish successful, msg_id=3348I (749703) USER_MQTT: MQTT_EVENT_SUBSCRIBED, msg_id=65052I (749703) USER_MQTT: sent publish successful, msg_id=522I (749733) USER_MQTT: MQTT_EVENT_PUBLISHED, msg_id=3348I (749753) USER_MQTT: MQTT_EVENT_PUBLISHED, msg_id=522
请问这是什么问题导致的呢
                                                                                                                                                                                    

回帖(1)

wufan931111

2024-6-14 17:12:20
根据您提供的信息,您的ESP32-WROOM-32E设备在使用MQTT协议时出现了异常断开和延时问题。以下是可能导致这些问题的一些原因:

1. 网络不稳定:如果您的WiFi网络不稳定,可能会导致设备与MQTT服务器之间的连接断开。这可能是由于信号弱、干扰或其他网络问题。

2. MQTT服务器问题:如果MQTT服务器本身存在问题,例如负载过高或配置不当,也可能导致连接不稳定。

3. 代码问题:在您的代码中,可能存在一些逻辑错误或资源管理问题,导致MQTT连接不稳定。例如,发送消息时可能没有正确处理超时或重试机制。

4. 设备硬件问题:ESP32-WROOM-32E设备本身可能存在硬件问题,例如电源不稳定或内存泄漏,导致设备在运行过程中出现问题。

5. 软件版本问题:您使用的ESP32-WROOM-32E固件或MQTT库可能存在已知的bug或兼容性问题,导致连接不稳定。

为了解决这些问题,您可以尝试以下方法:

1. 检查您的WiFi网络,确保信号强度和稳定性。

2. 检查MQTT服务器的配置和性能,确保其正常运行。

3. 审查您的代码,确保正确处理了MQTT连接、消息发送和超时等问题。

4. 更新您的ESP32-WROOM-32E固件和MQTT库,以确保使用的是最新版本。

5. 如果可能,尝试使用其他MQTT库或协议,以排除特定库的问题。


举报

更多回帖

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