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

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

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

萬物皆可OTA,為你的RK3568開發(fā)板部署新功能只需3步 ——飛凌嵌入式

飛凌嵌入式 ? 2023-03-31 14:22 ? 次閱讀

OTA是一種可以無損失升級系統(tǒng)的方式,可以猶如天降神兵一般地將新功能遠(yuǎn)程部署到產(chǎn)品上。我們可以通過網(wǎng)絡(luò)自動下載OTA升級包,也可以通過下載OTA升級包到SD卡或U盤后再對設(shè)備升級。本文將通過飛凌嵌入式OK3568-C開發(fā)板介紹OTA升級流程,本地升級程序recovery執(zhí)行升級的流程及技術(shù)細(xì)節(jié)。

poYBAGQmSW-ACxmFAAG1_EGO-qI707.png

1、制作recovery.img

recovery相關(guān)的源碼路徑:

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

如果有修改過以上目錄的源碼文件,則需要執(zhí)行以下操作:

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

2. 選擇某一平臺的 recovery 配置,輸入96

3. forlinx@ubuntu:~/OK3568-linux-source$ make recovery-dirclean && make recovery #清除編譯產(chǎn)物重新編譯

4. forlinx@ubuntu:~/OK3568-linux-source$ make rkupdate-dirclean && make rkupdate #清除編譯產(chǎn)物重新編譯

如果沒有修改過上述目錄的源碼文件,則直接執(zhí)行以下操作:

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文件。

點(diǎn)擊設(shè)備分區(qū)表,勾選9,選擇recovery路徑,點(diǎn)擊執(zhí)行。

pYYBAGQmSW-ADaNwAAA0ZOgi5K0969.png

2、制作升級鏡像

如何驗(yàn)證是否升級成功了呢?我們要先對boot.img文件有一個初步了解,boot.img文件存放有設(shè)備樹和內(nèi)核,我們只要對設(shè)備樹或者內(nèi)核進(jìn)行適當(dāng)?shù)男薷募纯伞1纠桃愿耣oot.img文件為例,對設(shè)備樹進(jìn)行了適當(dāng)修改。

修改 /OK3568-linux-source/kernel/arch/arm64/boot/dts/rockchip/OK3568-C-common.dtsi設(shè)備樹文件,對forlinx_control節(jié)點(diǎn)做如下修改。默認(rèn)只打開HDMI輸出,將MIPI和LVDS輸出關(guān)閉。

pYYBAGQmSW-AOy2SAAAkEyyMcp4460.png

修改/OK3568-linux-source/tools/linux/Linux_Pack_Firmware/rockdev/package-file文件,根據(jù)需求修改該文件,本例程以更新boot.img為例,所以將其他.img文件注釋掉。用戶可以根據(jù)產(chǎn)品更新需求對該文件進(jìn)行調(diào)整。

poYBAGQmSW-AUqq1AABC-rv6QFs539.png

本例程以修改設(shè)備樹顯示為例,修改完設(shè)備樹后,重新編譯內(nèi)核。

pYYBAGQmSW-ATZzJAAAr-_HR-Jc378.png

3、升級操作

SD卡或U盤升級

將SD卡或U盤默認(rèn)掛載到OK3568-C開發(fā)板的/run/media目錄下。將update.img鏡像文件拷貝到OK3568-C開發(fā)板的/userdata目錄下,重啟開發(fā)板后系統(tǒng)將檢測該目錄下的升級包自動升級。

ftp服務(wù)器升級

開發(fā)板端執(zhí)行如下命令,將服務(wù)器的升級包文件拷貝到開發(fā)板進(jìn)行升級。

poYBAGQmSW-AV5-PAABUE-1AhKM336.png

下載完成以后使用以下命令進(jìn)行升級:

update ota /userdata/update.img

升級過程中設(shè)備將會進(jìn)入recovery模式,并進(jìn)行自動升級,升級成功后會進(jìn)入到正常normal系統(tǒng)。

驗(yàn)證測試結(jié)果

將OK3568-C開發(fā)板上電,串口終端按住空格鍵,會進(jìn)入uboot選屏界面。

燒寫默認(rèn)出廠鏡像文件現(xiàn)象:默認(rèn)是開啟HDMI、MIPI和LVDS三個輸出。

pYYBAGQmSW-AUoqEAAAJ0-gqOwY384.png

燒寫升級包鏡像文件后現(xiàn)象:只有HDMI顯示開啟,其他的兩個輸出被關(guān)閉。

pYYBAGQmSW-AIT6UAAAJpy80k6k760.png

注意事項(xiàng)

打包update.img固件時需要注意,升級固件可以全分區(qū)打包,也可以部分升級,可修改package-file文件,將不要升級的分區(qū)去掉,這樣可以減少升級包(update.img)的大小。

package-file中recovery.img如果打包進(jìn)去的話,不會在Recovery模式中升級,為了預(yù)防升級recovery.img過程中掉電導(dǎo)致后面其他分區(qū)無法正常升級的問題,該分區(qū)升級放在normal系統(tǒng)下升級,執(zhí)行update命令時會先檢測update.img升級包中是否有打包recovery.img,若有則升級recovery分區(qū),再進(jìn)入Recovery模式升級其他分區(qū)固件。

misc分區(qū)不建議打包進(jìn)update.img中,即使有打包進(jìn)去,在升級程序中加載判斷到后也會忽略該分區(qū),即使升級了misc分區(qū),升級成功后recovery程序仍會清空misc分區(qū)中所有的命令及參數(shù),從而導(dǎo)致達(dá)不到預(yù)想的結(jié)果。

如果將update.img升級包放置在flash中的userdata分區(qū),則需要保證package-file中不包括userdata.img被打包進(jìn)去,原因是可能會導(dǎo)致文件系統(tǒng)的損壞,升級成功后可能使oem或userdata分區(qū)mount不成功。若從SD卡或U盤升級時,可以打包userdata.img,從而對userdata分區(qū)進(jìn)行升級。升級完成后會對userdata分區(qū)重新resize操作。

poYBAGQmSXCATISlAAFEM3ckKhQ27.jpeg

PS:

OK3568-C開發(fā)板不接屏升級失敗怎么辦?

(1)如果有屏幕,請先接入屏后再執(zhí)行OTA升級;

(2)如果設(shè)備沒有屏幕,請?jiān)?/p>

/OK3568-linux-source/buildroot/configs/OK3568-recovery_defconfig中加入BR2_PACKAGE_RECOVERY_NO_UI=y配置,編譯刷機(jī)后,再進(jìn)行OTA升級。

至此,OTA升級的全部流程講解完畢,用戶可以先按照該文章操作進(jìn)行試驗(yàn),熟悉本文章操作后,就可以對uboot,內(nèi)核或者文件系統(tǒng)進(jìn)行修改,通過OTA方式遠(yuǎn)程升級用戶產(chǎn)品,從而修復(fù)產(chǎn)品中的BUG,更加方便地進(jìn)行產(chǎn)品優(yōu)化,更新迭代。

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

    關(guān)注

    134

    文章

    9028

    瀏覽量

    366496
  • 嵌入式開發(fā)
    +關(guān)注

    關(guān)注

    18

    文章

    1018

    瀏覽量

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

    關(guān)注

    7

    文章

    566

    瀏覽量

    35106
  • RK3568
    +關(guān)注

    關(guān)注

    4

    文章

    492

    瀏覽量

    4891
收藏 人收藏

    評論

    相關(guān)推薦

    能力再次提升! 迅RK3588/RK3568開發(fā)板&核心新增定制分區(qū)鏡像

    能力再次提升! 迅RK3588/RK3568開發(fā)板&核心新增定制分區(qū)鏡像
    的頭像 發(fā)表于 11-06 15:11 ?203次閱讀
    能力再次提升! 迅<b class='flag-5'>為</b><b class='flag-5'>RK</b>3588/<b class='flag-5'>RK3568</b><b class='flag-5'>開發(fā)板</b>&amp;amp;核心<b class='flag-5'>板</b>新增定制分區(qū)鏡像

    iTOP-RK3568/RK3588開發(fā)板獲麒麟軟件適配認(rèn)證

    iTOP-RK3568/RK3588開發(fā)板獲麒麟軟件適配認(rèn)證
    的頭像 發(fā)表于 10-18 14:56 ?402次閱讀
    迅<b class='flag-5'>為</b>iTOP-<b class='flag-5'>RK3568</b>/<b class='flag-5'>RK</b>3588<b class='flag-5'>開發(fā)板</b>獲麒麟軟件適配認(rèn)證

    北京迅RK3568開發(fā)板嵌入式學(xué)習(xí)之Linux驅(qū)動全新更新-CAN+

    北京迅RK3568開發(fā)板嵌入式學(xué)習(xí)之Linux驅(qū)動全新更新-CAN+
    的頭像 發(fā)表于 09-04 15:29 ?360次閱讀
    北京迅<b class='flag-5'>為</b><b class='flag-5'>RK3568</b><b class='flag-5'>開發(fā)板</b><b class='flag-5'>嵌入式</b>學(xué)習(xí)之Linux驅(qū)動全新更新-CAN+

    如何get RK3568核心的音頻功能

    的是,嵌入式RK3568核心憑借采樣范圍0~1.8V、采樣精度
    發(fā)表于 08-29 14:34

    鴻蒙OpenHarmony南向/北向快速開發(fā)教程-迅RK3568開發(fā)板

    大家期待已久的迅RK3568開發(fā)板終于迎來了鴻蒙4.1系統(tǒng)的強(qiáng)勢支持!想知道如何實(shí)現(xiàn)快速開發(fā)學(xué)習(xí)嗎?跟著我們一起來探索吧! 迅
    發(fā)表于 07-23 10:44

    RK3568開發(fā)板支持AMP雙系統(tǒng)

    RK3568開發(fā)板支持AMP雙系統(tǒng)
    的頭像 發(fā)表于 06-04 15:33 ?611次閱讀
    <b class='flag-5'>RK3568</b><b class='flag-5'>開發(fā)板</b>支持AMP雙系統(tǒng)

    嵌入式FET3568/3568J-C核心現(xiàn)已適配OpenHarmony4.1

    J-C核心賦予了更強(qiáng)大的功能,也開發(fā)者們提供了更加廣闊的創(chuàng)新空間。FET3568/3568J
    的頭像 發(fā)表于 05-31 14:17 ?625次閱讀
    <b class='flag-5'>飛</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b>FET<b class='flag-5'>3568</b>/<b class='flag-5'>3568</b>J-C核心<b class='flag-5'>板</b>現(xiàn)已適配OpenHarmony4.1

    通過RK3568開發(fā)板進(jìn)行OTA本地程序升級

    將通過嵌入式OK3568-C開發(fā)板大家介紹OTA
    發(fā)表于 04-20 11:23

    技術(shù)帖 | RK3568開發(fā)板OTA升級教程

    通過嵌入式OK3568-C開發(fā)板大家介紹OTA
    的頭像 發(fā)表于 04-20 08:01 ?1517次閱讀
    技術(shù)帖 | <b class='flag-5'>RK3568</b><b class='flag-5'>開發(fā)板</b>的<b class='flag-5'>OTA</b>升級教程

    RK3568開發(fā)板驅(qū)動開發(fā)指南-輸入子系統(tǒng)

    RK3568開發(fā)板驅(qū)動開發(fā)指南-輸入子系統(tǒng)
    的頭像 發(fā)表于 02-23 15:11 ?745次閱讀
    迅<b class='flag-5'>為</b><b class='flag-5'>RK3568</b><b class='flag-5'>開發(fā)板</b>驅(qū)動<b class='flag-5'>開發(fā)</b>指南-輸入子系統(tǒng)

    嵌入式RK3568開發(fā)板藍(lán)牙收、發(fā)文件測試

    本文由電子發(fā)燒友論壇用戶fsdzdzy提供,感謝分享。嵌入式每月定期開展新的開發(fā)板體驗(yàn)活動,歡迎更多工程師朋友的關(guān)注和參與。
    的頭像 發(fā)表于 02-02 16:31 ?1792次閱讀
    <b class='flag-5'>飛</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b><b class='flag-5'>RK3568</b><b class='flag-5'>開發(fā)板</b>藍(lán)牙收、發(fā)文件測試

    RK3568開發(fā)板助力智能車載產(chǎn)業(yè)快速發(fā)展

    RK3568開發(fā)板助力智能車載產(chǎn)業(yè)快速發(fā)展
    的頭像 發(fā)表于 01-23 13:59 ?520次閱讀
    迅<b class='flag-5'>為</b><b class='flag-5'>RK3568</b><b class='flag-5'>開發(fā)板</b>助力智能車載產(chǎn)業(yè)快速發(fā)展

    AMP“雙系統(tǒng)”加持,嵌入式RK3568核心強(qiáng)實(shí)時性再升級

    嵌入式FET3568-C系列核心再度迎來新升級——支持“AMP”雙系統(tǒng)。
    的頭像 發(fā)表于 01-17 11:30 ?908次閱讀
    AMP“雙系統(tǒng)”加持,<b class='flag-5'>飛</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b><b class='flag-5'>RK3568</b>核心<b class='flag-5'>板</b>強(qiáng)實(shí)時性再升級

    RK3568開發(fā)板在工控工業(yè)聯(lián)網(wǎng)網(wǎng)關(guān)方面的應(yīng)用

    RK3568開發(fā)板在工控工業(yè)聯(lián)網(wǎng)網(wǎng)關(guān)方面的應(yīng)用
    的頭像 發(fā)表于 11-22 14:21 ?796次閱讀
    <b class='flag-5'>RK3568</b><b class='flag-5'>開發(fā)板</b>在工控工業(yè)<b class='flag-5'>物</b>聯(lián)網(wǎng)網(wǎng)關(guān)方面的應(yīng)用

    新版本!嵌入式RK3568系列開發(fā)板全面支持Debian 11系統(tǒng)

    嵌入式OK3568-C/OK3568J-C開發(fā)板現(xiàn)已全面支持Debian 11系統(tǒng),新系統(tǒng)的
    的頭像 發(fā)表于 11-14 08:01 ?636次閱讀
    新版本!<b class='flag-5'>飛</b><b class='flag-5'>凌</b><b class='flag-5'>嵌入式</b><b class='flag-5'>RK3568</b>系列<b class='flag-5'>開發(fā)板</b>全面支持Debian 11系統(tǒng)