开发者社区 > 物联网 > 正文

问:使用MQTT协议给单个设备进行OTA升级过程中,设备请求下载文件分片,阿里云无响应topic

小白提问:为什么使用MQTT协议给单个设备进行OTA升级时,设备请求下载文件分片,阿里云没有下发响应Topic?

升级的设备为:STM32F103+esp8266

过程一:本人在使用MQTT协议给单个设备进行OTA升级过程中。使用平台提供的升级流程进行升级操作,如下图所示。(注:本人使用的是MQTT协议下载升级包)

2.png

首先用mqtt.fx对下载的整个过程进行了数据通信的测试。 发现在最后设备请求下载文件分片时,使用"请求Topic:/sys/${productKey}/${deviceName}/thing/file/download"向云端发送数据后没有收到来自云端的数据,但是在日志服务中能看到上传的消息。

下图为收到云端下发的OTA升级包信息 3.png

下图依次为平台提供的请求数据格式、通过mqtt.fx上传时的数据、云端日志中收到的数据 1.png 4.png 5.png 并未收到阿里云响应的数据。

过程二:随后我想是不是因为mqtt.fx无法收到响应的topic与数据,于是我在STM32中进行了测试。发现一样无法收到对应的响应topic与数据。

下图为云端下发的OTA升级包信息 15.png

下图为接收到OTA升级包信息后串口输出的数据

13.png

下图为日志服务中的内容 14.png

求大佬解决!!!!

展开
收起
游客cq4t3mca7cx2s 2023-04-17 16:45:48 377 0
3 条回答
写回答
取消 提交回答
  • 你好,我也遇到一样的问题,请问解决了吗

    2023-07-15 20:37:58
    赞同 展开评论 打赏
  • 公众号:网络技术联盟站,InfoQ签约作者,阿里云社区签约作者,华为云 云享专家,BOSS直聘 创作王者,腾讯课堂创作领航员,博客+论坛:https://www.wljslmz.cn,工程师导航:https://www.wljslmz.com

    如果在设备请求下载文件分片的过程中,阿里云物联网平台无响应,可能是以下原因:

    1. 设备请求的 topic 不正确,导致平台无法收到请求。检查一下 topic 是否正确,以确保设备发送请求的 topic 与平台端设置的 topic 一致。

    2. 平台端没有设置响应主题。在设备请求下载文件分片的时候,平台端一定要设置响应主题,以便设备在接收到响应后可以继续进行后续的操作。

    3. 网络连接不稳定。网络连接不稳定可能会导致设备无法成功发送请求,或者请求发送完成后,平台端无法及时响应。可以检查网络连接的稳定性,或者尝试在网络环境更好的情况下再次进行测试。

    4. 请求被防火墙或者其他安全设备拦截。防火墙、入侵检测系统等安全设备可能会对设备请求进行拦截。在进行测试的过程中,可以将相关设备的 IP 地址或者 MAC 地址加入白名单中,以确保请求可以正常通过。

    2023-04-30 10:13:14
    赞同 1 展开评论 打赏
  • 使用MQTT协议进行OTA升级时,设备请求下载文件分片,阿里云应该会下发响应Topic,如果没有收到响应Topic,可能是因为以下原因:

    1. 订阅Topic不正确:设备订阅Topic的名称需要与阿里云下发响应Topic的名称一致,如果订阅Topic不正确,设备将无法接收到阿里云下发的响应消息。

    2. MQTT连接中断:如果设备在请求下载文件分片时,MQTT连接中断,设备将无法接收到阿里云下发的响应消息。建议检查设备的网络连接状态,确保设备与阿里云的MQTT连接稳定。

    3. 请求下载文件分片的格式不正确:设备请求下载文件分片的格式需要符合阿里云OTA服务的要求,否则阿里云将无法识别设备的请求消息。建议检查设备请求下载文件分片的消息格式是否正确。

    4. OTA升级任务状态异常:如果设备请求下载文件分片时,OTA升级任务状态异常,例如任务已经完成或者已经被中断,阿里云将无法下发响应Topic。建议检查OTA升级任务状态是否正常。

    如果以上排查方法无法解决问题,建议您联系阿里云技术支持,提供详细的设备信息、MQTT连接日志以及错误信息,以便技术支持团队更好地帮助您解决问题。

    2023-04-23 13:25:15
    赞同 展开评论 打赏

物联网领域前沿技术分享与交流

相关电子书

更多
RocketMQ Client-GO 介绍 立即下载
RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载
基于 RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载