kobo aura HD 買いました

お久しぶりの投稿です。

前々から気になってた kobo の aura HD を買っちゃいました。

kobo aura HD 買っちゃった
kobo aura HD 買っちゃった

日本では未発売の kobo aura HD です。どうしても欲しかったので個人輸入しちゃいました。

本体は$170だけど、送料などで結局2万円くらい。高い出費でした。

そこまでして欲しかったのは6.8インチで 1080×1440 という解像度の高さです。glo は 6 インチで 758×1024 ですので、 glo に比べて約 1.24 倍の解像度アップです。

どれくらい解像度が違うのかは下方で検証してみます。

glo と並べて置いてみました。

左 aura HD, 右 glo
左 aura HD, 右 glo

パネルのサイズが、aura HD は 6.8 inch、glo は 6 inch という事で、aura HD の方が一回り大きいです。

ウラ面 左:aura HD、右:glo

ウラ面 左:aura HD、右:glo

ウラ面はaura HD は持ちやすいようにちょっとした山が左右に2つあります。ちょっとした差ですがコレがあるだけでちょっとグリップ感が増したような気がします。

さて、解像度の違いを検証してみます。

gloのレビューの時と同様に、銀河鉄道の夜から「銀河帯」という単語を表示させて比較してみます。

touch, glo, aura HDの3機種で、どの機種も3文字の高さが約9.5mmになるようにフォントのサイズを調節しました。

その結果がこちら。

 解像度の違い
解像度の違い

明らかに aura HD が精細な表示になっています。touch→glo の精細化度合いと同じくらい、glo→aura HDも精細化されています。見た目の印象としては、だいぶ紙に近づいた感じです。

ここまで来るとリュウミン明朝が細くみえてしまうので、英語フォントのようにウェイトが選べると嬉しいですね。

 

画面の更新時間はgloと大体同じくらいです。touch→gloでは画面更新の時間が短くなり、かなり快適になったのですが、aura HDはあまり変わってないですね。とはいえ、gloでも十分快適な更新時間だったので、個人的にはあまり問題に感じないです。

 

ひと通りいじってみましたが、 海外モデルという事で日本語書籍系やストアへの接続に問題があるかなと思っていたのですが、全く問題なく使用することができました。

ファームウェアは海外バージョンの物が入るらしく、すでに 2.10.0 です。(日本版 glo は 2.6.0)

バージョン 2.10.0 では、webページを保存して後で読むためのサービス「pocket」との連携もできるらしいので今度使ってみようと思います。

全体の感想として、ちょっと高かったですが、買って良かったと思います。高解像度はマンガや自炊書籍など、画像の書籍を見るのに適しているのではないかと思います。


koboにシリアル端子を増設

以前 kobo touch にUSBシリアルを繋げるKobo 用のシリアルコネクタ作成という記事を書きましたが、kobo glo では後ろに E-ink パネルがあって治具が貫通せず、この方法が使えなかったためコネクタを追加することにしました。

普段使いもしている端末なので、ケースにバリバリ穴を開けて線を引き出すというのではなく、外観を損なわないような方法を考えました。

コネクタの位置ですが、microUSB 端子の横に隙間がありそうだったのでそこに追加しました。

130706-glo-uart
端子の位置と配線図

 

端子はICソケットの丸ピンタイプ(秋月電子へのリンク)の足を切ったものを使用し、ホットボンドで固定しています。

ちょっと汚いですが拡大するとこんなかんじです。

130706-glo-uart2

プラグの方は丸ピンのIC連結ソケット(秋月へのリンク)を使いました。

130706-uart-pin

接続するとこんなかんじです。

130706-glo-connection

筐体がそこそこ厚みがあるのでがあるのでピンの長さが足りるか心配でしたが、ギリギリ届いているようで、差し込んだ時にクリック感(?)があり、しっかりホールドされます。

逆向きに挿せてしまうので、向きを覚えて置かないといけないのが難点です。

5ピン分の幅を使って、2番めのピンを切り落として逆には挿さらないようにしたほうが良かったかもしれません。

 

外観はこんな感じです。

130706-glo-hole

穴を開けただけなので、注意してみない限りほとんど目立ちません。個人的に大満足の出来です。

 

ケーブルの先はこんな感じになっています。

130706-uart-usb

適当に余っていたケースに入れたのでかなりスカスカです。

シリアル変換には前回同様、秋月のFT232RL USBシリアル変換モジュールを使ってます。今見たらキットも出てるんですね。ピンヘッダを自分でハンダ付けするだけで150円引きはお得です。

やはりケースに入れるとぞんざいに扱えるのでいいですね。むき出しだと常にショートしないか気にしないといけないので、精神的に煩わしいです。

 

ついでに Touch の方もやってみました。

130706-touch-connection

 

これで裏蓋を開けなくても手軽にデバッグできるようになりました。touch と glo を行き来するのもケーブルの差し替えで済むのラクチンです。

 


Kobo用アプリ作成 (その1)

 前のエントリで kobo 用の開発環境を整えたので、簡単な kobo 用スタンドアロンアプリを作ってみます。

スタンドアロンアプリの他にも、プラグイン形式でアプリを作ることもできますが、nickel の仕様が公開されておらず、解析しながら実装することになるため、ここでは省きます。

スタンドアロンアプリのスタイルとして以下の2つがあります。

  1. nickel のQWSサーバを利用したスタンドアロンアプリ
  2. nickel なしの完全スタンドアロンアプリ

nickel とは kobo 標準のアプリのことです。

1. nickel の QWS サーバを利用

nickel プロセスの裏側でアプリを立ち上げる形式です。

Qt/Embedded は 1 つのプロセスを I/O 用サーバ(QWSサーバ)として起動させ、他のプロセスはQWSサーバに接続することで、複数のプロセスが Window を作成したりイベントを処理したりすることができるようになっています。

nickel の QWS サーバを利用することで、画面描画処理を nickel に任せることができるようになり、アプリの実装量が少なくなります。

本来なら画面タッチのイベントも QWS サーバがハンドリングしてクライアントに渡すはずなのですが、Kobo では mouse イベントが呼ばれないので、自前で /dev/input/event? を処理する必要があります。

また、後ろで nickel が動いているため、使用可能なメモリ量には限りがあります。

 

2. nickel なしの完全スタンドアロンアプリ

nickel を終了させ、自分自身が QWS サーバになる形式です。

I/O を行なってくれるサーバがいないので、画面描画、タッチやキー入力のイベントハンドリングも自前で行う必要があります。

具体的には、QScreen クラス, QWSMouseHandler クラスを実装する必要があります。

綺麗な作り方としては、QWS サーバに必要な機能は別の .so に分離しておくのですが、nickel ではこのへんの機能は全部 libnickel.so に詰め込んであるため、nickel の実装を流用することができません。

ただ、悪いことばかりではなく、自分で画面描画を制御できるため 2 値モードなども実装すれば使用可能です。

また、nickel がいないため、メモリも広く使うことができます。

 

■ Kobo 用スタンドアロンアプリの注意点

どちらのタイプにも共通の注意点を書いておきます。

まず、日本語フォントが使えません。

有名なモリサワフォントが入っているため、その流用防止のためと思われますが、フォントに暗号化がかかっており普通の Qt ライブラリ経由ではフォントが使用できません。そのため独自にフォントを入れる必要があります。

CFW を前提とするなら、KBMincho (お世話になってます!)が入っているので使用するとよいでしょう。

一部の英文フォントは暗号化されていないようです。

 

■ QWS利用スタンドアロンのサンプル

さて、能書きはこれくらいにしておいて、実際にサンプルアプリを試してみましょう。

Kobo 上でコマンドを実行する必要があるため telnet の環境が必要です。

また、日本語フォントを使うため、CFW 0.95 が入っている必要があります。

前回の環境構築で、作業ディレクトリ内に env.sh というファイルが作られていると思います。これを source します。

$ cd ~/kobo
$ source env.sh
または
$ . env.sh

次にサンプルソース(kobo-standalone-example.tar.gz)をダウンロードし、展開します。

$ wget http://petit-noise.net/system/files/kobo-standalone-example.tar.gz
$ tar xf kobo-standalone-example.tar.gz
$ cd kobo-standalone-example/ 

前回インストールした qt の qmake を実行し、make します。

$ /usr/local/Trolltech/QtEmbedded-4.8.0-arm/bin/qmake
$ make

standalone というファイルができていると思います。

これを kobo へコピーします。PC につないだ時に見える KOBOeReder ドライブのルートディレクトリへコピーしてください。

PC との接続を解除し、telnet で kobo にログインして、以下のコマンドを実行して環境変数を設定します。

# export QWS_MOUSE_PROTO="tslib_nocal:/dev/input/event1"
# export QWS_KEYBOARD=imx508kbd:/dev/input/event0
# export QWS_DISPLAY=Transformed:imx508:Rot90
# export NICKEL_HOME=/mnt/onboard/.kobo
# export LD_LIBRARY_PATH=/usr/local/Kobo:/mnt/onboard/app/
# export LANG=en_US.UTF-8

そして転送した standalone アプリを実行します。

# /mnt/onboard/standalone

以下のような画面が表示されれば成功です。

サンプルソースが非常に汚いですがご勘弁を・・・。