💻

Jetson Orin Nano用のM.2-SSDにOSイメージを焼く方法 NVIDIA Jetson Linux 36.3

2024/05/18に公開

前回は購入直後にJetson Linux 35.3版をセットアップしました。

https://zenn.dev/usagi1975/articles/2023-09-18-0000_jetson_orin_nano1

NVIDIA Jetson Linux 36.3セットアップ準備

前回同様、今回もNVIDIA SDK Managerは使わないで、コマンドラインから実施します。慣れるとこっちのほうが楽だと思います。改めて手順を以下のQuick Startで確認しましたが、特に変わってなかったです。

https://docs.nvidia.com/jetson/archives/r36.3/DeveloperGuide/IN/QuickStart.html

以下のNVIDIA Jetson Linux 36.3ページから必要なOSイメージとかリソースを取得する。

https://developer.nvidia.com/embedded/jetson-linux-r363

リソース ファイル名
Driver Package (BSP) jetson_linux_r36.3.0_aarch64.tbz2
Sample Root Filesystem tegra_linux_sample-root-filesystem_r36.3.0_aarch64.tbz2
> wget https://developer.nvidia.com/downloads/embedded/l4t/r36_release_v3.0/release/jetson_linux_r36.3.0_aarch64.tbz2

Sample Root Filesystem

> wget https://developer.nvidia.com/downloads/embedded/l4t/r36_release_v3.0/release/tegra_linux_sample-root-filesystem_r36.3.0_aarch64.tbz2

環境変数を設定して、イメージの展開とシェル実行

> export L4T_RELEASE_PACKAGE=jetson_linux_r36.3.0_aarch64.tbz2
> export SAMPLE_FS_PACKAGE=tegra_linux_sample-root-filesystem_r36.3.0_aarch64.tbz2
> export BOARD=jetson-orin-nano-devkit

> tar xvf ${L4T_RELEASE_PACKAGE}
> sudo tar xvpf ${SAMPLE_FS_PACKAGE} -C Linux_for_Tegra/rootfs/

> cd Linux_for_Tegra/
> sudo ./tools/l4t_flash_prerequisites.sh
> sudo ./apply_binaries.sh

これでOSイメージの作成は完了

PCからJetson Orin NanoにOSイメージを転送する

PCにjetsonをUSBデバイスとして認識させて接続する必要がある。
大まかな流れは以下になる。

  1. "FC REC"と"GND"を結線してショートさせる(リカバリモード)
  2. USB Type-CケーブルでJetsonとPCを接続する
  3. Jetsonの電源ON
  4. PCでUSB接続を確認

電源投入前にヘッダをショートさせてリカバリモードにする

USBケーブルでPCと接続したら、電源ON

ちゃんと認識したか確認

$ lsusb
Bus 003 Device 003: ID 0955:7523 NVIDIA Corp. APX

以下のコマンドでイメージを転送する。

ちなみにjetson-orin-nano-devkitと記載があるところは、ボードのタイプ識別子を指定するがAGXだと異なるので、以下で確認しておく。

https://docs.nvidia.com/jetson/archives/r36.3/DeveloperGuide/IN/QuickStart.html#jetson-modules-and-configurations

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 \
  -c tools/kernel_flash/flash_l4t_t234_nvme.xml -p "-c bootloader/generic/cfg/flash_t234_qspi.xml" \
  --showlogs --network usb0 jetson-orin-nano-devkit internal

:

Writing gpt_secondary_3_0.bin (parittion: secondary_gpt) into /dev/mtd0
Sha1 checksum matched for /mnt/internal/gpt_secondary_3_0.bin
Writing /mnt/internal/gpt_secondary_3_0.bin (16896 bytes) into  /dev/mtd0:67091968
Copied 16896 bytes from /mnt/internal/gpt_secondary_3_0.bin to address 0x03ffbe00 in flash
[ 213]: l4t_flash_from_kernel: Successfully flash the qspi
[ 213]: l4t_flash_from_kernel: Flashing success
[ 213]: 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...
Log is saved to Linux_for_Tegra/initrdlog/flash_3-1_0_20240518-105421.log 

終わったら、一旦電源OFFしてリカバリモードのジャンパーピンは抜いて、改めて起動することを確認する。

JetPack 6.0 インストール

以下は、OSインストール後、Jetson上からやったほうが早そう。

https://docs.nvidia.com/jetson/jetpack/install-setup/index.html

sudo apt update
sudo apt install nvidia-jetpack

DeepStream SDKインストール

sudo apt install deepstream-7.0 -y

https://docs.nvidia.com/metropolis/deepstream/dev-guide/text/DS_Quickstart.html

Discussion