Jetson Xavierを使ってみる その5(NoMachine、リモートデスクトップ接続)
はじめに
今回はNoMachineを利用して、PCからJetson Xavierへのリモートデスクトップ接続を試してみました。
これまでもリモートデスクトップ接続は色々試していたのですが、今回はヘッドレス運用しているJetson Xavierへの接続です。そもそもデスクトップ画面が出力されていない状態なのですが、それでも仮想ディスプレイを出力してくれるNoMachineがあるということで使ってみました。
▼以前の記事はこちら
NoMachineをインストールする
Windows側へのインストール
まずWindows側のPCにNoMachineをインストールします。
▼PCは10万円ぐらいで購入したゲーミングノートPCを利用しています。Windows 11の環境です。
▼こちらのページからNoMachineのインストーラをダウンロードしました。
インストーラを実行後、再起動する必要がありました。
▼以下のような画面が最初に表示されました。

Jetson Xavierへのインストール
次にJetson Xavier側にNoMachineをインストールします。
▼ARM用のNoMachineは以下のページに一覧があります。
https://download.nomachine.com/download/?id=30&platform=linux&distro=arm
今回はブラウザを使わずにターミナルのみでインストールしたかったのですが、そのためのコマンドがありました。
▼こちらのフォーラムに書かれていました。
以下のコマンドを実行し、NoMachineをインストールしました。
curl -fSL "https://www.nomachine.com/free/arm/64/deb" -o nomachine_arm64.deb
sudo dpkg -i nomachine_arm64.deb▼現時点で最新の、9.3.7-1がインストールされました。

最後の出力を見ると、4000ポートで起動していることが分かります。
リモートデスクトップ接続を試してみる
Windows側のPCでNoMachineを起動し、接続を行います。
▼AddからAdd connectionで接続先を追加します。

▼HostにIPアドレスを入力します。Portは先程のターミナル出力にもあったように、4000ポートになっています。

▼接続先が追加されました。

ダブルクリックして接続しました。
▼ユーザー名とパスワードを入力するようになっています。

▼画面が出てきたのですが、黒いままデスクトップ画面が表示されませんでした。

Jetson Xavierを再起動してから試すと、問題なく表示されました。そもそもディスプレイが検出されていないと表示されたのですが、実際Jetson Xavierをヘッドレス運用していたので、ディスプレイには繋いでいない状態でした。
▼NoMachineがディスプレイを作成して接続するかどうかが聞かれました。

Yesを選択すると、デスクトップ画面が表示されました。
▼少し間を置いてデスクトップ画面が表示されました!

▼右上にマウスを持って行くと、NoMachineの設定画面に移動できるようです。

▼以下のような設定画面が表示されました。

動作はGoogle Chromeのリモートデスクトップ接続を使っていた時よりも遅かったのですが、Jetson Xavierのスペック的に制約があるのかと思います。元々右上に15W 2COREと書かれていたのですが、これはJetson Xavierの最大出力ではないです。
▼20W 6COREにしたところ、多少は早くなったような気がしました。

最後に
この後ROSを利用してUSBカメラの映像をデスクトップ画面で確認することもできました。問題なく利用できそうです。
ブラウザにアクセスしたり、GUIで設定を行いたい場面が何かとあるので、これでさらに便利に使えそうです。
▼ちなみに、VPNとして利用しているTailscaleのIPアドレスでも接続できました。
▼仮想ディスプレイの問題は、以前調べていたときに見つけたダミープラグでも解決してくれそうです。




