グラフィック・ディスプレイを使う (1) eInkディスプレイの利用 DIY気象ステーション
Adafruitの電子ペーパ(eInk)とAdafruit Metro M4 Express Airliftの二つのボードを使って、Arduino IDEで「DIY気象ステーション」を作ります。こちらの解説記事をトレースしています。
電子ペーパAdafruit 2.7" Tri-Color eInk / ePaper Shield with SRAM - Red Black Whiteの表です。表示器以外に四つのスイッチとリセット・スイッチがあります。電子ペーパは電源を切っても表示は残ります。画面は、デモ・スケッチを動かしたときの表示です。
裏面です。SDメモリのソケットがあります。
Adafruit Metro M4 Express AirLift (WiFi) - Liteです。Wi-FiはESP32モジュールです。電子ペーパのボードをこの上に乗せて使います。
●必要なライブラリ
次に示すライブラリが必要です。それぞれインストールします。
- Adafruit EPD (ePaper display) library
- Adafruit GFX library
- Adafruit NeoPixel library
- Arduino JSON library
- Adafruit variant of the WiFiNINA library
IDEは1.8.10を利用しています。Arduino Setupのページから、次の緑色の部分をクリックして、それぞれ、zipファイルをダウンロードします。
ダウンロードしたライブラリは、メニューのスケッチから、ライブラリのインクルード- .ZIP形式のライブラリをインストール...を選びます。たとえば、ダウンロード・フォルダにあるWiFiNINA-master.zipを指定してインストールをします。
全部のライブラリをインストールします。
●スケッチ
Arduino Setupにあるサンプル・ファイルを用意します。リストのヘッダ部分にある「Copy Code」でadafruit_epd_weather.inoをコピーし、IDEの新規エディタ画面に貼り付けます。ここではeink01の名前で保存します。
右上にある▼印をクリックし、新規タブを選び、名前をsecrets.hとします。
同じページにあるsecrets.hを「Copy Code」でコピーし、IDEのsecrets.hに貼り付けます。
同じようにして、OpenWeatherMap.h、OpenWeatherMap.cppも貼り付けます。合計で四つのタブになります。
リストのヘッダ部分にある「Project Zip」をクリックすると、adafruit_epd_weather.zipがダウンロードされるので解凍します。この中のFontsフォルダを、スケッチが保存されているC:\Users\ユーザ名\Documents\Arduino\eink01にコピーします。
●スケッチの修正
secrets.hを一部修正します。
(1) Wi-Fiの設定
(2) OpenWeatherMap APIキー(コラム参照)、場所の変更
このままコンパイル、実行すると、華氏の温度表示になります。
OpenWeatherMap.cppを一部修正します。2か所のimperialをmetricにすると、摂氏の単位になります。
コラム マイコン・ボードAdafruit Metro M4 Express AirliftでIDEを使う
Adafruit Metro M4 Express AirliftをIDEのボードマネージャで選べるように準備をします。
メニュー-ファイルから環境設定を選びます。
追加のボードマネージャのURLへ、「https://adafruit.github.io/arduino-board-index/package_adafruit_index.json」を記入します。すでに何か入っていたら、「,」でつなげます。メニューのツールのボード...からボードマネージャを出します。検索欄にAdafruit SAMD Boardsと入れ、見つけてきたAdafruit SAMD Boards by Adafruitをインストールします。
ボードを、一覧からAdafruit Metro M4 Express Airlift Lite (SAMD51)を選び、シリアルポートを選択します。
コラム OpenWeatherMap APIの取得
天気情報を得るためにOpenWeatherMapでアカウントを作ります。Web上部のメニューのAPIをクリックすると次の画面になります。Current weather dataをSubsclibeします。
料金表が出てきます。FreeのGet API key and Startをクリックします。
Sign upをクリックします。
アカウントを作ります。
Create Accountをクリックすると、APIキーがメールで送られてきます。