0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

JetRacer Orin Nano (Super)をJetPack6.2搭載のJetRacer化しSSDで起動できるようにする。

Last updated at Posted at 2025-08-28

Jetson Orin Nano からはISP (Image Signal Processor)が搭載されJp6からはArgus APIなしでCPUの負荷が減少し、カメラの転送が改善されました。
JetPack6.0から起動方法が大きく変わり、Jetson Orin Nano SuperやSDKマネージャーやSDカードによるブートローダー更新などJetPack6.2に対応していることを前提とします。

NVIDIAのSDカードをSDカードのイメージをダウンロードし、解凍しイメージをRaspberry Pi ImagerなどでSDカードに書き込みます。

JetPack6.2 Jetson Orin Nano Super SDカードイメージ入手先

nvidiaSDCard.png

Screenshot from 2025-08-27 22-57-50.png

Jetson Orin Nano 開発者キットにDisplayポートでディスプレイに繋ぎ、キーボード、マウス、LANケーブルでネットにつなげてSDカードを挿入して電源を投入します。

画面に従い設定、同意してOSをインストールします。初めは、id jetson,パスワードはjetsonで良いでしょう。

なぜかブラウザがインストールして起動しないので、ブラウザから参照するため、ヘッドレスで作業します。

Jetson Orin Nano (Super)のターミナルでIPアドレスを調べて

ifconfig -a

Ubuntuパソコンをお使いなら以下でJetson Orin NanoのIPアドレスを調べます。

ネットワークインターフェースをしらべる。

ip link show

または

ip addr show

で確認する。

loはループバック、enp3s0は有線LAN、wlp2s0はWi-Fi

Ubuntu PCから以下を実行するとJetson Orin NanoのIPアドレスを見つけることができます。

sudo apt update
sudo apt install arp-scan
sudo arp-scan --interface=enp3s0 192.168.0.0/24

任意のPCターミナル(Teratermなど)からsshで接続します。

ssh jetson@192.168.xx.xx

再起動後、スクリプトを実行します。

以下のファイルをホームディレクトリにダウンロードします。

wget -O install.sh \
  https://raw.githubusercontent.com/FaBoPlatform/Jetson_script/main/jetracer/orin_nano/6.2/install.sh

ファイルの中身を確認します。危険なコマンドがないことを確認します。

cat ./install.sh

実行権限を与えます。

chmod +x install.sh

インストールします。

sudo ./install.sh

再起動します。

sudo reboot

Jetson Orin NanoをLANなどに繋ぎ、ターミナルでトークンを調べて

jupyter server list

トークンだけをコピー

jetson@jetson-desktop:~$ jupyter server list
Currently running servers:
http://jetson-desktop:8888/?token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx :: /

上記コマンドからトークンをメモします。

トークンによりjupyter labのパスワードを設定

001.jpg

ブラウザから192.168.xx.xx:8888などで起動するとJupyterのパスワードを設定します。

さきほど調べたトークンとパスワードを入力してパスワード登録を完了し、jupyter labにログインします。

Jupyter labのターミナルを開き、カメラが認識、起動しないので希望のカメラを設定(例:IMX219 CAMERA Dual)してSave,rebootします。

sudo /opt/nvidia/jetson-io/jetson-io.py

Configure Jetson 24pin CSI Connector を選択します。

 Jetson Expansion Header Tool ===================
 |                                                                    |
 |                                                                    |
 |                    Select one of the following:                    |
 |                                                                    |
 |                   Configure Jetson 40pin Header                    |
 |                Configure Jetson 24pin CSI Connector                |
 |                  Configure Jetson M.2 Key E Slot                   |
 |                                Exit       

Configure for compatible hardwareを選択します。

  =================== Jetson Expansion Header Tool ===================
 |                                                                    |
 |                                                                    |
 |                      3.3V (  1) .. (  2) i2c3                      |
 |                      i2c3 (  3) .. (  4) GND                       |
 |                       GND (  7) .. (  8) NA                        |
 |                        NA (  9) .. ( 10) GND                       |
 |                       GND ( 13) .. ( 14) NA                        |
 |                        NA ( 15) .. ( 16) GND                       |
 |                       GND ( 19) .. ( 20) NA                        |
 |                        NA ( 21) .. ( 22) GND                       |
 |                       GND ( 23) .. ( 24) GND                       |
 |                                                                    |
 |                                                                    |
 |                    Jetson 24pin CSI Connector:                     |
 |                                                                    |
 |                 Configure for compatible hardware                  |
 |                                Back    

使用するカメラを選択します。(選択例:IMX219 Dual)

  =================== Jetson Expansion Header Tool ===================
 |                                                                    |
 |                                                                    |
 |                Select one of the following options:                |
 |                                                                    |
 |                         Camera IMX219 Dual                         |
 |                          Camera IMX219-A                           |
 |                    Camera IMX219-A and IMX477-C                    |
 |                          Camera IMX219-C                           |
 |                         Camera IMX477 Dual                         |
 |                     Camera IMX477 Dual 4 lane                      |
 |                          Camera IMX477-A                           |
 |                    Camera IMX477-A and IMX219-C                    |
 |                          Camera IMX477-C                           |
 |                                                                    |
 |                                Back    

選択して、保存と再起動を選びます。

Jupyter labのファイルアップロードができない場合、フォルダはアップロードできるように所有者、グループを変更します。下の例はjetraerディレクトリです。

sudo chown -R jetson:jetson jetracer

JetRacerとしてSDカードを学習から走行まで、一通り確認します。すべてを確認したら。

今度はSSDからコピーできるようにします。

電源を一旦切りSSDをJetson Orin Nano (Super)開発者キット裏面のM.2 PCIeに取り付け、接続します。

JetsonSSD.JPG

再びSDカードを挿入したまま起動。

ターミナルを開き、SSDが認識されているかを確認します。

lspci

正常に接続されていれば、SSDのメーカー、型番が出てきます。

jetson@jetson-desktop:~$ lspci
(省略)
0004:01:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM951/PM951 (rev 01)
(省略)

ディスクのパーティション構造やマウントポイントを調べます。

lsblk -pn

SSDをext4でフォーマットします。

上記で調べたマウントポイントを指定してSSDをフォーマットします。

sudo mkfs.ext4 /dev/nvme0n1

ジャーナルはデフォルトでEnterを押す。

jetson@jetson-desktop:~$ sudo mkfs.ext4 /dev/nvme0n1
mke2fs 1.46.5 (30-Dec-2021)
/dev/nvme0n1 contains a ext4 file system
        created on Thu Aug 28 12:24:53 2025
Proceed anyway? (y,N) y
Discarding device blocks: done
Creating filesystem with 31258710 4k blocks and 7815168 inodes
Filesystem UUID: 24a9c1b4-fd89-4f58-9d99-6064bb262a9f
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624, 11239424, 20480000, 23887872

Allocating group tables: done
Writing inode tables: done
Creating journal (131072 blocks):
done
Writing superblocks and filesystem accounting information: done

/dev/mmcblk0は、SDカード、/dev/nvme0n1 がSSDになります。

以下により現在は、/dev/mmcblk0p1が/ ルートであり/dev/mmcblk0p10 はEFIのパーティション(part)であることが分かります。

jetson@jetson-desktop:~$ lsblk -pn
/dev/loop0          7:0    0     4K  1 loop /snap/bare/5
/dev/loop1          7:1    0  68.9M  1 loop /snap/core22/2086
/dev/loop2          7:2    0 231.5M  1 loop /snap/firefox/6696
/dev/loop3          7:3    0 493.5M  1 loop /snap/gnome-42-2204/201
/dev/loop4          7:4    0  91.7M  1 loop /snap/gtk-common-themes/1535
/dev/loop5          7:5    0  44.2M  1 loop /snap/snapd/25205
/dev/loop6          7:6    0    16M  1 loop
/dev/mmcblk0      179:0    0  59.5G  0 disk
├─/dev/mmcblk0p1  179:1    0    58G  0 part /
├─/dev/mmcblk0p2  179:2    0   128M  0 part
├─/dev/mmcblk0p3  179:3    0   768K  0 part
├─/dev/mmcblk0p4  179:4    0  31.6M  0 part
├─/dev/mmcblk0p5  179:5    0   128M  0 part
├─/dev/mmcblk0p6  179:6    0   768K  0 part
├─/dev/mmcblk0p7  179:7    0  31.6M  0 part
├─/dev/mmcblk0p8  179:8    0    80M  0 part
├─/dev/mmcblk0p9  179:9    0   512K  0 part
├─/dev/mmcblk0p10 179:10   0    64M  0 part /boot/efi
├─/dev/mmcblk0p11 179:11   0    80M  0 part
├─/dev/mmcblk0p12 179:12   0   512K  0 part
├─/dev/mmcblk0p13 179:13   0    64M  0 part
├─/dev/mmcblk0p14 179:14   0   400M  0 part
└─/dev/mmcblk0p15 179:15   0 479.5M  0 part
/dev/zram0        252:0    0   635M  0 disk [SWAP]
/dev/zram1        252:1    0   635M  0 disk [SWAP]
/dev/zram2        252:2    0   635M  0 disk [SWAP]
/dev/zram3        252:3    0   635M  0 disk [SWAP]
/dev/zram4        252:4    0   635M  0 disk [SWAP]
/dev/zram5        252:5    0   635M  0 disk [SWAP]
/dev/nvme0n1      259:0    0 119.2G  0 disk

SDカードのイメージをSSDにコピーします。マウントポイントを間違わないでください。SDカードのイメージなので、ここでは説明しませんが、SDカードの領域なのでエキスパンドしてSSDの領域を広げてください。

sudo dd if=/dev/mmcblk0 of=/dev/nvme0n1 bs=4M status=progress

念のため実行します。

sync

コピーされたのを確認します。同じ構造のコピーができているはずです。

jetson@jetson-desktop:~$ lsblk -pn
/dev/loop0          7:0    0     4K  1 loop /snap/bare/5
/dev/loop1          7:1    0  68.9M  1 loop /snap/core22/2086
/dev/loop2          7:2    0 231.5M  1 loop /snap/firefox/6696
/dev/loop3          7:3    0 493.5M  1 loop /snap/gnome-42-2204/201
/dev/loop4          7:4    0  91.7M  1 loop /snap/gtk-common-themes/1535
/dev/loop5          7:5    0  44.2M  1 loop /snap/snapd/25205
/dev/loop6          7:6    0    16M  1 loop
/dev/mmcblk0      179:0    0  59.5G  0 disk
├─/dev/mmcblk0p1  179:1    0    58G  0 part /
├─/dev/mmcblk0p2  179:2    0   128M  0 part
├─/dev/mmcblk0p3  179:3    0   768K  0 part
├─/dev/mmcblk0p4  179:4    0  31.6M  0 part
├─/dev/mmcblk0p5  179:5    0   128M  0 part
├─/dev/mmcblk0p6  179:6    0   768K  0 part
├─/dev/mmcblk0p7  179:7    0  31.6M  0 part
├─/dev/mmcblk0p8  179:8    0    80M  0 part
├─/dev/mmcblk0p9  179:9    0   512K  0 part
├─/dev/mmcblk0p10 179:10   0    64M  0 part /boot/efi
├─/dev/mmcblk0p11 179:11   0    80M  0 part
├─/dev/mmcblk0p12 179:12   0   512K  0 part
├─/dev/mmcblk0p13 179:13   0    64M  0 part
├─/dev/mmcblk0p14 179:14   0   400M  0 part
└─/dev/mmcblk0p15 179:15   0 479.5M  0 part
/dev/zram0        252:0    0   635M  0 disk [SWAP]
/dev/zram1        252:1    0   635M  0 disk [SWAP]
/dev/zram2        252:2    0   635M  0 disk [SWAP]
/dev/zram3        252:3    0   635M  0 disk [SWAP]
/dev/zram4        252:4    0   635M  0 disk [SWAP]
/dev/zram5        252:5    0   635M  0 disk [SWAP]
/dev/nvme0n1      259:0    0 119.2G  0 disk
├─/dev/nvme0n1p1  259:1    0    58G  0 part
├─/dev/nvme0n1p2  259:2    0   128M  0 part
├─/dev/nvme0n1p3  259:3    0   768K  0 part
├─/dev/nvme0n1p4  259:4    0  31.6M  0 part
├─/dev/nvme0n1p5  259:5    0   128M  0 part
├─/dev/nvme0n1p6  259:6    0   768K  0 part
├─/dev/nvme0n1p7  259:7    0  31.6M  0 part
├─/dev/nvme0n1p8  259:8    0    80M  0 part
├─/dev/nvme0n1p9  259:9    0   512K  0 part
├─/dev/nvme0n1p10 259:10   0    64M  0 part
├─/dev/nvme0n1p11 259:11   0    80M  0 part
├─/dev/nvme0n1p12 259:12   0   512K  0 part
├─/dev/nvme0n1p13 259:13   0    64M  0 part
├─/dev/nvme0n1p14 259:14   0   400M  0 part
└─/dev/nvme0n1p15 259:15   0 479.5M  0 part

マウントしてSDカード側からSSD側へアクセスできるようにします。

sudo mount /dev/nvme0n1p1 /mnt

以下のファイルを編集し起動ディスクをしています。

 sudo vi /mnt/boot/extlinux/extlinux.conf

設定ではJetsonIOから起動するようになっており、LABEL JetsonIOの段落にあるSDカードのパスをSSDに変更します。

APPEND ${cbootargs} root=/dev/nvme0n1p1の部分を変更したします。

jetson@jetson-desktop:~$ cat /mnt/boot/extlinux/extlinux.conf
TIMEOUT 30
DEFAULT JetsonIO

MENU TITLE L4T boot options

LABEL primary
      MENU LABEL primary kernel
      LINUX /boot/Image
      INITRD /boot/initrd
      APPEND ${cbootargs} root=/dev/mmcblk0p1 rw rootwait rootfstype=ext4 mminit_loglevel=4 console=ttyTCU0,115200 firmware_class.path=/etc/firmware fbcon=map:0 nospectre_bhb video=efifb:off console=tty0

# When testing a custom kernel, it is recommended that you create a backup of
# the original kernel and add a new entry to this file so that the device can
# fallback to the original kernel. To do this:
#
# 1, Make a backup of the original kernel
#      sudo cp /boot/Image /boot/Image.backup
#
# 2, Copy your custom kernel into /boot/Image
#
# 3, Uncomment below menu setting lines for the original kernel
#
# 4, Reboot

# LABEL backup
#    MENU LABEL backup kernel
#    LINUX /boot/Image.backup
#    INITRD /boot/initrd
#    APPEND ${cbootargs}

LABEL JetsonIO
        MENU LABEL Custom Header Config: <CSI Camera IMX219 Dual>
        LINUX /boot/Image
        FDT /boot/dtb/kernel_tegra234-p3768-0000+p3767-0005-nv-super.dtb
        INITRD /boot/initrd
        APPEND ${cbootargs} root=/dev/nvme0n1p1 rw rootwait rootfstype=ext4 mminit_loglevel=4 console=ttyTCU0,115200 firmware_class.path=/etc/firmware fbcon=map:0 nospectre_bhb video=efifb:off console=tty0
        OVERLAYS /boot/tegra234-p3767-camera-p3768-imx219-dual.dtbo

アンマウントします。

sudo umount /mnt

電源を停止する。

sudo poweroff

SDカードを抜いて再び電源を投入する。

SDカードなしでもSSDだけで起動できたはずです。

今後の課題

必要に応じてGUIを無効化(メモリ節約)

Jetson Orin Nanoを学習に使うなら一時的にカメラサービスを止める。

ZRAMのメモリを最適化(CPUの負荷を調整、学習時と推論時の切り分けなど)

スワップ優先度でジッタの防止(今のところ、デフォルトで大丈夫そう)

レースの課題

本番では遅延対策のため、jupyterは使わない。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?