园区物联网服务 IoTC-设备侧适配:上报升级结果

时间:2025-02-12 14:52:05

上报升级结果

根据PCP协议约定的交互流程,设备在执行完软件升级后,将会向 物联网平台 上报升级的结果。

设备发送的请求消息

根据PCP消息结构的定义可以得出,物联网平台向设备发送执行软件升级消息,各个消息字段的填写如下:

  • 起始标识固定为:FFFE。
  • 版本号固定为:01。
  • 消息码:与请求的消息码一致,为18。
  • 校验码:CRC16计算前先用0000替代。
  • 数据区长度:根据数据区的字段的数据类型得出数据区长度为17字节,转换为十六进制为:0011。
  • 数据区:结果码,以上报升级成功为例,结果码为00。当前版本号:升级完成后的版本号,与物联网平台下发的软件版本一致,即v1.0,转换为十六进制为:56312E30000000000000000000000000。

    字段

    数据类型

    描述及要求

    结果码

    BYTE

    0X00升级成功。

    0X01设备使用中。

    0X04电量不足。

    0X05剩余空间不足。

    0X09内存不足。

    0X0A安装升级包失败。

    0X7F内部异常。

    当前版本号

    BYTE[16]

    设备当前版本号。

物联网平台向设备下发的执行软件升级的消息为:FFFE 01 18 0000 0011 0056312E30000000000000000000000000(CRC16校验前),经CRC16计算得到校验码为:C7D2。则替换校验码后设备发送的消息上报升级结果码流为:FFFE0118C7D200110056312E30000000000000000000000000。

物联网平台发送的应答消息

物联网平台收到设备上报的升级结果消息后,将对设备进行应答,各个消息字段的填写如下。

  • 起始标识固定为:FFFE。
  • 版本号固定为:01。
  • 消息码:与请求的消息码一致:18。
  • 校验码:CRC16计算前先用0000替代。
  • 数据区长度:根据数据区的字段定义得出该数据长度为1个字节,转换为十六进制为:0001。
  • 数据区:处理成功,则返回00,升级任务不存在80。本示例以返回00处理成功为例进行说明。

    字段

    数据类型

    描述及要求

    结果码

    BYTE

    0X00处理成功。

    0X80升级任务不存在。

设备向物联网平台应答的消息为:FFFE 01 18 0000 0001 00 (CRC16校验前),经CRC16计算得到校验码为:AFA1。则替换校验码后设备返回的响应消息为:FFFE0118AFA1000100 。

至此,设备的软件升级功能适配就完成了,赶紧动手试一试吧。

support.huaweicloud.com/usermanual-ocsmartcampus/ocsmartcampus_04_0020.html