AmazonでそろそろRaspberry Pi 4でも買おうかなと思ってしらべていたところ、ASUSがRaspberry Piと同じくらいのサイズのARMボードを出していたので気になって公式サイトを見ていました。
ここら辺がポイントでしょうか。microSD不要なの、良いですね。
- オンボード16GB eMMCストレージ
- 4Coreで最大1.8GHz
- メモリー2GB
- HDオーディオクオリティ
一応microSDを使ってブートすることもできるようですが、作り的にはeMMCのほうが優先っぽいです。 ちょっと高かったですが、試しに買ってみることにしました。Amazonで買ってみたら、翌日昼間には届いていました。速い。
microSDブートしてみる
Raspberry Piと同様、SD Card FormatterとbalenaEtcherを使うだけです。イメージは公式サイトからTinkerOS_Debian v2.0.11 (2019/8/22リリース)をダウンロードしました。
イメージの書き込みや起動の方法はRaspberry Piと同様です。ただし、tinker board Sの場合は、5V3Aが入力できる電源とケーブルが必要です。
eMMCブートしてみる
eMMCブートするにあたり、参考にしたのは次の情報です。
MacでeMMCブートのためのイメージ書き込みをするには、tinker board Sをmicro USBとUSB Type-Aケーブルで接続します。使うケーブルはデータ通信に対応するものが必要です。Androidなどに付属するケーブルを使えばよいはずです。なければ、データ通信可能でかつtinker board S側はmicro USB端子を持つケーブルを用意します。
接続してしばらくするとMacに16GBのストレージとしてマウントされますので、SD Card FormatterでフォーマットしてbalenaEtcherでイメージを書き込みます。tinker board SのeMMCに書き込むには、OSがtinker board Sのこの仕組に対応している必要があるそうです(TinkerOSだけってことかな)。しかもTinkerOS Debian v2.0.4以降のバージョンが必要だそうです。ここは新しいものをダウンロードしてきて使えばOKですね。
なお、ブートしたあとはパーティションが拡大されて、ほぼ16GBをLinux側で使うことになります。先頭の64MBがブート(/boot)用として使われます。
OSイメージを書き込みし直したい場合は、Macに同USBケーブルで繋いで、SD Card Formatterでフォーマットし、balenaEtcherでイメージを書き込めば良いようです。Windowsの場合は Physical Computing Labの情報を参考にセットアップすれば良さそうです。とはいえ、OSが違うだけでSD Card FormatterとbalenaEtcherを使えばそんなに差はないはずです。
eMMC非対応のOSを利用する場合
PCやMacと接続し、フォーマットして16GBの空のストレージにします。あとはイメージ書き込みしたmicroSDメディアを取り付けて起動するだけです。eMMCにOSが書き込まれているとそちらが優先されてしまうので、注意が必要です。
各種ケーブルをつなぎ直して起動
tinker board Sにマウスとキーボードをつなぎます。家にモニターはないので、HDMI接続でテレビと接続しました。 Raspberry Piなんかと同様にtinker board Sにも電源スイッチはありませんので、通電すればOSが起動します。デフォルト設定では起動したあと、Linuxデスクトップ環境に自動ログインされます。
Python 2.7と3.5、Python IDLEやScratch、エディターなどがインストール済みになっています。足りないものはSynaptic Package Managerやaptコマンドを使ってインストールすれば良いと思います。
なお、初期ユーザーとパスワードは linaro
だそうです。
基本的な設定
Raspbianには raspi-config
という設定ツールがありますが、tinker board には tinker-config
というツールが用意されています。デフォルトではリモートログイン関係はオフになっていますので、このツールを使うなどしてSSHとかVNCなどを設定すれば良いでしょう。
アップデート後のバージョン
起動して apt update && apt upgrade
して再起動後のバージョンです。
$ uname -a Linux tinkerboard 4.4.132+ #1 SMP Wed Aug 21 19:15:55 CST 2019 armv7l GNU/Linux $ lsb_release -a No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 9.11 (stretch) Release: 9.11 Codename: stretch
ちょっと困ったこと
現行のTinkerOSはDebian 9ベースなのですが、 apt upgrade
などで最新の状態にするとブラウザーが起動しなくなる問題が発生します。
そしてIssueをたどっていくと、次のような情報に行き着きます。
「Chromium in stretch is no longer supported. Please update to buster.」
回避策
次のような情報を見つけました。2019年12月8日現在、配布されている最新のバージョンは「TinkerOS_Debian v2.0.11」ですが、少なくともv2.0.7以降のバージョンで問題が発生していたようです。
参考情報によると、Chromium 63のバージョンを指定してインストールしたあとアップデートされないように apt-mark hold
すると回避できるようです。この方法でも良いかもしれませんが、今回はLinaroが提供するChromiumを使うことにしました。
どちらの手段で回避したとしても古いバージョンを使うことになるので、Googleアカウントなどでログインはしないほうが良いでしょう。
$ apt-get install install apt-show-versions (apt-show-versionsパッケージを入れる) $ apt-show-versions -a -p chromium chromium:armhf 53.0.2785.143-1.1linarostretch1 stretch repo.linaro.org chromium:armhf 70.0.3538.110-1~deb9u1 stretch http.debian.net chromium:armhf 72.0.3626.122-1~deb9u1 stretch security.debian.org (インストールできるバージョンを確認) $ sudo apt-get install chromium=53.0.2785.143-1.1linarostretch1 (repo.linaro.orgが配布するパッケージを選択してインストール) $ sudo apt-mark hold chromium (chromiumのバージョンを固定する)
以上で、少し懐かしいデザインのChrome (Chromium) が起動できます。確認していませんが、Raspbian stretchも最新のアップデートを適用すると同じような問題が起きるのかな。まあその場合はbusterにアップデートすればいい話ですね。
ASUS tinker board Sをさわってみて
ASUS tinker board S、非常に使いやすいARMボードだと思います。eMMCストレージが実装されていたり、ブート用に使えるのは非常に便利だと思いました。Raspberry Piでも/bootだけmicroSDにして、そのほかを外付けディスクに書き込んで利用することもできますが簡単ではないですし、tinker board SはPCと接続して従来のようにフォーマット、イメージ書き込みするだけなので簡単ですね。
ちなみにサウンドの質の違いについてはわたしの耳では判断できませんでした。手持ちのRaspberry Pi 3Bと比べて、デフォルト設定でも大音量が音割れなく出ているかなと思う程度でした。一方、Raspberry Pi 3Bは音量を調整しないと少し音が小さいかなと感じました。
ところでTinkerOS、Buster版の提供はされるのだろうか。出たら良いな。