Jetson Nano 2GB + JetPack4.6でリモートデスクトップ

カテゴリー: シングルボードコンピュータ  タグ: /

以前Jetson NanoのJOBの引き合いがあった(びっくりです!)ので、まず使ってみないことには話にならず 2GB版が出て間もなくの去年12月に購入しましたが、結局話は立ち消え。とりあえずGPUデモ/カメラデモを体験してから、「さて、ラズパイみたいにリモートデスクトップ接続したいなぁ」と試して見たものの、VNC viewerとつなぐことができず断念したまま放っていました。

JetPackが4.6になったのを機に再チャレンジです。対象はWindows10 20H2です。

VNCサーバーをいろいろ試す

Jetson nanoの記事はいろいろありますが、どうもJetson nano 2GBにそのまま当てはまらない気がします。JetPackが違うように、仕様も微妙に異なるようです。いろいろ試さなくてはいけません。

下がHDMI経由のスクリーンです(以降:実スクリーン)

HDMI経由のJetpak4.6のXwindowスクリーン

Tiger-VNC

ネットで検索してはじめにたどり着いたのですが、私の環境ではうまくいきませんでした。試した、という事実のみ記載します。

xrdp + xfce と windowsのリモートデスクトップ接続

厳密にはXrdpはリモートデスクトッププロトコル、Xfceはスクリーンキットということで専用のスクリーンをリモートでつなぐプロトコルなので、VNCとは若干異なりますがWindows10リモートデスクトップ接続でつながります。

#インストール&設定コマンド例
sudo apt install xrdp
sudo apt install xfce4
echo xfce4-session > ~/.xsession
startxfce4

この接続にはwindows10標準搭載の「リモートデスクトップ接続」です。デスクトップは上のように、xfceスクリーンになり、実スクリーンとデザインは違いますが、アプリの起動などリモートで操作できていることがわかります。

ただ、GPU関連の画面が表示できず、デモ「N-body」も表示できませんでした。

Web記事ではVNC viewerへの接続も散見しましたが、私の環境では接続できず。

Vino

やっとたどり着いたのが「Vino」。ubuntuに慣れている方には既知のVNCサーバーらしい。初心者には長い道のりでした。

参考サイト「【機械学習】Jetson Nano Developer Kit のはじめの一歩 ちゃんと日本語化・無線LAN・カメラ・VNC設定など【インストール編】(4)」より

mkdir -p ~/.config/autostart
cp /usr/share/applications/vino-server.desktop ~/.config/autostart
gsettings set org.gnome.Vino prompt-enabled false
gsettings set org.gnome.Vino require-encryption false
gsettings set org.gnome.Vino authentication-methods "['vnc']"
gsettings set org.gnome.Vino vnc-password $(echo -n 'パスワードを入れる'|base64)
sudo reboot

この設定でVNC viewerとの組み合わせで実スクリーンでリモートデスクトップが可能になり、「N-Body」デモもしっかり表示できました。

右上の「デス・スター大爆発」みたいなのがN-Bodyデモ

リモートデスクトップは少しタイムラグがある

操作感は、実スクリーンとリモートデスクトップでは1秒ぐらい遅延があります。マウスポインタは遅れますが、□ドットが先行するので何とかなります。ウインドウのサイズ変更はマウスポインタの変化が見えないのでかなりやりにくいです。キー入力はやはり0.5~位遅れますが連続打鍵はある程度追従します。

このタイムラグはマシン依存ではなくUSBの限界かもしれません。またリモートデスクトップ稼働中はWindows10の他のウィンドウのキー操作にも影響します。

HDMI接続を切り離し単独でリモートデスクトップにするとうまくいかない

ここまでVinoの設定は順調でしたが、いざOKと思って別のPCでVNC viewerを試したところ、HDMI接続を併接しないと、8ドットの極小スクリーンになることが判明。

困った困った。そこで、また検索。

参考サイト「Jetson NanoのVNCサーバーをコマンドラインで設定する」(https://zenn.dev/tunefs/articles/9774eb8f229e1bf97a8c)で無事に解決。

このサイト中の自動ログインの設定(/etc/gdm3/custom.confの編集)とubuntuログインを「自動ログイン」に変更したことで、HDMIを切り離してもリモートデスクトップできるようになりました。Xrdp+Xfceによる「リモートデスクトップ接続」も同時に稼働可能です。

Xrdp+Xfce+windowsリモートデスクトップ接続と併用も可能

例えばスクリーンショットをデスクトップに保存するとちゃんと両方にセーブできてます(上の画像)。異なるデザインのスクリーンで同じホストの操作できるって、何か不思議・・・

小ネタ・・検索方法

「Jetson nano 2GB」で検索すると、たいてい本文中に”microSD 32GB”があって、最後の三文字”2GB”の部分がhitして、Jetson nano全般で占めてしまう。32GBを外したければ「-」マイナス検索を使い、 「Jetson nano 2GB -32GB」と入力。

そんなの誰でも知ってるか・・・

お気軽にコメントをどうぞ。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)