使用官方esp-idf官方例程mqtt5,可以正常连接 mqtt://mqtt.eclipseprojects.io 但无法连接本地MEQX 地址192.168.。。。,就会出现下面的错误。。。

使用官方esp-idf官方例程mqtt5,可以正常连接 mqtt://mqtt.eclipseprojects.io 但无法连接本地MEQX 地址192.168.。。。,就会出现下面的错误。。。
mqtt5.zip (7.7 KB)

看不懂,那个 return code 不是为 0 么,你看看 emqx 的日志。

PS:看你的代码里面连的默认应该是 1883 的 mqtt 端口,但是你的图里面是 tls?是不是连错端口了。

dear 技术员,你好
使用官方esp-idf官方例程mqtt5,可以正常连接 mqtt://mqtt.eclipseprojects.io 但无法连接本地MEQX 地址192.168.。。。,就会出现下面的错误。。。
#define MQTT_ADDRESS “mqtt://broker-cn.emqx.io” //改成这个就正常
#define MQTT_ADDRESS “mqtt://192.168.110.130” //改成这个不正常
防火墙全部都关闭了
使用MQTTX mqtt://192.168.110.130客户端 连接本地EMQX就正常

以下是相关源代码及错误提示,望帮忙看看,感谢。。。



错误提示及日志文件.zip (137.6 KB)

程序源代码.zip (2.5 KB)

你的 emqx 日志里面只有一条:

2025-02-14T03:14:24.100972+00:00 [warning] msg: alarm_is_activated, message: <<"96.75% cpu usage">>, name: high_cpu_usage
2025-02-14T03:16:24.111632+00:00 [warning] msg: alarm_is_deactivated, name: high_cpu_usage
2025-02-14T03:27:24.133567+00:00 [warning] msg: alarm_is_activated, message: <<"97.21% cpu usage">>, name: high_cpu_usage
2025-02-14T03:28:24.136183+00:00 [warning] msg: alarm_is_deactivated, name: high_cpu_usage
2025-02-14T03:37:24.153041+00:00 [warning] msg: alarm_is_activated, message: <<"99.93% cpu usage">>, name: high_cpu_usage

操作系统的 CPU 都 99% 了。还能用么。。。建议还是部署到闲一点的机器吧。

不过你如果用mqttx能连上,那应该和这个CPU 关系不大。

因为我看不懂 c 代码,所以也没办法看出来什么问题,不过你也不知道如何 debug c 代码的话,可以在 emqx 侧 debug 日志打开,看你的代码连接 和 mqttx 中的日志过程有什么不同。