浅谈OTA升级原理及应用

浅谈OTA升级原理及应用

随着智能设备的普及,从手机系统手动升级到路由器自启动升级,甚至是汽车内的智能设备升级,那么固件升级到底是什么呢?通过什么原理来实现固件升级的呢?有哪些常见的固件升级方式?今天,咱们来一探究竟。

所谓固件升级,是指对底层的软件进行修改、替换从而使得硬件增加新功能或者更好的工作(修复和改善)。固件又叫做韧体,英文是firmware。

固件一般存储于设备中的电可擦除只读存储器EEPROM(Electrically Erasable Programmable ROM)或FLASH芯片中,一般可由用户通过特定的刷新程序进行升级的程序。一般来说,担任着一个数码产品最基础、最底层工作的软件才可以称之为固件,比如计算机主板上的基本输入/输出系统BIOS(Basic Input/output System),在以前其实更多的专业人士叫它固件。

通常这些硬件内所保存的程序是无法被用户直接读出或修改的。在以前,一般情况下是没有必要对固件进行升级操作的,即使在固件内发现了严重的Bug也必须由专业人员带着写好程序的芯片把原来机器上的更换下来。这是因为早期固件芯片一般采用了ROM设计,它的Firmware代码是在生产过程中固化的,用任何手段都无法修改。

浅谈OTA升级原理及应用

因此,方便快捷的OTA技术,来更新版本、优化体验、让产品保持先进性,成为了智能硬件产品的必要手段之一。

比如说

手机厂商通过OTA升级,将最新版的操作系统自动推送到客户的设备,而手动更新会通知用户有关可用升级的信息,用户可以接受或拒绝在其设备上下载和安装新的软件版本。
与此类似的是汽车厂商通过OTA升级,将车辆的各项性能进行提升,而无须将车辆召回至门店,可以节省大量费用,用户可以通过远程升级提升车辆性能和体验。
随着物联网在智能家电等消费电子产品上的应用,我们也能看到智能音箱、扫地机器人会自动更新功能,还是OTA技术在起作用。
在生活中,在使用这些智能产品的时候,有的需要我们手动确认才会自动升级,有的则会自动检测更新升级,这背后是什么原因呢?

原来是操作方式的不同

一种是后台式升级

即在进行升级的时候,接收新固件包的方式是在后台进行的,不会影响功能的正常执行。等到固件更新完成之后,再跳转到Bootloader中去用新的固件替换旧的固件,替换完成之后呢再跳转到App去执行。
比如,现在的智能手机的在线更新就是后台式升级的方式。在你升级系统的时候,接收升级包的过程中,你还是可以正常使用的手机的,打电话、看视频、玩游戏等都不耽误,直到下载完成,你点击了开始更新之后,手机才进入更新状态,不让你操作,等更新完毕之后重启就又可以继续操作了。
另一种是非后台式式更新

即在进行升级的时候,接收固件时需要跳转到Bootloader,这个时候你不能在使用这个产品的任何功能,只能一直等着它接收并完成更新,完成之后你才能继续操作其他的功能。
比如说有的智能音箱、扫地机器人,在你隔了很久没用再打开的时候,开机的话很可能会自动提示xxx在升级,请您耐心等待一会儿。
不管哪种操作方式,主要流程几乎如出一辙

制造升级包

下载升级包

验签升级包

固件更新

在实现这些流程的过程中,不仅需要全面考虑如何才能接收固件、如何保证固件的完整性和合法性、如何替换固件,还要固件向下兼容设计、版本管理、固件推送统计和分布,这些需要端+云+业务逻辑三方配合,也涉及到芯片、OS、连接和场景等多种方面,会大大增加OTA研发成本。因此,大部分企业会考虑借助第三方平台来完成OTA升级。

为了让智能设备高效、安全、稳定的实现升级,机智云推出OTA升级服务,支持多种定向升级策略,如按批次、按地域、按原固件版本等条件进行远程推送,解决智能设备出厂后的持续升级要求,优化产品性能,提升体验感。

企业只需通过机智云开发者中心,在线添加推送固件及规则,完成验证固件,确认开始推送,待推送完成,即可在线查询推送结果。还能根据流水号查看推送详情,在线进行版本推送管理,通过图表形式查看版本分布情况。

浅谈OTA升级原理及应用

 

机智云的OTA服务功能如下:

OTA通知服务,即离线升级。当设备的固件程序有新版本发布,OTA 通知服务会推送升级通知到设备。

OTA透传服务,即在线升级。设备固件程序通过M2M 消息服务透传到设备端。

支持一个产品同时有多个推送。

支持Wi-Fi/MCU升级。

支持推送全部设备。

支持定向升级设备。可指定设备mac地址、区域、旧固件版本进行推送。

支持定时推送。可自定义推送周期及推送时段。

OTA版本推送记录。

OTA进度统计分析。

登陆 dev.gizwits.com ,体验机智云OTA服务

OTA使用指南devdocs.gizwits.com/zh-cn/ProductDev/AddProduct/CreatProduct.html

发表回复 0

Your email address will not be published. Required fields are marked *