一种物联网OTA升级方法与流程
未命名
07-22
阅读:76
评论:0
一种物联网ota升级方法
技术领域
1.本发明属于物联网技术领域,尤其涉及一种物理网ota升级方法。
背景技术:
2.在产品更新换代速度越来越快的今天,ota升级能让产品在保证基本功能与远程升级功能足够安全可靠的基础上就能小批上市占有市场,然后通过市场反馈快速迭代升级,逐步成熟为真正符合市场需求的产品。这种方式,可以至少争取三个月提早上市时间,并且后期维护升级更加方便。
3.目前ota升级普遍采用http或者mqtt协议,而nb物联网终端普遍采用coap或者lwm2m协议,市面尚无成熟的lwm2m ota升级技术。
技术实现要素:
4.本发明的目的在于提供一种物理网ota升级方法,旨在解决现市面尚无成熟的lwm2m ota升级技术的问题。
5.本发明提供了一种物理网ota升级方法,应用于物联网的升级平台和使用lwm2m或者coap协议的待升级终端,所述待升级终端的存储空间包括用于存储和运行app代码的app区、用于存储从所述升级平台下载的升级包的bak区以及boot分区,boot负责将升级包从bak区搬运至app区,将升级包分为n个分包序列,所述n为分包的总数量,所述方法包括以下步骤:
6.升级平台下发升级通知:升级平台向待升级终端发送升级命令,所述升级命令包括所述升级包的下载地址;
7.待升级终端进行升级校验:待升级终端接收所述升级命令,通过所述下载地址获取所述升级包的文件名和软件版本号,并对所述文件名和所述软件版本号分别进行识别校验,校验成功后执行下一步骤;
8.升级包交互传送:
9.待升级终端向升级平台发送一个带有分包序号的请求数据包;
10.升级平台接收所述请求数据包并向待升级终端发送一个与所述分包序号对应的分包数据帧;
11.待升级终端接收所述分包数据帧并对其进行校验;
12.重复执行以上三个步骤直至待升级终端接收到全部分包数据帧;
13.待升级终端进行升级包搬运:待升级终端对所述全部升级数据帧进行总校验并将其搬运到旧版本运行区,再进行全包校验;
14.待升级终端复位并重新运行:对待升级终端进行复位,pc指针跳转到新版本app的首地址。
15.进一步地,所述步骤升级平台下发升级通知之前还包括以下步骤:
16.运维人员向升级平台上传升级包;
17.待升级终端向升级平台上报心跳包,所述心跳包包括软硬件版本信息;
18.升级平台根据所述心跳包判断所述待升级终端是否满足升级条件,若是,则执行下一步骤,若否,升级平台提示升级流程结束。
19.进一步地,所述升级包的文件名包括bin文件名及所述bin文件名的md5值,所述bin文件名包括设备名称、主板本号、副版本号和beta版本号。
20.进一步地,还包括升级协议,所述升级协议包括升级平台下行payload格式和待升级终端上行以及应答payload格式。
21.进一步地,所述升级平台下行payload格式包括新升级包提示帧和升级数据帧。
22.进一步地,所述新升级包提示帧的帧格式为:url+空格+总分包个数,所述url为升级包下载地址。
23.进一步地,所述升级数据帧的帧格式为:包序号+包长+数据+第一校验值+第二校验值。
24.进一步地,所述待升级终端上行以及应答payload格式包括请求升级包和应答帧。
25.进一步地,所述请求升级包的帧格式为:url+空格+请求升级包序号,所述url为升级包下载地址。
26.进一步地,所述应答帧的内容包括单包校验错误信息、升级包下载完成信息、整包校验正确信息、整包校验错误信息、整包设备类型错误信息、整包版本号错误信息。
27.本发明的有益效果:本发明提供了一种物联网ota升级方法,通过在升级平台和待升级终端之间约定升级协议,升级平台通过升级协议将升级数据一帧一帧地交互传送给待升级终端,实现了使用lwm2m或者coap协议的nb物联网终端的ota升级,填补了nb物联网终端ota升级技术的空白。
附图说明
28.图1是本发明实施例物联网ota升级方法的流程图。
具体实施方式
29.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
30.以下结合具体实施例对本发明的具体实现进行详细描述:
31.实施例:
32.如图1所示,本发明实施例提供一种物联网ota升级方法,应用于物联网的升级平台和使用lwm2m或者coap协议的待升级终端,待升级终端的存储空间包括用于存储和运行app代码的app区、用于存储从升级平台下载的升级包的bak区以及boot分区,boot负责将升级包从bak区搬运至app区,将升级包分为n个分包序列,所述n为分包的总数量,包括以下步骤:
33.步骤s10、升级平台下发升级通知:
34.升级平台向待升级终端发送升级命令,所述升级命令包括所述升级包的下载地址;
35.步骤s20、待升级终端进行升级校验:
36.待升级终端接收所述升级命令,通过所述下载地址获取所述升级包的文件名和软件版本号,并对所述文件名和所述软件版本号分别进行识别校验,校验成功后执行下一步骤;
37.步骤s30、升级包交互传送:
38.步骤s31、待升级终端向升级平台发送一个带有分包序号的请求数据包;
39.步骤s32、升级平台接收所述请求数据包并向待升级终端发送一个与所述分包序号对应的分包数据帧;
40.步骤s33、待升级终端接收所述分包数据帧并对其进行校验;
41.步骤s34、判断待升级终端是否接收完全部升级数据帧,若是,则执行下一步骤,若不是,跳到步骤s31;
42.步骤s40、待升级终端进行升级包搬运:
43.待升级终端对所述全部升级数据帧进行总校验并将其搬运到旧版本运行区,再进行全包校验;
44.步骤s50、待升级终端复位并重新运行:
45.对待升级终端进行复位,pc指针跳转到新版本app的首地址。
46.进一步地,在步骤s10之前还包括以下步骤:
47.步骤s01、运维人员向升级平台上传升级包;
48.步骤s02、待升级终端向升级平台上报心跳包,心跳包包括软硬件版本信息;
49.步骤s03、升级平台根据心跳包判断待升级终端是否满足升级条件,若是,则执行步骤s10,若否,升级平台提示升级流程结束。
50.进一步地,在步骤s10中,升级包的文件名包括bin文件名及bin文件名的md5值,bin文件名包括设备名称、主板本号、副版本号和beta版本号。
51.进一步地,还包括升级协议,升级协议包括升级平台下行payload格式和待升级终端上行以及应答payload格式。
52.进一步地,升级平台下行payload格式包括新升级包提示帧和升级数据帧。
53.进一步地,新升级包提示帧的帧格式为:url+空格+总分包个数,url为升级包下载地址,见如下示例1:
54.新升级包提示帧:
55.http://ota.3jyun.com/upgradepackage/rms-app/03.14.42/jt_bf_20tnv 1.0.3 1c2”56.其中,url地址为:
57.http://ota.3jyun.com/upgradepackage/rms-app/03.14.42/jt_bf_20tnv 1.0.3
58.总分包数量为1c2,代表总共0x1c2=450包。
59.进一步地,升级数据帧的帧格式为:包序号+包长+数据+第一校验值+第二校验值,见如下示例2:
60.升级数据帧:
61.0a5bf002081d02...7f2e9f5c
62.其中,
63.0a5b:包序号,代表第0x0a5b=2651包数据;
64.f0:包长,代表有效数据长度为0xf0=240bytes;
65.02081d02...:代表加密过的有效数据;
66.7f2e:代表上述分包数据的crc16_1校验值0x7f2e;
67.9f5c:代表上述分包数据的crc16_2校验值0x9f5c。
68.进一步地,待升级终端上行以及应答payload格式包括请求升级包和应答帧。
69.进一步地,请求升级包的帧格式为:url+空格+请求升级包序号,url为升级包下载地址。
70.见如下示例3:
71.请求升级包:
72.http://ota.3jyun.com/upgradepackage/rms-app/03.14.42/jt_bf_20tnv 1.0.3 c5
73.其中,
74.http://ota.3jyun.com/upgradepackage/rms-app/03.14.42/jt_bf_20tnv 1.0.3为平台下发升级包下载地址;
75.c5为所请求的升级包序号。
76.进一步地,应答帧的内容包括单包校验错误信息、升级包下载完成信息、整包校验正确信息、整包校验错误信息、整包设备类型错误信息、整包版本号错误信息。
77.以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
技术特征:
1.一种物理网ota升级方法,应用于物联网的升级平台和使用lwm2m或者coap协议的待升级终端,所述待升级终端的存储空间包括用于存储和运行app代码的app区、用于存储从所述升级平台下载的升级包的bak区以及boot分区,boot负责将升级包从bak区搬运至app区,其特征在于,将升级包分为n个分包序列,所述n为分包的总数量,所述方法包括以下步骤:升级平台下发升级通知:升级平台向待升级终端发送升级命令,所述升级命令包括所述升级包的下载地址;待升级终端进行升级校验:待升级终端接收所述升级命令,通过所述下载地址获取所述升级包的文件名和软件版本号,并对所述文件名和所述软件版本号分别进行识别校验,校验成功后执行下一步骤;升级包交互传送:待升级终端向升级平台发送一个带有分包序号的请求数据包;升级平台接收所述请求数据包并向待升级终端发送一个与所述分包序号对应的分包数据帧;待升级终端接收所述分包数据帧并对其进行校验;重复执行以上三个步骤直至待升级终端接收到全部分包数据帧;待升级终端进行升级包搬运:待升级终端对所述全部升级数据帧进行总校验并将其搬运到旧版本运行区,再进行全包校验;待升级终端复位并重新运行:将待升级终端复位后重新运行,pc指针跳转到新版本app的首地址。2.根据权利要求1所述的物联网ota升级方法,其特征在于,所述步骤升级平台下发升级通知之前还包括以下步骤:运维人员向升级平台上传升级包;待升级终端向升级平台上报心跳包,所述心跳包包括软硬件版本信息;升级平台根据所述心跳包判断所述待升级终端是否满足升级条件,若是,则执行下一步骤,若否,升级平台提示升级流程结束。3.根据权利要求1所述的物联网ota升级方法,其特征在于,所述升级包的文件名包括bin文件名及所述bin文件名的md5值,所述bin文件名包括设备名称、主板本号、副版本号和beta版本号。4.根据权利要求1所述的物联网ota升级方法,其特征在于,还包括升级协议,所述升级协议包括升级平台下行payload格式和待升级终端上行以及应答payload格式。5.根据权利要求4所述的物联网ota升级方法,其特征在于,所述升级平台下行payload格式包括新升级包提示帧和升级数据帧。6.根据权利要求5所述的物联网ota升级方法,其特征在于,所述新升级包提示帧的帧格式为:url+空格+总分包个数,所述url为升级包下载地址。7.根据权利要求5所述的物联网ota升级方法,其特征在于,所述升级数据帧的帧格式为:包序号+包长+数据+第一校验值+第二校验值。8.根据权利要求4所述的物联网ota升级方法,其特征在于,所述待升级终端上行以及应答payload格式包括请求升级包和应答帧。
9.根据权利要求8所述的物联网ota升级方法,其特征在于,所述请求升级包的帧格式为:url+空格+请求升级包序号,所述url为升级包下载地址。10.根据权利要求8所述的物联网ota升级方法,其特征在于,所述应答帧的内容包括单包校验错误信息、升级包下载完成信息、整包校验正确信息、整包校验错误信息、整包设备类型错误信息、整包版本号错误信息。
技术总结
本发明适用物联网技术领域,发明提供了一种物联网OTA升级方法,该方法包括升级平台下发升级通知、升级校验、升级包交互传送、搬运和复位并重新运行等步骤,通过将升级包分为多个分包序列,升级平台将分包数据帧一帧一帧地交互传送给待升级终端,实现了使用LWM2M或者Coap协议的NB物联网终端的OTA升级,填补了NB物联网终端OTA升级技术的空白。物联网终端OTA升级技术的空白。物联网终端OTA升级技术的空白。
技术研发人员:邹丹霞 关锡康 王少卿 刘章平 吴添赐
受保护的技术使用者:深圳市三江智控科技有限公司
技术研发日:2022.01.06
技术公布日:2023/7/20
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
