【艾拉比】基于乐鑫ESP8266的STM32+WIFI的OTA案例分享

2019-09-12 10:56:12 来源:EEFOCUS
标签:

在之前文章中(STM32L425RE的差分升级能力构建、【艾拉比】基于移远BC28的STM32+NB-IOT的OTA案例分享),我们演示了如何利用艾拉比的差分技术通过NB网络升级STM32的APP固件。本篇案例我们将换个方向,详细介绍如何通过WIFI模组将STM32F469的下载差分包,并且利用艾拉比的差分技术进行升级。

 

升级方案的设计

考虑到ESP8266模组内部的空间资源都十分的充足,所以我们为这个案例的升级设计了两套升级方案,下面我们分别展开来描述这两种方案。

 

(1) WIFI模组透传差分包升级MCU

如下面框架图所示,与NB网络下升级MCU的方式一致,需要在MCU里内置艾拉比的UA和UC的程序,同样MCU上也要规划一块区域来存放差分包。

 

 

基于上面的软件框架,我们将基于HTTP协议来和OTA服务器进行交互通信,以下是整个升级的流程图:

 

 

从上图中我们可以看到整个升级的流程分以下几个步骤:

 

1. STM32透过ESP8266,向OTA服务器发起注册请求。OTA服务器透过ESP8266下发注册结果,STM32将这些注册信息保存下来

 

2. STM32透过ESP8266,向OTA服务器发起检测版本的请求。OTA服务器透过ESP8266下发新版本的信息,这其中包含了差分包的下载地址

 

3. STM32基于得到的下载地址,透过ESP8266向OTA服务器发送下载差分包请求。OTA服务器会根据请求将差分包透过ESP8266下发给STM32,STM32在收到后将这些数据存储在差分包存储区域

 

4. STM32在下载完差分包并经过校验后,透过ESP8266上报下载升级包的结果给到OTA服务器。OTA服务器透过ESP8266下发上报结果

 

5. STM32在接收到云端返回的上报结果后,进行软重启,启动UA程序

 

6. STM32运行UA程序,进行差分升级,升级完成后存储本次升级的结果并进入系统

 

7. STM32透过ESP8266上报本次升级的结果给到OTA服务器。OTA服务器透过ESP8266下发上报结果

 

8. STM32在接收到云端返回的上报结果后,断开网络,至此整个升级流程结束

 

(2) WIFI内部完成MCU升级回刷MCU方案

如下面框架图所示, 这个方案需要在ESP8266内置入UC和UA程序,并且在ESP8266内划分两个区域,一个区域用于存储下载的差分包,另外一个用于临时存储MCU的部分固件。

 

 

基于上面的软件框架,我们将基于HTTP协议来和OTA服务器进行交互通信,以下是整个升级的流程图:

 

 

从上图中我们可以看到整个升级的流程分以下几个步骤:

 

1. STM32向ESP8266发起升级请求

 

2. ESP8266通过获取的STM32的信息,向OTA服务器发送注册请求

 

3. OTA服务器返回注册信息给到ESP8266,ESP8266将MCU的注册信息存储下来

 

4. ESP8266向OTA服务器发起STM32的检测请求, OTA服务器返回STM32新版本的信息


 

5. ESP8266根据获取的新版本信息,向OTA服务器发起下载差分包的请求,OTA服务器收到请求后下发差分包。

 

6. ESP8266收到差分包,并校验通过后,向OTA服务器发送下载情况上报请求,OTA服务器收到后返回上报结果。

 

7. ESP8266中的UC程序通知UA程序开始进行STM32的差分升级

 

8. ESP8266中的UA程序完成MCU的固件升级后,向STM32请求回刷固件,在STM32允许刷写后,进行固件回刷

 

9. ESP8266中UA程序在STM32升级完成后,存储升级的结果,并通UC程序进行升级结果上报,UC在收到通知后,向OTA服务器上报STM32升级的结果,OTA服务器收到后返回上报的结果给到ESP8266

 

10. ESP8266收到OTA服务器下发的上报结果后,断开网络,至此整个升级流程结束。

 

从上面两个升级方案中,MCU的升级都采用的是差分升级,这相较于传统WIFI下的MCU升级优势在于:

 

(1)升级包下载的时间大大减小,同时也降低了升级的功耗。

 

(2) 升级的时间也会比整包升级的时间也大为减小,整体提升了升级的效率。下面我们再来看一下,整个设备升级的实际过程。

设备操作流程

 

从下面两张图上我们看到,一张图是STM32F469的Discovery开发板子,一张图是ESP8266的串口模块,我们将通过串口线将两个设备连接在一起,对STM32开发板进行差分升级。

 


这个STM32的开发板是支持触屏操作的,所以首先我们点击屏幕上的“Check for Update“发起升级流程。

 

 

点击屏幕后,OTA服务器很快返回了新版本的信息,屏幕这时候也显示了新版本的差分包大小。

 

 

检测到新版本后,设备会自动去请求下载差分包,从下面两张图中我们可以从屏幕上看到下载的进度显示。

 

 

从上图来看,差分包已经下载完成,设备会立即向OTA服务器上报这个下载的结果。我们也可以从PC上的Debuger工具中看到这个过程的log

 

 

差分包下载完成后,设备会进行重启,进入了bootloader,在这个阶段,集成在设备bootloader里的UA程序会进行差分升级的工作,我们从下面两张图来看一下这个过程

 

 

从上图可以看到,屏幕上显示升级进度已经完成,升级已经完成,我们也可以在PC端的Debuger工具中看到这个过程

 

 

接下来,设备会进入APP,我们为了区别版本特意将这个版本的屏幕颜色做了改动,大家可以从下面两张图上看到

 

 

我们从屏幕上可以看到,这个时候软件的版本好已经升级为2.0,设备自动开始

 

升级结果的上报并且已经上报成功,从PC端的Debuger软件中我们也能看到这个过程

 

 


升级结果的上报并且经上报成功,从PC端的Debuger软件中我们也能看到这个过程

 

 

至此,STM32F469的这个开发板已经差分升级成功,升级流程结束。从这几个阶段的log来看,这次的差分包大小是1875个字节,整个固件的大小是87KB,下载的差分包的时间是3秒,升级的时间是11秒,不过这个时长也受限于log的串口打印以及模组的AT交互的消耗,如果在商用批量产品使用中不考虑这些限制,整个升级需要的时长、消耗的功耗都将进一步大幅降低。

 
关注与非网微信 ( ee-focus )
限量版产业观察、行业动态、技术大餐每日推荐
享受快时代的精品慢阅读
 

 

继续阅读
ELEXCON 2019深圳国际电子展即将召开,中国“芯”机遇何在

以“物联中国,智慧未来”为主题,由博闻创意举办的ELEXCON 2019深圳国际电子展(第28届深圳国际电子展)将于2019年12月19日-21日在深圳会展中心盛大召开,携同电子展、IEE嵌入式系统展、IoT World中国站、5G China、EVAC未来汽车及技术展五大版块强势出击,从元件、嵌入式技术到系统解决方案

意法半导体推出首款8引脚STM32微控制器,可适用于简单应用

意法半导体8引脚STM32微控制器(MCU)现已上市,紧凑、经济的封装让简单的嵌入式开发项目也能利用32位MCU的性能和灵活性。

恩智浦提供本地命令识别整体解决方案,加速语音控制设备的大规模应用

据Gartner统计,语音控制将在未来几年成为主流技术,到2022年,成熟市场50% 以上的高端产品将内置语音接口,而2018年这一比例还不到1%。

物联网安全风险:无人机、振动器和儿童玩具可以很容易地被黑客攻击

在一系列的实验中,研究人员展示了如何拦截传输链路,实现对流行的物联网设备的控制。

NB-IoT、LoRa、eMTC、Zigbee、Sigfox、WiFi、蓝牙,谁能称霸物联网时代?
NB-IoT、LoRa、eMTC、Zigbee、Sigfox、WiFi、蓝牙,谁能称霸物联网时代?

物联网悄然拉开了“万物互联”的帷幕。在“万物互联”时代,首先要解决“物”与“网”的连接问题,物联网生态系统的核心组成部分是连接和通信,使得远程和分散物体(设备,传感器节点,网关单元,云服务器)之间的连接和通信成为可能,所以“连接技术”决定了物联网发展的走向。

更多资讯
汇顶科技云栖大会专属论坛即将召开,多项IoT创新产品锁定你的目光
汇顶科技云栖大会专属论坛即将召开,多项IoT创新产品锁定你的目光

共同描绘物联网终端创新生态蓝图 携手连接未来智慧生活的全新场景

进入超摩尔时代,半导体材料和工艺必将迎来功能的多样化

进入21世纪以来,摩尔定律的失效大限日益临近,人工智能、5G、自动驾驶等新应用的兴起,对芯片性能提出了更高的要求,同时也推动了半导体制造工艺和新材料不断创新,工艺节点从28nm到10nm只经过了短短的五年,第三代半导体GaN和SiC的应用范围越来越广,据Yole预测,2021年全球SiC市场规模将上涨到5.5亿美元,GaN市场将达到3亿美

63 种电子元件取消 25% 关税,附具体清单
63 种电子元件取消 25% 关税,附具体清单

与非网9月24日讯,近日,美国贸易代表办公室(USTR)公布了3份对华加征关税商品排除清单通知,共计437种中国产品被关税豁免。与之前历次不同的是,此次清单涉及了美方宣布的3批加征关税的中国商品。

齐感芯片的“中国速度”:不到 8 周量产 QG2101
齐感芯片的“中国速度”:不到 8 周量产 QG2101

与非网9月24日讯,近日,齐感科技正式发布Qigan®AI视觉处理SoC芯片QG2101,这是一款高性能,高可靠和低功耗,支持AI视觉处理广泛用于摄像设备的SoC芯片,旨在专为极简AI应用而设计,可提供经济、优异能效比的边缘端视觉解决方案。

与非早报 | 威马汽车回应汽车自燃事件:非电池问题;汇顶科技成A股首家市值破千亿的半导体公司

汇顶科技成A股首家市值破千亿的半导体公司;任正非:我不是中国乔布斯,对美国公司充满敬仰;iPhone 11是史上最耐摔iPhone,但存在发热信号差问题