当设备超过一个时,无法使用 esp32 连接到 mosquitto

问题描述 投票:0回答:0

我正在尝试使用 pubsubclient + tinygsm 库连接到 esp32 上的 vps 上的代理。起初它运行良好,但在我尝试连接第二个 esp32 后,它频繁地连接-断开-重新连接。但如果我删除其中之一,它就会运行良好。当它像这样显示错误日志时 esp32 上的 AT 命令

连接经纪商的成功 /00008CEAC108B764 MQTT 未连接 === -3 5 秒后重试 连接经纪人的成功 /00008CEAC108B764 MQTT 未连接 === -3 5 秒后重试 连接经纪商成功

在蚊子日志上显示

1690639873:客户端 0000C49B6015B80C 由于数据包格式错误而断开连接。 1690639874:端口 1883 上来自 114.127.245.13:47135 的新连接。 1690639874:新客户端从 114.127.245.13:47135 连接为 0000C49B6015B80C(p2、c1、k15)。 1690639875:客户端 0000C49B6015B80C 由于数据包格式错误而断开连接。 1690639875:来自端口 1883 上的 114.127.245.13:47428 的新连接。

当我使用 WiFi 连接时也会发生“错误主机无法访问”

我尝试使用其他设备连接到 mosquitto 代理,例如 Android 上的 mymqtt 和 Windows 上的 mqttx,它也运行良好。所以一开始我认为问题出在设备上的代码上。但我使用像broker.hivemq这样的公共代理来更改代理,并且它适用于多个设备。 顺便说一下,这是我的 esp32 上的库及其版本。

bakercp/CRC32@^2.0.0 vshymanskyy/TinyGSM@^0.11.7 bblanchon/ArduinoJson@^6.21.3 曼杜拉杰/PZEM-004T-v30@^1.1.2 vshymanskyy/StreamDebugger@^1.0.1 knolleary/PubSubClient@^2.8 希望有人知道除了更换经纪人之外如何解决这个问题。

mqtt esp32 mosquitto
© www.soinside.com 2019 - 2024. All rights reserved.