こんにちは。himeshimaです。
広く使われているJetson Nano B01 (RAM:4GB) を入手し、使ってみることにしました。せっかくなので「ヘッドレスモードでの初期設定」を行い、ここに手順のメモを残します。
「ヘッドレスモードでの初期設定」を行うのみであれば、キーボード、マウス、モニターをJetsonに接続する必要はありません。
用意したもの(リンクは購入先)
- Jetson Nano B01 本体
- ACアダプター 5V 4A (2.1mmプラグ)
- Jetson Nano用メタルケース(ファン、カメラホルダー付き)【110991384】 ※在庫限り品
- microSDカード 64GB
- microUSBケーブル x 2本 (1本はデバッグUART用)
- USB-UART変換アダプター (デバッグUART用)
- 3ピン メス・メスケーブル (デバッグUART用)
- ラズベリーパイカメラモジュールV2
高負荷な処理や夏場の使用を考慮し、以下の3点を満たすものを選定しました。
- 電源供給方法は2種選択可能ですが20Wモードでの動作が可能なACアダプター(5V 4A)を使います
- PWM制御可能な5Vファン
- 金属ケース
ケースはSeeedStudio製の110991384 でどうやら廃版のようです。取説がありません(同梱もWeb掲載もなし)。
ケースの付属品
私が購入したものにはファンが同梱されていませんでしたが、販売店に連絡するとすぐに送ってくれました。
ハードウェアの接続
-
DCジャック後ろにあるJ48 PowerSelectヘッダー(DC Enableピン)をジャンパー接続します。(私が購入したJetsonにはジャンパーピン付属あり)
-
ボタンヘッダー部(ピンアサインの参考:リンク先のJetson Nano B01 Serial Console Silkscreen画像を参照)にケース付属のスイッチとジャンパーピン、デバッグUART用3ピンケーブルを取り付けます。スイッチはケース外側から入れて、内側から金具で固定します。POWERスイッチ側にはLEDがつくので計4ピンあります。
a. RESETスイッチ:赤を"SYS RST"に、黒を"GND"に接続します。
b. POWERスイッチ:赤を"PWR BTN"に、黒を"GND"に接続します。
c. POWERスイッチ用LED:赤を"LED +"に、黒を"LED -"に接続します。
d. AUTO ONピンとDISABLEピンをジャンパー接続します。(ケースにジャンパーピン付属あり)
e. デバッグUART(RXD, TXD, GND)を接続します。(U-Boot設定を変えたい時ぐらいしか活躍の機会はなさそうですが、後で付けるのが面倒なので付けておきます) -
ケース付属のSDカードアダプターをJetson本体のSDカードスロットに差し込みます。
-
Jetson基板の四隅とSDカードスロット1ケ所をケース付属のネジを使って固定します。
-
写真のように40ピンGPIO延長とPWMファンをそれぞれ接続します。
a. 40ピンGPIO延長:ケース付属のネジを使って2ケ所固定します。
b. PWMファン:ファン付属のネジを使って4ケ所固定します。 -
microUSBとPCを接続します。
-
有線LANをHUB等に接続します。
-
ケースの上面カバーをかけます。カメラ用の穴からデバッグUARTケーブルを出しています。
※写真ではSDカード差し込み&電源On済ですが、まだここではやる必要ありません。
ハードウェアの接続ができたら、公式の手順 に従ってセットアップを進めていきます。私はWindows10環境にて作業しました。私が確認した時点での手順を書いていきます。
Jetson Nano Developer Kit SD Card Image の入手
- SDカードイメージのzipファイルは6GBあり、時間がかかるので先にダウンロード開始しておきます。(入手先)
microSDカードのフォーマット
-
PCにmicroSDカードを接続し、SDカードがどのドライブレターに割り当てられたのかを確認します。私の環境ではEドライブでした。
-
SD Card Formatter をダウンロード後、インストールしてアプリ起動します。
-
フォーマットする対象のSDカードを選択します。誤って他のデバイスを選ばないように十分注意して下さい。ドライブレター"E"は私の環境における例です。"クイックフォーマット"を選び、ボリュームラベルは空欄のままにします。その後"フォーマット"をクリックします。
-
Warningの内容を確認し、問題なければ"はい"をクリックしてフォーマットを開始します。
-
正常にフォーマット完了すると以下のような表示が出ます。
"OK”をクリックし、SD Card Formatterアプリを閉じます。
microSDカードへのImage書き込み
-
手順1でSDカードイメージのzipファイルをダウンロード開始済ですが、ダウンロード完了後に以降の作業を行います。
ダウンロード完了したら、そのzipファイルを解凍します。解凍後のサイズは13.3GBありました。zipファイルのままでよいです。解凍不要。 -
Etcherをダウンロード後、インストールしてアプリ起動します。
-
"Flash from file" をクリックしてSDカードイメージのzipファイルを選択します。
-
"Select target" をクリックして、正しいデバイスを選択します。
-
"Flash!" をクリックして、書き込みを開始します。すぐにデバイス変更の許可を与えるかの確認が出ますから、許可します。(書き込み所要時間の目安:7~10分程度)
-
書き込みが終了すると、WindowsはSDカードの読み取り方法がわからないことを通知する場合があります。大量の通知が出ますが全てフォーマットの[キャンセル]をクリックします。Etcherアプリを閉じ、その後microSDカードを取り外します。
ヘッドレスモードでの初期設定1
-
Jetson Nano Developer Kit SD Card Image を書き込んだmicroSDカードをJetsonにセットします。
※SeeedStudio製の110991384ケース付属のSDカードアダプター使用時、SDカードはラベル面が上を向くようにセットします。反対の向きではセットできません。
-
DCジャックにACアダプター(5V 4A)を接続します。
-
POWERスイッチを押して電源を入れます。
-
開発者キットが起動するまで1分程度待ちます。
以下のようなパーティションがマウントされたら準備完了です。(USB UARTと接続可能になります)
-
Tera Term等のターミナルアプリを使い、USB UARTと接続します。(ボーレートは115200bps)
COMポート番号はデバイスマネージャーから確認できます。
ヘッドレスモードでの初期設定2
-
以降の手順でもろもろ初期設定していきます。(選択肢の移動は上下キー、OK/Cancel等の2択はtabキー、決定はspaceキーを使います)
-
以下の画面になるまで"ESC"キーを押します。その後"Ok"を選び、決定します。
-
ライセンス確認:"Ok"を選び、決定します。
-
言語設定:"English - English"に合わせ、"Ok"を選び、決定します。
-
ロケーション設定:"other"に合わせ、"Ok"を選び、決定します。
-
ロケーション設定:"Asia"に合わせ、"Ok"を選び、決定します。
-
ロケーション設定:"Japan"に合わせ、"Ok"を選び、決定します。
-
ロケール設定:"United States - en_US.UTF-8"に合わせ、"Ok"を選び、決定します。ターミナル環境によっては文字化けを起こすので日本語を使わない設定にしています。
-
システムクロック設定:"Yes"を選び、決定します。
-
アカウント設定:ユーザー名(フルネーム)を入力し、"Ok"を選び、決定します。
-
アカウント設定:ユーザー名(ログイン用。フルネームと同一でもよい)を入力し、"Ok"を選び、決定します。
-
アカウント設定:パスワードを入力し、"Ok"を選び、決定します。
-
アカウント設定:再度パスワードを入力し、"Ok"を選び、決定します。
-
アカウント設定:8文字未満のパスワードを使用すると、本当に使用するのか確認されます。なるべく使用は避けましょう。
-
アプリ用パーティションのサイズ設定:デフォルト値が使用可能な最大サイズ[MB]です。希望するサイズを入力し、"Ok"を選び、決定します。
-
優先使用するネットワークの選択:"eth0: Ethernet"に合わせ、"Ok"を選び、決定します。(各人の環境に合わせて選択します)
-
ホストネーム設定:希望する名前を入力後、"Ok"を選び、決定します。
-
電力モードの選択:"MAXN"に合わせ、"Ok"を選び、決定します。(MAXN⇒CPU4個, 5W⇒CPU2個使用となります。)
-
インストール完了後、Ubuntuのログインプロンプトが出ます。登録したアカウント名とパスワードを使ってログインします。
その他、初期設定(USB-UART or SSH使用)
-
LAN内からのSSH接続:"設定したHOSTNAME.local" 指定で接続できます。
⇒Hostname=jetsonの場合、"jetson.local" -
温度確認:(参考:NVIDIA Jetson Nano の内部温度をモニタする)
a. 温度ゾーンの名前
$ cat /sys/devices/virtual/thermal/thermal_zone[0-9]/type
AO-therm
CPU-therm
GPU-therm
PLL-therm
PMIC-Die
thermal-fan-estb. 温度ゾーン毎の現在の温度(ミリ℃)
$ cat /sys/devices/virtual/thermal/thermal_zone[0-9]/temp
35000
27500
29000
27000
100000
28250c. PWMファン
Jetson Nano に装着した冷却ファンの回転数を自動制御してみる
カメラモジュールを取り付け (※ヘッドレスでのセットアップではありません)
-
FFCケーブル印刷面が外側となるようにCSIコネクタに接続します。
-
CUI操作を諦め(苦笑)、GUI使います。Jetsonにキーボード、マウス、モニターを接続します。
-
GUIログインし、ターミナルからnvgstcaptureコマンドを実行します。
$ nvgstcapture --orientation=2
orientationは回転角度の指定に使います。
回転角度 1:90°, 2:180°, 3:270°⇒画出しできることを確認します