CN112104721A - 一种ota远程升级文件下载方法 - Google Patents

一种ota远程升级文件下载方法 Download PDF

Info

Publication number
CN112104721A
CN112104721A CN202010918299.4A CN202010918299A CN112104721A CN 112104721 A CN112104721 A CN 112104721A CN 202010918299 A CN202010918299 A CN 202010918299A CN 112104721 A CN112104721 A CN 112104721A
Authority
CN
China
Prior art keywords
remote upgrade
file
ota remote
ota
upgrade file
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010918299.4A
Other languages
English (en)
Inventor
鞠培剑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Innovative Control Technology Co ltd
Original Assignee
Qingdao Innovative Control Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qingdao Innovative Control Technology Co ltd filed Critical Qingdao Innovative Control Technology Co ltd
Priority to CN202010918299.4A priority Critical patent/CN112104721A/zh
Publication of CN112104721A publication Critical patent/CN112104721A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]

Abstract

本发明属于空中下载技术领域,涉及一种OTA远程升级方法,提供了SOC系统在无线网络信号不易到达的区域使用串口‑GPRS模块,以拆分文件的方式进行OTA远程升级文件下载的方案,并使用MD5校验,提高OTA远程升级文件下载的成功率,首先,将大文件拆分为小文件后对其进行MD5校验,然后,使用串口‑GPRS模块进行文件传输,达到OTA远程升级文件的下载,解决SOC系统使用低成本串口‑GPRS模块时,由于串口‑GPRS模块内存太小而不能下载较大OTA远程升级文件的问题,同时,使用MD5算法替代CRC校验算法,对下载的文件进行校验,保证OTA远程升级文件下载的正确性,提高OTA远程升级文件下载的成功率。

Description

一种OTA远程升级文件下载方法
技术领域:
本发明属于空中下载技术领域,具体涉及一种OTA(空中下载技术)远程升级方法,基于SOC(系统级芯片)的串口-GPRS(通用分组无线服务)模块,通过MD5(消息摘要算法)校验方式下载OTA远程升级文件。
背景技术:
目前,SOC系统的OTA程序下载,主要有两种方式:一是使用普通数据包的形式下载,每包数据使用CRC(循环冗余校验)方式单独校验,适用于CPU(中央处理器)处理能力较弱、内存较小的单片机,如51(51单片机),STM32(嵌入式单片机)等,数据传输方式包括串口-GPRS、串口-WIFI(无线上网)和串口-4G(第四代移动通信技术)等;二是使用文件的形式下载,文件校验方式千差万别,适用于CPU处理能力较强、内存较大、支持文件系统的SOC系统,如手机、LCD(液晶显示器)智控屏等,数据传输的方式包括wifi和4G等。
很多SOC系统都使用串口-GPRS模块进行数据传输和远程文件下载。以Quectel(上海移远通信技术股份有限公司)的串口-GPRS模块为例,为了降低成本,串口-GPRS模块内存较小,只有几百Kbytes(千字节),并且不支持断点传输,不能进行较大文件的下载。导致使用类似模块的SOC系统,不能使用文件的形式下载OTA远程升级包。
MD5算法可以产生出一个16字节的散列值,常用于数据加密和文件校验。MD5算法的原理为:MD5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后生成一个128位散列值。
MD5算法包括以下几个步骤:
1)填充:通过填充一个1和n个0的填充方法对输入信息的长度(bit)进行填充,使得对512求余的结果等于448;
2)记录信息长度:用64位存储填充后的信息长度,将64位加在步骤1)的填充结果后面:信息长度=N×512+448+64=(N+1)×512位;
3)装入标准的幻数:将标准的幻数:(A=(01234567)16,B=(89ABCDEF)16,C=(FEDCBA98)16,D=(76543210)16),定义为:(A=0X67452301L,B=0XEFCDAB89L,C=0X98BADCFEL,D=0X10325476L);
4)四轮循环运算:以循环次数是分组的个数(N+1)进行循环。
根据电磁波的物理特性,在无线通信技术中,GPRS信号虽然有数据传输速率慢的缺点,但是相比于3/4G信号,具有传播距离远、穿透能力强、抗干扰能力强的特性,特别适应于野外、偏远山区、信号难以穿透的多层建筑物内部等电磁信号不易达到的地方。基于此,很多SOC系统在上述情景下使用串口-GPRS模块作为远程数据传输的手段。
SOC系统一般具有CPU处理能力强,内存和FLASH(闪存)空间大,支持文件系统、UI(用户界面)显示等特点,但是,OTA往往比较大,远程升级需要的数据往往较大,现在的串口-GPRS模块往往内存空间比较小,不支持断电传输,不能传输较大的文件,使得SOC系统使用串口-GPRS模块进行远程升级时困难重重。其次,现有技术中,大多使用CRC校验方式验证数据的正确性,CRC校验的编程比较简单,容易实现,在需要校验的数据量较小的情况下是合适的,但当数据量较大时,存在不准确的情形。因此,为了提高SOC系统使用串口-GRPS模块进行OTA远程升级的成功率,研发设计一种OTA远程升级文件下载方法,采用公开MD5算法,以将OTA文件拆分为多个小文件的形式,对使用串口-GPRS模块下载下来的小文件进行MD5校验的方式,保证SOC系统使用串口-GPRS模块进行OTA远程升级的正确性,提高OTA远程升级的成功率。
发明内容:
本发明的目的在于克服现有技术存在的缺点,寻求设计一种OTA远程升级文件下载方法,使用低成本的SOC系统实现大文件OTA远程升级文件的下载,并通过MD5方式进行校验,大大提高下载OTA远程文件的准确率。
为了实现上述目的,本发明涉及的OTA远程升级文件下载方法的工艺过程包括以下步骤:
步骤1:SOC系统使用HTTP(超文本传输协议)POST(向指定的资源提交要被处理的数据)方法向服务器请求OTA远程升级文件的路径,当连续5次获取失败时,放弃本次OTA远程升级文件,返回用户选择界面,等待用户重新选择下载;
步骤2:SOC系统成功获取OTA远程升级文件的路径后,按照服务器返回的OTA远程升级文件路径,下载MD5校验文件,MD5校验文件包含MD5散列值,MD5散列值的个数是SOC系统要下载的OTA远程升级文件的总个数,每个OTA远程升级文件对应一个16字节的散列值,SOC系统下载OTA远程升级文件1后,计算OTA远程升级文件1的MD5散列值,并将计算的MD5散列值与MD5效验文件中对应的MD5散列值进行比对,当二者相同时,表明SOC系统下载的OTA远程升级文件1是正确的,当二者不同时,表明SOC系统下载的OTA远程升级文件1是错误的,SOC系统从服务器重新下载OTA远程升级文件1,当连续5次下载失败时,退出下载流程,等待用户重新选择下载;
步骤3:SOC系统下载OTA远程升级文件1后,继续下载OTA远程升级文件2,并验证无误后,将OTA远程升级文件2合并到OTA远程升级文件1中,以此类推,直到下载完所有的OTA远程升级文件后,将验证无误的OTA远程升级文件合并成一个最终文件,最终文件验证无误后,启动SOC系统调用,将最终文件烧写到指定的FLASH中,进行OTA远程升级文件的升级流程。
本发明涉及的OTA远程升级文件下载方法使用前,将OTA远程升级文件拆分成若干个小于等于300Kbyte(字节)的小文件,对每个小文件进行MD5校验,将校验得到的若干个MD5散列值保存到统一生成的MD5文件中,并上传到服务器指定的位置。
本发明与现有技术相比,提供了SOC系统在无线网络信号不易到达的区域使用串口-GPRS模块,以拆分文件的方式进行OTA远程升级文件下载的方案,并使用MD5校验,提高了OTA远程升级文件下载的成功率,首先,将大文件拆分为小文件,并对小文件进行MD5校验,然后,使用串口-GPRS模块进行文件传输,达到OTA远程升级文件的下载;其原理科学可靠,解决了SOC系统使用低成本串口-GPRS模块时,由于串口-GPRS模块内存太小而不能下载较大OTA远程升级文件的问题,同时,使用MD5算法替代CRC校验算法,对下载的文件进行校验,保证了OTA远程升级文件下载的正确性,提高了OTA远程升级文件下载的成功率,尤其适用于无线传输信号较难达到、对成本很敏感的场景。
附图说明:
图1为本发明的工艺流程框图。
具体实施方式:
下面通过实施实例并结合附图对本发明做进一步描述。
实施例1:
本实施例涉及的OTA远程升级文件下载方法在非洲无线信号不好的地方使用时,选用的GPRS模块是中国移远公司的串口-GPRS模块M26,优点是信号稳定,成本便宜,缺点是功能单一,内存较小,不支持断点续传;使用的SOC系统是联阳的IT976E,OTA远程升级文件较大,GPRS模块不能一次下载;根据OTA远程升级文件下载方法的工艺流程:首先,将大小为8,872,252BytesOTA远程升级文件拆分为编号为0—29的30个小文件,其中,编号为0—28的小文件为300Kbytes,编号为29的小文件为172,252Bytes;对每个小文件进行MD5校验,然后,使用串口-GPRS模块进行文件传输,传输时间根据GPRS网络信号状况的不同而不同,经过多次实践,传输时间在30分钟到1个小时之间,每次均能顺利完成OTA远程升级文件的下载,提升了OTA远程升级文件下载的成功率,验证了稳定性。

Claims (2)

1.一种OTA远程升级文件下载方法,其特征在于工艺过程包括以下步骤:
步骤1:SOC系统使用HTTP POST方法向服务器请求OTA远程升级文件的路径,当连续5次获取失败时,放弃本次OTA远程升级文件,返回用户选择界面,等待用户重新选择下载;
步骤2:SOC系统成功获取OTA远程升级文件的路径后,按照服务器返回的OTA远程升级文件路径,下载MD5校验文件,MD5校验文件包含MD5散列值,MD5散列值的个数是SOC系统要下载的OTA远程升级文件的总个数,每个OTA远程升级文件对应一个16字节的散列值,SOC系统下载OTA远程升级文件1后,计算OTA远程升级文件1的MD5散列值,并将计算的MD5散列值与MD5效验文件中对应的MD5散列值进行比对,当二者相同时,表明SOC系统下载的OTA远程升级文件1是正确的,当二者不同时,表明SOC系统下载的OTA远程升级文件1是错误的,SOC系统从服务器重新下载OTA远程升级文件1,当连续5次下载失败时,退出下载流程,等待用户重新选择下载;
步骤3:SOC系统下载OTA远程升级文件1后,继续下载OTA远程升级文件2,并验证无误后,将OTA远程升级文件2合并到OTA远程升级文件1中,以此类推,直到下载完所有的OTA远程升级文件后,将验证无误的OTA远程升级文件合并成一个最终文件,最终文件验证无误后,启动SOC系统调用,将最终文件烧写到指定的FLASH中,进行OTA远程升级文件的升级流程。
2.根据权利要求1所述的OTA远程升级文件下载方法,其特征在于使用前,将OTA远程升级文件拆分成若干个小于等于300Kbyte的小文件,对每个小文件进行MD5校验,将校验得到的若干个MD5散列值保存到统一生成的MD5文件中,并上传到服务器指定的位置。
CN202010918299.4A 2020-09-02 2020-09-02 一种ota远程升级文件下载方法 Pending CN112104721A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010918299.4A CN112104721A (zh) 2020-09-02 2020-09-02 一种ota远程升级文件下载方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010918299.4A CN112104721A (zh) 2020-09-02 2020-09-02 一种ota远程升级文件下载方法

Publications (1)

Publication Number Publication Date
CN112104721A true CN112104721A (zh) 2020-12-18

Family

ID=73757449

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010918299.4A Pending CN112104721A (zh) 2020-09-02 2020-09-02 一种ota远程升级文件下载方法

Country Status (1)

Country Link
CN (1) CN112104721A (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103440142A (zh) * 2013-07-22 2013-12-11 珠海中慧微电子有限公司 基于gprs远程升级及动态加载方法
CN103473088A (zh) * 2013-08-30 2013-12-25 北京远特科技有限公司 一种单片机在线升级方法和系统
CN103517141A (zh) * 2013-10-11 2014-01-15 成都三零凯天通信实业有限公司 基于ip机顶盒分段式数据升级方法
CN103902309A (zh) * 2012-12-27 2014-07-02 龙尚智联通信科技(上海)有限公司 一种远程升级无线模块固件的方法
CN104166565A (zh) * 2014-08-11 2014-11-26 成都瑞博慧窗信息技术有限公司 一种智能显示终端固件升级方法
CN104580484A (zh) * 2015-01-19 2015-04-29 云顶科技(江苏)有限公司 一种gprs终端的远程升级方法
CN105933150A (zh) * 2016-04-20 2016-09-07 努比亚技术有限公司 Ota升级方法、装置及系统
CN110955896A (zh) * 2019-10-30 2020-04-03 西安海云物联科技有限公司 一种通过近场通信实现单片机固件安全升级的方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103902309A (zh) * 2012-12-27 2014-07-02 龙尚智联通信科技(上海)有限公司 一种远程升级无线模块固件的方法
CN103440142A (zh) * 2013-07-22 2013-12-11 珠海中慧微电子有限公司 基于gprs远程升级及动态加载方法
CN103473088A (zh) * 2013-08-30 2013-12-25 北京远特科技有限公司 一种单片机在线升级方法和系统
CN103517141A (zh) * 2013-10-11 2014-01-15 成都三零凯天通信实业有限公司 基于ip机顶盒分段式数据升级方法
CN104166565A (zh) * 2014-08-11 2014-11-26 成都瑞博慧窗信息技术有限公司 一种智能显示终端固件升级方法
CN104580484A (zh) * 2015-01-19 2015-04-29 云顶科技(江苏)有限公司 一种gprs终端的远程升级方法
CN105933150A (zh) * 2016-04-20 2016-09-07 努比亚技术有限公司 Ota升级方法、装置及系统
CN110955896A (zh) * 2019-10-30 2020-04-03 西安海云物联科技有限公司 一种通过近场通信实现单片机固件安全升级的方法

Similar Documents

Publication Publication Date Title
US8041792B2 (en) Client processor device for building application files from file fragments for different versions of an application
US8606891B2 (en) Client processor device for building application files from file fragments for different versions of an application
EP2568639B1 (en) Method, apparatus and system for processing firmware based on firmware over the air technology
CN110471692B (zh) 终端程序的空中升级方法、装置、设备及存储介质
CN102510409A (zh) 一种利用无线网络对移动终端程序快速远程更新的方法及系统
CN109391673A (zh) 一种管理更新文件的方法、系统及终端设备
CN103685487A (zh) 无线通信网络中的子节点升级方法
WO2022142153A1 (zh) 电表升级方法、系统、智能电表及存储介质
CN112104721A (zh) 一种ota远程升级文件下载方法
WO2019095952A1 (zh) 一种进行同步的方法和装置
CN111695098A (zh) 多分布式集群访问方法及装置
CN114827967B (zh) 软件更新方法、蓝牙设备及存储介质
Yang et al. The Design of Remote Update System Based on GPRS Technology
CN116057925A (zh) 一种数据传输方法、数据下载方法及终端
CN112631694A (zh) 一种api接口封装调用方法及系统
Chai et al. Improvement and implementation of iot device's program upgrade system on cloud platform
CN111614601B (zh) 一种信息传输的实现方法、装置和系统
CN110737456B (zh) 一种无线耳机的在线升级方法及耳机设备
CN117858089A (zh) 一种数据处理方法、装置、存储介质及设备
CN113438629A (zh) 物联网的LoRa节点配置方法、装置、设备、终端及介质
AU2011244901B2 (en) Client processor device
CN106021367B (zh) 一种查找备份数据的方法及终端
CN116483755A (zh) 用于嵌入式芯片的串口数据烧写方法和电子设备
WO2022188281A1 (zh) 电能表升级方法、电能表及计算机可读存储介质
CN113886488A (zh) 数据上链与验证系统、方法、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20201218

RJ01 Rejection of invention patent application after publication