概要
前から気になっていたのですが、在庫が復活していたので、購入してみました。
菱洋エレクトロで注文して、2日で届きました。12,312円(税込み)で送料無料なので正規代理店の直販が最安だと思います。
まだOS入れただけで何もしてませんが、ハマった点を書いておきます。
電源
USB microBだと2A以上。
ACアダプタだと、5V、4A必要。ACアダプタはセンタープラス、内径 2.1 mm 外径 5.5 mmですが、DC jackのすぐ後ろにあるJ48をショートしないと入力できません。ただし、ショートしてしまうと、USB入力はできなくなります。どちらかしか選択できない。
ショートピンは入ってないので、ACアダプタ使用する場合は用意したほうがいいです。
USBだと5Wモードでしか動作しません。CPUは2coreのみ、GPUも周波数が抑えられます。
ACアダプタだとデフォルトで10Wモード、5Wモードと切り替えが可能。
FANはDC5V
非常に重要です。5Vです!
通常のPC向けのFANは12Vなので、動かないことはないけど、動きません。
AmazonとかでJetosonNano表示すると、おススメにFANが表示されますが、おそらく12V用なのでちゃんと確認しましょう。
なんかおかしいなと思ってたんだけど。注文しなおしました(>_<)
ついでに、PWM対応のFANの場合、温度が低いと、FANは止まったままです。
50度くらいになると回りだしますが、負荷をかけなくてもjtopを使用して動作確認できます。
jtopで"3 CTRL"を開き、FANのSpeedを"m"キーと"p"キーで変更できます。
設定を変えると、jtopを閉じるまでその設定のままになるので注意。
ヒートシンクのねじ穴
M3だと入りません。M2.6がちょうどいい感じ。
FAN買ってついてくるネジはたぶんM3なので別途用意したほうがいいと思います。
インストール
公式手順(下記)に従ってインストールしていきます。
https://developer.nvidia.com/embedded/learn/get-started-jetson-nano-devkit
Ubuntuなので特に問題ないと思いますが、現在ダウンロードできるバージョンは、jetson-nano-sd-r32.1.1-2019-05-31.imgで、インストールの最終段階で、「applying changes」の表示で止まってしまいます。何度やっても同じなのでバグですかね。CHANCELボタンで抜ければ、普通に立ち上がります。なんとなく気持ち悪いけど…
※2019/07/30追記。"jr32.2-2019-07-16"では30分程度で完了しました。フォーラムに通信帯域によっては時間がかかるという記載があります。
インストール後は、最初からSSH使えます。vimも入ってます。
固定IP化
GUIで設定すれば特にハマることはないと思います。
コマンドラインで設定する場合は、netplan入っていないので、以下のどちらかになるようです。
- /etc/network/interfaces.d/に設定ファイルを作成する
拡張子なしで、ファイル名は何でもいいようです。
$ sudo vi /etc/network/interfaces.d/network
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
# DHCP
# iface eth0 inet dhcp
# Static IP
iface eth0 inet static
address 192.168.0.40
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 192.168.0.1,8.8.8.8
再起動で反映する。
- nmcliコマンドで設定する
#デバイス名を確認(NAMEがデバイス名)
$ nmcli connection show
#NAMEを指定("wired 1"の場合)
$ sudo nmcli connection mod "wired 1" \
> ipv4.addresses "192.168.0.40/24" \
> ipv4.gateway "192.168.0.1" \
> ipv4.dns "192.168.0.1,8.8.8.8" \
> ipv4.method "manual"
再起動で反映。
docker & docker-compose
あんまり使わないのかな・・・。全然情報がなくて。
dockerは最初から入っていますが、dockerグループにユーザーが入っていないのでsudoが必要。
sudo不要にするにはdockerグループにユーザーを追加する。
$ sudo usermod -aG docker $USER
$ exit
一度ログアウトして、再ログインすると反映される。
docker-composeは入っていません。ARMだから公式イメージもありません。
ラズパイと同じでいいのかな…
というわけで、とりあえず以下で動きました。
(※docker ver19.03にアップグレードすると動かないかも。OSイメージも変えたので何が原因か未検証です)
$ git clone https://github.com/docker/compose.git
$ cd compose
$ git checkout bump-1.23.2
$ sed -i -e 's:^VENV=/code/.tox/py36:VENV=/code/.venv; python3 -m venv $VENV:' script/build/linux-entrypoint
$ sed -i -e '/requirements-build.txt/ i $VENV/bin/pip install -q -r requirements.txt' script/build/linux-entrypoint
$ docker build -t docker-compose:armhf -f Dockerfile.armhf .
10分弱ほどでビルドできます。
ビルド後、コンテナから取り出して権限の設定。
$ docker run --rm --entrypoint="script/build/linux-entrypoint" -v $(pwd)/dist:/code/dist -v $(pwd)/.git:/code/.git "docker-compose:armhf"
$ sudo cp dist/docker-compose-Linux-aarch64 /usr/local/bin/docker-compose
$ sudo chown root:root /usr/local/bin/docker-compose
$ sudo chmod 0755 /usr/local/bin/docker-compose
$ docker-compose --version
docker-compose version 1.23.2, build 1110ad01
nvidia-dockerはサポートしていないとのこと。残念ですね…
この辺に情報があります。
https://devtalk.nvidia.com/default/topic/1050809/jetson-nano/docker-image-to-see-if-cuda-is-working-in-container-on-jetson-nano-/
※docker ver19.03でGPU対応したようですね。デフォルトで入っているものはまだ古いバージョンですが、
curl -sSL https://get.docker.com | sh
でアップグレード可能。
せっかく買ったので、いろいろ遊んでみたいと思っていますが、チュートリアルあるようなのでその辺から攻めていきます。