zoukankan      html  css  js  c++  java
  • 迅为i.mx6q开发板OTA 远程升级

     

    1 SWUpdata 概述

    SWUpdata 是一个开源项目,该项目可以从存储介质或网络为嵌入式设备更新嵌入式系统。但是,它应该主要被视为一个框架,可以轻松地将更多协议或安装程序(在 SWUpdate 中称为处理程序)添加到应用程序中。

    一种用例是从外部本地媒体更新,如 USB SD 卡。在这种情况下,更新是在没有操作员干预的情况下完成的:它被认为是“一键更新”,软件在重置时只需按下一个键(或以任何目标可以识别的方式) ,自动进行所有检查。最后,更新过程只向操作员报告状态(成功或失败)。

    如果为远程更新启动,SWUpdate 启动嵌入式 Web 服务器并等待请求。操作员必须上传合适的镜像, SWUpdate 检查然后安装。所有输出都通过 AJAX 通知通知给操作员的浏览器。

    2 使用 buildroot 集成 SWUpdate

    可以参考第二十章“使用 Buildroot 制作根文件系统,我们使用 buildroot 配置好最基本的文件系统后, 就可以添加第三方库了。 切换到 root 用户在 buildroot-2021.05 目录下使用命令 “make menuconfig” 进入到图形配置界面如下图:

     

    然后我们依次进入如下目录:

    Target packages --->

    System tools --->

    [*] swupdate

    勾选上 swupdate,如下图:

     

    作者将制作好的文件系统放在了 “iTOP-i.MX6 开发板资料汇总(不含光盘资料)12_iTOP-i.MX6 开发板 buildroot 系统 OTA 升级”下。

    3 SWUpdate 工具的使用

    4设置 SWUpdate 服务开机启动

    烧写好镜像后给开发板上电启动,

    输入用户名:root ,密码:topeet,登录到系统,使用命令 “vi /etc/init.d/rcS”打开 rcS 文件添加以下内 容,如下图:

    swupdate -w "--document-root /var/www/swupdate –port 8080" &

     

    保存退出使用命令 “reboot”

    重启开发板,可以看到 Swupdate 服务已经开启如下图:

     

    接下来我们就可以在电脑的浏览器的地址栏中输入 “192.168.1.7:8080” (根据自己的开发板的地址填写) ,进入网址如下图:

     

    至此,具有远程升级功能的文件系统就制作好了。

    5使用 SWUpdate 远程升级

    接着上篇,使用到的升级包制作工具 OTA.tar.bz2 iTOP-i.MX6 开发板资料汇总(不含光盘资料) 12_iTOP-i.MX6 开发板 buildroot 系统 OTA 升级”目录下。

    OTA.tar.bz2 拷贝到 ubuntu 任意,目录下解压后如下图:

     

    进入解压后的 OTA 目录下,使用命令“tree”查看,如下图

     

    config 目录下放的是关于 EMMC 配置文件。其中 sw-description

    的内容可以参考官方手册,其地址为

    https://sbabic.github.io/swupdate/swupdate.html

    creat 是用于生成固件升级包的脚本。

    image 目录用于放我们用于升级的 zImage, 设备树文件.dtb, 以及文件系统 rootfs.tgz。(根据自己核心板类型选择镜像)。

    使用之前需要将上图 image 中的文件替换成用于升级的对应文件即可,(用于升级的文件系统,要是还想支持下次升级也需要有 swpdate 工具)。 然后在 OTA 目录下使用命令 “./creat”可以生成用于 EMMC 版升级的固件包,如下图。

     

    等待完成后使用命令 “ls”查看,如下图所示,生成了.swu 结尾的固件包。

     

    然后我们使用 ubuntu 下自带的浏览器打开,上节中的升级界面,如下图

     

    然后点击下图部分,弹出固件选择界面

     

     

    选择好用于升级的.swu 固件后,点击打开即可对开发板进行升级,如下图:

     

    升级成功后直接重启开发板,即可,如下图升级的是一个 openwrt 系统:

     

  • 相关阅读:
    在光驱按钮不好使用时如何关闭光驱门
    将24位及32位图像数据保存到位图中
    VIM代码自动完成
    加载TLBB场景(一)
    创建异形窗口
    Windows快速关机与重启
    Direct3D9应用CEGUI
    利用GDI+加载图片
    ubuntu MP3乱码解决
    asp.net动态生成控件及访问控件
  • 原文地址:https://www.cnblogs.com/topeet/p/15251230.html
Copyright © 2011-2022 走看看