電子ペーパーディスプレイInky pHATを買ってみた

inkyphat2.jpg

pimoroniから販売されているRaspberry Pi用のe-inkディスプレイ「Inky pHAT」に以前から興味があったので、買ってみました。

解像度は212×104ピクセルで、白黒赤の3色表示です。ちょっと珍しいですね。
表示面積もRaspberry Pi Zeroが隠れるほど大きいです。
また、電子ペーパーなので、書き込んだ後は電源を切っても画像は表示されたままです。
価格はDigi-Keyで2683円でした。安いとは言えない、微妙な価格ではあります。
ソフトウェアはRaspberry Pi用のPythonライブラリが提供されています。

Getting Started with Inky pHAT – Pimoroni Yarr-niversity

このライブラリで、文字の描画や画像の表示などが、PILを援用して行えるようです。
ただ、書き換えはかなり遅く、以下のビデオのような感じで、25秒くらいかかります。
演出として点滅させているわけではなさそうで、何度も描画することによって高い濃度で表示されるようになるのではないかと思われます。

画像を表示させる場合は、ファイル形式が結構面倒です。

・パレット形式、8bitインデックスカラーのPNGファイル
・パレットは「白」「黒」「赤」の順であること

という条件を満たさなくてはなりません。
パレットの色の並び順まで指定されると、なかなか面倒です。
通常、パレットの並び順は画像ソフトが勝手に決めてしまいます。パレット番号を後から変更する場合、画像を復号してピクセルの値も変更しなければならなくなりますので、パレットの並び順を自由に変更できる画像ソフトは見かけません。

マニュアルでは、GIMPを使って画像を生成してくださいということで、GIMP用のパレット定義ファイルが上記のリンクから提供されています。

私はGIMPを使わずに、以下のような方法を使いました。

1)irfanview+PNGOUTプラグインで、上記の指定どおりのパレットを作成してexportする(メニューのImage→Palette)。

2)paint.netで上記の3色を使った画像を作成し、8bit PNGとして保存する。(3色以上使ってもかまいませんが、次のステップで強制的に3色化されます。)

3)保存したファイルをirfanviewで開き、先ほど保存したパレットをimportする。

作成した画像ファイルです。

miku-inky-phat.png

irfanview用のパレットファイルも置いておきます。(zipファイルを解凍して下さい。)

inkyphat.zip

さて、このe-inkディスプレイですが、ちょっと動かしてみた感想としては、OLEDやLCDなどの代替にはなりませんが、電源を切っても絵が消えないのは面白いです。
例えば天気予報のように、定期的に更新されるだけの情報であれば、定期的にCPUを起動して情報をこのディスプレイに書き込み、処理が終わったらCPUはシャットダウンすることが可能です。
このような使い方を考えると、Raspberry Piよりも組み込み系のCPUと組み合わせるほうが相性は良いかもしれないと思います。

あと、上の画像ファイルと写真を見比べると分かると思いますが、アスペクト比が微妙に横長です。
まあこの程度は許容範囲でしょう。

ちなみにこのディスプレイモジュールの製造元はこちらのようです。型番はGDEW0213Z16となっています。

2.13 inch three-color low-power electronic paper screen GDEW0213Z16,Color EPD,E Paper Display

コントローラはIL0373というもののようです。サンプルソースはSTM32F10x用のものがダウンロードできます。

白黒赤以外に、白黒黄のディスプレイモジュールもあって、waveshareの以下のページを見ると結構いろいろな製品が出ているようです。

e-Paper – OLEDs / LCDs – Modules / Expansions

コメント