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!工具

相关文章
相关标签/搜索