NVIDIAの「Getting Started With Jetson Nano Developer Kit」ページからダウンロードしたイメージでJetson Nanoを動かすと、「L4T-README」という変なドライブがあることに気付いたと思います。
※2019/7/13現在、このリンクからは「jetson-nano-sd-r32.1.1-2019-05-31.zip」がダウンロードされます。
「これはなんだ?」と思ってはいたものの華麗にスルーしていたのですが、NVIDIAの「Getting Started with AI on Jetson Nano」というオンライン講座(ただです)を受講して、それが「headress:USB Device Mode」のためだということがわかったんです。
「USB Device Mode」って、簡単に言うと、Jetson Nanoにディスプレイやキーボードを付けずに、Jetson NanoのMicro USBとPCを接続してSSHなどのリモート接続でJetson Nanoを操作するためのものだったんです。
セットアップのアニメーションを貼っておきます。
ネットワークアドレスの設定
Jetson NanoのMicro USBとPC(Windows 10)を繋げると、「Remote NIDS Compatible Device」という名前のネットワークアダプタが追加されます。
このアダプタの 「ネットワーク接続の詳細」を見ると、「192.168.55.100」が割り当てられていることがわかります。
しかーし、ここに落とし穴が!
少ししてまた「ネットワーク接続の詳細」を見てみるとこんなことになっているんです。
あ、アドレスがー!
DHCPがなんかすっごーく不安定なんです!で、当然ですがこのままだとちょくちょく接続が切れてしまします。
そこで、DHCPを使わずに直接アドレスを設定してしまいました。
これで、接続は安定します。
ブリッジの作成
で、JetsonとPCを繋いだら、PCをネットに繋げているアダプタとJetsonを繋いでいるアダプタを選択して、右クリック「ブリッジ接続」を選ぶと「ネットワーク ブリッジ」が作成されます。
しかーし、ここで2回目の落とし穴が。「ネットワークブリッジ」はブリッジであってルーターではありません。2つのアダプタが「同じネットワーク」でないと通信ができないのです。
Jetson Nano側のネットワークを変更するのが普通なのでしょうが、Jetson Nanoのイメージを焼いたSDカードを幾つも作ることになりそうだし、誰かのJetson Nanoを繋ぐことがあるかもしれないので、部屋のWiFiルーターの方を変更しちゃいました。
「192.168.55.1」がJetson Nanoで「192.168.55.100」がPCに割り振られているので、WiFiルーターを「192.168.55.254」に設定してルーターのDHCPの割り当て範囲を「192.168.55.201~192.168.55.240」とかにします。
デフォルトゲートウェイの追加
このままではJetson Nanoからインターネットにアクセスすることができないので、WiFiルーターをデフォルトゲートウェイに設定します。
「route」コマンドで元の状態を確認するとこんな感じになっています。
で、「sudo route add default gw 192.168.55.254」とWiFiルーターのアドレスをデフォルトゲートウェイとして追加してあげると、こうなります。
これでJetson Nanoからインターネットにアクセスすることができるようになります。
おまけ(AC Adapterなし接続)
Jetson NanoをAC Adapterで使うときに繋ぐジャンパーピンは、基板に印字されている「ADD JUMPER TO DISABLE uUSB PWR」の言葉通り、マイクロUSBケーブルからの電源供給を無効にするためのものです。
そこで、J48を繋いだ状態にして、マイクロUSBからの電源を直接基板に供給してやります。(5VとGNDに繋ぐ)
この写真では、秋月電子で売っている「電源用マイクロUSBコネクタDIP化キット」を使っています。
ちょっと危なっかしい感じですが、これでAC AdapterがなくてもUSB Device Modeを試すことができます。
おわり