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

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

3天内不再提示

技术帖 | RK3568开发板的OTA升级教程

飞凌嵌入式 2024-04-20 08:01 次阅读

说起OTA我们应该都不陌生,它是一种可以为设备无损失升级系统的方式,能将新功能远程部署到产品上。我们不仅可以通过网络下载OTA升级包,也可以通过下载OTA升级包到SD卡或U盘后再对设备升级。

本文将通过飞凌嵌入式OK3568-C开发板来为大家介绍OTA升级的流程,本地升级程序recovery执行升级的流程及技术细节。

1. 制作 recovery.img

recovery相关的源码路径:

buildroot/output/OK3568-recovery/build/recovery-develop

如果有修改过以上目录的源码文件,则需要执行以下操作:

(1).forlinx@ubuntu:~/OK3568-linux-source$source envsetup.sh

(2).选择某一平台的 recovery 配置,输入96

(3).forlinx@ubuntu:~/OK3568-linux-source$make recovery-dirclean && make recovery #清除编译产物重新编译

(4).forlinx@ubuntu:~/OK3568-linux-source$make rkupdate-dirclean && make rkupdate #清除编译产物重新编译

如果没有修改过上述目录的源码文件,则直接执行以下操作:

(1).forlinx@ubuntu:~/OK3568-linux-source$ ./build.sh recovery #编译生成recovery.img

(2).forlinx@ubuntu:~/OK3568-linux-source$ ./mkfirmware.sh

#将生成的固件拷贝至 rockdev/目录下

烧写/OK3568-linux-source/buildroot/output/OK3568-recovery/images/recovery.img文件。

点击设备分区表,勾选9,选择recovery路径,点击执行。

wKgaomYmCmqAS_xFAABXO-3B-Xk775.png

2. 制作升级镜像

如何验证是否升级成功了呢?我们要先对boot.img文件有一个初步了解,boot.img文件存放有设备树和内核,我们只要对设备树或者内核进行适当的修改即可。本例程以更新boot.img文件为例,对设备树进行了适当修改。

修改设备树文件:

/OK3568-linux-source/kernel/arch/arm64/boot/dts/rockchip/OK3568-C-common.dtsi,

对forlinx_control节点做如下修改。默认只打开HDMI输出,将MIPI和LVDS输出关闭。

/ { model =“Forlinx OK3568-C Board"; compatible ="forlinx,ok3568","rockchip,rk3568-evb1-ddr4-V10","rockchip,rk3568"; forlinx control { status ="okay"; video-hdmi ="hdmi"; video-mipi-edp ="off"; video-lvds-rgb ="off"; };

修改文件:

/OK3568-linux-source/tools/linux/Linux_Pack_Firmware/rockdev/package-file

根据需求修改该文件,本例程以更新boot.img为例,所以将其他.img文件注释掉。用户可以根据产品更新需求对该文件进行调整。

wKgZomYmCqeATpKOAAEUlJ9669c577.png

本例程以修改设备树显示为例,修改完设备树后,重新编译内核。

wKgaomYmCr-AfYuBAAAeMp9aLTk179.png

3.升级操作

SD卡或U盘升级

将SD卡或U盘默认挂载到OK3568-C开发板的/run/media目录下。将update.img镜像文件拷贝到OK3568-C开发板的/userdata目录下,重启开发板后系统将检测该目录下的升级包自动升级。

FTP服务器升级

OK3568-C开发板端执行如下命令,将服务器的升级包文件拷贝到开发板进行升级。

wKgaomYmCu6AKxy9AABEw4x9tP4363.png

下载完成以后使用以下命令进行升级:

update ota /userdata/update.img

升级过程中设备将会进入recovery模式,并进行自动升级,升级成功后会进入到正常normal系统。

4. 验证测试结果

将OK3568-C开发板上电,串口终端按住空格键,会进入uboot选屏界面。烧写默认出厂镜像文件现象:默认是开启HDMI、MIPI和LVDS三个输出。

wKgaomYmCwuARtb1AAAKH78qOmg124.png

烧写升级包镜像文件后现象:只有HDMI显示开启,其他的两个输出被关闭。

wKgaomYmCy6ARZEhAAAJ_IBg4ss976.png

5. 注意事项

打包update.img固件时需要注意,升级固件可以全分区打包,也可以部分升级,可修改package-file文件,将不要升级的分区去掉,这样可以减少升级包(update.img)的大小。

package-file中recovery.img如果打包进去的话,不会在Recovery模式中升级,为了预防升级recovery.img过程中掉电导致后面其他分区无法正常升级的问题,该分区升级放在normal系统下升级,执行update命令时会先检测update.img升级包中是否有打包recovery.img,若有则升级recovery分区,再进入Recovery模式升级其他分区固件。

misc分区不建议打包进update.img中,即使有打包进去,在升级程序中加载判断到后也会忽略该分区,即使升级了misc分区,升级成功后recovery程序仍会清空misc分区中所有的命令及参数,从而导致达不到预想的结果。

如果将update.img升级包放置在flash中的userdata分区,则需要保证package-file中不包括userdata.img被打包进去,原因是可能会导致文件系统的损坏,升级成功后可能使oem或userdata分区mount不成功。若从SD卡或U盘升级时,可以打包userdata.img,从而对userdata分区进行升级。升级完成后会对userdata分区重新resize操作。


至此,OTA升级的全部流程讲解完毕,用户可以先按照该文章操作进行试验,熟悉本文章操作后,就可以对uboot,内核或者文件系统进行修改,通过OTA方式远程升级用户产品,从而修复产品中的BUG,更加方便地进行产品优化,更新迭代。

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

    关注

    5068

    文章

    19008

    浏览量

    302916
  • 开发
    +关注

    关注

    0

    文章

    366

    浏览量

    40804
  • OTA
    OTA
    +关注

    关注

    7

    文章

    568

    浏览量

    35129
  • RK3568
    +关注

    关注

    4

    文章

    495

    浏览量

    4921
收藏 人收藏

    评论

    相关推荐

    基于迅为RK3568开发板全国产平台,快速实现APP开机自启动技术分享

    基于迅为RK3568开发板全国产平台,快速实现APP开机自启动技术分享
    的头像 发表于 11-21 13:58 39次阅读
    基于迅为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>全国产平台,快速实现APP开机自启动<b class='flag-5'>技术</b>分享

    【迅为】瑞芯微RK3588开发板RK3568开发板区别及优势

    RK3568开发板
    的头像 发表于 11-18 14:19 140次阅读
    【迅为】瑞芯微<b class='flag-5'>RK</b>3588<b class='flag-5'>开发板</b><b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>区别及优势

    能力再次提升! 迅为RK3588/RK3568开发板&amp;amp;核心新增定制分区镜像

    能力再次提升! 迅为RK3588/RK3568开发板&核心新增定制分区镜像
    的头像 发表于 11-06 15:11 273次阅读
    能力再次提升! 迅为<b class='flag-5'>RK</b>3588/<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>&amp;amp;核心<b class='flag-5'>板</b>新增定制分区镜像

    迅为iTOP-RK3568/RK3588开发板获麒麟软件适配认证

    迅为iTOP-RK3568/RK3588开发板获麒麟软件适配认证
    的头像 发表于 10-18 14:56 428次阅读
    迅为iTOP-<b class='flag-5'>RK3568</b>/<b class='flag-5'>RK</b>3588<b class='flag-5'>开发板</b>获麒麟软件适配认证

    瑞芯微RK3566/RK3568 Android11使用OTA升级固件方法,深圳触觉智能鸿蒙开发板演示,备战第九届华为ICT大赛

    本文介绍瑞芯微RK3566/RK3568在Android11系统OTA升级固件方法,使用触觉智能的Purple Pi OH鸿蒙开发板演示,搭
    的头像 发表于 10-12 11:57 309次阅读
    瑞芯微<b class='flag-5'>RK</b>3566/<b class='flag-5'>RK3568</b> Android11使用<b class='flag-5'>OTA</b><b class='flag-5'>升级</b>固件方法,深圳触觉智能鸿蒙<b class='flag-5'>开发板</b>演示,备战第九届华为ICT大赛

    瑞芯微RK3568鸿蒙开发板OpenHarmony系统修改cfg文件权限方法

    本文适用于OpenHarmony开源鸿蒙系统修改cfg文件权限方法,深圳触觉智能研发的RK3566、RK3568RK3588等开发板、主板等产品均适用此教程
    的头像 发表于 09-11 13:26 763次阅读
    瑞芯微<b class='flag-5'>RK3568</b>鸿蒙<b class='flag-5'>开发板</b>OpenHarmony系统修改cfg文件权限方法

    北京迅为RK3568开发板嵌入式学习之Linux驱动全新更新-CAN+

    北京迅为RK3568开发板嵌入式学习之Linux驱动全新更新-CAN+
    的头像 发表于 09-04 15:29 393次阅读
    北京迅为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>嵌入式学习之Linux驱动全新更新-CAN+

    国产核心全面进攻-RK3568开发板评测

    随着端侧AI应用的落地,预计集成NPU的SoC产品将迎来爆发式的增量市场。本期与非网给大家带来一款采用国内知名SoC厂商的产品——基于瑞芯微RK3568开发板
    的头像 发表于 08-30 11:49 946次阅读
    国产核心<b class='flag-5'>板</b>全面进攻-<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>评测

    RK3568开发板支持AMP双系统

    RK3568开发板支持AMP双系统
    的头像 发表于 06-04 15:33 626次阅读
    <b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>支持AMP双系统

    鸿蒙OpenHarmony南向:【RK3568开发板介绍】

    RK3568开发板基于Rockchip RK3568芯片,集成双核心架构GPU以及高效能NPU;搭载四核64位Cortex-A55处理器,采用22nm先进工艺,主频高达2.0GHz;支持蓝牙
    的头像 发表于 05-07 10:13 776次阅读
    鸿蒙OpenHarmony南向:【<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>介绍】

    鸿蒙OpenHarmony【标准系统编译】 (基于RK3568开发板

    DevEco Device Tool支持Rockchip RK3568开发板的源码一键编译功能,提供编译工具链和编译环境依赖的检测及一键安装,简化复杂编译环境的同时,提升了编译的效率。
    的头像 发表于 04-24 20:55 1084次阅读
    鸿蒙OpenHarmony【标准系统编译】 (基于<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>)

    通过RK3568开发板进行OTA本地程序升级

    将通过飞凌嵌入式OK3568-C开发板来为大家介绍OTA升级的流程,本地升级程序recovery执行升级
    发表于 04-20 11:23

    迅为RK3568开发板驱动开发指南-输入子系统

    迅为RK3568开发板驱动开发指南-输入子系统
    的头像 发表于 02-23 15:11 780次阅读
    迅为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>驱动<b class='flag-5'>开发</b>指南-输入子系统

    迅为RK3568开发板助力智能车载产业快速发展

    迅为RK3568开发板助力智能车载产业快速发展
    的头像 发表于 01-23 13:59 534次阅读
    迅为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>助力智能车载产业快速发展

    RK3568开发板在工控工业物联网网关方面的应用

    RK3568开发板在工控工业物联网网关方面的应用
    的头像 发表于 11-22 14:21 815次阅读
    <b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>在工控工业物联网网关方面的应用