注目キーワード

【Arduino】切手サイズのコンピュータ「M5Stamp Pico」で、e-Paper(電子ペーパー)を使ってみる!

すけろく
ちょっと!!
e-Paper(電子ペーパー)ってディスプレイ制御は
独特なの?
げんろく
まあ、そりゃ違うわな。
ものが違うからの。
すけろく
Raspberry Pi Pico向けのe-Paperを入手したが、
Arduino+M5Stamp Picoで使いたいのだ。
げんろく
よし。
ではM5Stamp Picoで使ってみるか!

この記事では、M5Stamp Picoを使って、e-Paper(電子ペーパー)に画像を表示させてみます。

M5Stamp Picoは、切手サイズのマイコンで、バッテリーや電池での駆動も想定されるため、電源消費効率のよいe-Paper(電子ペーパー)とも相性が良さそうです。

そこで、今回はWaveShare社の提供している「Raspberry Pi Pico用 2.13インチ e-Paper ディスプレイ(白黒赤)212×104」を、「Arduino+M5Stamp Pico」で使用してみたいと思います。

M5Stamp Picoと接続する環境の構成方法や、画像をe-Paper(電子ペーパー)で表示させるためのプログラムを紹介します。

M5Stamp Picoは、Wi-Fi接続やBluetooth接続ができるので、これができるとできることが広がりそうですよ!

ぜひ、皆さんも挑戦してみてくださいね!

 

この記事の前提となるM5Stamp Picoのはじめかたについては、次の記事で紹介しています。

関連記事

すけろく 切手サイズのコンピューター。 なかなかいい響きだの~。 げんろく 何だそれは? すけろく 「M5Stamp Pico」だ。 ESP32系のマイコンを搭載した切手サイ[…]

 

今回使用したマイコンとLEDストラップはこちら!

M5Stamp Pico DIY Kit
切手サイズのマイコン本体とダウンローダーがセットになったキットです。
通信(WiFi/Bluetooth)機能も搭載され、Aruduino で開発できます。
初めて購入する場合はこちらがおススメです!

<付属品>

  • M5Stamp Pico本体
  • ダウンローダー
  • ピンヘッダ、コネクタ、Groveコネクタ、ケース取付用レンチ、シール

Amazonで確認

Raspberry Pi Pico用 2.13インチ e-Paper ディスプレイ(白黒赤)212×104
e-Paper(電子ペーパー)ディルプレイです。表示速度や再描画時間はかかりますが、基本的に省電力で運用が可能です。赤、黒、白の三色表示ができるタイプのものです。
WaveShare社の商品には、インターフェースや、表示領域(インチ)が異なるものもたくさんあります。
スイッチサイエンスで確認

e-PaperとM5Stamp Picoを接続する

今回使用するe-Paper(電子ペーパー)は、SPI通信を使って制御します。

今回使う「M5Stamp Pico」と「e-Paper 」のケーブルは、次のような構成にします。

もちろん「M5Stamp Pico」の他のGPIOを使っても構成できます。
M5Stamp Picoの電源はダウンローダー経由で入力されています。e-Paper(電子ペーパー)への電源は、別途、3.3Vの電源を用意しました。

今回使用した電源はこちら!

KKHMF 2個 MB102 ブレッドボード 電源
電源アダプター用のDCジャック、UEBなどが入力として使えます。ブレッドボードに差し込んで使用します。3.3V と5Vを切り替えて使えます。
電圧とブレッドボードへの差し込み方向を間違えないようにしましょう!
Amazonで確認
実際にブレッドボードに接続したイメージは次の通りです。

ブレッドボード、ジャンパワイヤはこちらがおススメです!

サンハヤト ブレッドボード SRH-21CE
電子回路の試作を行う際に使用するツールです。左右にVinとGNDがあり、中心部分に回路を構成して使います。
Amazonで確認
ジャンパーワイヤ130pcs オス-オス forブレッドボード
電子回路の試作を行う際に使用するツールです。こちらは、ワイヤの両端がオスーオス(差し込み型)になっています。ブレッドボード上で使用する際にはこちらが便利です。130pcsあり、長さも110/150/200/250mmとあるので持っておくと便利です。
Amazonで確認
M5Stamp Picoや、e-Paper(電子ペーパー)をブレッドボードに接続する際には次のものを使用しています。
両端ロングピンヘッダ 1×40 (40P 6.1)
入手元:秋月電子
型番:PH-1x40SG(6.1/6.1)両端のピンが長いものになります。40ピンありますので、8ピン分を切って使うなどできます。
秋月電子さんの通販サイトURLはこちらです。

e-PaperをM5Stamp Picoで使うために必要な設定

今回は、Arduino IDEを使ってM5Stamp Picoにプログラムを書き込みます。

e-Paperの販売元であるWaveShare社が、e-Paper向けのArduinoライブラリを提供しています。

ライブラリはArduino IDEのライブラリ管理機能ではインストールできません。

プログラムは以下の手順でダウンロードできます。

GitHub

Arduino libraries for Waveshare e-paper series. Contribute t…


左のリンクから、WaveShare社のGitHubサイトにアクセスします。

GitHubページの「code」ボタンを押して、「Download ZIP」を押します。
ダウンロードが開始されます。
No image

「epd-library-arduino-master.zip」というファイルがダウンロードできますので、解凍ツールで解凍します。
No image

解凍後、以下のフォルダをコピーします。
「epd-library-arduino-master」-「2.13inch_e-paper_b」-「epd2in13b」

コピーしたフォルダを以下の場所にコピーします。
「Cドライブ」-「Users」-「”ユーザ名”」-「Documents」-「Arduino」-「libraries」
各ファイルを以下のとおり修正します。
<修正前>
#include <avr/pgmspace.h><修正後>
#include <pgmspace.h>

以下のファイルの内容を書き換えます。
※Arduinoで使用する場合はこの手順は不要です。
<対象ファイル>
・epdpaint.cpp
・font8.cpp
・font12.cpp
・font16.cpp
・font20.cpp
・font24.cpp
「epdif.h」ファイルを以下の通り修正します。
<修正前>
// Pin definition
#define RST_PIN 8
#define DC_PIN 9
#define CS_PIN 10
#define BUSY_PIN 7<修正後>
// Pin definition
#define RST_PIN 22
#define DC_PIN 21
#define CS_PIN 19
#define BUSY_PIN 25

「epdif.h」の内容をM5Stamp Picoで使用するGPIOの情報に書き換えます。※別のGPIOピン番号にした場合は、読み替えてください。
以上で、手順は完了です。

M5Stamp Picoでe-Paperに画像を表示してみる

M5Stamp Picoを使って、e-Paper(電子ペーパー)に画像を表示するプログラムを作成します。

今回使っているe-Paperは、赤、白、黒の3色表示が可能であるため、表示する画像として、次のものを用意しました。

[白ー黒]表示用の画像
[白ー黒]表示用の画像
[赤]用の画像
[赤]用の画像
まず、[白ー黒]用画像をもとに白黒で描画した後に、[赤]用の画像で作成した画像を赤で上書きします。

 

e-Paperへの画像表示プログラム

Arduino IDEを起動して、「ファイル」メニューから「新規ファイル」を選択し、表示されるスケッチに以下のように記述します。

 Arduino IDE スケッチ例

<プログラム本体>

 

<画像ファイル>

※「Original_Icon_src.h」という名前のファイルとしてプログラム本体と同じフォルダに保存してください。

 

 

 M5Stack/M5StickCへの書き込み

  1. 「ファイル」メニューから「名前を付けて保存」で任意の名前を付けて保存します。
  2. 「ツール」メニューから「ボード」情報を確認し、M5Stamp Picoであるか確認します。 この際、「シリアルポート」にマイコンを接続したCOMポートが指定されているかも確認します。
  3. 「ツール」メニューから「シリアルモニタ」を選択してシリアルモニタを起動します。
  4. 「スケッチ」メニューから「マイコンボードに書き込む」を選択します。

 

 プログラム実行結果

M5Stamp Picoを起動すると、次のようにe-Paper(電子ペーパー)に表示されます。

表示には時間がかかるので、しばらく待ってくださいね!

 

 

編集後記

いかがだったでしょうか。

バッテリー容量が少ない環境では、e-Paper(電子ペーパー)を使うことで、消費電力を抑えることがでるので、これから組み込んでいくのが楽しみです。

今回の記事は以上になります。

最後まで、ご覧いただきありがとうございました。

 

今回使用したマイコンとLEDストラップはこちら!

M5Stamp Pico DIY Kit
切手サイズのマイコン本体とダウンローダーがセットになったキットです。
通信(WiFi/Bluetooth)機能も搭載され、Aruduino で開発できます。
初めて購入する場合はこちらがおススメです!

<付属品>

  • M5Stamp Pico本体
  • ダウンローダー
  • ピンヘッダ、コネクタ、Groveコネクタ、ケース取付用レンチ、シール

Amazonで確認

つぎから購入する場合は、次のものを購入してもよいですね。


M5Stamp Pico Mate
切手サイズのマイコン本体とピンヘッダなどのコネクタ類がついているキットです。通信(WiFi/Bluetooth)機能も搭載され、Aruduino で開発できます。
ダウンローダーが必要ない場合はこちらをどうぞ!

<付属品>

  • M5Stamp Pico本体
  • ピンヘッダ、コネクタ、Groveコネクタ、ケース取付用レンチ、シール

Amazonで確認

複数個を一度に購入する場合は、次のものをどうぞ!



M5Stamp Pico(5個入り)
切手サイズのマイコンです。とても小さく、組み込みに有効なサイズ感ですね。通信(WiFi/Bluetooth)も搭載されています。
開発環境(Aruduino IDE/MicroPython/UIFlow)も豊富でおススメです!
たくさん購入したい場合はこちらをどうぞ!

<付属品>

  • M5Stamp Pico本体
  • シール

Amazonで確認

Raspberry Pi Pico用 2.13インチ e-Paper ディスプレイ(白黒赤)212×104
e-Paper(電子ペーパー)ディルプレイです。表示速度や再描画時間はかかりますが、基本的に省電力で運用が可能です。赤、黒、白の三色表示ができるタイプのものです。
WaveShare社の商品には、インターフェースや、表示領域(インチ)が異なるものもたくさんあります。(ページ下部で一部紹介しています。)
スイッチサイエンスで確認