一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【OTA升級(jí)】無(wú)需數(shù)據(jù)線,一條命令即可完成固件升級(jí)!

Firefly開源團(tuán)隊(duì) ? 2024-12-11 01:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

OTA介紹

OTA(Over-The-Air,空中升級(jí))是一種通過無(wú)線通信技術(shù)實(shí)現(xiàn)遠(yuǎn)程更新設(shè)備固件或軟件的方法。設(shè)備批量投入使用后,由于部署范圍太廣、設(shè)備數(shù)量太多、部署的位置特殊、沒有預(yù)留硬件有線升級(jí)接口等原因,用戶往往無(wú)法人為的通過有線方式更新設(shè)備固件,這時(shí)候就可以通過 OTA 進(jìn)行網(wǎng)絡(luò)升級(jí)。

UpdateEngine介紹

Firefly 在 Linux 平臺(tái)上提供了 UpdateEngine 開源 OTA 升級(jí)工具,工具支持遠(yuǎn)程下載固件、固件校驗(yàn)、固件解包、完整固件/分區(qū)升級(jí)。

4721104e-b718-11ef-8084-92fbcf53809c.png

UpdateEngine工作原理

UpdateEngine 會(huì)解析 Rockchip 格式的固件,并且計(jì)算到每個(gè)分區(qū)鏡像在固件中的偏移。提取每個(gè)分區(qū)鏡像的末尾 crc 校驗(yàn)信息,對(duì)固件和分區(qū)鏡像進(jìn)行校驗(yàn),確保完整性。

UpdateEngine 會(huì)把固件存放的路徑(如:/userdata/update.img)和需要升級(jí)的分區(qū)信息寫入 misc 分區(qū),并且打上 ”update“標(biāo)志,讓設(shè)備在重啟后自動(dòng)進(jìn)入 recovery 模式。

在 recovery 模式中 userdata 分區(qū)會(huì)自動(dòng)掛載到 /userdata 下,系統(tǒng)如果檢查到 “update”標(biāo)志,recovery 就會(huì)調(diào)用 rkupdate 對(duì)固件進(jìn)行解析并且升級(jí)到存儲(chǔ)設(shè)備中。

設(shè)備在 recovery 模式時(shí),根文件系統(tǒng)會(huì)運(yùn)行在 ramdisk 內(nèi)存上,而不是原系統(tǒng)存儲(chǔ)上(如:emmc)。所以程序可以正常的向存儲(chǔ)設(shè)備分區(qū)進(jìn)行寫操作。

OTA升級(jí)流程圖

47406ed0-b718-11ef-8084-92fbcf53809c.png

OTA固件制作

“OTA 升級(jí)固件“”實(shí)際上就是 SDK 打包出來的 Rockchip 格式的固件。如果用戶只需要對(duì)某些分區(qū)進(jìn)行升級(jí)而不是完整固件升級(jí),可以通過修改 package-file 來裁剪固件大小。

位置在 Firefly_SDK/tools/linux/Linux_Pack_Firmware/rockdev/package-file

475de802-b718-11ef-8084-92fbcf53809c.png

“RESERVED”代表預(yù)留不打包的意思。例如:用戶如果只需要更新 kernel 、uboot、bootloader,可以把 rootfs 分區(qū)設(shè)置成“RESERVED”,這樣可以大大的減少固件大小。

OTA固件升級(jí)步驟

本文實(shí)例的實(shí)際操作軟硬件環(huán)境:

設(shè)備:AIO-3588Q

固件:AIO-3588Q-RTLINUX_Ubuntu20.04-Gnome-r240_v1.1.1d_231018


1. 安裝 UpdateEngine

在 Firefly官方的 ubuntu20.04 和 ubuntu22.04 apt源中已經(jīng)添加了 updateEngine 包,可以直接使用 apt 安裝。

apt updateapt install updateengine

如果是其他 Linux 發(fā)行版,也可以直接編譯運(yùn)行。

apt install libdrm-dev libssl-dev libbz2-dev libcurl4-openssl-dev gitgit clone https://gitlab.com/firefly-linux/external/recovery.gitcd recoverymake -j8

2.升級(jí)遠(yuǎn)程固件

updateEngine --misc=update --image_url=http://172.16.0.123:8000/update.img --savepath=/userdata/update.img --partition=0xFFFC00 --reboot

--misc=update:misc 中寫入“update”標(biāo)志,通知 recovery 需要進(jìn)行 OTA 升級(jí)

--image_url:指定固件路徑

--savepath:指定固件存放路徑

--partition:指定需要升級(jí)的分區(qū),不指定則默認(rèn)是 0X3FFC00

--reboot:執(zhí)行完成后是否自動(dòng) reboot

476dc4b6-b718-11ef-8084-92fbcf53809c.png

簡(jiǎn)單的搭建存放固件的 http 服務(wù)器。

python3 -m http.server 80

3. 升級(jí)本地固件

updateEngine --misc=update --image_url=/userdata/update.img --partition=0xFFFC00 --reboot

參數(shù)同上

4. 升級(jí)完成

執(zhí)行命令后會(huì)自動(dòng)重啟進(jìn)入 recovery 升級(jí),user LED 燈閃爍,升級(jí)完成后設(shè)備會(huì)自動(dòng)重啟進(jìn)入正常的操作系統(tǒng)。

升級(jí)前:

479822d8-b718-11ef-8084-92fbcf53809c.png

升級(jí)后:

47ac8c00-b718-11ef-8084-92fbcf53809c.png

注意事項(xiàng)

1. 分區(qū)要求

如果你的設(shè)備只是單個(gè)系統(tǒng)啟動(dòng),不是 A/B 啟動(dòng),那么你的分區(qū)表中必須包含 misc 分區(qū)和 recovery 分區(qū)。另外如果固件存放在系統(tǒng)硬盤上的 userdata 分區(qū),那么不能修改分區(qū)表中的 Userdata 起始位置。

2. 固件存放

無(wú)論遠(yuǎn)程更新或本地更新,固件最終的存放路徑必須要放在 /userdata 下,有其他的存儲(chǔ)介質(zhì)除外,但也需要在 recovery 上可以做到自動(dòng)掛載。

3.Userdata 用戶數(shù)據(jù)

Recovery 在 updateEning OTA 升級(jí)時(shí)會(huì)保留 userdata 數(shù)據(jù),所以 misc 不會(huì)升級(jí),也不會(huì)擦除 userdata 分區(qū)數(shù)據(jù)。如有需要可以自定義 recovery 的代碼,F(xiàn)irefly_SDK/external/rkupdate/RKAndroidDevice.cpp => DownloadImage,去掉 MISC 的判斷條件,重新編譯 recovery 打包 OTA 升級(jí)固件。

47c30f70-b718-11ef-8084-92fbcf53809c.png

更加安全的 OTA 升級(jí)應(yīng)該配合A/B 系統(tǒng)來完成,后續(xù)我們還會(huì)單獨(dú)介紹 A/B 系統(tǒng)的 OTA 升級(jí)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 無(wú)線通信
    +關(guān)注

    關(guān)注

    58

    文章

    4755

    瀏覽量

    145220
  • 數(shù)據(jù)線
    +關(guān)注

    關(guān)注

    8

    文章

    298

    瀏覽量

    42759
  • OTA
    OTA
    +關(guān)注

    關(guān)注

    7

    文章

    612

    瀏覽量

    36592
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    東風(fēng)日產(chǎn)N7開啟首次OTA升級(jí)

    近日,東風(fēng)日產(chǎn)舉辦“NI好 N7首次OTA升級(jí)發(fā)布會(huì)”,并宣布OTA升級(jí)即日開啟推送。
    的頭像 發(fā)表于 07-05 13:57 ?425次閱讀

    詳解藍(lán)牙空中升級(jí)(OTA)原理與步驟

    如何實(shí)現(xiàn)Bluetooth LE OTA?什么叫DFU?如何通過UART實(shí)現(xiàn)固件升級(jí)?又如何通過USB實(shí)現(xiàn)固件升級(jí)?怎么保證
    的頭像 發(fā)表于 07-04 09:56 ?611次閱讀
    詳解藍(lán)牙空中<b class='flag-5'>升級(jí)</b>(<b class='flag-5'>OTA</b>)原理與步驟

    使用STM32H755ZIQ-NUCLEO時(shí),由于數(shù)據(jù)線的原因?qū)е?b class='flag-5'>固件升級(jí)失敗怎么解決?

    使用STM32H755ZIQ-NUCLEO時(shí),由于數(shù)據(jù)線的原因?qū)е?b class='flag-5'>固件升級(jí)失敗,目前沒有辦法下載程序,大佬們解決的辦法?
    發(fā)表于 06-17 06:47

    使用STM32H755ZIQ-NUCLEO時(shí),由于數(shù)據(jù)線的原因?qū)е?b class='flag-5'>固件升級(jí)失敗,怎么解決?

    使用STM32H755ZIQ-NUCLEO時(shí),由于數(shù)據(jù)線的原因?qū)е?b class='flag-5'>固件升級(jí)失敗,目前沒有辦法下載程序,大佬們解決的辦法?
    發(fā)表于 06-16 06:20

    CYUSB3014采用5根地址通信,但其中一條地址懸空,對(duì)數(shù)據(jù)通信有影響嗎?

    CYUSB3014采用5根地址通信,但其中一條地址懸空,對(duì)數(shù)據(jù)通信有影響嗎??是否還能進(jìn)行正常的多個(gè)端點(diǎn)通信,只要跳過那個(gè)地址對(duì)應(yīng)的s
    發(fā)表于 05-21 07:59

    瑞薩電子MCU無(wú)感OTA升級(jí)功能介紹

    在工業(yè)控制、電機(jī)驅(qū)動(dòng)乃至物聯(lián)網(wǎng)邊緣節(jié)點(diǎn)中,固件在線升級(jí)OTA)已成為產(chǎn)品生命周期管理的標(biāo)配。然而傳統(tǒng)OTA往往伴隨停機(jī)、風(fēng)險(xiǎn)與低效。瑞薩電子MCU中的Dual?Bank閃存架構(gòu)為工程
    的頭像 發(fā)表于 05-15 14:36 ?714次閱讀
    瑞薩電子MCU無(wú)感<b class='flag-5'>OTA</b><b class='flag-5'>升級(jí)</b>功能介紹

    RK3568開發(fā)板OTA升級(jí)

    OTA(Over-The-Air)升級(jí)作為種無(wú)損失的系統(tǒng)升級(jí)方式,能夠遠(yuǎn)程將新功能部署到產(chǎn)品上,極大地提高了設(shè)備的可維護(hù)性和可擴(kuò)展性。除了通過網(wǎng)絡(luò)直接下載
    的頭像 發(fā)表于 04-21 14:32 ?744次閱讀
    RK3568開發(fā)板<b class='flag-5'>OTA</b><b class='flag-5'>升級(jí)</b>

    文解鎖OTA遠(yuǎn)程升級(jí)方案!基于RK3562全國(guó)產(chǎn)平臺(tái)

    在設(shè)備維護(hù)成本高、用戶體驗(yàn)難提升的雙重難題下,OTA(Over-the-Air)空間下載技術(shù)的出現(xiàn),無(wú)疑成為破解困境的“金鑰匙”,它是種通過無(wú)線網(wǎng)絡(luò)實(shí)現(xiàn)設(shè)備遠(yuǎn)程升級(jí)的技術(shù),全程數(shù)據(jù)無(wú)
    的頭像 發(fā)表于 04-07 10:15 ?417次閱讀
    <b class='flag-5'>一</b>文解鎖<b class='flag-5'>OTA</b>遠(yuǎn)程<b class='flag-5'>升級(jí)</b>方案!基于RK3562全國(guó)產(chǎn)平臺(tái)

    淺談車規(guī)MCU (MGEQ1C064) OTA升級(jí)

    使用笙泉官方提供的上位機(jī)軟件即可更新MCU固件(如下)。 如客戶需要實(shí)現(xiàn)無(wú)線方式的OTA升級(jí),笙泉會(huì)為客戶提供串口ISP(OTA)
    發(fā)表于 03-04 12:52

    OTA軟件升級(jí)管理系統(tǒng)

    OTA(Over-the-Air Technology,空中下載技術(shù))是通過空中下載的方式對(duì)車輛中的軟件進(jìn)行遠(yuǎn)程升級(jí)。經(jīng)緯恒潤(rùn)OTA軟件升級(jí)管理系統(tǒng)基于軟件架構(gòu)、應(yīng)用架構(gòu)、業(yè)務(wù)架構(gòu)和技
    的頭像 發(fā)表于 01-13 09:39 ?756次閱讀
    <b class='flag-5'>OTA</b>軟件<b class='flag-5'>升級(jí)</b>管理系統(tǒng)

    FLIR Ex Pro熱像儀的OTA無(wú)線更新技術(shù)

    始終站在FLIR技術(shù)前沿 享受最新功能帶來的便捷與高效 1 先進(jìn)的OTA技術(shù) OTA(Over-the-Air)技術(shù)能讓您的FLIR熱像儀無(wú)線接收最新功能和固件更新。只需連接Wi-Fi,熱像儀就能自動(dòng)查找并安裝新功能、安全補(bǔ)丁和
    的頭像 發(fā)表于 12-04 11:39 ?522次閱讀

    OTA無(wú)線更新技術(shù):升級(jí)系統(tǒng),隨時(shí)暢享FLIR最新技術(shù)!

    站在FLIR技術(shù)前沿,享受最新功能帶來的便捷與高效! 1先進(jìn)的OTA技術(shù) OTA(Over-the-Air)技術(shù)能讓您的FLIR熱像儀無(wú)線接收最新功能和固件更新。只需連接Wi-Fi,熱像儀就能自動(dòng)查找并安裝新功能、安全補(bǔ)丁和
    的頭像 發(fā)表于 12-03 15:34 ?704次閱讀
    <b class='flag-5'>OTA</b>無(wú)線更新技術(shù):<b class='flag-5'>一</b>鍵<b class='flag-5'>升級(jí)</b>系統(tǒng),隨時(shí)暢享FLIR最新技術(shù)!

    物聯(lián)網(wǎng)中的Fota是什么,如何使用HTTP來給設(shè)備升級(jí)

    概述 FOTA(Firmware Over-The-Air)移動(dòng)終端的空中下載軟件升級(jí),指通過云端升級(jí)技術(shù),為具有連網(wǎng)功能的設(shè)備提供固件升級(jí)
    的頭像 發(fā)表于 09-25 14:35 ?1626次閱讀
    物聯(lián)網(wǎng)中的Fota是什么,如何使用HTTP來給設(shè)備<b class='flag-5'>升級(jí)</b>

    請(qǐng)教,SIM卡PCB走,這個(gè)CKL時(shí)鐘數(shù)據(jù)線DATA要等長(zhǎng)嘛,一條走頂層一條走底層如圖這樣可以嘛

    請(qǐng)教,SIM卡PCB走,這個(gè)CKL時(shí)鐘數(shù)據(jù)線DATA要等長(zhǎng)嘛,長(zhǎng)條頂層一條走底層如圖這樣可以嘛
    發(fā)表于 08-03 22:49

    DM平臺(tái)管理設(shè)備如何進(jìn)行固件升級(jí)?

    )查看注冊(cè)狀態(tài) 4)DM平臺(tái)中添加設(shè)備,設(shè)備序列號(hào)通過設(shè)備系統(tǒng)界面或背板獲得。 5)添加升級(jí)固件 6)配置超時(shí)時(shí)間,默認(rèn)即可。 7)選擇需要升級(jí)的設(shè)備 8)查看系統(tǒng)
    發(fā)表于 07-25 06:22