ラズパイに接続できる電子ペーパーを買ったのでサンプルを実行して動作確認したいと思います。
購入したのは、WAVESHAREの7.5inch E-Paper E-Ink Display HAT (B) For Raspberry Pi
こちらと、以前に購入していたRaspberry Pi Zero WHを使います。
WAVESHAREのwiki https://www.waveshare.com/wiki/7.5inch_e-Paper_HAT_(B) を元に実行していきます。
ラズパイでSPI通信をできるように設定
ラズパイに接続。
$ ssh raspi
設定画面を開く。
$ sudo raspi-config
以下のような画面が開くので、5 Interfacing Optionsを選択。
次にSPIを有効にするために、P4 SPIを選択して有効にする。
The SPI interface is enabledとなればOK。
ラズパイを再起動
$ sudo reboot
サンプルコードと必要なパッケージのインストール
ラズパイに接続。
$ ssh raspi
サンプルコードをダウンロード。
$ git clone git@github.com:waveshare/e-Paper.git
実行する前にpythonライブラリをインストール。
$ sudo apt-get install python3-pip
$ pip install spidev Pillow
Pillowをインストールするときにエラーが出た。
Pillow公式のLinuxのインストール手順
https://pillow.readthedocs.io/en/latest/installation.html#building-on-linux
必要パッケージをインストール。
sudo apt-get install --fix-missing python3-dev python3-setuptools libjpeg-dev
--fix-missing
を付けないとCannot initiate the connection to raspbian.raspberrypi.org
になった。
jpegでも怒られているので、libjpeg-devをインストールした。
改めてPillowをインストール。
pip install Pillow
今度は上手くインストールできた。
ラズパイと電子ペーパーを繋ぐ
電子ペーパーに付属している以下のパーツを使ってラズパイに繋ぎます。
今回はピンヘッダ付きのラズパイZeroWHを使うので、左のコードは使いません。
まずはラズパイと電子ペーパのピンヘッダをカチッとはめ込みます。
次に電子ペーパと繋ぐ部分ですが、黒い部分が上下するようになっており、これを上げた状態にします。
電子ペーパー側の線を挿入して黒い部分を下げれば接続完了
実行してみる
examplesにある購入した電子ペーパーに対応するコードを実行する。
間違ったものを使うと表示されなかったり、サイズが違ったりと表示が崩れます。
$ cd e-Paper/RaspberryPi_JetsonNano/python/examples/
$ python epd_7in5b_V2_test.py
電子ペーパー動いた!
ちらちらするのが気になります。
kindleとかみたいにスムーズに描画されると期待していましたが仕様のようです。
これは少し残念。