CAFE

강의자료

[JetsonAGXOrin] 1. Jetpack 설치 및 개발환경구축

작성자Sungryul Lee|작성시간24.11.05|조회수963 목록 댓글 0

제목 : Jetson AGX Orin 64GB Developer Kit에 Jetpack 설치

 

1. 사전지식

(1) 준비물

Jetson AGX Orin 64GB  Developer Kit

Keyboard, Mouse -> 아래그림에서 7번 커넥터에 연결

Monitor with Display port cable -> 아래그림에서 8번 커넥터에 연결, HDMI포트는 없음

Usb-C type power adapter -> usb-c 커넥터가 2곳 있는데 배럴파워잭 위에 있는 커넥터(아래그림에서 4번)에 연결해야함 

(2) 알아야할 사항

- Ubuntu20.04 운영체제가 내장된 64GB eMMC(보조기억장치)에 이미 설치되어 있음

- 다른 보드처럼 SD card에 설치해서 부팅하는 방식이 아님

- M.2 슬롯에 SSD 설치가능함

- 무선랜카드 내장되어 있음

- 모니터연결시 DisplayPort 케이블만 사용가능, HDMI 케이블 사용불가

 

(3) User guide(manual)

https://developer.nvidia.com/embedded/learn/jetson-agx-orin-devkit-user-guide/index.html

좌측메뉴에서 항목 선택해서 보드 구조, 명칭, 기능 등을 파악할것

 

(4) 제품사양

https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-orin/

 

2. 우분투 초기화 및 jetpack설치방법

우분투20.04이미 설치되어 있어 초기화작업수행후 jetpack 설치진행함

아래 사이트에 접속하여 Initial setup with display attached 메뉴를 클릭후 지시대로 실행

https://developer.nvidia.com/embedded/learn/get-started-jetson-agx-orin-devkit

Step 1 - Run through Ubuntu Setup

- 언어 : English -> 한글로 선택하면 오류발생, 한글로하지말것

- 와이파이 설정 -> 5Ghz 공유기로 설정

- 사용자id, 컴퓨터이름, 패스워드은 다음처럼 설정할것

- username : jetson, computer name : agxorin, password : xxxxxxxx 

- 와이파이설정 : 5Ghz 공유기로 선택

- 패스워드 로그인 방식 선택

- Chromium Browser 설치메뉴에서 설치진행할것 -> 설치에 너무 오래걸리는 경우 취소하고 진행해도 됨

- 나머지는 기본설정대로 진행 

Step 2 - Install JetPack Components

- 크로미엄브라우저 또는 파이어폭스 브라우저를 실행해서 다음카페에 접속하고 강의자료의 링크주소에 접속후 설치 명령어를 복사&붙여넣기해서 설치진행

 

3. 한글입력가능하게 설정하는 방법

처음에 언어설정을 영어로 해서 한글입력이 불가능함

아래 사이트를 참고하여 한글팩을 설치할것

https://makingrobot.tistory.com/96

위 사이트 설명과 메뉴가 약간 달라짐, 위사이트 내용을 기반으로 아래 순서로 진행

(1) Ubuntu applications -> language support 실행 -> 팝업창에서 install 클릭 -> 아래쪽에 install/remove languages메뉴에서 Korean에 체크되었는지 확인 -> close

(2) reboot

(3) ibus-setup 실행하여 > input method 탭 클릭 -> Add 클릭 -> 한글추가 -> 한글선택후 Preferences 클릭 ->  한/영전환키 설정

(4) Ubuntu applications -> settings -> Keyboard -> Input Sources -> + 클릭 -> other 아래 입력창에 korean 입력하면 리스트 출력됨 -> Korean 선택

(5) 바탕화면 우측상단 메뉴에 en 탭 추가됨 -> 한글선택

 

4. SDK manager GUI를 이용한 jetpack 설치하는 방법

이기능은 eMMC 또는 NVMe SSD에 최신버전 jetpack을 새로 설치하는 경우 필요함

eMMC 설치는  WSL에서 가능하나 NVMe 설치는 불가능하니 리눅스PC에서 설치해야함

 

(1) WSL Ubuntu에 SDK manager 설치

SDK manager는 x64 or amd64 CPU 컴퓨터에만 설치가능 jetson보드(arm64 or aarch64)에는 설치불가

https://docs.nvidia.com/sdk-manager/

 

(2)  usbipd-win 4.3.0 설치 -> wsl에서 usb장치를 사용하게 해주는 툴

https://github.com/dorssel/usbipd-win/releases/tag/v4.3.0

 

(3) How to use usb device on wsl -> Powershell에서 설정방법

Windows와 WSL Ubuntu가 WSL 가상 스위치에 연결되어 있어야함

따라서 브릿지모드사용을 위한 .wslconfig 설정파일을 다른폴더에 백업하고 잠시 삭제하고 작업해야함

https://learn.microsoft.com/en-us/windows/wsl/connect-usb

- Powershell에서 할일

usbipd list -> usbipd bind -> usbipd attach

usbipd list 결과에서 4-2 0955:7023 APX -> Oring Kit를 의미하고 7023은 Recovery Mode 상태임을 의미함

 

(4) Unbuntu 20.04 on WSL2 에서 usb device(jetson kit) 확인

WSL2에서 lsusb 명령어를 이용하여 장치연결 확인해야함

Ubuntu에서 Orin Kit의 VID:PID(0955:7023)를 확인 -> Recovery mode 상태임

 

(5) WSL2의 Ubuntu에서 sdkmanger GUI실행하여 설치진행

- 준비

Orin kit에 usb-c 전원 adapter를 연결하고 usb-c 케이블로 PC와 Orin kit의 10번 커넥터를 연결(아래 그림 참고), 전원버튼을 약 10초이상 누르고 있으면 전원 꺼짐, 전원이 꺼진 상태로 시작해야함

모니터, 마우스, 키보드도 연결해놓고 시작해야함

전원케이블은 연결하고 전원을 끈 상태로 시작

 

- WSL Ubuntu에서 sdkmanager 실행

$ sdkmanager

로그인 화면에서 Nvidia 계정으로 로그인, 로그인하면 다음 STEP01 화면으로 진행함

nvidia 사이트에 접속하여 로그인하는 방법과 휴대폰으로 QR코드로 접속하여 로그인하는 방법 중에 선택하여 진행

 

SDK VERSION 선택 후 continue 클릭하여 STEP02로 진행

Jetpack 6.1 -> 우분투 22.04

Jetpack 5.1.4 -> 우분투 20.04 -> sdkmanager를 실행하는 호스트 운영체제가 20.04이어야함

화면 좌측 아래 License Agreement 체크박스에 체크하고 continue 클릭하면 os image와 jetpack을 일단 WSL 디렉토리로 다운로드함, 다운로드 완료하면 다음 STEP03 화면으로 진행

다운로드 전에 관리자 권한을 위한 WSL Ubuntu 사용자 패스워드를 입력한다.

다음 STEP03 화면으로 진행하면 os flash를 위한 설정화면이 나

Recovery mode setup -> manual setup - Jetson AGX Orin 64GB Dev. KIt

전원케이블은 연결하지만 파워는 꺼져있어야함(파워버튼을 10초이상 누르고 있으면 꺼짐)

-> Orin Kit에서 가운데버튼(force recovery)을 누른 상태를 유지하고 왼쪽버튼(파워버튼) 눌렀다가 두버튼을 동시에 떼면 키트가 recovery mode 상태로 진입함

OEM configuration -> Pre-Config -> os설정까지 해줘서 flash완료하면 바로 부팅가능한 상태로 만들어줌(미국기준으로 초기화해줌)

runtime -> 제품출시 상태와 같음, 부팅하면 운영체제 설정부터 시작함

username -> Orin Kit에 설치할 Linux의 로그인 id

password -> Orin Kit에 설치할 Linux의 로그인 pw

Strorage Device -> EMMC or NVMe 

 

Orin Kit가 recovery mode에 진입하면 윈도우에서 장치가 인식되고 윈도우 Poweshell에서 다음처럼 실행

usbipd list 실행시 0955:7023 APX가 orin kit이고 7023이 recovery mode상태임을 의미함

WSL에서 usb 장치를 사용하려면 먼저 윈도우에서 bind->attach 작업을 해줘야함

이작업이 끝나면 sdkmanager에서 Orin Kit를 인식하고 모델명을 선택하는 메뉴가 출력됨

Orin 64GB Dev. Kit를 선택

설정완료후 flash버튼 클릭,  flash란 Orin Kit 저장장치에 Linux를 설치하는 작업을 말함

* 실행오류 정리

manual setup 방식으로 진행 eMMC or NVMe SSD에 설치진행

-> OS flash 도중 알수없는 이유로 jetson 보드와 연결이 끊기고 실패

-> sdkmanager에서 flash도중에 orin kit와 연결을 끊었다가 다시 연결하는 동작을 여러번 수행함(아래 그림 참조)

해결방법-> usbipd attach 실행시 -a 옵션 반드시 추가할것

sdkmanager에서 flash 도중에 Orin kit와 여러번 연결을 끊었다가 다시 연결하는 동작을 하는데 -a옵션이 있어야 끊겼을때 자동으로 attach해줌

관련 자료링크

https://forums.developer.nvidia.com/t/sdk-manager-running-on-ubuntu-20-04-wsl-2-unable-to-detect-jetson-agx-xavier-device-during-flash-stage/286238

 

 

-a옵션을 사용했음에도 flash도중에 usb연결 에러가 발생하는 경우가 있는데(자동 attach가 안되는 경우) 이런경우는 처음부터 다시해야함

Linux os flash가 완료되면 usb 장치 연결이 끊기면서 아래화면(SDK 설치화면) 뜨면 취소(skip)하면 마지막 단계로 진행함-> Orin Kit에 리눅스 설치가 완료되어 리눅스로 부팅후 거기서 설치가능함

FINISH클릭하여 sdkmanager를 종료하고 Orin kit에 연결된 모니터에 부팅화면이 뜨고 마지막에 로그인창이 나타남, 로그인하여 운영체제 버전확인

바탕화면에 있는 terminal실행하여 다음명령어 실행

$ lsb_release -a -> 작성시점기준 22.04로 설치됨

PC와 연결된 usb-c케이블 제거할 것

바탕화면 우측상단 탭을 클릭하면 와이파이 설정메뉴에서 공유기 설정

설치된 브라우저가 없으니 크로미엄 브라우저설치

$ sudo apt install chromium-browser

2번항목의  Step 2 - Install JetPack Components 안내대로 jetpack 설치

 

자동 attach에 실패하는 경우 -> 종료하고 sdkmanager를 다시 실행할 것

WSL에서 NVMe SSD에 flash는 실패 -> usb 연결이 불안정하여 리눅스 전용PC에서 설치할것(아래 5번 항목 참고)

https://forums.developer.nvidia.com/t/flashing-issues-using-wsl/289867

 

5. NVMe SSD에 jetpack 설치

WSL에서 NVMe SSD에 설치는 불가능하므로 PC에 윈도우즈대신에 리눅스를 설치하고 진행

PC에서 윈도우즈가 설치된 SSD는 분리해서 보관하고 새로운 SSD로 교체하여 리눅스를 설치할것

 

(1) 우분투용 부팅usb 만들기

https://amkorousagi-money.tistory.com/entry/%EC%9A%B0%EB%B6%84%ED%88%AC-%EB%B6%80%ED%8C%85-usb-%EB%A7%8C%EB%93%A4%EA%B8%B0-%EC%9A%B0%EB%B6%84%ED%88%AC-%EC%84%A4%EC%B9%98

 

부팅usb를 이용하여 PC에 우분투 20.04를 설치

 

(2) sdkmanager 설치

https://docs.nvidia.com/sdk-manager/

 

(3) jetpack 설치

usb-c 파워케이블로 전원연결, 파워버튼을 15초정도 누르면 전원꺼짐

usb-c 케이블로 PC와 보드 연결

전원이 꺼진상태로 sdkmanager 실행

manual setup 방식으로 NVMe에 os flash

OEM configuation -> runtime으로 설정 -> 제품 출시상태와 같음, 부팅하면 os설정화면 부터시작함

리눅스 PC에서는 usb 끊김없이 잘 동작함

운영체제 설치가 끝나면 orin보드가 재부팅되고 초기화 메뉴에서 설정을 완료

->  설정완료하면 재부팅 -> 로그인창에서 대기 -> PC의 sdkmanager에서 운영체제는 제외하고 jetson SDK만 설치 진행

- SDK 설치완료하면 orin보드 재부팅하고 jtop설치하여 jetpack 6.1, cuda, cudnn버전 확인할것

 

6. CLI 방식으로 jetpack 설치하는방법

(1) 전용 flash 셸스크립트로 우분투 설치하는방법

https://docs.nvidia.com/jetson/archives/r35.4.1/DeveloperGuide/text/IN/QuickStart.html#to-flash-the-jetson-developer-kit-operating-software

(2) sdkmanger CLI로 jetpack 설치하는방법

https://docs.nvidia.com/sdk-manager/sdkm-command-line-install/index.html

 

7. jetson-stats 설치 : 실시간 시스템정보 모니터링

$ sudo apt-get install python3 -> 파이썬3 먼저설치

$ sudo apt-get install python3-pip -> pip3 먼저설치
$ sudo -H pip3 install -U jetson-stats

$ reboot  -> 설치후 리부팅해야함

$ jtop -> jetson 보드정보 실시간 모니터링, 윈도우즈의 작업관리자랑 같음

$ jetson_release -> Jetpack 정보 보기

 

8. 기타

(1) 동작온도 스펙 :

https://forums.developer.nvidia.com/t/operating-temperature/283843

 

(2) 모니터 없이 와이파이 설정하는법

microUSB 케이블로 PC와 Orin Kit의 9번 커넥터 연결

윈도우즈에 Putty 프로그램 설치

https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

장치관리자에서 COM번호 확인 -> Orin Kit가 4개의 장치로 인식됨(아래그림에서 COM3~6), 4개중에 아무거나 사용가능

Putty 실행 serial방식, COMx(장치관리자참고), 115200bps,  설정후 Open 실행

Putty 첫화면에서 엔터키를 입력하면 로그인화면 나옴

$ sudo nmtui -> 와이파이설정 프로그램(network manager tui)

activate connection 선택 -> 접속할 공유기 선택 -> 패스워드 입력 -> 공유기앞에 * 표시됨

-> 저장하고 종료

$ ifconfig -> ip 확인

 

9. Deep learning 환경구축

(1) anaconda 설치

linux -> 64-Bit (AWS Graviton2 / ARM64) Installer (800.6M) 다운로드 -> 설치

https://www.anaconda.com/download/success

 

python 3.10과 함께 가상환경생성할것

nvidia에서 제공하는 pytorch 설치파일이 python3.10으로 작성되어 있어 다른 버전과는 호환안됨 

 

(2) pytorch, torchvision 설치

Jetson 보드용 pytorch, torchvision 는 일반적인 설치방법으로는 동작안함

nvidia에서 제공하는 설치파일로 설치해야함

 

jtop 실행하여 jetpack, cuda, cudnn 버전확인

아래 저장소에서 jetpack과 cuda 버전에 맞는 폴더 선택 후 torch, torchaudio. torchvision 설치

https://pypi.jetson-ai-lab.dev/

 

jetpack 6.1, cuda 12.6 인경우 torch-2.6.0rc1, torchvision-0.20.0 설치

python 3.10으로 설치 후 진행해야 함

https://pypi.jetson-ai-lab.dev/jp6/cu126

 

설치는 문제없이 완료되나 훈련 코드실행시 nms error 발생

오류처리방법 -> torch-2.6.0rc1 대신에  torch-2.5.0을 설치하면 해결

https://forums.developer.nvidia.com/t/jetpack-6-1-on-jetson-orin-nano-super/320116

 

nvidia 참고 문서

https://docs.nvidia.com/deeplearning/frameworks/install-pytorch-jetson-platform/index.html

 

다음검색
현재 게시글 추가 기능 열기
  • 북마크
  • 신고 센터로 신고

댓글

댓글 리스트
맨위로

카페 검색

카페 검색어 입력폼