91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

FOTA升級進階指南:文件系統(tǒng)直寫與串口分段傳輸技術(shù)詳解!

合宙LuatOS ? 來源:合宙LuatOS ? 作者:合宙LuatOS ? 2025-12-12 12:02 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

嵌入式設(shè)備遠程升級(FOTA)中,文件系統(tǒng)直接升級與串口分段傳輸技術(shù)是實現(xiàn)高效、穩(wěn)定升級的核心進階方案。文件系統(tǒng)直接升級通過精簡數(shù)據(jù)寫入路徑,降低存儲占用與操作延遲;串口分段升級則依托串口通道,將升級包拆分為小段進行傳輸與校驗,規(guī)避網(wǎng)絡(luò)波動影響。本文將從技術(shù)背景、實現(xiàn)原理到落地實踐,系統(tǒng)詳解兩種技術(shù)的實現(xiàn)邏輯與適配要點,助力開發(fā)者優(yōu)化FOTA升級體驗。

FOTA(Firmware Over-The-Air)是固件遠程升級的簡稱,用于設(shè)備固件的遠程更新和維護。

LuatOS提供了靈活的FOTA升級方案,支持通過文件系統(tǒng)直接升級和串口分段升級,可以滿足不同場景下的固件更新需求;支持靈活的存儲位置配置,可以使用內(nèi)部存儲或外部SPI Flash進行固件升級,同時提供了完整的升級流程控制和狀態(tài)查詢功能。

主要優(yōu)勢包括:

遠程維護:無需現(xiàn)場操作即可完成設(shè)備固件更新;

故障修復:快速修復已部署設(shè)備的軟件缺陷;

功能升級:為設(shè)備增加新功能,提升產(chǎn)品價值;

成本節(jié)約:大幅降低設(shè)備維護和升級成本;

安全保障:支持完整性校驗,確保升級過程安全可靠。

本文將以低功耗模組Air780EPM系列開發(fā)板為例,分享FOTA應(yīng)用示例要點。

一、升級包制作

LuatOS開發(fā)模式下,固件分為兩部分:

core:底層固件;

script:用戶腳本;

遠程升級時可以僅升級script,也可以同時升級core+script,這為迭代和維護提供了極大的便利。

關(guān)于全量升級和差分升級說明如下:

僅script腳本升級時:對于Air780EXX系列、Air8000系列、Air8101系列是全量升級。

core+script都升級時:對于Air780EXX系列、Air8000系列是差分升級;對于Air8101系列是全量升級。

升級包制作詳見:https://docs.openluat.com/air780epm/luatos/app/ota/fota_core/

▼ 全量升級包 ▼

僅script升級時,升級包制作說明如下:

如果只是新增一些自己的腳本邏輯,沒有更新底層,可以選擇僅腳本升級;

更新完自己腳本后,修改版本號,點擊生成量產(chǎn)文件,生成的量產(chǎn)文件中以.bin結(jié)尾的就是僅腳本升級的升級包。

wKgZPGk6kYGAa0kRAAUJXcHtCE0484.pngwKgZPGk6kb2ANEjdAAKL4e8aK8I947.png

▼ 差分升級包 ▼

core+script都升級時,升級包制作說明如下:

每一次core的升級都會帶來一些網(wǎng)絡(luò)上的優(yōu)化(例如信號差時的網(wǎng)絡(luò)穩(wěn)定性)以及一些bug修復,所以在發(fā)布新版本以后,用戶可以先測試下core對自己腳本有無明顯影響或性能提升,然后進行遠程FOTA。

對于含core升級的話需要制作差分包,原始版本生成一次量產(chǎn)文件,新版本生成一次量產(chǎn)文件。

針對這兩個量產(chǎn)文件,制作一個差分文件:點擊到Luatools的主界面,依次點擊下方圖中藍框所示意的地方。

特別注意:必須使用luatools_3.0.9及其以上版本,要不差分包升級的時候可能會出問題。

wKgZPGk6khuAKDlvAAHQSCiItpc691.png

按下圖所示選擇舊版本以及新版本的固件,然后點擊開始執(zhí)行即可;如果不想輸出的差分包在Luatools根目錄下,可以自行選擇一個輸出路徑;在你選擇的目錄下看,新生成的.bin文件就是升級差分包。

wKgZPGk6klmAEmosAARE72SDPBM756.png

二、FOTA升級示例demo

本demo演示的核心功能為,基于Air780EPM的兩種FOTA升級方式:

文件系統(tǒng)直接升級:通過模組文件系統(tǒng)中的文件直接升級,代碼演示通過Luatools的燒錄文件系統(tǒng)功能將升級包文件直接燒錄到文件系統(tǒng)然后升級。

分段升級:通過串口將升級包文件分多個片段發(fā)送,每個片段接收并寫入,代碼演示使用USB虛擬串口分段寫入升級包升級。

適用場景:非標準數(shù)據(jù)傳輸 -> 串口、TCP、MQTT等自定義通道升級;流程精細控制 -> 需要自定義升級前后處理邏輯。

兩種FOTA升級測試要點如下:

▼ 文件系統(tǒng)直接升級 ▼

1)核心代碼實現(xiàn)

fota_file.lua核心測試代碼如下,完整demo詳見源碼倉庫最新文件。

wKgZPGk6kviARZmuAAJHr3TTO6Y705.pngwKgZO2k6kxKAGMEOAAJ9x_U0n3s394.png

2)文件系統(tǒng)升級操作步驟

參考實操教程搭建好演示硬件環(huán)境;

修改配置:在main.lua中取消require("fota_file") 的注釋,注釋掉require("fota_uart");

制作升級包:按照第一章節(jié),使用Luatools制作升級包;

燒錄文件:

使用Luatools燒錄內(nèi)核固件和腳本代碼,通過"燒錄文件系統(tǒng)"功能將升級包文件燒錄到設(shè)備中;

自動升級:設(shè)備啟動后會自動檢測并執(zhí)行升級流程。

注意:"燒錄文件系統(tǒng)"功能使用

將制作好的升級包修改名字為update.bin,然后放到一個空文件夾中,在Luatools的"燒錄文件系統(tǒng)"功能欄中選中這個文件夾,點擊下載即可;燒錄成功后,update.bin會在文件系統(tǒng)根目錄下,路徑為"/update.bin"。

wKgZPGk6k2OAYKYaAABWgkGOR-A540.png

3)查看運行日志

開始升級,讀取文件系統(tǒng)目錄下的升級包文件/update.bin;

FOTA初始化 → 底層就緒 → 文件寫入 → MD5校驗通過;

升級完成,版本驗證成功;

設(shè)備自動重啟;

新版本1.0.1正常運行,新增日志確認升級成功。

如下圖示:文件系統(tǒng)FOTA升級完全成功,版本從1.0.0升級到1.0.1。

wKgZPGk6k5yAG7LfAAhBl8L84Ew097.png

▼ 串口分段升級 ▼

1)核心代碼實現(xiàn)

fota_uart.lua核心測試代碼如下,完整demo詳見源碼倉庫最新文件。

wKgZPGk6k-eAX3iRAAJONDdiHME514.pngwKgZPGk6lAuAWlmUAAImqg9qZZ4692.pngwKgZPGk6lCiAPt5qAAJb10Jd-Tc716.pngwKgZO2k6lEuATc_IAAKPRTmZgnc920.pngwKgZO2k6lHyAEMMyAAH2leLSf5A452.pngwKgZO2k6lJOAXrmlAACCy1sPV0o338.png

2)串口升級操作步驟

參考實操教程搭建好演示硬件環(huán)境;

修改demo腳本代碼:確保main.lua中已注釋 require("fota_file"),取消require("fota_uart") 的注釋;

制作升級包:按照第一章節(jié),使用Luatools制作升級包;將制作好的升級包放在main.py同級目錄下;

燒錄文件:Luatools燒錄內(nèi)核固件和修改前的demo腳本代碼,燒錄成功后,自動開機運行;

通過串口升級:確認設(shè)備連接到電腦的串口(虛擬USB串口);按一下板上的Powerkey鍵,然后運行Python腳本發(fā)送升級包;腳本會自動尋找設(shè)備虛擬串口,發(fā)送升級命令并傳輸fota_uart.bin文件;設(shè)備接收并驗證升級包,升級成功后會自動重啟。

3)查看運行日志

USB虛擬串口連接,收到#FOTA起始指令;

開始分段接收升級包,每次256字節(jié),累計5751字節(jié);

所有數(shù)據(jù)包寫入成功,MD5校驗通過;

升級完成,重啟;

重啟后新版本1.0.2運行,新增日志確認升級成功。

如下圖示:串口FOTA升級完全成功,版本從1.0.0升級到1.0.2。

wKgZO2k6lZKAEgWrAAwnXubJudQ666.pngwKgZPGk6lcWAT9NLAAy5si57-7M258.pngwKgZPGk6lfyAMbCwAAw-YvxqQgc315.png

今天的內(nèi)容就分享到這里了~

審核編輯 黃宇

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

    關(guān)注

    0

    文章

    30

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    LuatOS FOTA升級全解析

    在實際項目中,Core優(yōu)化與腳本迭代往往需要同步推進。LuatOS支持腳本與Core的聯(lián)合FOTA升級,極大提升維護靈活性。本文將系統(tǒng)講解升級包制作、版本號管理、設(shè)備綁定等環(huán)節(jié),助你構(gòu)
    的頭像 發(fā)表于 02-04 15:36 ?854次閱讀
    LuatOS <b class='flag-5'>FOTA</b><b class='flag-5'>升級</b>全解析

    LuatOS FOTA升級:新手也能秒懂的操作指南

    面對成千上萬的終端設(shè)備,如何低成本完成版本迭代?FOTA是答案。本文聚焦LuatOS平臺的遠程升級能力,以極簡語言和清晰步驟,帶你走過從創(chuàng)建項目、獲取校驗碼到設(shè)備重啟升級的全過程,真正實現(xiàn)“極速上手
    的頭像 發(fā)表于 02-04 15:34 ?795次閱讀
    LuatOS <b class='flag-5'>FOTA</b><b class='flag-5'>升級</b>:新手也能秒懂的操作<b class='flag-5'>指南</b>

    零基礎(chǔ)入門:用libfota2實現(xiàn)第三方服務(wù)器FOTA升級服務(wù)

    ?即使你是FOTA新手,也能通過本教程掌握遠程固件升級的核心實現(xiàn)。我們以libfota2為客戶端核心,結(jié)合自建第三方服務(wù)器,提供一份零基礎(chǔ)可上手的完整FOTA服務(wù)搭建指南。從服務(wù)端部署
    的頭像 發(fā)表于 01-19 18:35 ?96次閱讀
    零基礎(chǔ)入門:用libfota2實現(xiàn)第三方服務(wù)器<b class='flag-5'>FOTA</b><b class='flag-5'>升級</b>服務(wù)

    FOTA升級全流程教學:基于libfota2與第三方服務(wù)器搭建

    遠程固件升級不再是大廠專屬,借助libfota2,你也可以為自己的設(shè)備搭建私有FOTA系統(tǒng)。本文將“手把手”帶你完成從服務(wù)端搭建、固件包發(fā)布到設(shè)備端升級響應(yīng)的完整流程。所有環(huán)節(jié)均基于第
    的頭像 發(fā)表于 01-19 18:35 ?209次閱讀
    <b class='flag-5'>FOTA</b><b class='flag-5'>升級</b>全流程教學:基于libfota2與第三方服務(wù)器搭建

    從小白到大牛:Linux嵌入式系統(tǒng)開發(fā)的完整指南

    編寫簡單的 Shell 腳本(如自動備份文件、批量編譯程序)鞏固技能。? 二、能力進階:攻克核心技術(shù)模塊? 入門后需聚焦嵌入式 Linux 的核心技術(shù)棧,分模塊突破,形成
    發(fā)表于 12-16 10:42

    明晚8點|睿擎文件系統(tǒng)實戰(zhàn):從開發(fā)到發(fā)布全流程解析

    文件操作到鏡像發(fā)布,一次直播掌握完整開發(fā)流程!在嵌入式系統(tǒng)開發(fā)中,文件系統(tǒng)是數(shù)據(jù)存儲、配置管理和資源訪問的核心基礎(chǔ)。然而在實際開發(fā)中,文件操作效率低下、鏡像打包流程復雜、
    的頭像 發(fā)表于 11-11 11:53 ?632次閱讀
    明晚8點|睿擎<b class='flag-5'>文件系統(tǒng)</b>實戰(zhàn):從開發(fā)到發(fā)布全流程解析

    睿擎派文件系統(tǒng)指南:從開發(fā)到發(fā)布全流程實踐 | 技術(shù)解析

    在嵌入式系統(tǒng)開發(fā)中,文件系統(tǒng)扮演著至關(guān)重要的角色,它負責數(shù)據(jù)的持久化存儲、配置文件管理和資源訪問等核心功能。睿擎平臺提供了一套完整的文件系統(tǒng)解決方案,從開發(fā)階段的API調(diào)用到調(diào)試階段的
    的頭像 發(fā)表于 11-05 18:13 ?8086次閱讀
    睿擎派<b class='flag-5'>文件系統(tǒng)</b><b class='flag-5'>指南</b>:從開發(fā)到發(fā)布全流程實踐 | <b class='flag-5'>技術(shù)</b>解析

    技術(shù)貼|【RK3588】ELF 2開發(fā)板如何添加exFAT和NTFS文件系統(tǒng)格式

    基于RK3588設(shè)計的ELF2開發(fā)板在搭載Desktop22.04系統(tǒng)時,對TF卡的文件系統(tǒng)支持存在以下限制:不支持exFAT格式;支持NTFS格式,但需手動掛載;針對上述兼容性問題,本文將介紹
    的頭像 發(fā)表于 08-27 17:21 ?3511次閱讀
    <b class='flag-5'>技術(shù)</b>貼|【RK3588】ELF 2開發(fā)板如何添加exFAT和NTFS<b class='flag-5'>文件系統(tǒng)</b>格式

    Linux三大主流文件系統(tǒng)解析

    還在為選擇哪個文件系統(tǒng)而糾結(jié)?作為一名摸爬滾打多年的運維老鳥,我將用最接地氣的方式,帶你徹底搞懂 Linux 三大主流文件系統(tǒng)的奧秘。
    的頭像 發(fā)表于 08-05 17:37 ?1435次閱讀

    飛凌嵌入式ElfBoard ELF 1板卡-文件系統(tǒng)簡介

    , extfs,即Linux擴展文件系統(tǒng),Ext2代表第二代擴展文件系統(tǒng),Ext3/Ext4是Ext2的升級版,減少一致性檢查的時間,增加了日志功能,一般將Ext2稱為索引式文件系統(tǒng),
    發(fā)表于 06-19 17:22

    服務(wù)器數(shù)據(jù)恢復—ocfs2文件系統(tǒng)被格式化為Ext4文件系統(tǒng)的數(shù)據(jù)恢復案例

    服務(wù)器存儲數(shù)據(jù)恢復環(huán)境&故障: 人為誤操作將Ext4文件系統(tǒng)誤裝入一臺服務(wù)器存儲上的Ocfs2文件系統(tǒng)數(shù)據(jù)卷上,導致原Ocfs2文件系統(tǒng)被格式化為Ext4文件系統(tǒng)
    的頭像 發(fā)表于 06-10 12:03 ?724次閱讀
    服務(wù)器數(shù)據(jù)恢復—ocfs2<b class='flag-5'>文件系統(tǒng)</b>被格式化為Ext4<b class='flag-5'>文件系統(tǒng)</b>的數(shù)據(jù)恢復案例

    RK3568驅(qū)動指南|驅(qū)動基礎(chǔ)進階篇-進階7 向系統(tǒng)中添加一個系統(tǒng)調(diào)用

    RK3568驅(qū)動指南|驅(qū)動基礎(chǔ)進階篇-進階7 向系統(tǒng)中添加一個系統(tǒng)調(diào)用
    的頭像 發(fā)表于 05-21 14:15 ?707次閱讀
    RK3568驅(qū)動<b class='flag-5'>指南</b>|驅(qū)動基礎(chǔ)<b class='flag-5'>進階</b>篇-<b class='flag-5'>進階</b>7 向<b class='flag-5'>系統(tǒng)</b>中添加一個<b class='flag-5'>系統(tǒng)</b>調(diào)用

    FOTA遠程升級的10個關(guān)鍵點!技術(shù)小白必須收藏

    本文將針對FOTA升級過程中的十大常見問題提供專業(yè)解答,幫助您規(guī)避風險,實現(xiàn)安全高效的固件更新。 一、FOTA遠程升級常見問題?? 01. 遠程升級
    的頭像 發(fā)表于 04-10 14:53 ?677次閱讀
    <b class='flag-5'>FOTA</b>遠程<b class='flag-5'>升級</b>的10個關(guān)鍵點!<b class='flag-5'>技術(shù)</b>小白必須收藏

    工業(yè)互聯(lián)進階之路:串口服務(wù)器與物聯(lián)網(wǎng)技術(shù)的深度融合

    工業(yè)互聯(lián)進階之路:串口服務(wù)器與物聯(lián)網(wǎng)技術(shù)的深度融合
    的頭像 發(fā)表于 03-24 09:39 ?747次閱讀
    工業(yè)互聯(lián)<b class='flag-5'>進階</b>之路:<b class='flag-5'>串口</b>服務(wù)器與物聯(lián)網(wǎng)<b class='flag-5'>技術(shù)</b>的深度融合

    如何正確選擇嵌入式文件系統(tǒng)

    Linux嵌入式系統(tǒng)中,文件系統(tǒng)和緩存機制常導致數(shù)據(jù)存儲穩(wěn)定性問題。本文通過案例分析原因,對比不同文件系統(tǒng)特性,為開發(fā)者提供優(yōu)化建議,助力提升數(shù)據(jù)穩(wěn)定性和系統(tǒng)可靠性。前言基于Linux
    的頭像 發(fā)表于 03-17 11:35 ?1097次閱讀
    如何正確選擇嵌入式<b class='flag-5'>文件系統(tǒng)</b>?