Jetson TX2 への JetPack のセットアップ手順(NVIDIA SDK Managerを使用)

1 はじめに

CX事業本部の平内(SIN)です。

re:Invent 2019で盛り上がっている所恐縮ですが、ひっそりと、アップします。見逃して下さい。m(.)m

今回、NVIDIA SDK Managerを使用してJetPackをセットアップする機会を頂いたのですが、色々な無知から、ちょっと手間取ったので、次回のため、できるだけ画像を入れて 手順を記録してみました。

Jetsonのセットアップでは、カーネルの書き換えが必要なため、UbuntuがインストールされてホストPCが必要です。VirtualBox(仮想環境)でも一応可能なのですが、安定して作業するためには、実機の準備が俄然おすすめです。 今回は、小型のデスクトップPCにUbuntuをインストールして使用しました。

作業した環境は、以下のとおりです。

  • JetSON TX2
  • JetPack 4.2.3
  • Ubuntu 18.04.3 LTS
  • ホストPC LIVAZ-4/64-W10(N3350)S

所要時間は、ダウンロード及びOSイメージ作成までが、約45分、OSイメージの書き換えが約10分、その後のインストールが、約1時間15分という感じでした。ホストPCの準備などを含めると、超スムーズに行っても2時間以上はかるくかかります。

2 ディスクスペース

実は、最初、ホストPCにUbuntuを何も考えずにインストールして作業していた所、Flush Jetson OSが、40%ぐらい進んだところでDiskFullで止まってしました。ホストPCに使用したPCのディスクが足りなかったようです。

SDK Managerでは、ダウンロードされたファイルは、ホストPCの ~/Downloads/nvidia/sdkm_downloads 配下に置かれ、約6GByteとなっていましたので、とりあえず、ここを別のHDをマウントして逃してやり直しました。

全部で35G位あれば大丈夫そうなので、ホストPCのディスクに余裕に注意して下さい。

参考:ダウンロード完了後の使用量

du -k ~/Downloads/nvidia/sdkm_downloads/
6006256 /home/cm001/Downloads/nvidia/sdkm_downloads/

参考:~/Downloads/を別ディスクにマウントした

$ df -k
Filesystem                  1K-blocks    Used Available Use% Mounted on
/dev/mapper/ubuntu--vg-root  28453804 5421200  21564188  21% /
/dev/sda1                   456417576 4587320 428575832   2% /home/cm001/Downloads
・・・略・・・

↑Doenloads以外の空きが、21G程度、一応完了できましたがギリギリでした。

3 SDK Managerのセットアップ

(1) ダウンロード

NVIDIA のデベロッパーページから、 NVIDIA SDK Managerをダウンロードします。(ダウンロードには、ログインが必要です。予めアカウントを作成しておいて下さい。) ダウンロードされるファイルは、sdkmanager_0.9.14-4964_amd64.deb 約63MByteです。

https://developer.nvidia.com/embedded/jetpack

(2) SDK Manager インストール

下記のコマンドで、SDK Managerをインストールします。

$ sudo apt install ./sdkmanager_0.9.14-4964_amd64.deb

(3) SDK Manager 起動・ログイン

下記のコマンドで起動し、NVIDIAへのログインを行います。

$ sdkmanager

4 Jetsonの起動及び、リカバリモードによる接続

(1) 接続

ホストPCとのUSB接続 及び、電源コード、USBマウス・USBキーボード・HDMI(ディスプレイ)の以下のとおりです。

(2) 起動

初めて使用する場合、POWERボタンを押すと、ターミナルのような初期画面が表示されます。ここで、下記のコマンドを打つことで、UbuntuのGUIが立ち上がります。

cd NVIDIA-INSTALLER
sudo ./installer.sh
sudo reboot

初期状態では、ユーザー・パスワードともにnvidiaでログインできます。

(3) リカバリモード

POWERボタンで起動した状態で、RECを押しながらRSを数秒押し、RSを離してから、RECを離すと、HDMIへの出力が止まり、リカバリーモードに移行します。

注:リカバリーモードで作業を開始すると、完了するまで、Jetson(Ubuntu OS)は起動することが出来ませんので、ご注意下さい。

JetsonとホストPCのUSB接続が有効で、Jetsonに電源が入っている場合、ホストPCでは、下記のように NVidia Corp. というデバイスが認識されます。

$ lsusb
Bus 001 Device 006: ID 0955:7020 NVidia Corp.

5 インストール

(1) STEP 01

  • Target HardwareJrtSon TX2を選択して、CONTINUEをクリックします。

(2) STEP 02

セットアップする対象をチェックで選択します。なお、TARGET COMPONENTSのインストール時は、ポストPCとJstsonが、それそれ、下記の通り、接続されている必要があります。

  • Flash Jetson OS USBケーブルで接続され、Jetsonがリカバリーモードになっていること。Flash Jetson OSのインストール中だけ、SDK Manager が、Jetsonのディスクをマウントしてイメージを書き込みます。

  • 上記以外 USBケーブルで接続されている、若しくは、JetsonとホストPCがTCP/IPで通信可能であること。 Flash Jetson OSが完了すると、Jetsonが起動し、OSの初期設定が始まるので、その時点で、有線ネットワークやWi-Fiの設定で、ホストPCとのネットワーク接続が可能になればOKです。なお、USBケーブルで接続されている場合は、それだけでもネットワーク接続が可能になっているようです。

選択が完了したら、agreementsにチェックして、CONTINUEをクリックします。

(3) STEP 03 (Flash Jetson OSまで)

ホストPCにインストールするための管理者権限のパスワードを入力が求められた後、ダウンロード及び、インストールが順次開始されます。

途中、下記のような警告ダイアログが表示された場合は、気にせずOKを押して下さい。

STEP 03 開始から、Flash Jetson OSが、始まるまで、手元の環境で、約45分、そして Flash Jetson OS 自体が10分位でした。

Flash Jetson OSが完了すると、Jetsonが起動し、Ubuntuの初期化が始まります。

言語、キーボート、タイムゾーン・アカウントの設定が完了すると、一旦、再起動し、Jetson OSが起動します。

(4) STEP 03 (Flash Jetson OS以降)

ここからは、Jetson OSが起動した状態で、ネットワーク経由で、淡々と書き込んでいく感じです。

この時点で表示されるダイアログにJetsonへの接続情報(Jetsonに設定したアカウント)を入力し、installを押します。(USB接続されている場合は、ネットワークが無くても192.168.55.1で繋がります)

ここからのインストールは、だいたい、1時間15分ぐらいでした。

(5) STEP 04

全てのインストールが完了すると、STEP 04となります。FINNISHを押して、SDK Managerを修了して下さい。

6 最後に

今回は、SDK ManagerによるJetPackのインストールの手順を纏めてみました。非常に時間のかかる作業ですので、手戻りがないように慎重に進めたいものです。