一、AGX ORIN刷机准备工作
1.1 PC主机系统要求
NVIDIA官方提供一款端到端的开发环境配置工具SDK Manager,该工具可以配置PC主机的NVIDIA驱动和CUDA,以及给Jetson平台进行系统刷机。
SDK Manager在给Jetson平台进行刷机时,可以刷不同的JetPack版本,但是不同的版本支持的PC主机的操作系统不同,具体要求见如下官方表格。
用主机给Jetson平台刷JetPack 5.x版本时,仅支持主机PC系统为18.04和20.04;而要刷机JetPack 6.x时,仅支持主机PC系统为20.04和22.04。
AGX ORIN刷机时建议使用X86架构的主机,主机磁盘空闲空间建议大于25G,Ubuntu系统版本在18.04以上。
1.2 SDK Manager下载、安装、登陆
前往NVIDIA官网下载SDK Manager,
命令行安装SDK Manager
sudo apt install ./sdkmanager_2.1.0-11660_amd64.deb
安装完成后,终端打开SDK Manager
sdkmanager
输入NVIDIA账号登陆,如果没有需要注册
至此,登陆成功后,SDK Manager已经准备好了,等待下一步进行刷机。
二、设置AGX ORIN进入刷机模式
1)首先将主机与AGX ORIN用USB转type-C线连接,type-C接AGX ORIN,如下图接口,AGX ORIN先不要插上电源。
2)AGX ORIN进入recover模式
AGX ORIN进入Recovery模式根据AGX ORIN是否开机分为两种状况。
当处于未开机状态时,需要先长按住②键(Force Recovery键),然后给Orin接上电源线通电,五秒后再松开②键,此时白色指示灯亮起,但进入Recovery模式后是黑屏的,所以此时连接Orin的显示屏不会有什么反应。
当处于已开机状态时,需要先按住②键10秒不松开,然后按下③键(Reset键),先松开③键,再松开②键。
AGX ORIN的2号按键,即中间的那个按键为Recovery按键。
3)确认是否进入刷机模式
在主机命令行窗口输入lsusb
,当显示... 7023 NVIDIA Corp
字样,AGX ORIN进入刷机模式,如下所示。
Bus 001 Device 004: ID 0955:7023 NVIDIA Corp. APX
NVIDIA官网给出了如何确认Jetson处于强制Recovery模式
至此,完成AGX ORIN刷机模式设置。
三、SDK Manager配置Jetson平台的系统
SDK Manager配置Jetson平台系统时,会同时下载Jetson平台系统镜像和Jetson SDK(CUDA等),但是刷机时,会先刷系统镜像,再刷Jetson SDK组件。
3.1 环境配置
在将AGX ORIN设置进入Recovery模式并通过USB-C线缆连接到主机后,终端打开SDK manager,会提示你选择Jetson平台类型,根据实际情况选择即可。
接着进入Jetson平台的配置界面,需要注意的见下图中的三点:
- 1.这里不要勾选 Host Machine,否则会给主机PC安装Nidia驱动!
- 2.这里选择JetPack版本,要注意和主机PC系统版本匹配,否则无法安装!
- 3.DeepStream建议勾选,免得后面又要安装,比较麻烦。
3.2 组件配置
接着进入系统组件的配置界面,需要注意的见下图中的四点:
- 1.这里必须勾选 Jetson OS,这是Jetson的系统!
- 2.这里是Jetson SDK组件,如CUDA等,如果不勾选,也可以进入系统中自行安装,建议勾选!
- 3.如果勾选了Jetson SDK组件,记得检查下,别漏勾选了
- 4-1.选择的组件越多,对系统要求的磁盘空间越多,如果是Windows/ubuntu双系统,这里Download目录不能选择挂载在Windows系统下的目录(也不建议是外置硬盘目录下,未尝试),也不能是ubuntu的中文目录,最好在
home
下新建一个非中文目录。 - 4-2.绿色框选的是Target HW目录,一定要注意这里必须是ubuntu目录下,不能是其它挂载硬盘的目录,因为一但选择确定后,无法更改,直接变成灰色按钮,卸载SDK Manager并且删除配置文件(
~/.config/sdkmanager
)也不行!
3.3 烧录系统镜像
Jetson平台的系统镜像和SDK安装是分开的,先烧录系统镜像,再安装SDK,但是下载是同时下载的。在烧录系统镜像时,Jetson平台需要处于Recovery模式。
3.3.1 下载系统镜像和SDK
在烧录开始之前,SDK Manager 会提示输入sudo密码。
显示屏显示软件下载和安装的进度,在顶部,可以在“DETAILS”和“TERMINAL”选项卡之间切换,“TERMINAL”选项卡显示有关下载和安装的详细信息,并突出显示所有错误。
3.3.2 烧录系统镜像
Downloading完成后,SDK Mananger开始根据下载的文件在Target HW Image Folder中Install烧录环境。
烧录环境install完成后,会进入如下界面,需要注意的见下图中的四点:
- 1.这里是选择烧录哪个Jetson平台,若有多个设备烧录,这里可以选择。
- 2.这里选择Manual Setup,手动让AGX ORIN进入Recovery模式。若按照本章第二节设置好后,无需再次设置,可以通过命令
lsusb
查看AGX ORIN是否进入Recovery模式。 - 3.OEM预配置(可选),一般是产品出厂会给设置用户名和密码,注意这里用户名建议用英文名开头,不要以数字开头。也可以不配置,进入系统后,自行配置。
- 4.AGX ORIN自带的64G是EMMC存储。从 Jetpack 版本 4.6 开始,可将 Jetson AGX Xavier 和 Orin 模块闪存到外部存储。根据闪存对话框中的可用选项,选择想要闪存的外部存储(SDCard、NVMe、USB 或自定义)。
3.3.3 AGX ORIN系统初始化
刷机完成后,Orin 的屏幕会亮起,ubuntu 20.04 的系统安装成功,AGX ORIN系统会进入引导界面。
引导界面需要配置AGX ORIN的计算机名称,注意AGX ORIN计算机名称不能是数字,如123,否则会导致ROS内部机制会ping 主机名称判断主机是否在线,在ping的过程中进行域名解析会出错,导致无法启动roscore!
四、安装Jetson SDK
Jetson平台的系统镜像和SDK安装是分开的,先烧录系统镜像,再安装SDK。
在烧录系统镜像时,Jetson平台需要处于Recovery模式。在安装SDK时,Jetson平台处于正常运行状态,不是在Recovery模式。
4.1 修改Jetson的下载源
Jetson连接互联网
用鱼香ROS一键安装修改下载源为国内源
wget http://fishros.com/install -O fishros && . fishros
注意不要清除第三方源,第三方源中包含NVIDIA官方的源。
4.2 配置AGX ORIN的固定IP
这里建议使用手机热点,可能中途会需要安装一些包,设置AGX ORIN的为固定IP(最后记得取消,否则无法连接WIFI上网)。
注意,此时不要将AGX ORIN设置为Recovery模式!!!
注意,此时不要将AGX ORIN设置为Recovery模式!!!
注意,此时不要将AGX ORIN设置为Recovery模式!!!
再次通过终端在主机PC上打开SDK Manager,选择AGX ORIN版本,需要注意的见下图中的两点:
- 1.不要勾选 Jetson OS
- 2.不要修改Download Folder,该目录需要是之前下载组件的目录,SDK Manager会检测该目录是否存在相应的SDK组件,若不存在,则会重新下载。
4.3 安装SDK
选择连接方式为Ethernet,输入AGX ORIN的IP地址和用户名,需要注意三点:
- 1.AGX ORIN必须完成系统引导,配置好用户名和密码、固定IP
- 2.AGX ORIN必须是在系统登陆界面,不能已经进入了系统,若已经进入了,可以锁屏退出。
- 3.若主机设置了代理,也需要在AGX ORIN上设置代理,本质上只要两个设备能ping通即可。
连接时可能会有一个关于APT的报错,可以跳过,等待大约40min会全部安装完成。
4.4 测试
安装完成后,进入AGX ORIN查看是否安装成功。
测试CUDA
nvcc -V
若没有,则需要在.bashrc
文件中添加CUDA环境变量
export LD_LIBRARY_PATH=/usr/local/cuda/lib64
export PATH=/usr/local/cuda/bin:$PATH
export CUDA_HOME=/usr/local/cuda
测试CuDNN:
sudo cp -r /usr/src/cudnn_samples_v8/ ~/
cd ~/cudnn_samples_v8/mnistCUDNN
sudo chmod 777 ~/cudnn_samples_v8
sudo make clean && sudo make
./mnistCUDNN
若报错,则说明没有拷贝CuDNN的头文件,参考链接1解决。
安装jtop查看
sudo apt-get update
sudo apt-get install python-pip
sudo apt-get install python3-pip
sudo pip3 install jetson-stats
sudo jtop # 启动jtop
五、参考链接
刷机教程
https://zhuanlan.zhihu.com/p/632052753
https://blog.csdn.net/littleleafboy/article/details/130153683
https://blog.csdn.net/weixin_40378209/article/details/125049700
https://blog.csdn.net/weixin_44921896/article/details/127361741
https://blog.csdn.net/weixin_61975705/article/details/127752457
https://developer.nvidia.com/sdk-manager
https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/IN/QuickStart.html#to-flash-the-jetson-developer-kit-operating-software
https://docs.nvidia.com/sdk-manager/install-with-sdkm-jetson/index.html