シングルボードコンピューターNVIDIA Jetson Nano B01互換機のOKdo Nano C100がIoT本舗からやってきたので紹介します。
こちらはJetson Nano B01互換で、ほぼい一緒ながらストレージにeMMC搭載でMicroSDなしで単独起動できて、Jetson Nano B01よりも4~5千円ほど安くなっているのが特徴。
一時期、Jetson Nanoが5万円くらい、ラズパイは2~3倍の高値になっていたことを考えると最近はやっと定価の価格に戻ってきてシングルボードコンピューターも手に入れやすくなって嬉しいですね。
OKdo Nano C100(IoT本舗 商品ページ:価格19,800円)
OKdo Nano C100 レビュー
Jetson Nano B01互換機 Nano C100スペック
まずは簡単なスペックから。
- ブランド:HRKZ
- CPU:ARM Cortex A57 1.43GHz 4Core
- GPU:NVIDIA Maxwell 128Core
- メモリ:4GB(64bit LPDDR4 25.6GB/s)
- ストレージ:eMMC 16GB(単独起動可能)・MicroSD
- USB 3.0:4ポート
- ディスプレイ:HDMI 2.0・DisplayPort 1.4
- 有線LAN:Gigabit Ethernet・(無線LAN用M.2 Key Eポートあり別途必要)
- カメラ:MIPI CSI-2 D-PHY 2ポート
- インターフェイス:I2C, I2S,SPI, UART, SD/SDIO, GPIO
- 電源:MicroUSB・DCプラグ5V4A(外径5.5mmφ、内径2.1mmφ)
Jetson Nano B01との主な違いはストレージにeMMC 16GBを搭載していて、初期設定を済ませればeMMCから単独機能が可能なところ。
Jetson Nano B01はMicroSDカードにOSが入ってないと起動しないので、Nano C100で開発後に本番環境でeMMCのみで運用できる。
ケース
ケースもJetson Nanoと同じようなケースで色がちょっと違う程度。
左側の黒い部分をスライドして開ける箱。
裏面にスペックが書いてあります。
開封
Radxaの封印、そういえばRadxa 5A予約(デポジット5ドル)してたんですけど入荷のメール登録してなくて売り切れで買えない・・・
無線LANカードのビスか?ビスが2本付いてました。
IoT本舗の方が教えてくださいました。こちらのビスは「ベースボードのカラムパイプ固定用です。」ということです。
こちらの↓ベース部分のメインボードを支えるパイプ部分にビスではなく接着剤で止まっているのをより確実に固定するためにビスが2つ付いているものでした。
USB3.0ポート4つもある。あとディスプレイはHDMIとDisplayPortもある。
M.2 Key Eポート(無線LAN用)を装着するにはメイン・ベースボード分離
奥のビス2つを外してベースボードからメインボードを取り外すと無線LAN用のM.2 Key Eポートが見えます。
M.2 Key Eの無線LANカードは今持ってないので装着しないでUSBの無線LANアダプターを使います。
MicroSDカードはメインボードではなく、ベースボードにさすようになっているところが違い。
メイン・ベースボードの裏
メインボード↓の裏はX型にCPUの周りにヒートシンクを止める金属とビス。
ベースボード↓は裏面にGPIOピンの番号が書いてあるのがちょっと不便、できれば表面に書いてあれば見やすかったのに。
Nano C100 MicroSDにシステム インストール
それではNano C100を使えるようにしていきましょう。最初はMicroSDにNano C100用のイメージを書き込んでOS(Ubuntu)を起動して初期設定します。
初回起動後はMicroSDカードを抜いて、内蔵ストレージのeMMC単独でも起動できるようになります。
詳しくは↓こちらのIoT本舗のページで説明されていますので、そのとおりにやってみます。
以下の作業はMicroSDカードにOSのイメージファイルを書き込む作業です。
作業はWindowsやMac、Linuxで行います。例としてWindows11での作業の様子を紹介します。
OSイメージファイルダウンロード
まずはNano C100用の以下のファイルをダウンロード、5分ほどかかります。
イメージファイルを書き込むツール
こちらのツールはNano C100用のイメージファイルをMicroSDに書き込む時に使うツールです。
ラズパイや他のシングルボードコンピューターを使っている方にはもうおなじみのツールだと思います。(ちょっと古い記事ですがラズパイでEtcherの使い方も紹介しました。)
Windowsの場合はインストーラが用意されています。
Nano C100に使うMicroSDカードをフォーマット
MicroSDカードを用意しましょう。容量は32GBくらいあればOK。
MicroSDカードがフォーマットできていない場合は以下のツールを使ってフォーマットするとうまくいきます。
もし、Windowsのエクスプローラーにマウントされない場合は、スタートメニュー左クリックでディスクの管理を選びます。
上記を右クリックで「ボリュームの削除」、続いてまた右クリックで「新しいシンプルボリューム」でファイルシステムの部分をNTFSから「exFAT」に変更してフォーマットします。
EtcherでOSイメージファイル書き込み
Etcherでのイメージファイルは3ステップ・選ぶだけでMicroSDカードにイメージを焼いてくれるので簡単です。
まずは先程ダウンロードしたc100.imz.xzを選びます。
続いてフォーマットしたMicroSDカードを選ぶ。
128GBのMicroSDカードを選ぶとなぜか『大きいドライブを消去しようとしている』と言われますが、構わず書き込みます。
イメージを書き終わると↓左のほうにFlas Completed!の表示になります。
これでMicroSDカードにイメージを書き込めたのでNano C100にさして起動してみましょう。
Nano C100 起動
MicroUSBの場合はジャンパピンを抜く
ここで大事なことをお伝えしておきます。Nano C100はDCプラグとMicroUSBの2つの電源があります。ジャンパピンをショート・抜くことによってそれぞれに対応しています。
- MicroUSB 電源:ジャンパピンを抜く
- DCプラグ 電源:ジャンパピンをさす(ショート)
上の状態はジャンパピンがささっている状態です。電源にMicroUSBを使う場合はこのピンを抜きましょう。
自分もMicroUSB電源でジャンパピンがささっている状態で起動したら、起動しないのでしばらくビビりました・・・
初回起動
初回起動時に内蔵ストレージのeMMCになにやら書き込むようなので少し時間がかかりますので、休憩しながら待ちましょう。
Ubuntu起動
GUIが起動するとUbuntuの初期設定画面になります。
日本語も選択可能です。
初期設定が終わると↓Jetoson Nanoの壁紙の画面に、左側にランチャーがあるのが違うところ。
4K表示も可能でした。
電源
右上のメニューにパワーモード選択項目がありました。5Wにすると5V1Aで低電力で重い作業不可なのでMAXNのままにしておいたほうが良さそう。
ただ、MicroUSB接続だと5V1A=5Wになるので、全性能を使いたい場合は5V4AのACアダプターを別途導入しましょう。
Ubuntu バージョンは18.04と古い
システムはUbuntu18.04で古いUbuntuでした。
Jetoson Nanoも18.04なので、そのあたりも互換と言える?
GUI表示
設定は英語表示でディレクトリの一部のみ日本語表示になっています。
USBのWifiドングル
USBのWifiドングルがあるので、コレでWifiに接続しました。
まずはUSBメモリでドライバーをダウンロードしておく。
sudo git clone https://github.com/xtknight/mt7610u-linksys-ae6000-wifi-fixes.git
USBメモリをNano C100のUSBにさして、mt7610u-linksys-ae6000-wifi-fixesをホームなどにコピーしたらシェルを起動して以下で再起動すればWifiがつながる。
cd mt7610u-linksys-ae6000-wifi-fixes
sudo make
sudo make install
sudo reboot
Nvidia Jetoson デモ
カメラ2つとGPUで動画認識をする用のシングルボードコンピューターなので、Nvidiaがデモをいくつか用意しています。
GPUとNVIDIAが提供するCUDA(GPUを使って並列処理を行うソフト)でどんな事ができるのかデモがあります。
こちらは↓輪郭を取得するデモのようです。このあたりはAI画像のStable Diffusionとかに応用されているようですね。
2023/5現在はAI画像ですが、もうすぐAI動画もできるようになるのかしら?
自分もRTX 3060買ってStable Diffusion勉強中です。Beヨンドでも近日中に紹介します。
MicroSDカードを抜いて起動
MicroSDカードを抜いて起動すると↓GUI(グラフィックユーザーインターフェース)無し、CUI起動でユーザー名nano・パスワードnanoでログインできます。
Jetoson Nano 2GBとNano C100 比較
自宅の環境をセンシングした母艦に使っているJetoson Nano 2GBがあるので筐体をちょっと比較してみましょう。
見た感じ↓はあまり変わりありませんが、USBポートの違いとJetoson Nano 2GBはUSB Type-Cポート電源、Nano C100はDCプラグの電源が違う。
GPIOカラフルけど番号書いてない
GPIOはNano C100がカラフルで良いのですが、ピン番号が書いてないのでちょっと使いづらいかも。
カメラポートが2ポートある!
Nano C100のほうがやはり高スペックでカメラが2つ装着できます。
Jetoson Nano 2GBは貧弱なのでカメラは1つしかつけられない。
ポートの違い
Nano C100のほうは電力を多く使うので?左側にDCプラグ(5V4A)でJetoson Nano 2GBのほうはUSB Type-Cになっています。
あとはNano C100がUSB3.0 4ポート、DisplayPortも追加されています。
Jetoson Nano 2GBのほうがスペック半分くらいで貧弱です。見た目はあまり変わりない。
Unix Bench 比較
Unix BenchでCPUのベンチマークをチェックしてみましょう。
手持ちのJetoson Nano 2GBと比べてみましたが、MicroUSB電源だと速度はそれほど変わり無いようですね。
- OKdo Nano C100(5W MicroUSB電源):並列コピー439.6・4並列コピー1441.8
- Jetoson Nano 2GB:並列コピー407.9・4並列コピー1101.3
今回はNano C100は5V4AのACアダプターがなかったので、MicroUSB電源のみでテストしました。
Nano C100のほうはACアダプター電源を導入すると3倍くらい高速になるようです。
Unix Bench インストール
sudo apt-get -y install git build-essential
git clone https://github.com/kdlucas/byte-unixbench
cd byte-unixbench/UnixBench
Nano C100
Nano C100でUnix Benchの結果全文
go@Nano-C100:~/byte-unixbench/UnixBench$ ./Run
make all
make[1]: Entering directory '/home/go/byte-unixbench/UnixBench'
make distr
make[2]: Entering directory '/home/go/byte-unixbench/UnixBench'
Checking distribution of files
./pgms exists
./src exists
./testdir exists
./tmp exists
./results exists
make[2]: Leaving directory '/home/go/byte-unixbench/UnixBench'
make programs
make[2]: Entering directory '/home/go/byte-unixbench/UnixBench'
make[2]: Nothing to be done for 'programs'.
make[2]: Leaving directory '/home/go/byte-unixbench/UnixBench'
make[1]: Leaving directory '/home/go/byte-unixbench/UnixBench'
sh: 1: 3dinfo: not found
# # # # # # # ##### ###### # # #### # #
# # ## # # # # # # # ## # # # # #
# # # # # # ## ##### ##### # # # # ######
# # # # # # ## # # # # # # # # #
# # # ## # # # # # # # ## # # # #
#### # # # # # ##### ###### # # #### # #
Version 5.1.3 Based on the Byte Magazine Unix Benchmark
Multi-CPU version Version 5 revisions by Ian Smith,
Sunnyvale, CA, USA
January 13, 2011 johantheghost at yahoo period com
------------------------------------------------------------------------------
Use directories for:
* File I/O tests (named fs***) = /home/go/byte-unixbench/UnixBench/tmp
* Results = /home/go/byte-unixbench/UnixBench/results
------------------------------------------------------------------------------
Wide character in print at ./Run line 1643.
Wide character in printf at ./Run line 1674.
Use of uninitialized value in printf at ./Run line 1470.
Use of uninitialized value in printf at ./Run line 1470.
Use of uninitialized value in printf at ./Run line 1470.
Use of uninitialized value in printf at ./Run line 1470.
Use of uninitialized value in printf at ./Run line 1722.
Use of uninitialized value in printf at ./Run line 1722.
Use of uninitialized value in printf at ./Run line 1722.
Use of uninitialized value in printf at ./Run line 1722.
1 x Dhrystone 2 using register variables 1 2 3 4 5 6 7 8 9 10
1 x Double-Precision Whetstone 1 2 3 4 5 6 7 8 9 10
1 x Execl Throughput 1 2 3
1 x File Copy 1024 bufsize 2000 maxblocks 1 2 3
1 x File Copy 256 bufsize 500 maxblocks 1 2 3
1 x File Copy 4096 bufsize 8000 maxblocks 1 2 3
1 x Pipe Throughput 1 2 3 4 5 6 7 8 9 10
1 x Pipe-based Context Switching 1 2 3 4 5 6 7 8 9 10
1 x Process Creation 1 2 3
1 x System Call Overhead 1 2 3 4 5 6 7 8 9 10
1 x Shell Scripts (1 concurrent) 1 2 3
1 x Shell Scripts (8 concurrent) 1 2 3
Wide character in printf at ./Run line 1574.
4 x Dhrystone 2 using register variables 1 2 3 4 5 6 7 8 9 10
4 x Double-Precision Whetstone 1 2 3 4 5 6 7 8 9 10
4 x Execl Throughput 1 2 3
4 x File Copy 1024 bufsize 2000 maxblocks 1 2 3
4 x File Copy 256 bufsize 500 maxblocks 1 2 3
4 x File Copy 4096 bufsize 8000 maxblocks 1 2 3
4 x Pipe Throughput 1 2 3 4 5 6 7 8 9 10
4 x Pipe-based Context Switching 1 2 3 4 5 6 7 8 9 10
4 x Process Creation 1 2 3
4 x System Call Overhead 1 2 3 4 5 6 7 8 9 10
4 x Shell Scripts (1 concurrent) 1 2 3
4 x Shell Scripts (8 concurrent) 1 2 3
Wide character in printf at ./Run line 1574.
========================================================================
BYTE UNIX Benchmarks (Version 5.1.3)
System: Nano-C100: GNU/Linux
OS: GNU/Linux -- 4.9.253-tegra -- #1 SMP PREEMPT Sat Feb 19 08:59:22 PST 2022
Machine: aarch64 (aarch64)
Language: en_US.utf8 (charmap="UTF-8", collate="UTF-8")
CPU 0: ARMv8 Processor rev 1 (v8l) (38.4 bogomips)
CPU 1: ARMv8 Processor rev 1 (v8l) (38.4 bogomips)
CPU 2: ARMv8 Processor rev 1 (v8l) (38.4 bogomips)
CPU 3: ARMv8 Processor rev 1 (v8l) (38.4 bogomips)
10:19:02 up 7 min, 2 users, load average: 0.48, 0.94, 0.62; runlevel 2023-05-19
------------------------------------------------------------------------
Benchmark Run: 土 5月 20 2023 10:19:02 - 10:47:23
4 CPUs in system; running 1 parallel copy of tests
Dhrystone 2 using register variables 13658915.9 lps (10.0 s, 7 samples)
Double-Precision Whetstone 1489.3 MWIPS (9.8 s, 7 samples)
Execl Throughput 1140.8 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 192210.1 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 53789.9 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 529645.5 KBps (30.0 s, 2 samples)
Pipe Throughput 350940.7 lps (10.0 s, 7 samples)
Pipe-based Context Switching 52512.3 lps (10.0 s, 7 samples)
Process Creation 3475.7 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 3604.9 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 1245.6 lpm (60.0 s, 2 samples)
System Call Overhead 357635.0 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 13658915.9 1170.4
Double-Precision Whetstone 55.0 1489.3 270.8
Execl Throughput 43.0 1140.8 265.3
File Copy 1024 bufsize 2000 maxblocks 3960.0 192210.1 485.4
File Copy 256 bufsize 500 maxblocks 1655.0 53789.9 325.0
File Copy 4096 bufsize 8000 maxblocks 5800.0 529645.5 913.2
Pipe Throughput 12440.0 350940.7 282.1
Pipe-based Context Switching 4000.0 52512.3 131.3
Process Creation 126.0 3475.7 275.8
Shell Scripts (1 concurrent) 42.4 3604.9 850.2
Shell Scripts (8 concurrent) 6.0 1245.6 2076.0
System Call Overhead 15000.0 357635.0 238.4
========
System Benchmarks Index Score 439.6
------------------------------------------------------------------------
Benchmark Run: 土 5月 20 2023 10:47:23 - 11:16:05
4 CPUs in system; running 4 parallel copies of tests
Dhrystone 2 using register variables 54406527.3 lps (10.0 s, 7 samples)
Double-Precision Whetstone 5946.9 MWIPS (9.9 s, 7 samples)
Execl Throughput 4216.3 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 721180.4 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 203977.1 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 1962263.4 KBps (30.0 s, 2 samples)
Pipe Throughput 1400729.3 lps (10.0 s, 7 samples)
Pipe-based Context Switching 159402.9 lps (10.0 s, 7 samples)
Process Creation 13461.4 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 9063.9 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 1320.4 lpm (60.0 s, 2 samples)
System Call Overhead 1429847.8 lps (10.0 s, 7 samples)
System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 54406527.3 4662.1
Double-Precision Whetstone 55.0 5946.9 1081.2
Execl Throughput 43.0 4216.3 980.5
File Copy 1024 bufsize 2000 maxblocks 3960.0 721180.4 1821.2
File Copy 256 bufsize 500 maxblocks 1655.0 203977.1 1232.5
File Copy 4096 bufsize 8000 maxblocks 5800.0 1962263.4 3383.2
Pipe Throughput 12440.0 1400729.3 1126.0
Pipe-based Context Switching 4000.0 159402.9 398.5
Process Creation 126.0 13461.4 1068.4
Shell Scripts (1 concurrent) 42.4 9063.9 2137.7
Shell Scripts (8 concurrent) 6.0 1320.4 2200.7
System Call Overhead 15000.0 1429847.8 953.2
========
System Benchmarks Index Score 1441.8
Nano C100にSamba ディスクマウント
以前作成したWindows11のファイルサーバーのHDDをNano C100にマウントしてみます。
マウントしたらバックアップイメージなどを保存しておけばMicroSDカードが壊れても安心で、他のLinux用のファイルもファイルサーバーに置くこともできて便利。
ということでBMAX B3 Plusに接続してあるハードディスク HDD3T↓をNano C100でマウントしてみます。
SMB 1.0/CIFS ファイル共有サポートの有効化
Windows11のファイルサーバー側でWindowsの機能からSMB1.0/CIFS ファイル共有サポートを有効にします。
コントロールパネル > プログラムと機能 >Windowsの機能の有効化または無効化を辿っていくと以下のウィンドウが表示される。
Windows同士だとSMBダイレクトだけチェックしてあったらファイルサーバーとして使えたのですが、Linuxからアクセスする場合はSMB1.0/CIFS ファイル共有サポートが必要みたい。
チェックしたら再起動します。
cifs-utilsインストール・マウントポイント作成
Windowsの共有フォルダにLinuxからアクセスするにはcifs-utilsが必要なのでインストールします。
sudo apt install cifs-utils
sudo mkdir /mnt/bmax
マウントするディレクトリも作っておく。↑例ではmntの中にbmaxのディレクトリを作った。
Windows共有フォルダにアクセス
以下のようにマウントしたらHDD3Tがマウントされました。
sudo mount -t cifs -o username=ユーザー名,password=パスワード //192.168.31.232/HDD3T /mnt/bmax
確認してみると↓ちゃんと(一番下の行)マウントされています。
df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mmcblk0p1 114G 49G 62G 44% /
none 950M 0 950M 0% /dev
tmpfs 990M 340K 990M 1% /dev/shm
tmpfs 990M 34M 957M 4% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 990M 0 990M 0% /sys/fs/cgroup
/dev/loop0 50M 50M 0 100% /snap/core18/2749
/dev/loop1 60M 60M 0 100% /snap/core20/1883
/dev/loop2 128K 128K 0 100% /snap/bare/5
/dev/loop3 50M 50M 0 100% /snap/core18/2724
/dev/loop4 7.2M 7.2M 0 100% /snap/gnome-clocks/452
/dev/loop5 60M 60M 0 100% /snap/core20/1856
/dev/loop7 25M 25M 0 100% /snap/barrier/687
/dev/loop8 7.3M 7.3M 0 100% /snap/gnome-clocks/456
/dev/loop6 68M 68M 0 100% /snap/core22/621
/dev/loop9 47M 47M 0 100% /snap/snapd/18940
/dev/loop10 47M 47M 0 100% /snap/snapd/19127
/dev/loop11 68M 68M 0 100% /snap/core22/637
tmpfs 198M 8.0K 198M 1% /run/user/1000
//192.168.31.232/HDD3T 2.8T 722G 2.1T 26% /mnt/bmax
アンマウント
sudo umount /mnt/bmax
自動接続 fstab
起動時にMountコマンドをそのつど打つのが面倒なので常時マウントしておくためにfstabに登録しておきます。
sudo vim /etc/fstab
以下を追加
//192.168.31.232/HDD3T /mnt/bmax cifs username=ユーザー名,password=パスワード,defaults 0 0
fastabに書き込んだ内容をすぐに反映させます。
sudo mount -a
正常にマウントできていればWindows11のハードディスクHDD3Tが/mnt/bmaxのディレクトリにマウントされています。
MicroSD まるごとバックアップ
MicroSDカードに入っているUbuntuをバックアップしていきます。
DDコマンドでMicroSDにまるごとコピー
まずはimgファイルにコピーせずにMicroSDカードにそのまま現在のシステムをコピーする方法で、コピーしたMicroSDカードはそのまま使うことができる。
Nano C100のUSBポートにUSBアダプターを介してMicroSDカードをさして、バックアップしていきます。
まずはUSBアダプターのMicroSDはどこにマウントされているか調べる。
sudo fdisk -l
デバイス 開始位置 最後から セクタ サイズ タイプ
/dev/mmcblk0p1 28672 243136511 243107840 115.9G Linux ファイルシステム
/dev/mmcblk0p2 2048 2303 256 128K Linux ファイルシステム
/dev/mmcblk0p3 4096 4991 896 448K Linux ファイルシステム
/dev/mmcblk0p4 6144 7295 1152 576K Linux ファイルシステム
/dev/mmcblk0p5 8192 8319 128 64K Linux ファイルシステム
/dev/mmcblk0p6 10240 10623 384 192K Linux ファイルシステム
/dev/mmcblk0p7 12288 13055 768 384K Linux ファイルシステム
/dev/mmcblk0p8 14336 14463 128 64K Linux ファイルシステム
/dev/mmcblk0p9 16384 17279 896 448K Linux ファイルシステム
/dev/mmcblk0p10 18432 19327 896 448K Linux ファイルシステム
/dev/mmcblk0p11 20480 22015 1536 768K Linux ファイルシステム
/dev/mmcblk0p12 22528 22655 128 64K Linux ファイルシステム
/dev/mmcblk0p13 24576 24959 384 192K Linux ファイルシステム
/dev/mmcblk0p14 26624 26879 256 128K Linux ファイルシステム
・・・省略
ディスク /dev/sda: 119.3 GiB, 128043712512 バイト, 250085376 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0x9bf1bc2c
・・・省略
デバイス 起動 開始位置 最後から セクタ サイズ Id タイプ
/dev/sda1 32768 250085375 250052608 119.2G 83 Linux
USBアダプターにさしたMicroSDは「/dev/sda1」というのが分かったので、以下のようにddコマンドでコピーします。
sudo dd bs=4M if=/dev/mmcblk0p1 of=/dev/sda1 conv=fsync status=progress
124457582592 bytes (124 GB, 116 GiB) copied, 4377 s, 28.4 MB/s
29676+1 レコード入力
29676+1 レコード出力
124471214080 bytes (124 GB, 116 GiB) copied, 4382.08 s, 28.4 MB/s
まるごとコピーはうまくいきました。
Sambaフォルダに直接コピーする(未解決)
Windows共有フォルダをマウントしたWindows共有フォルダに直接バックアップimgファイルを保存を試みます。
まずは共有フォルダにバックアップ用のフォルダ作成。
sudo mkdir /mnt/bmax/buckup
ddでバックアップ開始。
sudo dd bs=4M if=/dev/mmcblk0p1 of=/mnt/bmax/buckup/nano2023-5.img conv=fsync status=progress
sudo dd if=/dev/mmcblk0p1 of=/mnt/bmax/buckup/nano2023-5.img conv=fsync status=progress
転送量が多いせいでセキュリティ的にダメなのか?10~16GBくらいコピーしたあたりでなぜか途中でNano C100のWifi(USBアダプターのWifi)が切断される。(普段はWifiが切断されることはありません。)
apt upgradeするとおかしくなる
Nano C100のUbuntuはapt upgaradeを実行したらエラーがたくさん出るようになって使えなくなります・・・
ただ、apt updateは正常に実行できました。
sudo apt upgarade
「n」を押していくとエラーになり、Wifiが使えなくなる・・・
最終的に↓以下のようになりUpgradeはストップしました。
GUI画面↓でも以下のようなエラーが表示されました・・・
Nvidiaの各ツールは以下のようなバージョンになっています。
$ sudo apt show nvidia-jetpack
[sudo] password for go:
Package: nvidia-jetpack
Version: 4.6.3-b17
Priority: standard
Section: metapackages
Maintainer: NVIDIA Corporation
Installed-Size: 199 kB
Depends: nvidia-l4t-jetson-multimedia-api (>> 32.7-0), nvidia-l4t-jetson-multimedia-api (<< 32.8-0), nvidia-cuda (= 4.6.3-b17), nvidia-tensorrt (= 4.6.3-b17), nvidia-nsight-sys (= 4.6.3-b17), nvidia-cudnn8 (= 4.6.3-b17), nvidia-opencv (= 4.6.3-b17), nvidia-container (= 4.6.3-b17), nvidia-vpi (= 4.6.3-b17)
Homepage: http://developer.nvidia.com/jetson
Download-Size: 29.4 kB
APT-Sources: https://repo.download.nvidia.com/jetson/t210 r32.7/main arm64 Packages
Description: NVIDIA Jetpack Meta Package
N: 追加レコードが 2 件あります。表示するには '-a' スイッチを付けてください。
Nano C100をまともに使えなくなるのでUpgradeはしないほうがよさそう。
Nano C100 まとめ
Nano C100はJetson Nano B01互換機で内蔵eMMCがあるのでMicroSDなしで最小限のLinuxシステムを入れて使うには便利。
4GBのJetson Nano B01と同等の性能で安い+eMMCがあるので、Jetson Nano B01を導入するならばNano C100を選ぶという選択枠もある。
カメラを2つつなげて動画の顔認識システムや学習に使いたい方には低予算でできるのでピッタリではないでしょうか?
ただ、apt UpgradeするとNvidiaのツールがエラーになって、WifiもつながらなくなるのでUpgradeできないところが辛いところ。
OKdo Nano C100(IoT本舗 商品ページ:価格19,800円)
※この商品はサンプル提供していただいてレビューしています。Nano C100のMicroSDまるごとバックアップ 失敗例(おまけ)
Linuxが入ったMicroSDカードを簡単にWindowsでバックアップできないか試したメモです。
結果的にやはり昔からあるLinuxのddコマンドでイメージを作ってバックアップとして保存するのが一番のようです。
MicroSDカードはwsl –mountでLinuxファイルシステムをマウントできない
管理者としてPowerShellを開いてまずはUSBカードリーダーにささっているMicroSDのDeviceIDをチェックする。(2通りのやり方があります。)
>GET-CimInstance -query "SELECT * from Win32_DiskDrive"
DeviceID Caption Partitions Size Model
-------- ------- ---------- ---- -----
\\.\PHYSICALDRIVE0 CSSD-M2B2TPG3NF2 3 2000396321280 CSSD-M2B2TPG3NF2
\\.\PHYSICALDRIVE1 Kingston UHSII uSD Reader USB Device 14 124481387520 Kingston UHSII uSD Reader USB Device
もしくは↓
> wmic diskdrive list brief
Caption DeviceID Model Partitions Size
CSSD-M2B2TPG3NF2 \\.\PHYSICALDRIVE0 CSSD-M2B2TPG3NF2 3 2000396321280
Kingston UHSII uSD Reader USB Device \\.\PHYSICALDRIVE1 Kingston UHSII uSD Reader USB Device 14 124481387520
IDがわかったのでマウントしてみると以下のようなエラーになってマウントされない・・・
> wsl --mount \\.\PHYSICALDRIVE1
指定されたドライブが見つかりません。
Error code: Wsl/Service/AttachDisk/0x8007000f
WSLを使う、こちらもダメ
PowerShellの「管理者として実行」で以下のコマンドを実行します。
> usbipd wsl list
BUSID VID:PID DEVICE STATE
1-9 8087:0029 インテル(R) ワイヤレス Bluetooth(R) Not attached
1-10 0b05:1939 AURA LED Controller, USB 入力デバイス Not attached
1-13 2e8a:0005 USB シリアル デバイス (COM10) Not attached
1-14 1a86:5722 USB シリアル デバイス (COM4) Not attached
2-1 328f:0021 USB 入力デバイス Not attached
3-5 11b0:3307 USB 大容量記憶装置 Not attached
7-3 29bd:4101 USB 入力デバイス Not attached
7-4 1a86:7523 USB-SERIAL CH340 (COM16) Not attached
8-1 0853:0100 USB 入力デバイス Not attached
8-2 046d:c52b Logitech USB Input Device, USB 入力デバイス Not attached
8-3 0853:0117 USB 入力デバイス
USBメモリーカードリーダーは「3-5」のようです。
> usbipd wsl attach --busid 3-5
usbipd: info: Using default WSL distribution 'Ubuntu'; specify the '--distribution' option to select a different one.
usbipd: error: The selected WSL distribution cannot be reached via the WSL virtual switch; try restarting the WSL distribution.
だめでした・・・
Linux File System for Windows by Paragon SoftwareでLinuxファイルシステム マウント
代わりに以下のソフトを使って自動マウントでWindowsのエクスプローラーにマウントさせます。
このソフト、有料かParagon製品を買った方用で10日間だけ無料で使える。
インストールしたらJetson Nano 2GBのLinuxイメージがマウントされた!
Linux File System for Windows by Paragon Softwareという長ったらしいソフトを起動するとちょっとした設定もできる。↓
ただ、Linuxファイルシステムからはマウントされているのが見えないので使えない・・・
diskinternals linux reader
こちらはアプリのウィンドウではMicroSDカードをマウントできているものの、エクスプローラーではマウントされていないので、このアプリ内でしか操作不可。
Linuxのコマンドが使えないので今回は使えない。
Win32 Disk Imager
Linuxファイルシステムをコピーしようとしたら以下のエラーが出てダメだった。
WindowsのLinuxでGPartedでバックアップ(失敗)
WindowsのLinuxシェル(Linux用Windowsサブシステム)を起動しましょう。
sudo apt-get update
sudo apt-get install gparted
起動してみる
sudo gparted
GUIで以下のようなウィンドウが開きます。
ただ・・・エクスプローラー(Paragon Softwareでマウントした)でマウントできた状態なのにGPartedでは見えないようで使えませんでした。
DD for Windows
DD for WindowsはR2が最新ですが、エラーで使えなかった。
こんなエラー↓なってコピー不可。
DDWin_Ver0998のほうが良いようですが・・・ドライブでNano C100が入ったMicroSDが認識されませんでした。
コメント