使用 STM32 通用 Bootloader , OTA 更加 Easy
最新 RT-Thread 发布了一款 STM32 系列的通用 BootLoader,有兴趣的小伙伴可以用用,我试了下,挺方便的。RT-Thread 通用 Bootloader 有如下特点:
以 bin 文件的形式提供,无需修改即可使用
资源占用小,ROM 最小只需要 16KB,最大 32KB
适用于多系列 STM32 芯片(目前支持 F1 和 F4 系列 )
支持各种 SPI Flash 存储固件
支持固件加解密功能
支持多种固件压缩方式
支持恢复出厂固件功能
以上功能均可自由配置
发布文章看这里:
使用 STM32 通用 Bootloader ,让 OTA 更加 Easy
我试了一下,裸机也能跑起来,支持多种下载器
以bin形式提供?过来搞笑的吧?玩一下的没代码也没意思,产品谁会用你的bin? 所实话,玩玩还可以,正规产品真不敢用,万一出什么问题,想解决BUG都不行 收费的bin也许是个路子.免费黑盒子, 还是小众的, 谁敢说不踩个坑什么的... 那苹果的手机,macos,都不算正规产品吗? 一个m3的bootloader能与苹果手机与糸统比??你这boot有n多选择 看了一下,需要完全依赖于http://iot.rt-thread.com平台 想法很好,我还是不敢用,我继续使用自己定义的协议 个人玩玩无所谓,商用的话你先问问你老板“老板,我想用一个别人不开源的bin文件做Bootloader可以不” BIN文件,很不踏实啊, ayuanshop 发表于 2019-4-1 12:41
本想注册一个玩玩,硬生生止步于注册时要输入手机号码
我也注册了,现在貌似哪都需要手机号码。 现在在用FTP服务方式,就是占ROM大点 shawn_bu 发表于 2019-4-1 12:05
看了一下,需要完全依赖于http://iot.rt-thread.com平台
只是用这个网页在线生成 你可以用到其他任何地方 ztrx 发表于 2019-4-1 14:44
现在在用FTP服务方式,就是占ROM大点
我觉得用得还不错功能还挺多 自己做挺麻烦的 大家好像忽略了 bin 的优势。很多开源硬件方案也都是以二级制方式提供,这主要是为了降低大家的使用门槛。
从功能性角度看,Bootloader 对于 OTA 来说主要是固件的搬运、校验工作,功能上其实很容易实现通用性。
RTT有自己的 OTA 组件,可还要让用户来实现一个支持 OTA 组件的 Bootloader ,这对于用户来说还会有很大的开发门槛,在论坛里搜搜一 IAP 、OTA 关键字的问题就知道了。
JIANGJIAYU 发表于 2019-4-1 11:35
所实话,玩玩还可以,正规产品真不敢用,万一出什么问题,想解决BUG都不行 ...
有安全校验 还好吧 小马过河,有必要试一试。 Fillmore 发表于 2019-4-1 14:50
只是用这个网页在线生成 你可以用到其他任何地方
不是吧,程序的分发也需要靠这个网站吧。或者bin里面可以提供连其他更新源? shawn_bu 发表于 2019-4-1 16:29
不是吧,程序的分发也需要靠这个网站吧。或者bin里面可以提供连其他更新源? ...
看介绍,程序分发和下载没有限制,APP是自己提供,你在APP里面可以用任意方式下载新APP进来。 Fillmore 发表于 2019-4-1 14:52
我觉得用得还不错功能还挺多 自己做挺麻烦的
我要用到远程更新,通过网络口,设备装的位置太高,取下来麻烦 JIANGJIAYU 发表于 2019-4-1 11:35
所实话,玩玩还可以,正规产品真不敢用,万一出什么问题,想解决BUG都不行 ...
出了 bug 其实都不用你修,直接吐槽过去,这多方便{:titter:} ztrx 发表于 2019-4-1 17:03
我要用到远程更新,通过网络口,设备装的位置太高,取下来麻烦
https://github.com/RT-Thread-packages/ota_downloader
可以直接用这里面的 http ota 下载器,配合 Bootloader 一步搞定 hushaoxin 发表于 2019-4-1 12:11
想法很好,我还是不敢用,我继续使用自己定义的协议
https://github.com/RT-Thread/IoT_Board/tree/master/examples/22_iot_ota_ymodem#rt-thread-ota-%E4%BB%8B%E7%BB%8D
这是 RTT OTA 的简单说明,可以对比下,论坛是个交流的好地方 谢谢分享 Bootloader里面做固件的搬运和校验工作?那升级方式需要自己实现吗,比如USB、串口、以太网或者Wifi? sunnydragon 发表于 2019-4-1 14:52
大家好像忽略了 bin 的优势。很多开源硬件方案也都是以二级制方式提供,这主要是为了降低大家的使用门槛。
...
大神,我有个STM32L151已经用了你的easyflash,好想试试这个 Bootloader。但是留给Bootloader的空间只有不到6K了。 本想注册一个玩玩,硬生生止步于注册时要输入手机号码 +10086 sunnydragon 发表于 2019-4-1 18:05
出了 bug 其实都不用你修,直接吐槽过去,这多方便
眼不见,不放心啊。
吐槽有用的话,世界上就不会有这么多烦恼和沟通问题了。
zhangling520 发表于 2019-4-2 09:49
大神,我有个STM32L151已经用了你的easyflash,好想试试这个 Bootloader。但是留给Bootloader的空间只 ...
6K 太小了,一个 flash 驱动都得好几 K 呢,再加上一些签名校验算法、固件搬运等逻辑,固件很难够用的。 我仿佛嗅到了RT-Thread对日渐保守的气息。。。。 kinsno 发表于 2019-4-2 10:10
眼不见,不放心啊。
吐槽有用的话,世界上就不会有这么多烦恼和沟通问题了。
...
换个角度想嘛,即使给你了 linux 源码,又有多少人在开发上层应用出问题,去看底层源码呢?
软件开发、产品开发,同样也需要这种模块化的思想。
底层到底可不可靠,稳不稳定,自己用一用,再看大家的口碑就知道喽。 整个系统都开源了,一个OTA模块都要闭源。用意何在? BrightWang 发表于 2019-4-2 11:19
我仿佛嗅到了RT-Thread对日渐保守的气息。。。。
你想多啦,可以看下介绍,RTT 的 OTA 本身就是付费组件哦。
RTT 把它封装在 bin 里,做成通用化的方案,免费给大家用其实也是一种开放精神。 sunnydragon 发表于 2019-4-1 18:30
https://github.com/RT-Thread-packages/ota_downloader
可以直接用这里面的 http ota 下载器,配合 Boo ...
不接串口,能更新程序? ztrx 发表于 2019-4-2 11:38
不接串口,能更新程序?
当然可以啦,固件下载方式是多种多样的,这个完全由 app 来实现 sunnydragon 发表于 2019-4-2 11:51
当然可以啦,固件下载方式是多种多样的,这个完全由 app 来实现
有网络口的Bootloader 例子没有 ztrx 发表于 2019-4-2 11:56
有网络口的Bootloader 例子没有
https://github.com/RT-Thread/IoT_Board/tree/master/examples/23_iot_ota_http
可以参考这个,都是基于网络的 sunnydragon 发表于 2019-4-2 12:01
https://github.com/RT-Thread/IoT_Board/tree/master/examples/23_iot_ota_http
可以参考这个,都是基 ...
谢谢,改天试试 sunnydragon 发表于 2019-4-2 12:01
https://github.com/RT-Thread/IoT_Board/tree/master/examples/23_iot_ota_http
可以参考这个,都是基 ...
最近我也在搞HTTP远程固件升级,也有一个固件打包器,但是没有使用压缩,使用AES128和CRC32校验,先获取BIN文件内容(明文)和大小,对明文进行CRC32校验,记录明文CRC32校验值,接着对明文进行AES128校验,得到密文内容和长度,记录密文长度大小,接着对密文内容进行CRC32校验,记录密文CRC32校验值。把得到的内容放在一个512字节都文件头,在加上密文就得到远程升级固件(文件头+密文)。其中文件头包含:文件名+明文大小+产品型号+作者+版本+AES秘钥+明文CRC32校验值+密文CRC32校验值+填充字节+CRC16校验值(文件头)。这期间就是和写文件打包器的工程师的校验和加密对接,老是对接不上,后来自己上手帮她写。有个问题请教您,HTTP下载那块,是用的GET,你怎么控制每次传送的数据长度,我是使用Range,不知道您是怎么实现?? yat 发表于 2019-4-24 10:48
最近我也在搞HTTP远程固件升级,也有一个固件打包器,但是没有使用压缩,使用AES128和CRC32校验,先获取B ...
有用 RT-Thread 吗?
如果用了 RT-Thread ,可以直接使用 WebClient 软件包,里面直接就支持该功能,开箱即用。
否则,参考下 WebClient 软件包代码自己改改吧
https://github.com/RT-Thread-packages/webclient/blob/01523b9e263f6ac53e02f42158b7f44490bd1b2b/docs/api.md#%E5%8F%91%E9%80%81%E8%8E%B7%E5%8F%96%E9%83%A8%E5%88%86%E6%95%B0%E6%8D%AE%E7%9A%84-get-%E8%AF%B7%E6%B1%82 说实话,我也用RTT了,方便,实用,提供了这么多好东西,又免费, 上次需要编辑txt文件,突然RTT里面就有了VI编辑器,
感谢你们。
三年前用官方提供了例程写了个简单的引导程序,一直很稳定,从来不改 不错,标记一下,回头可能用到 RT-Thread的板块怎么进去,密码如何或得呢? bryan_lia 发表于 2019-5-18 16:49
RT-Thread的板块怎么进去,密码如何或得呢?
我也不知道密码 感觉没法进
页:
[1]