问题描述
我使用的是 MQTT on a SIM7500 LTE 调制解调器。发送一堆 AT 和 MQTT 命令后,我可以连接到某个 mqtt 代理。
出乎我意料的是,当我通过调制解调器发布主题时,我取消了我打开的订阅。无论我订阅的主题名称如何。从我的调制解调器发布后,当我在代理上的任何订阅主题上发布时,我的调制解调器不再接收字节。
我再次检查了调制解调器上的文档,找不到任何有关此行为的参考。
任何了解 AT/CMQTT 的人都可以解释这是否是“预期行为”?我无法想象这是调制解调器中的错误。所以要么是我用错了东西,要么是有原因的。
显示发送/接收命令的屏幕截图:
在文本中:
为方便起见省略了启动命令(atz、ate0、at+cgatt=1、at+cgact=1,1)
MCU ==> Modem MCU <== Modem
AT+CMQTTCONNECT=0,"someipaddress:port,90,1
+CMQTTCONNECT: 0,0
AT+CMQTTSUBTOPIC=0,5,2
>
stm32
OK
AT+CMQTTSUB=0
OK
从这一刻开始,我有一个实时订阅,我发布了关于该主题的 2 条消息,这些消息被接收并传递到我的 MCU
MCU ==> Modem MCU <== Modem
hello
hello
AT+CMQTTTOPIC=0,17
>
t/867584034403399
OK
AT+CMQTTPAYLOAD=0,5
>
hello
OK
从这点开始,订阅就丢失了。无论我在 'stm32' 上发布什么,都不会再在连接到调制解调器的 uart 上接收到。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)