NVIDIA Jetson Xavier NX從板磚到邊緣計算機——Jetpack4.4適配大疆OSDK4.0.1

1、安裝系統

刷機過程,一言難盡…都是血與淚…html

NX內存只有16G,安裝完系統後沒法再安裝Jetpack的CUDA、DeepStream等軟件包,強行安裝會致使沒法開機,不得不採用SD卡啓動方案。linux

硬件準備

  1. 服務器主機:PC一臺,虛擬機系統Ubuntu18.04;
  2. NX套裝一套(瑞泰RTSO-6001B套裝);
  3. SD卡一張,建議64G。

軟件準備

  1. Linux Driver Package
    Tegra186_Linux_R_aarch64.tbz2
    例如:Xavier_NX R32.4.3: Tegra186_Linux_R32.4.3_aarch64.tbz2

  2. the Root File System
    Tegra-Linux-Sample-Root-Filesystem_R_aarch64.tbz2
    例如:Xavier_NX R32.4.3: Tegra-Linux-Sample-Root-Filesystem_R32.4.3_aarch64.tbz2

  3. BSP 支持包
    Realtimes-L4T-.tar
    例如:Xavier_NX L4T 版本 32.4.3: Realtimes_L4T_3243_Xavier_NX.tar

燒錄環境準備

  1. 將上面所需文件拷貝至燒錄主機同一目錄下
  2. 解壓 Linux Driver Package
    tar –vxf Tegra186_Linux_R<version-i>_aarch64.tbz2
    生成文件夾目錄 Linux_for_Tegra_

  3. 進入 Linux Driver Package 的根文件系統目錄
    cd <your_L4T_root>/Linux_for_Tegra/rootfs
  4. 解壓 the Root File System 運行:
    sudo tar -jxpf ../../Tegra-Linux-Sample-Root-Filesystem_R<version-i>_aarch64.tbz2
  5. 安裝 BSP 支持包,將 Realtimes-L4T-.tar 包解壓到與 Linux_for_Tegra 文件夾同級目錄下面
    tar -xvf Realtimes-L4T-<version>.tar
  6. 進入到 Realtimes-L4T 文件夾, 運行
    sudo ./install.sh
    安裝成功, 會有 success 提示!

  7. 運行 apply_binaries.sh 腳本拷貝 NVIDIA 用戶空間庫進入目標文件系統
    cd ../Linux_for_Tegra/
    sudo ./apply_binaries.sh

製做 sd 卡鏡像

  1. cd Linux_for_Tegra/tools
  2. sudo ./jetson-disk-image-creator.sh -o sd-blob.img -b jetson-xavier-nx-devkit
  3. 生成的 sd-blob.img 用 Etcher 工具燒到 sd 卡里

燒錄系統

  1. 將NX鏈接PC,長按recovery和reset鍵,上電掛載到虛擬機,輸入lsusb顯示NVIDIA字樣即進入刷機模式
  2. 使用搭建好的 Xavier-NX 環境給 Xavier-NX 模塊燒寫一個 rtso-6001b 的系統 sudo ./flash.sh rtso-6001b mmcblk0p1
  3. 燒寫完成後,啓動系統,並在 RTSO-6001B 載板上插上 sd 卡
  4. 進入系統執行 sudo gedit /boot/extlinux/extlinux.conf
  5. 修改內容以下:
    APPEND ${cbootargs} quiet root=/dev/mmcblk1p1 rw rootwait rootfstype=ext4
  6. 重啓即爲SD卡啓動的鏡像了。

2、安裝Jetpack4.4相關軟件包

詳細步驟參考我第一篇博客,注意目標硬件的選擇,不要勾選flash OS, 僅選擇Jetson SDK components便可。git

3、內核編譯

直接配置OSDK環境沒法獲取ACM映射的網口,須要進入內核編譯打開相關驅動。github

網上有TX2相關的內核編譯教程,但NX的尚未,死馬當活馬醫在GitHub上搜索關鍵字找到一個老兄的NX內核編譯倉庫:https://github.com/jetsonhacks/buildJetsonXavierNXKernel,克隆到本地。shell

獲取源碼

sudo ./getKernelSources.sh

源碼下載完畢後,腳本會自動打開一個xconfig配置界面,若是沒有自動彈出,進入到/usr/src/kernel/kernel-4.9執行sudo make xconfig,若是報錯有多是沒有裝Qt,執行sudo apt-get install qttools5-dev再打開xconfig。相關內核配置參考NVIDIA Jetson TX2 內核中添加 CP210x 串口驅動。依次執行:服務器

sudo ./makeKernel.sh
sudo ./copyImage.sh
reboot

4、大疆OSDK環境配置

OSDK環境配置參考https://developer.dji.com/cn/onboard-sdk/documentation/quickstart/development-environment.html,若是cmake出錯極可能是ffmpeg安裝問題,參考https://www.jianshu.com/p/0276fd7707e9安裝ffmpeg,再次編譯便可運行demo了。app

ENJOY!工具

相關文章
相關標籤/搜索