Jetson NanoなどNVIDIAが出しているたくさんのボードはコンピュータビジョン系の解析やAIなどGPUを活用した様々な用途に活用できるだけでなく、Linuxを搭載していながらも、MicrosoftのAzure IoT Edgeデバイスとして利用もできるとても便利なボードです。前回、Jetson NanoでVisual Studio Codeからのリモート接続を試したところ、Jetson NanoのOSバージョン(Ubuntu 18.04)がVisual Studioから接続するサポート対象外ということだったので、今回はサポート対象となっているJetson Orin NX(Ubuntu 20.04またはUbuntu 22.04)を使って試してみました。その方法をご紹介します。
まず、Jetson側にSSHサーバーをインストールします。
sudo apt-get install openssh-server
ローカル側の環境作成です。Visual Studio CodeがインストールされたWindowsなどのPC側です。
まず、Visual Studio Codeに「Nsight Visual Studio Code Edition」をインストールします。同様にVisual Studio CodeのExtensionsタブ(Ctrl+Shift+X)で「Nsight」を検索して「Nsight Visual Studio Code Edition」を表示します。
[Install]をクリックしてインストールします。
次に、Visual Studio CodeにRemote SSHをインストールします。Visual Studio CodeのExtensionsタブ(Ctrl+Shift+X)で「remote ssh」を検索してMicrosoftの「Remote - SSH」を表示します。
[Install]をクリックしてインストールします。インストールが完了するとVisual Studio左側のタブに下図一番下のようなSSH接続のアイコン(Remote Explorer)が追加されます。
次にJetsonにSSHで接続します。Visual Studio Codeウィンドウ左下の下記の「><」のようなアイコンをクリックしてください。
「Connect to Host...」を選択して、テキストボックスに接続先ホスト情報(Jetsonのユーザー名@JetsonのIPアドレス)を入力してEnterを押下してください。私のJetson Orin NXの場合は、jetson@192.168.0.26 です。
入力したらENTERキーを押して接続を開始します。
OSを選択する画面になったら「Linux」を選択します。
Jetson Orin NXのパスワードを入力します。
少し話がズレますが、 Yahboom Jetson Orin NX 開発キットは購入時に付属しているSSDにUbuntu(NVIDIA社から正式にリリースされているUbuntu 20.04)がインストール済みです。ただ、初期設定されているパスワードが分からず、見つけるのに苦労しました。結論として、パスワードはYahboom Jetson Orin NX 開発キットのチュートリアルページの3.2 Jetson Orin NX system and desktopに記載されていました。参考にしてください。
正常に接続が完了すると下図のように新しいウィンドウが表示されます。
リモート接続のTERMINALも正しく表示されています。
最後に、再掲ですが、Visual Studio Codeによるリモート接続の要件については、Linux Prerequisites for Visual Studio Code Remote Developmentのページに記載されています。Ubuntu 18.04はサポート対象外です。
JetPackとUbuntu含め各モジュールバージョンの依存関係の比較です。
- JetPack 6.0 [Jetson AGX Orin Series, Jetson Orin NX Series, Jetson Orin Nano Series]
- NVIDIA Jetson Linux 36.2
- Ubuntu 22.04
- cuDNN 8.9.4
- CUDA 12.2.12
- JetPack 5.1.2 [etson AGX Orin Series, Jetson Orin NX Series, Jetson Orin Nano Series, Jetson Xavier NX series, Jetson AGX Xavier Series]
- Jetson Linux 35.4.1
- Ubuntu 20.04
- cuDNN 8.6.0
- CUDA 11.4.19
- JetPack 4.6.4 [Jetson Xavier NX Series, Jetson TX2 Series, Jetson AGX Xavier Series, Jetson Nano, Jetson TX1]
- Linux 32.7.4
- Ubuntu 18.04
- cuDNN 8.2.1
- CUDA 10.2