大数跨境
0
0

你所不知道的OTA

你所不知道的OTA 睿芯电子科技
2021-09-30
0
导读:Over the Air Technology

先了解一下什么是OTA,OTA(英文全称:Over the Air Technology)空中下载技术,是通过空中接口对数据及应用进行远程管理的技术,空中接口可以采用WAP、GPRS、CDMA1X、WIFI及4G技术。一般来说,OTA 分为两类,一种是 FOTA(Firmware-over-the-air,固件在线升级),指的是给一个设备、ECU 闪存下载完整的固件镜像,或者修补现有固件、更新闪存。而固件之外的软件更新,就是 SOTA(Software-over-the-air,软件在线升级),应用程序和地图 OTA,都属于 SOTA 的范畴。从功能上,OTA 除了简单只是优化一下 UI,更新一下娱乐系统,还具备具备深度更新软件的能力。


以STM8单片机升级为例,单片机最小系统运行流程如下:图片要加入在线升级功能,就需要将主应用程序拆分,类似有2套程序在设备内运行,标准称呼是bootload+app,其中bootload始终不变,它接收新软件包并覆盖app区域。


OTA数据分区

ESP32 SPI Flash 内有与升级相关的(至少)四个分区:OTA data、Factory App、OTA_0、OTA_1。其中 FactoryApp 内存有出厂时的默认固件。

首次进行 OTA 升级时,OTA Demo 向 OTA_0 分区烧录目标固件,并在烧录完成后,更新 OTA data 分区数据并重启。

系统重启时获取 OTA data 分区数据进行计算,决定此后加载 OTA_0 分区的固件执行(而不是默认的 Factory App 分区内的固件),从而实现升级。

同理,若某次升级后 ESP32 已经在执行 OTA_0 内的固件,此时再升级时 OTA Demo 就会向 OTA_1 分区写入目标固件。再次启动后,执行 OTA_1 分区实现升级。以此类推,升级的目标固件始终在 OTA_0、OTA_1 两个分区之间交互烧录,不会影响到出厂时的 Factory App 固件。


在线升级为了产品在不召回的情况下,以较低的成本解决售后问题;升级是为了解决问题,但是一旦失败则可能导致设备变砖。前期测试应选择不同设备模拟升级异常,如强制断电或软件包异常,设备必须有自我恢复的机制。


【声明】内容源于网络
0
0
睿芯电子科技
中山市睿芯电子科技有限公司,是一家集软硬件研发,销售及相关的技术服务于一体的综合型科技公司。紧随时代步伐,为用户打造舒适智能化生活,永不止步。
内容 7
粉丝 0
睿芯电子科技 中山市睿芯电子科技有限公司,是一家集软硬件研发,销售及相关的技术服务于一体的综合型科技公司。紧随时代步伐,为用户打造舒适智能化生活,永不止步。
总阅读0
粉丝0
内容7