.NVIDIA Jetson AGX Orin開發(fā)套件刷機說明
V1.0.0 – by Holden
Date : 2023-03-09
1. Jetson AGX Orin簡介
? 借助功能強大的 AI 計算機,為節(jié)能高效的自主機器帶來新一代產(chǎn)品。NVIDIA? Jetson Orin? 模組算力高達每秒 275 萬億次浮點運算 (TOPS),性能是上一代產(chǎn)品的 8 倍,適用于多個并發(fā) AI 推理管道,此外它還可以通過高速接口為多個傳感器提供支持。這使得 Jetson Orin 成為機器人開發(fā)新時代的理想解決方案。
? 更多介紹可以查看官方網(wǎng)站: https://www.nvidia.cn/autonomous-machines/embedded-systems/jetson-orin/
2. Jetson AGX Orin刷機介紹
? 開題說明,一切以官方的刷機教程為準,任何問題,只有官方可以給你最權(quán)威的解答!??!
2.1 工具準備工作
-
? 準備一臺帶有Ubuntu系統(tǒng)的PC;Windows系統(tǒng)也可以使用,本文不做Windows方面流程介紹?。?!
-
? USB轉(zhuǎn)TYPC的數(shù)據(jù)線
-
? Jetson AGX Orin 開發(fā)套件以及電源線
2.2 Jetson AGX Orin刷機軟件下載
? 首先需要在帶有Ubuntu系統(tǒng)的PC搭建刷機環(huán)境
刷機軟件sdkmanager下載: https://developer.nvidia.com/drive/sdk-manager
注意這里下載的是ubuntu版本。如果遇到網(wǎng)絡(luò)問題,請用自己手機熱點下載。
NVIDIA賬號需要注冊,正常一步一步往下走就行。
? (1)下載好后,在下載目錄處打開終端執(zhí)行如下命令:(具體文件名tab補全就行)
sudo apt install ./sdkmanager_1.9.1-10844_amd64.deb
? (2)執(zhí)行如下命令,更新軟件源中的軟件列表,這一步要成功無誤,不然后面刷機時可能會出現(xiàn)error
sudo apt-get update
? 完成刷機環(huán)境的搭建工作,接下來就可以進入刷機階段了。
? 刷機過程大體可以分為2大步。
? 一是連接好設(shè)備并讓Orin進入Recovery模式。
? 二是在個人ubuntu電腦上和Orin上根據(jù)安裝好的SDK Manager程序完成相應(yīng)操作。
2.3 Orin進入Recovery模式
1、將跳帽去除,該跳帽的作用是讓Orin上電自啟動,注意是右側(cè)數(shù)第三排。
2、硬件設(shè)備之間的物理連接
? 首先將Orin電源線、DP顯示屏線、TypeC轉(zhuǎn)USB線都準備好,并且TypeC轉(zhuǎn)USB線連接至電腦USB接口,如下圖所示。
3、設(shè)置Orin進入Recovery模式
? Orin進入Recovery模式分兩種狀況,一是當(dāng)Orin處于未開機狀態(tài),二是當(dāng)Orin處于開機狀態(tài)。
? 當(dāng)處于未開機狀態(tài)時,需要先長按?、阪I(Force Recovery鍵),然后給Orin接上電源線通電,此時白色指示燈亮起,但進入Recovery模式后是黑屏的,所以此時連接Orin的顯示屏不會有什么反應(yīng)。
? 當(dāng)處于已開機狀態(tài)時,需要先長按住②鍵,然后按下③鍵(Reset鍵),先松開③鍵,再松開②鍵。
4、檢查是否成功進入Recovery模式
? 可以通過個人ubuntu電腦確認Orin是否已經(jīng)進入Recovery模式,在終端中輸入如下:
lsusb
? 若出現(xiàn)Nvidia Corp的回饋,即代表進入Recovery模式。
2.4 SDK Manager流程操作
1、運行sdkmanager
? 在ubuntu系統(tǒng)打開一個終端輸入sdkmanager,進入如下頁面,會加載進度條并且進行NVIDIA賬戶登錄驗證,登錄后,若Orin尚未進入Recvoery模式,則下圖紅框處為未檢測到設(shè)備。
? 此時Orin需要進入Recovery模式,進入后,顯示如下,選擇Jetson AGX Orin并點擊OK進入
? 在Continue到下一步之前,建議先把Host Machine取消勾選,因為我們通常是想把配置刷到目標設(shè)備Orin上,并不需要在個人ubuntu電腦上安裝,可以節(jié)省很多空間。
? 點擊繼續(xù)進入第二步,如下圖選擇好兩個路徑然后開始第三步,進入一段時間的下載和安裝,這里建議用手機熱點網(wǎng)絡(luò)。
? 等到下載完并且安裝一定時間后,會彈出如下界面告知即將開始刷系統(tǒng)到Orin上。
? 這里需要選擇手動安裝模式,并且選擇Pre-Config(相當(dāng)于在這里提前為系統(tǒng)創(chuàng)建了用戶和設(shè)置了用戶密碼,待會系統(tǒng)安裝完成后可以直接使用這個用戶登錄,就不用經(jīng)歷創(chuàng)建用戶的引導(dǎo)過程了)。
? 接下來點擊Flash后,就開始等待刷系統(tǒng)到Orin上了,這里一定要將Orin和顯示屏連接好,待會Orin就會自動開機啟動,屏幕也正常顯示開機界面,使用之前Pre-Config創(chuàng)建的用戶登錄即可。
? 至此,Orin的ubuntu20.04系統(tǒng)就算是成功刷上了,接下來還要刷組件(CUDA、CUDNN、TensorRT等),現(xiàn)在相當(dāng)于有兩臺可以操作的電腦了,先把個人ubuntu電腦放一邊,使用你的外設(shè)鼠標鍵盤對Orin進行換源操作。
在Orin瀏覽器中打開下方鏈接,將Orin自帶源換成arm架構(gòu)下ubuntu20.04的清華源: https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu-ports/
? 按指示,在終端中執(zhí)行指令找到/etc/apt/sources.list,建議先將其中原有內(nèi)容復(fù)制一份,然后將清華源復(fù)制到source.list,保存后退出,更新軟件源如下
sudo cp /etc/apt/sources.list ~/
## 將清華源復(fù)制到/etc/apt/sources.list
sudo apt-get update
sudo apt-get upgrade
? 這一步換源需要一點時間,大概在30分鐘內(nèi)。
? 完成后回來ubuntu PC界面,找跟網(wǎng)線將PC和Orin連在同一個局域網(wǎng)下,注意wifi不能斷,兩臺設(shè)備都需要連接wifi。
? 按照以下操作設(shè)置后,點擊install然后耐心等待20分鐘左右即完成全部組件(CUDA、CUDNN、TensorRT等)刷機。
2.5 ROS安裝
? 安裝的ROS版本是noetic,參考ROS 官方安裝教程:http://wiki.ros.org/cn/noetic/Installation/Ubuntu
? 也可以參考本人編寫的ROS noetic一鍵安裝腳本,注意echo "nvidia"表示Orin的開機密碼。
#!/bin/bash
echo -e "\033[32m =====> 安裝 ROS noetic <===== \033[0m"
echo '加載源'
echo "nvidia" | sudo -S apt-get update
echo '設(shè)置sources.list'
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
echo '設(shè)置密鑰'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
echo "nvidia" | sudo -S apt-get update
echo "nvidia" | sudo -S apt-get install -y ros-noetic-desktop-full
echo '設(shè)置ROS環(huán)境'
source /opt/ros/noetic/setup.bash
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
echo '測試'
printenv | grep ROS
echo -e "\033[32m =====> 完成 <===== \033[0m"
3. 鏡像克隆制作
? 這個的作用是將做好的環(huán)境以及個人成果打包成為一個raw母體鏡像。
? (1) 將Orin跟主機通過網(wǎng)線連接,確認網(wǎng)絡(luò)連接暢通,即主機和Orin能互ping,然后在Orin端連接鍵鼠、顯示器,執(zhí)行以下指令(在Orin里面手動敲入)
sudo echo "u" | sudo dd of=/proc/sysrq-trigger ## 把Orin改成只讀
sudo dd if=/dev/mmcblk0p1 | ssh holden@192.168.1.102 dd of=/home/holden/Orin.raw ## 指定鏡像存儲到ubuntu PC主機的路徑
? 能看到Orin終端無提示,但是ubuntu PC主機的鏡像大小在增加,大約等待30分鐘左右完成Orin鏡像的克隆制作。
4. 鏡像重?zé)龑?/h3>
? 這個的作用是對于一個新的Orin機器,可以將克隆好的鏡像直接燒錄進去,無需重新通過sdkmanger配置環(huán)境。
? (1) 在進行SDK Manager流程操作的時候,會在目錄下安裝好一個JetPack_5.1_Linux_JETSON_AGX_ORIN_TARGETS目錄,如下圖。
? (2) 進入該目錄下的Linux_for_Tegra/bootloader,打開一個終端執(zhí)行以下指令:
cd Linux_for_Tegra/bootloader
rm -rf system.img
ln -s ../../../Orin_image/Orin.raw system.img ## 指定一開始克隆好的鏡像路徑
? (3) 最后一步進入到Linux_for_Tegra目錄,執(zhí)行以下指令:
sudo ./flash.sh -r jetson-agx-orin-devkit mmcblk0p1
5. Jetson AGX Orin調(diào)控命令
? **1.**調(diào)控Jetson AGX Orin風(fēng)扇PWM。
$ sudo sh -c 'echo 140 > /sys/devices/pwm-fan/target_pwm' ##140代表調(diào)節(jié)PWM(0-255)
? **2.**安裝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
? **3.**安裝Visual Studio Code。
進入網(wǎng)站:https://code.visualstudio.com/Download
選擇Arm64下載
sudo dpkg -i *.deb
? 4.VNC自啟動,自動修改分辨率為“1024x768”。
? 修改指令如下:文章來源:http://www.zghlxwxcb.cn/news/detail-497730.html
$ xrandr --fb 1024x768
? 5.設(shè)置每天凌晨1點重啟,已加入到/etc/crontab中,默認是關(guān)閉。文章來源地址http://www.zghlxwxcb.cn/news/detail-497730.html
$ sudo su
$ gedit /etc/crontab
00 01 * * * /sbin/reboot #自啟動
$ sudo service cron restart
到了這里,關(guān)于NVIDIA Jetson AGX Orin開發(fā)套件刷機說明&鏡像制作的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!