Khadas VIM 1S
[PR] Khadas から発売されている VIM1Sの紹介です。高効率4コアCPUや、16GB eMMCなどの価格性能比がなかなか魅力的な製品になっています。
ざっくりまとめると
ハードウェア
本体にはスイッチが3個ついており、電源ONやリセット、そして単体でのOS書き込みを行うOOWOW起動を選ぶことができます。
外部インタフェースには電源供給用のUSB-C及び、利用可能なUSBポートが2個、40ピンGPIO、赤外線リモコンに対応したセンサーなど多岐に渡ります。
対応したセンサーやカメラ等はKhadas Shopにて販売されていますが、かなり良心的な価格に設定されています。
また、高負荷・安定性が求められる用途で利用したい冷却用のPWM制御ポートもついています。
電源
VIM 1Sの電源は USB-C もしくは背面にある電源入力ピンから行うことができます。 この記事での確認には5v 2A電源を利用していますが特に問題なく動作しています。
薄さ
Khadasは何故か薄さに対するこだわりが強い事が多く、このVIM 1SもLANポートが基板に埋め込まれるように設置されています。
何故そこまで薄さにこだわるのか・・
価格
公式サイトでの販売価格は$64.90(およそ8,800円) となっており、現在ほとんどのSBCが入手困難な状況を考えるとかなり頑張っている価格かなと思います。
またAmazonでも発売されています。SBCは品切ればかりの印象なので、選択肢が一つでも多いのは非常に嬉しいですね。
ソフトウェア
VIM 1Sでは本体に搭載されている OOWOW と呼ばれる管理ツールを起動時に本体横のボタン操作で起動することができます。
このOOWOWではeMMCストレージへのOS書き込みや、レスキュー用のシェル起動などの便利機能が用意されており、VIM 1S単体でのセットアップが可能となっています。
2022/12/11時点では以下のOSを選択することができます。
- Android 11
- Ubuntu 22.04(Kernel 5.4) デスクトップ環境
- Ubuntu 22.04(Kernel 5.4) サーバー用
起動するとシンプルなメニュー画面が表示されるので、WiFiもしくはLANケーブルを接続して内蔵のeMMCへOSのセットアップが可能です。PCで書き込みする必要がないので便利です。
Ubuntu
インストール完了後は普通のLinuxマシンとして利用することが可能です。メモリが2GBと限られているためデスクトップ用途として使うにはあまり適していない印象ですが、ブラウザやオフィス系のソフトウェアももちろん利用することが出来ます。
ユーザー名、パスワード共に khadas です。SSHも自動で有効となっているため、セットアップ完了後はパスワードを変更することを強く推奨します。
GPIO
基板上に載っているMCUのピンもあるため若干クセが強いですが、GPIOはもちろん利用可能です。ピン配列は以下の通りとなっています。
ちなみにGPIOはラズベリーパイと互換性は無い(一部OKなものもあります)ので、HAT等は基本的にそのまま利用することはできませんが、 I2C, I2S, ADC, UART, PWM あたりが一通り用意されていますので、これで足りないというケースのほうが少ないように思います。
ちなみに 5v/3.3v/1.8vと3電圧用意されているのがなかなか良いです。特に最近は低電圧なものも増えてきておりわざわざ1.8vか、、と用意する必要が無いので助かります。
Choromium をインストール
現在最も利用されているブラウザChromeとほぼ同じブラウザであるChromiumを利用する事ができます。デフォルトではインストールされていないので以下のコマンドをターミナルで実行するとインストール出来ます。
sudo apt install -y chromium-browser
インストール完了後は Internet メニュー以下に追加されています。
動画を再生してみると1080pでフレームドロップが発生し、視聴に耐えるか耐えないかギリギリといった感じでした。スペック的には余裕がありそうなのであとはソフトウェアの最適化かなという感がします。これは若干残念です。
ちなみにFireFoxの方が若干良い印象でした。
ラズベリーパイ4と比較
この製品は完全にRaspberry Pi 4 Model Bと競合する製品になるので比較していきます。個人的にはハードウェア性能はVIM 1Sが上回っており価格も同等なのでかなりおすすめではあるものの、資料やドキュメントはやはりRaspberry Pi の方が多く、全くLinuxを使ったことが無いユーザーには若干ハードルが高いように感じます。
誰におすすめか
しかし逆にある程度LinuxやRaspberry Piを使ったことがあるというユーザーには問題なく利用できるものになるのでおすすめです。
内蔵ストレージ
また、VIM 1Sは内蔵ストレージとして16GB eMMCが搭載されているためMicroSDカードを用意する必要がありません。地味に便利です。特に振動があるような環境ではカードとの接触不良などを気にする必要もあったりと、地味に助かります。
Raspberry Pi 4 Model B | Khadas Vim 1S | |
---|---|---|
CPU | 4 core Cortex-A72@1.5GHz | 4 core A35@2.0GHz |
GPU | Broadcom VideoCore VI | Mali-G31 MP2 850Mhz |
メモリ | 2~8GB LPDDR4-3200 | 2GB LPDDR4 |
内蔵ストレージ | 無し | 16GB eMMC |
電源 | USB-C 5V 3A | USB-C 5V(2A?) |
その他 | カメラ | カメラ、赤外線 |
OS | Raspberry Pi OS Ubuntu Manjaro ARM Linux その他多数 |
Android 11 Ubuntu 22.04 |
価格 | $45.00(2GB) | $64.90 |
Raspberry Pi でも Compute Module という組み込み向けのボードではeMMCが搭載されているものがあり、2GB RAM/16GB eMMCモデルが$50で販売されていますが、インタフェース等は省略されており単純な比較は出来ません。
おまけ
コマンドの実行結果を載せておきます。
uname -a
khadas@Khadas:~$ uname -a
Linux Khadas 5.4.180 #1.2 SMP PREEMPT Tue Oct 18 17:05:39 CST 2022 aarch64 aarch64 aarch64 GNU/Linux
sysbench
khadas@Khadas:~$ sysbench --test=cpu run
WARNING: the --test option is deprecated. You can pass a script name or path on the command line without any options.
sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)
Running the test with following options:
Number of threads: 1
Initializing random number generator from current time
Prime numbers limit: 10000
Initializing worker threads...
Threads started!
CPU speed:
events per second: 898.20
General statistics:
total time: 10.0010s
total number of events: 8987
Latency (ms):
min: 1.11
avg: 1.11
max: 1.33
95th percentile: 1.12
sum: 9994.90
Threads fairness:
events (avg/stddev): 8987.0000/0.00
execution time (avg/stddev): 9.9949/0.00
--cpu-max-prime=20000
khadas@Khadas:~$ sysbench --num-threads=4 --test=cpu --cpu-max-prime=20000 --validate run
WARNING: the --test option is deprecated. You can pass a script name or path on the command line without any options.
WARNING: --num-threads is deprecated, use --threads instead
sysbench 1.0.20 (using system LuaJIT 2.1.0-beta3)
Running the test with following options:
Number of threads: 4
Validation checks: on.
Initializing random number generator from current time
Prime numbers limit: 20000
Initializing worker threads...
Threads started!
CPU speed:
events per second: 1122.05
General statistics:
total time: 10.0044s
total number of events: 11230
Latency (ms):
min: 2.80
avg: 3.56
max: 39.90
95th percentile: 14.73
sum: 39987.48
Threads fairness:
events (avg/stddev): 2807.5000/105.68
execution time (avg/stddev): 9.9969/0.01
lscpu
khadas@Khadas:~$ lscpu
Architecture: aarch64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 4
On-line CPU(s) list: 0-3
Vendor ID: ARM
Model name: Cortex-A35
Model: 0
Thread(s) per core: 1
Core(s) per cluster: 4
Socket(s): -
Cluster(s): 1
Stepping: r1p0
CPU max MHz: 2004.0000
CPU min MHz: 100.0000
BogoMIPS: 48.00
Flags: fp asimd evtstrm aes pmull sha1 sha2 crc32 cpuid
Vulnerabilities:
Itlb multihit: Not affected
L1tf: Not affected
Mds: Not affected
Meltdown: Not affected
Spec store bypass: Not affected
Spectre v1: Mitigation; __user pointer sanitization
Spectre v2: Not affected
Srbds: Not affected
Tsx async abort: Not affected
df -h
これは、LibreOffice 等入っているのでもっと空き容量を増やす事ができます。
khadas@Khadas:~$ df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 199M 15M 185M 8% /run
/dev/mmcblk0p2 14G 4.2G 9.6G 31% /
tmpfs 995M 51M 945M 6% /dev/shm
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 995M 3.0M 992M 1% /tmp
/dev/mmcblk0p1 217M 40M 168M 20% /boot
tmpfs 199M 128K 199M 1% /run/user/1000
この記事は 2022/12/11 時点の最新ソフトウェアと Khadas VIM 1S(基板上にV11と記載) で動作確認を行いました。この記事公開後のリビジョンやソフトウェアバージョンでは結果が異なる場合があります。