シリコンハウス共立でJetson買って困っている人へ
大阪日本橋のシリコンハウス共立で
AVerMedia NVIDIA Jetson Xavier NXスタンダードボックスPC(新古品 箱入り)
を買ってセットアップに困っている人へ私がセットアップし他方法を残します。
(あくまで衝動買いして(私を含めて)よくわからない人向けです。そんなことないわアホっていわないで)
(注意)ストレージのフォーマット等それなりに危険な作業がありますので、間違っても本番環境のサーバ等で実施しないでください。また仕事で疲れている時に実施すると失敗する可能性が高いので余裕のある時に実施しましょう。
用意するもの
- UbuntuをインスールしたPC(仮想環境は× ローカルにインストールしてください。)
- avermedia EN715用 BSP(ボード サポート パッケージ)
- SDカード64Gぐらい(sandisk extreme辺りを推奨)
PCは実機を用意してください。USBブートでも何でも良いです。
OSインストールはNvidiaのSDK Managerは使えません。(あれはちゃんと正規品を購入した向けみたい)
インストール作業
UbuntuPC(母艦)での作業
- BSPの解凍
/home/name/jetson
か何処かにダウンロードしたBSPを解凍してください。(普通にtarで)
以降の作業は解凍したファイル内の
/JetPack_xxxxxxxxxxx/Linux_for_Tegra
で実施してください。
-
SDカードの準備
fdiskでもgpartedでもなんでも良いのでext4でフォーマットしたSDカードを作成してください。(最低32Gぐらいですが128Gや256Gを買っても良いと思います。安いし) -
UUIDの記録
SDカードからの起動の為にUUIDが必要になります。
sudo blkid
で使用するSDカードのUUIDを記録してください。
echo {記録したUUID} > bootloader/l4t-rootfs-uuid.txt
として l4t-rootfs-uuid.txt を bootloader フォルダに作成してください。
-SDカードへOSの書込み
(sdx1は実際に書込みSDカードの物にしてください)
$ sudo mount /dev/sdax /mnt
$ cd rootfs/
$ sudo tar -cpf - * | (cd /mnt/ ; sudo tar -xpf - )
$ sudo umount /mnt
要するにBSPのrootfsの内容をSDカードにコピーします。
SDカードに対する作業は以上です。
Jetsonでの作業
Jetsonをリカバリーモードにして母艦にUSBで接続します。
EN715上にリカバリースイッチがあるので、それを押しながら電源を投入するとリカバリーモードで起動します。
USB接続後に
UbuntuPC(母艦)での作業
dmesg
とコマンドを打つとjetsonが母艦に接続されているのが分かると思います。
それではJetson内部のeMMCにファイルを転送します。
$ sudo ./flash.sh jetson-xavier-nx-en715 mmcblk1p1
SDカードから起動するのにeMMCに書き込むのなんでやねんという感じなのですが、要は起動時はeMMCを読みに行き実際はSDカードから起動するという構成になるようです。(勉強不足)
転送が終わったらJetsonの電源を切って、SDカードを差し込んで起動するとシステムが起動するはずです。
初期状態なので、ID:nvidia PASSWORD:nvidiaになっています。
このままでは素の状態なので
sudo apt update
sudo apt install upgrade
sudo apt install nvidia-jetpack
としてjetpackをインストールして開発環境等を整えて下さい。
あとはサンプルを動かしてみるステップになるのですが、OpenGL関係のエラーが出たので
$ sudo apt install freeglut3-dev libglu1-mesa-dev
でライブラリの導入が必要でした。
さあoceanFFTを動かしましょう!!