西川和久の不定期コラム

手軽にシングルボードコンピュータ環境を試せる「ドスパラ DG-Tinker3288」

Raspberry Pi 3をそのままパワーアップしたシングルボードコンピュータ

 昨今、シングルボードコンピュータ界隈が賑やかだ。ちょうど、この原稿執筆中も超小型で安価な「Nano Pi NEO 2」(関連記事:小型ボードコンピュータ、NanoPiを使った自作NASで遊ぶ)や、Pentium N4200/eMMC128GBを搭載した「UPS-APLP4-08128」(関連記事:Pentium N4200搭載の小型ボード「UP2」にeMMC128GB版が登場)が登場し、「お!」っと思ったばかり。

 そしてシングルボードコンピュータの代表格と言えば「Raspberry Pi」。専用ケースはもちろん、アドオンボード、そして対応するソフトウェアが豊富。さまざまな使い方ができる。

 ただ基本的に教育用なので、コストとの兼ね合いもあり、仕様が少し控えめ。あと一歩物足らなさを感じているユーザーも多いのではないだろうか。

 そのなかで登場したのが、ASUSの「Tinker Board」だ。SoC、メモリ、ネットワーク、microSDカードへのアクセス、サウンドなどを強化した上で、サイズはもちろん、ネジ穴、そして各種コネクタの配置も完全に「Raspberry Pi 3 Model B」互換。なかなか魅力的なシングルボードコンピュータに仕上がっている。

 単品でも購入可能だが、今回は、本体、ケース、USB式ACアダプタ、OSインストール済みmicroSDカードなどがセットになったドスパラ「DG-Tinker3288」で試用した。おもな仕様は以下のとおり。

【表】ドスパラ「DG-Tinker3288」の仕様
SoCRockchip Quad-Core RK3288 processor(GPU ARM Mali-T764)
メモリ2GBデュアルチャンネル(DDR3)
インターフェイスGigabit Ethernet、IEEE 802.11b/g/n、Bluetooth 4.0+EDR、USB 2.0×4、microSDカードスロット、HDMI、DSI、CSI、音声入出力(再生最大24bit/192KHz、録音最大24bit/96KHz)、GPIO
OSTinkerOS(Debianベース)、Android 6.0など
サイズRaspberry Pi 3 Model B互換
電源Micro USB 5V/2-2.5A
付属品ケース、USB ACアダプタ、USBケーブル、32GB microSD(OSインストール済)
税別価格19,800円(4月10日現在12,800円)

 SoCはRockchip Quad-Core RK3288。クロックは最大1.8GHz。内包するGPUはARM Mali-T764(600MHz、H.264/H.265/UHD 30fps)。メモリはDDR3のデュアルチャンネル作動で2GB。ここだけ見ても「Raspberry Pi 3 Model B」(1.2GHz、300MHz、DDR2 1GB)と比較して結構なスペックアップだ。

 インターフェイスは、Gigabit Ethernet、IEEE 802.11b/g/n、Bluetooth 4.0+EDR、USB 2.0×4、microSDカードスロット、HDMI、DSI(ディスプレイインターフェイス)、CSI(カメラインターフェイス)、音声入出力(再生最大24bit/192KHz、録音最大24bit/96KHz)、GPIO。有線LANがGigabit Ethernet、そして音声入出力がハイレゾ対応となるのが一番の違いか。またSD3.0規格対応なのでmicroSDカードへのアクセスが速くなっている。

 サイズは大きさ、各コネクタの配置、ネジ穴すべて「Raspberry Pi 3」互換。ケースはもちろんハードウェア的にはGPIOを利用したアドオンボードも接続可能だ。ただしソフトウェア互換ではないため、Tinker Boardに対応している必要がある。電源はMicro USB 5V/2~2.5A。この点はRaspberry Pi 3 Model Bと同じだ。

 以上からもわかるようにRaspberry Pi 3 Model Bでの弱点を改善し、パワーアップしながらも、ネジ穴も含め、物理的に完全に互換になっているシングルボードコンピュータ、それがTinker Boardと言う位置づけとなる。

 価格は単品から各社から出ているパッケージなど含めると幅がそれなりにあり、今回使用したドスパラ「DG-Tinker3288」の場合は、本体、ケース、32GB microSD(OSインストール済)、マニュアル2冊、USB-ACアダプタ、USBケーブル込みで税別19,800円(4月10日現在、12,800円で販売中)となっている。OSは、注文時、DebianかAndroidかの選択ができる。

 いろいろ手持ちがあるなら「Tinker Board」単独で入手、何もなくサクッと起動したいのであれば本パッケージ……と言うところだろう。

 なおTinker Board自体は、1月9日に16GBのeMMCをオンボードで搭載した「Tinker Board S」が発表されている(関連記事:ASUS、16GBのeMMCをオンボードで搭載した「Tinker Board S」)。

前面。左上からEthernet、USB 2.0×4、音声入出力、DSIコネクタ、HDMI、Micro USB、CSIコネクタ。下側にGPIO
背面。左側にmicroSDカードスロット
各種ポートとコネクタ1/2。ヒートシンクがGPIOコネクタと高さがあまり変わらないのがわかる
各種ポートとコネクタ2/2。GPIOコネクタが機能別に色分けされカラフル
付属のケースとACアダプタなど。付属のACアダプタは出力5V/2.5A。ケースはプラスチック製
ケースに組み込んだ状態(出荷時)。この状態で送られてくるので、microSDカードとACアダプタを接続すれば即起動する
Raspberry Pi3 Model Bとの比較。ネジ穴や各コネクタの位置が完全に一致している。流石にTinker Boardの方がパーツの配置密度が高い

 筐体はRaspberry Pi 3用でありがちなプラスチック製。蓋が閉まるタイプなので、アドオンボードを載せることができない。各コネクタの位置関係もまったく同じだ。この状態だと、中がRaspberry Pi 3なのかTinker Boardなのか見分けがつかない。

 Raspberry Pi 3とTinker Boardの基板を比較すると、さすがに後者のほうがパーツの密集度が高く、なんとなくカッコいい(笑)。

 付属のUSB式ACアダプタの出力は5V/2.5A。仕様上の最大を満たしているので、安心してシステムを運用できる。microSDカードにはOSがインストール済み。電源を接続すれば、即起動し手間いらずだ。

 実際試用した詳細は後述するが、発熱は、Raspberry Pi 3はヒートシンクなしでも気にならないレベルだが、Tinker Boardはそれなりに熱を持つ。蓋を閉めて長時間運用すると、熱がこもりそうだ。

Android編

 本製品は出荷時、microSDカードにOSがインストール済みだが、ユーザーレベルでもOSをインストールできる。

 方法は簡単だ。ASUSの同製品のサイトへアクセスし、Downloadのタブで「TinkerOS-Android」か「TinkerOS-Debian」をダウンロードする。それらはZIPファイルになっているので、解凍し、OSイメージの*.imgを(Windowsの場合)「Win32 Disk Imager」などを使い書き込めば、準備完了となる。

Tinker Board / Download
Win32 Disk ImagerでmicroSDへOSイメージを書き込み

 まずはAndroidを試してみた。初期起動時、少し時間がかかるものの、その後はさほど気にならないレベルで起動する。初期起動時のホーム画面は1面。Contacts、Email、Browser、Musicのアイコンのみの配置とシンプル。右側に通知エリアを表示する。壁紙/ウィジェット設定も通常どおり。Androidのバージョンは6.0.1。メモリは2.GB中約1.5GBがフリーだった。

 初期起動時は英語になっているが、日本語に設定も可能だ(ただしGoogle Play非搭載なので「Google 日本語入力」をインストールできない)。Google Octane 2.0のスコアは5,004。Atomと同程度だろうか。

ロック画面
ホーム画面
通知エリア
壁紙/ウィジェット設定
壁紙
ウィジェット(一部)
搭載アプリ
システム情報
メモリ
言語
Google Octane 2.0/5,004

 プリインストールのアプリは、「ApkInstaller」、「Browser」、「Calculator」、「Calendar」、「Clock」、「Contacts」、「Downloads」、「Email」、「Explorer」、「Music」、「Power」、「Search」、「Settings」、「Sound Recorder」、「Video(4K)」。

 サイトによると“30fpsのHDおよびUHDビデオ再生は、付属のメディアプレーヤーでのみ利用可能です”とあり、この「Video(4K)」が該当するようだ。

 動きも速く、いろいろ使えそうなのだが、肝心の「Google Play」がなく、使用するアプリのapkを別途用意してインストールするのは、あまり一般的ではないため、今回の試用はここまでとした。

 じつは裏技でGoogle Playをインストールする方法はあるものの、adbを使う必要があり、またGoogle Play v7.4では端末の認証状態を確認できる項目が増え、「認証済み」(=Googleのお墨付き)の端末ではない場合、今後動かなくなる可能性もある。方法は検索すれば載っているので、興味のある人は調べてほしい。

Linux編

 Linuxは、DebianベースのTinkerOSが用意されている。先のURLからzipをダウンロードし解凍、imgをAndroid同様、Win32 Disk Imagerを使いmicroSDカードに書き込み、Tinker Boardへセット、電源を入れれば起動する。初期設定のIDとパスワードはいずれも「linaro」だ。

 デスクトップの操作は、マウスやキーボードをつなげればそのままできるが、ネットワーク越しにsshで接続する場合は、/sbin/ifconfigで確認したIPアドレスへクライアントから接続する。起動直後のメモリはTOPコマンドで見ると「122,844 used/1,776,236 free」と、ほとんど空きの状態だった。さすがにメモリ2GBとだと余裕がある。

起動直後のデスクトップ(gnome)
WebブラウザはChromium。サイトによると“ASUSチームはブラウザのハードウェアアクセラレーションを有効にすることで、WebレンダリングとYouTubeのHD動画を始めとしたビデオ再生を改善しています”とのこと

 しばらくの間、デスクトップ環境をさわっていたが、なかなか速く結構遊べる感じだ。これならデスクトップ的に使っても、(個人レベルの)サーバー的に使っても、とくに不満は出ないだろう。

 参考までにUnixBench 5.1.3の結果を掲載する。UnixBench 5.1.3は、以前Raspberry Pi 3 Model Bの記事を掲載したときとはURLが変わっていた。Raspberry Pi 3 Model BとSystem Benchmarks Index Scoreを比較するとざっくり2倍の性能となるだろうか。

========================================================================

   BYTE UNIX Benchmarks (Version 5.1.3)

   System: linaro-alip: GNU/Linux
   OS: GNU/Linux -- 4.4.16-00006-g4431f98-dirty -- #1 SMP Mon Apr 17 17:27:25 CST 2017
   Machine: armv7l (unknown)
   Language: en_US.utf8 (charmap="ANSI_X3.4-1968", collate="ANSI_X3.4-1968")
   CPU 0: ARMv7 Processor rev 1 (v7l) (0.0 bogomips)
   CPU 1: ARMv7 Processor rev 1 (v7l) (0.0 bogomips)
   CPU 2: ARMv7 Processor rev 1 (v7l) (0.0 bogomips)
   CPU 3: ARMv7 Processor rev 1 (v7l) (0.0 bogomips)

   03:45:27 up 8 min,  5 users,  load average: 0.14, 0.10, 0.07; runlevel

------------------------------------------------------------------------
Benchmark Run: Mon Apr 09 2018 03:45:27 - 04:13:28
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables       10677416.5 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     1683.6 MWIPS (10.0 s, 7 samples)
Execl Throughput                                818.8 lps   (29.8 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        197809.1 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           65183.8 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        467150.8 KBps  (30.0 s, 2 samples)
Pipe Throughput                              446491.3 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                  24362.3 lps   (10.0 s, 7 samples)
Process Creation                               3738.2 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   3318.8 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                   1122.8 lpm   (60.1 s, 2 samples)
System Call Overhead                         762226.4 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   10677416.5    914.9
Double-Precision Whetstone                       55.0       1683.6    306.1
Execl Throughput                                 43.0        818.8    190.4
File Copy 1024 bufsize 2000 maxblocks          3960.0     197809.1    499.5
File Copy 256 bufsize 500 maxblocks            1655.0      65183.8    393.9
File Copy 4096 bufsize 8000 maxblocks          5800.0     467150.8    805.4
Pipe Throughput                               12440.0     446491.3    358.9
Pipe-based Context Switching                   4000.0      24362.3     60.9
Process Creation                                126.0       3738.2    296.7
Shell Scripts (1 concurrent)                     42.4       3318.8    782.7
Shell Scripts (8 concurrent)                      6.0       1122.8   1871.3
System Call Overhead                          15000.0     762226.4    508.2
                                                                   ========
System Benchmarks Index Score                                         430.7

------------------------------------------------------------------------
Benchmark Run: Mon Apr 09 2018 04:13:28 - 04:41:43
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables       32679782.0 lps   (10.0 s, 7 samples)
Double-Precision Whetstone                     5760.6 MWIPS (10.5 s, 7 samples)
Execl Throughput                               4338.5 lps   (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks        292554.0 KBps  (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks           82258.4 KBps  (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks        763475.9 KBps  (30.0 s, 2 samples)
Pipe Throughput                             1344340.5 lps   (10.0 s, 7 samples)
Pipe-based Context Switching                 302383.2 lps   (10.0 s, 7 samples)
Process Creation                              10121.0 lps   (30.0 s, 2 samples)
Shell Scripts (1 concurrent)                   8893.5 lpm   (60.0 s, 2 samples)
Shell Scripts (8 concurrent)                   1127.4 lpm   (60.1 s, 2 samples)
System Call Overhead                        2641195.1 lps   (10.0 s, 7 samples)

System Benchmarks Index Values               BASELINE       RESULT    INDEX
Dhrystone 2 using register variables         116700.0   32679782.0   2800.3
Double-Precision Whetstone                       55.0       5760.6   1047.4
Execl Throughput                                 43.0       4338.5   1009.0
File Copy 1024 bufsize 2000 maxblocks          3960.0     292554.0    738.8
File Copy 256 bufsize 500 maxblocks            1655.0      82258.4    497.0
File Copy 4096 bufsize 8000 maxblocks          5800.0     763475.9   1316.3
Pipe Throughput                               12440.0    1344340.5   1080.7
Pipe-based Context Switching                   4000.0     302383.2    756.0
Process Creation                                126.0      10121.0    803.3
Shell Scripts (1 concurrent)                     42.4       8893.5   2097.5
Shell Scripts (8 concurrent)                      6.0       1127.4   1879.0
System Call Overhead                          15000.0    2641195.1   1760.8
                                                                   ========
System Benchmarks Index Score                                        1169.0

 さて、このままデスクトップで遊んだり、いつものようにLAMPを設定し、WordPressを動かすこともできるのだが、本機の特徴であるGPIOを試すことにした。

 Tinker Boardは、Raspberry Pi3のGPIOとハードウェア的に互換。そこで作動確認用として、以前、トランジスタ技術2016年8月号に載っていたApple Piを引っ張り出した。このボードにはいろいろなインターフェイスが乗っているものの、GPIO.BOARDの29と31にLEDがあるので、とりあえずのLチカでテストしてみる。

 ただしTinker Boardの場合は、GPIO.BOARDの替わりにGPIO.ASUSを使い、加えてピン番号が異るため、29と31は165と168になる(仕様の最後にある表を参照)。

 PythonのGPIO APIを使う場合は事前に環境を整える。

$ sudo apt update
$ sudo apt install python-dev python3-dev

※適当なディレクトリへ移動して
$ wget http://dlcdnet.asus.com/pub/ASUS/mb/Linux/Tinker_Board_2GB/GPIO_API_for_Python.zip
$ unzip GPIO_API_for_Python.zip
$ sudo python setup.py install
$ sudo python3 setup.py install

 テスト用のコードは以下のようになる。165pinをOUTモードにセット、HIGHを0.5秒LOWを0.5秒のループ……といった感じだ。これでLEDが0.5秒毎にチカチカする。

$ more led.py

import ASUS.GPIO as GPIO
import time

GPIO.setmode(GPIO.ASUS)
GPIO.setup(165, GPIO.OUT)

while True:
 GPIO.output(165, GPIO.HIGH)
 time.sleep(0.5)
 GPIO.output(165, GPIO.LOW)
 time.sleep(0.5)

$ sudo python led.py
Apple Piを載せた状態。ただし完全にコネクタへ接続すると、ヒートシンクに当たるため、裏の該当箇所へガムテープを貼った上で少しコネクタを浮かせている
LEDを0.5秒ごとにオン/オフ

 気になるのは、Tinker Board側のヒートシンク。高さがあり、ご覧のようにアドオンボードを完全に乗せることができない。本製品の場合、もともとケースがあり、どの道アドオンボードを載せた状態では蓋が閉まらないため対応外となるが、できればもう少し丈の低いヒートシンクにしてほしかったところか。

 次に試したのはVolumio。Raspberry Piをミュージックサーバー的に使うのに有名なシステムだが、Tinker Board版も存在する。さらに内蔵サウンドは再生24bit/192KHzまでのハイレゾに対応するため、高性能DAC搭載のアドオンボードを使わず、本体音声出力のみの使用ならRaspberry Pi 3よりアドバンテージがある。ここからOSイメージをダウンロードし、後はこれまで同様の手順で起動できる(初期起動時のID/パスワードいずれもvolumio)。

Tinker Board版Volumio
対応しているアドオンボード

 対応しているアドオンボードが少ないのが本家との違いとなるものの、有線LANがGigabit Ethernetなので、ネットワーク経由のmicroSDへのアクセスや、(2.0だが)USBへストレージを接続して、大容量の音楽用NASとしてもストレスなく使えそうだ。

 音声出力にイヤフォン(SONY MDR-EX800ST)を接続し聴いたところ、それなりにパワーもあり、全域において素直な感じだ。まずこのままアンプへ接続し使ってみて、不満点が出てくれば、USB DACやアドオンボードを追加すればいいだろう。


 以上のようにドスパラ「DG-Tinker3288」は、ASUSのTinker Boardをケースに収め、OSインストール済のmicroSDカードと、5V/2.5AのUSB式ACアダプタが付属、即起動できる手間いらずの製品だ。これならRaspberry Piを使ったことがなくても簡単にシステムを楽しむことができるだろう。

 残念なのはAndroidがそのままではGoogle Play未対応なこと。作動が速いだけにもったいない部分だ。

 SoC、メモリ、ネットワーク、microSDへのアクセス、サウンドなど、Raspberry Pi 3が弱かった部分が強化されているこのTinker Board。Raspberry Piの性能面に不満を感じているユーザーにはおすすめしたい製品である。