0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

适用 STM32 通用 Bootloader ,让 OTA 更加 Easy

丫丫119 来源:未知 作者:肖冰 2019-09-24 06:55 次阅读

随着物联网时代到来,越来越多的智能设备拥有了在线升级的能力,无论是系统更新,产品功能迭代还是漏洞修复都能在第一时间抵达用户手中的智能设备。

在线升级功能需要使用 OTA (Over-the-Air) 技术 ,OTA 技术简单地说就是通过网络来升级手中的智能设备,进而使用设备最新版本的功能。而 OTA 技术中必不可少的一环就是通过 Bootloader 来管理、升级设备固件。

由于 OTA 功能由多种复杂技术组成,因此添加 OTA 功能有一定的技术门槛。很多开发者遇到莫名其妙的问题,进而导致 OTA 升级失败,常见问题如下:

升级过程缺少专业的安全机制

APP 无法正常启动

程序莫名跑飞,出现 hardfault

固件搬运失败

固件解密解压错误

升级不稳定等

为了解决广大开发者在添加 OTA 功能时遇到的种种困难,RT-Thread 开发团队凭借在该领域深厚的技术积累,为开发者提供了 STM32 系列的通用 Bootloader ,开发者通过该 Bootloader 即可直接使用 RT-Thread OTA 功能。

通用 Bootloader 的功能特点

下图展示了 RT-Thread 通用 Bootloader 的软件框架:

RT-Thread 通用 Bootloader 有如下特点:

以 bin 文件的形式提供,无需修改即可使用

资源占用小,ROM 最小只需要 16KB,最大 32KB

适用于多系列 STM32 芯片(目前支持 F1 和 F4 系列 )

支持各种 SPI Flash 存储固件

支持固件加解密功能

支持多种固件压缩方式

支持恢复出厂固件功能

以上功能均可自由配置

获取方式及使用方法

在线生成 Bootloader

Bootloader 可以通过网页端在线生成的方式来获取。开发者根据自己使用的芯片,填写相关参数,然后点击生成按钮,即可在线生成 Bootloader,在线获取地址:http://iot.rt-thread.com。

Bootloader 生成页面如下所示:

填写板卡硬件配置

2. 配置分区表

3. 加密压缩配置

4. 配置 logo 和邮箱

点击生成按钮即可获取定制的 Bootloader。

制作 app 固件

可以通过阅读文档中心提供的 《STM32 通用 Bootloader 应用笔记》(https://www.rt-thread.org/document/site/application-note/system/rtboot/an0028-rtboot/)来详细了解如何制作可以被用作升级的 app 固件。

开始 OTA 升级

准备好适合板卡使用的 BootLoader,然后制作好可以用作升级的 app 固件,就可以开始体验 OTA 升级功能了。下图展示了 HTTP OTA 升级方式的过程:

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2270

    文章

    10896

    浏览量

    355786
  • OTA
    OTA
    +关注

    关注

    7

    文章

    579

    浏览量

    35204
收藏 人收藏

    评论

    相关推荐

    STM32单片机OTA程序升级相关资料分享

    目录一、程序升级原理1、本地应用程序更新2、固件升级命令响应 和 升级固件下载二、RT-Thread STM32通用Bootloader + ota_downloader软件包oat升
    发表于 07-01 09:50

    RT-Thread STM32通用Bootloader + ota_downloader软件包怎样进行升级呢

    程序的升级原理是什么?RT-Thread STM32通用Bootloader + ota_downloader软件包怎样进行升级呢?
    发表于 10-22 07:39

    怎么实现RT_thread STM32通用BootloaderOTA升级?

    怎么实现RT_thread STM32通用BootloaderOTA升级?
    发表于 11-26 06:19

    OTA的原理是什么?rt-thread的OTA具体操作过程是怎样的

    目录一、测试平台二、过程1.先明白OTA的原理2.搞清楚OTA的原理后,再看rt-thread的OTA具体操作过程,先生成通用Bootloader
    发表于 02-14 06:36

    教你怎样通过Bootloader直接使用RT-Thread OTA功能

    1、STM32通用Bootloader为了能让开发者快速掌握 OTA 升级这把利器,RT-Thread 开发团队提供了通用
    发表于 05-05 16:24

    STM32通用Bootloader—FOTA简介

    1、STM32通用Bootloader——FOTA简介固件升级,通常称为 OTA(Over the Air)升级或者 FOTA(Firmware Over-The-Air)升级,即固件
    发表于 08-30 15:07

    使用bootloader进行ymodem_ota升级失败是何原因

    通用bootloader,fal,OTA_Download组件,使用的Ymodem传输协议,flash分区采用128kbootloader区(起始地址:0x08000000)+512Kapp区(起始
    发表于 11-16 10:48

    如何使用STM32通用BootloaderOTA更加Easy

    为了解决广大开发者在添加 OTA 功能时遇到的种种困难,RT-Thread 开发团队为开发者提供了 STM32 系列的通用 Bootloader ,开发者通过该
    的头像 发表于 03-30 11:22 2.5w次阅读

    基于STM32F4和RT-Thread通用BootLoader使用经验

    基于STM32F4、RT-Thread通用BootLoader使用经验
    的头像 发表于 02-27 17:23 6299次阅读
    基于<b class='flag-5'>STM32</b>F4和RT-Thread<b class='flag-5'>通用</b><b class='flag-5'>BootLoader</b>使用经验

    STM32系统bootloader的应用有哪些

    嵌入式开发中,经常需要bootloader进行程序固件升级和系统维护,所以bootloader是必不可少的功能。STM32系统自带的系统bootloader很方便使用。大量减少了工程师
    的头像 发表于 10-22 12:19 5594次阅读
    <b class='flag-5'>STM32</b>系统<b class='flag-5'>bootloader</b>的应用有哪些

    写了个通用stm32串口bootloader

    写了个通用stm32串口bootloader
    发表于 11-26 15:51 26次下载
    写了个<b class='flag-5'>通用</b>的<b class='flag-5'>stm32</b>串口<b class='flag-5'>bootloader</b>

    STM32F10X系列通用OTA bootloader移植与使用指南

    基于STM32F10X系列通用OTA bootloader原理、移植与使用全指南 写在前面这几天我都做了什么呢?有什么感受?写在前面从2020.1.26到2020.1.30这5天,我的
    发表于 11-26 16:06 15次下载
    <b class='flag-5'>STM32</b>F10X系列<b class='flag-5'>通用</b><b class='flag-5'>OTA</b> <b class='flag-5'>bootloader</b>移植与使用指南

    基于STM32F407的STM32通用BootLoader使用经验

    背景: 在使用RT-Thread RTOS的时候发现官方提出了一种通用BootLoader方案,支持F1和F4系列的芯片 硬件资源: 正点原子stm32f407zgt6探索者开发板,片上Flash
    发表于 11-30 19:06 20次下载
    基于<b class='flag-5'>STM32</b>F407的<b class='flag-5'>STM32</b><b class='flag-5'>通用</b><b class='flag-5'>BootLoader</b>使用经验

    stm32 IOT_STM32通用Bootloader——FOTA

    1.固件升级简述固件升级,通常称为 OTA(Over the Air)升级或者 FOTA(Firmware Over-The-Air)升级,即固件通过空中下载进行升级的技术。1.1
    发表于 11-30 19:21 23次下载
    <b class='flag-5'>stm32</b> IOT_<b class='flag-5'>STM32</b><b class='flag-5'>通用</b><b class='flag-5'>Bootloader</b>——FOTA

    RT-Thread的OTA调试记录

    目录一、测试平台二、过程1.先明白OTA的原理2.搞清楚OTA的原理后,再看rt-thread的OTA具体操作过程,先生成通用Bootloader
    发表于 12-09 14:51 20次下载
    RT-Thread的<b class='flag-5'>OTA</b>调试记录