- Firefly-PX3-SE 開發板
- 固件
- 主機
- 良好的 Micro USB OTG 線
- 固件文件一般有兩種:
- 單個統一固件 update.img, 將啟動加載器、參數和所有分區鏡像都打包到一起,用于固件發布。
- 多個分區鏡像,如 kernel.img, rootfs.img, recovery.img 等,在開發階段生成。
- 可以在這里找到已編譯好的統一固件,下載后解壓。也可以參考編譯根文件系統的說明自行編譯。
- 主機操作系統支持:
- Windows XP (32/64位)
- Windows 7 (32/64位)
- Windows 8 (32/64位)
- Linux (32/64位)
之前燒寫 RK 的固件,需要用到以下兩種工具:
- 量產工具 RKBatchTool,用于燒寫統一固件(update.img)
- 開發者工具 RKDevelopTool,可單獨燒寫分區固件
后來 RK 發布了 AndroidTool 工具,在 RKDevelopTool 的基礎上增加了統一固件(update.img)的燒寫支持,因此現在僅需要這個工具即可。使用燒寫工具前需要安裝 RK USB 驅動。如果驅動已經安裝好,可以跳過這步。
下載 RK驅動助手 ,解壓,然后運行里面的 DriverInstall.exe 。為了所有設備都使用更新的驅動,請先選擇”驅動卸載”,然后再選擇”驅動安裝”。
有兩種方法可以使設備進入升級模式。 一種方法是設備先斷開電源適配器和 Micro USB OTG 線的連接:
- Micro USB OTG 的一端連接主機。
- 按住設備上的 RECOVERY (恢復)鍵并保持。
- Micro USB OTG 的另一端連接設備。
- 大約兩秒鐘后,松開 RECOVERY 鍵。
另一種方法,無需斷開電源適配器和 Micro USB OTG 線的連接:
- 用 Micro USB OTG 線連接好設備和主機。
- 按住設備上的 RECOVERY (恢復)鍵并保持。
- 短按一下 RESET(復位)鍵。
- 大約兩秒鐘后,松開 RECOVERY 鍵。
主機應該會提示發現新硬件并配置驅動。打開設備管理器,會見到新設備”Rockusb Device” 出現,如下圖。如果沒有,則需要返回上一步重新安裝驅動。
下載 AndroidTool,解壓,運行 AndroidTool_Release_xx 目錄里面的 AndroidTool.exe(注意,如果是 Windows 7/8,需要按鼠標右鍵,選擇以管理員身份運行),如下圖:
燒寫統一固件 update.img 的步驟如下:
- 切換至”升級固件”頁。
- 按”固件”按鈕,打開要升級的固件文件。升級工具會顯示詳細的固件信息。
- 按”升級”按鈕開始升級。
- 如果升級失敗,可以嘗試先按”擦除Flash”按鈕來擦除 Flash,然后再升級。
注意:如果你燒寫的固件laoder版本與原來的機器的不一致,請在升級固件前先執行”擦除Flash”。
燒寫分區映像的步驟如下:
- 切換至”下載鏡像”頁。
- 勾選需要燒錄的分區,可以多選。
- 確保映像文件的路徑正確,需要的話,點路徑右邊的空白表格單元格來重新選擇。
- 點擊”執行”按鈕開始升級,升級結束后設備會自動重啟。
RK 提供了一個 Linux 下的命令行工具 upgrade_tool,支持統一固件 update.img 和分區鏡像的燒寫。
開源工具則有兩個選擇:
- rkflashtool
- rkflashkit
它們都僅支持分區映像燒寫,不支持統一固件。rkflashtool 是命令行工具,rkflashkit 有圖形界面,后加了命令行支持,更是好用。以下僅對 rkflashkit 做介紹。*** Linux 下無須安裝設備驅動,參照 Windows 章節連接設備則可。***
下載 Linux_Upgrade_Tool, 并按以下方法安裝到系統中,方便調用:
unzip Linux_Upgrade_Tool_v1.24.zip cd Linux_UpgradeTool_v1.24 sudo mv upgrade_tool /usr/local/bin sudo chown root:root /usr/local/bin/upgrade_tool
燒寫統一固件 update.img:
sudo upgrade_tool uf update.img
燒寫分區鏡像:
sudo upgrade_tool di -b /path/to/boot.img sudo upgrade_tool di -k /path/to/kernel.img sudo upgrade_tool di -s /path/to/system.img sudo upgrade_tool di -r /path/to/recovery.img sudo upgrade_tool di -m /path/to/misc.img sudo upgrade_tool di resource /path/to/resource.img sudo upgrade_tool di -p paramater #燒寫 parameter sudo upgrade_tool ul bootloader.bin # 燒寫 bootloader
如果因 flash 問題導致升級時出錯,可以嘗試低級格式化、擦除 nand flash:
sudo upgrade_tool lf # 低級格式化 sudo upgrade_tool ef # 擦除
安裝:
圖形界面:
sudo rkflashkit
命令行:
$ rkflashkit --help Usage: [args] [ [args]...] part List partition flash @ Flash partition with image file cmp @ Compare partition with image file backup @ Backup partition to image file erase @ Erase partition reboot Reboot device For example, flash device with boot.img and kernel.img, then reboot: sudo rkflashkit flash @boot boot.img @kernel.img kernel.img reboot
幫助信息里有使用示例,可以看出,一條命令就可以燒寫多個映像文件并重啟設備,對需要經常編譯和燒寫內核的開發者來說,是一大福音。
-
嵌入式主板
+關注
關注
7文章
6085瀏覽量
35296 -
安卓
+關注
關注
5文章
2126瀏覽量
57147 -
Firefly
+關注
關注
2文章
538瀏覽量
7027
發布評論請先 登錄
相關推薦
評論