版本查询

查询设备烧写的固件版本号

设备开机后SSH登录系统

cd /proc/device-tree/hckdigi

通过设备树查询当前版本信息

nvidia@tegra-ubuntu:/proc/device-tree/hckdigi$ ll
total 0
drwxr-xr-x  2 root root  0 Aug 26 13:38 ./
drwxr-xr-x 60 root root  0 Nov 21  2023 ../
-r--r--r--  1 root root  8 Aug 26 13:38 board_model         // 主控板型号:HCK-C19 or C1201
-r--r--r--  1 root root  5 Aug 26 13:38 board_version       // 主控板的版本: v100
-r--r--r--  1 root root  7 Aug 26 13:38 jetpack             // 内核适配的Jetpack SDK版本 :36.3.0
-r--r--r--  1 root root 13 Aug 26 13:38 jetson_module       // 适配的AI模组:Orin NX/Nanon
-r--r--r--  1 root root  8 Aug 26 13:38 name                // 主控板生产商:hckdigi
-r--r--r--  1 root root  5 Aug 26 13:38 version             // 镜像版本 : v1.0

备注

  • MI-19x2/C1201支持英伟达官方镜像烧写,部分客户在自行完成官方镜像烧写后,无法在设备树中查询到该厂商节点信息

  • Jetpack6.x以上的版本我司镜像中会默认包含设备树节点hckdigi

镜像刷写

设备进入Rec模式

裸载板

通过跳线帽将下图的REC和GND两针进行短接,然后单板上电后进入REC模式

recovery mode

备注

刷机完毕后,请取掉该跳线帽,否则系统再次进入REC模式

整机

长按整机前面板的REC按钮,同时插入电源并保持3秒以上后松开按钮

recovery mode

使用SDKM进行Jetson OS的刷机,刷机成功后系统启动后进入桌面

注意

  • 一般选择物理机安装Ubuntu系统作为刷机主机,请参考前述章节选择合适内核版本系统;

  • 也可采用虚拟机安装Ubuntu系统作为刷机主机,刷机时需要将识别到的USB挂载到虚拟机中;

  • 也可基于WIN10下载并安装SDK Manager,对初学者更加友好;

  • 一定要选择使用支持数据传输的USB TYPE-C线缆;

  • 关闭刷机主机上的各种VPN软件

SDKM刷写英伟达官方镜像

小技巧

  • 使用SDKM刷写英伟达官方镜像,可以体验到最新的官方Jetpack的内核和使用最前沿模型

  • 需确保SDKM能够访问网络

  1. 刷机主机上启动SDK Manager工具软件

alt text

  1. 检查载板上电后模组进入REC

只要刷机主机正确连接了USB-TYPEC数据线到载板的OTG烧录口,则SDKM会自动识别到模组型号 alt text


alt text 模组识别正确后,点击下一步

  1. 仅选择镜像刷机Jetson Linux

alt text

SDKM检查网络可达性 alt text

SDKM下载并在本地生成刷机镜像 alt text

设置系统的登录用户名密码和安装存储 alt text

设置无误后,点击确认开始刷机 alt text

  1. 刷机进行中观察实时日志

alt text 在刷机过程中如果出现失败,也可以通过该窗口获得实时的反馈和刷机错误提示 正常情况下,刷机成功如下图 alt text

使用SDKM刷写完英伟达镜像后,由于其默认设备树的原因,前面板的USB接口的工作状态为: alt text 仅正面右上的工作在USB3.0速率。可以通过更改设备树的方式将其他的2个USB接口修改为支持USB3.0 修改方法请参考:前面板USB3.0

实际载板接口能力请参考: 模组功能兼容性

命令行方式刷写我司镜像

Jetpack6.x版本刷机

注意

  • 以下操作适用于Jetpack6.x的镜像烧写,采用隐溪科技提供的镜像烧写工具和烧写镜像;

  • MI-19x2/C1201载板也支持基于英伟达的SDKM烧写官方镜像,区别在于部分内核驱动缺失导致设备的接口支持受限或者部分配件不支持

  1. 获得设备对应的刷机镜像包

小技巧

请联系 tech@hckdigi.com 获得镜像包的下载地址。

  1. 下载并解压镜像包到本地

# 当前整机安装的模组为Orin-NX-16GB为例(后续步骤皆同)
选择“HCK-C1201-JP6.2.0-orin-nx-16GB-v1.0.tar.gz”进行下载;

# 解压镜像包文件,必须使用sudo
sudo tar xzvf HCK-C1201-JP6.2.0-orin-nx-16GB-v1.0.tar.gz
  1. 设备进入Rec模式

  2. 在刷写主机上输入lsusb

lsusb

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 06cb:00be Synaptics, Inc.
Bus 001 Device 003: ID 5986:2130 Acer, Inc
Bus 001 Device 055: ID 0955:7323 NVidia Corp.
Bus 001 Device 005: ID 8087:0aaa Intel Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

上述红色加粗的7323就代表刷写主机通过USB已经识别到进入Recovery模式的Orin NX 16GB模组,其余模组型号的识别代码如下:

小技巧

  • 7023 for Jetson AGX Orin (P3701-0000 with 32GB)

  • 7023 for Jetson AGX Orin (P3701-0005 with 64GB)

  • 7223 for Jetson AGX Orin (P3701-0004 with 32GB)

  • 7323 for Jetson Orin NX (P3767-0000 with 16GB)

  • 7423 for Jetson Orin NX (P3767-0001 with 8GB)

  • 7523 for Jetson Orin Nano (P3767-0003 and P3767-0005 with 8GB)

  • 7623 for Jetson Orin Nano (P3767-0004 with 4GB)

  • 7019 for Jetson AGX Xavier (P2888-0001 with 16GB)

  • 7019 for Jetson AGX Xavier (P2888-0004 with 32GB)

  • 7019 for Jetson AGX Xavier (P2888-0005 with 64GB)

  • 7019 for Jetson AGX Xavier Industrial (P2888-0008)

  • 7e19 for Jetson Xavier NX (P3668)

  1. 命令行进行刷机

  • 安装必要的刷机依赖(仅需一次)

对于第一次进行刷机的主机,必须安装必要的刷机依赖

./l4t_flash_prerequisites.sh
  • 进入镜像包的解压根目录并执行刷机命令

# 进入刷机镜像包目录
cd mfi_jetson-orin-nano-devkit

# 执行刷机命令
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --flash-only
...()...
writing item=16, 9:0:secondary_gpt, 61203267072, 16896, gpt_secondary_9_0.bin, 16896, fixed-<reserved>-0, b7e802e72330c73e64feef762332043c98663e1f
[ 401]: l4t_flash_from_kernel: Successfully flash the external device
[ 401]: l4t_flash_from_kernel: Flashing success
[ 401]: l4t_flash_from_kernel: The device size indicated in the partition layout xml is smaller than the actual size. This utility will try to fix the GPT.
Flash is successful
Reboot device
Cleaning up...
  • 等待设备重启

注意

刷机时间约15分钟左右,成功刷机后会自动重启

常见问题

Q1 设备无法进入REC模式

请检查设备进入REC模式的关键步骤,需保持REC按键长按的情况下,再插入设备电源进行上电,上电后保持按压REC按键至少4秒钟以上,不确信时,可以延长到10秒后再松开REC按键。

Q2 刷机主机上lsusb无法找到nvidia的模组

请检查是否用数据线的USB TYPEC线缆连接了刷机主机和AIBOX。

Q3 刷机过程中出现“might be timeout in USB write”

timeout in USB write

在部分Ubuntu 20.04主机上,由于内核默认启用了USB Autosuspend节能设置,会有概率的在刷机过程中出现USB的超时错误,可以进行如下尝试: 在刷写主机上临时禁用autosuspend功能

sudo -s
echo -1 > /sys/module/usbcore/parameters/autosuspend

然后拔掉USB的刷机线缆后,重新将AIBOX操作进入Rec模式后插入USB刷机线缆。