LovyanGFXの導入の仕方
M5StackやM5StickCでも利用できる画期的な画面描画ライブラリLovyanGFXが出ました。ArduinoIDEのライブラリマネージャーからインストールが可能です。M5Stack.hやM5StickC.hライブラリとの共存は注意事項があるので、開発環境を作成する手順を紹介します。(手順が違うといった場合はコメントやメール、ツイッターでご連絡いただけると助かります。)
初心者向けなので、細かい手順も含んでいますがわかりづらいところあったら連絡ください(‘◇’)ゞ
もくじ(Index)M5Stack関連の目次へ戻る
環境作成時の注意事項
既存のM5Stack向けソースをLovyanGFX対応するには後述のソースファイルの修正が必要です。
ArduinoIDEのポータブル版環境を利用するのが簡単なのでその方法で説明します。ArduinoIDEの便利技は下記の記事でも紹介しています。
ArduinoIDEの便利技MacOSXでのArduinoIDEポータブル版
★私はMacOSXの最新環境が無いので検証していません。
MacOSX版のArduinoIDEは公式ではポータブル版に対応していません。下記のリンクを参照して「this forum thread」を見ると解決策があるようです。
https://www.arduino.cc/en/Guide/PortableIDE#toc3
環境について
この記事の作成時(2020/4/29)は下記の環境で確かめています。バージョンアップ等で手順が変わると思うのでその点はご了承ください。(もし手順が違った場合はご連絡いただけると助かります。)
- OS: Windows10 Pro 及び Ubuntu 18.04
- ArduinoIDE 1.8.10 及び1.8.12
- LovyanGFX 0.1.6(2020/4/29以降バージョン)
- M5Stackライブラリ0.3.0
- M5Stack-SD-Updater 0.5.2
ArduinoIDEのダウンロード
https://www.arduino.cc/en/main/softwareを開き、Windows10の場合は「Zip file」を選びます。Linuxの場合は元々圧縮ファイルなのでこれをダウンロードします。
ダウンロード時の選択
AdruinoIDEはオープンソースソフトウェアなので貢献(Contribute)することもできます。ダウンロードのみの場合は「JUST DOWNLOAD」でファイルをダウンロードします。
ダウンロードした後の作業
①ダウンロードしたファイルを解凍
Zipやtarファイルを適当なフォルダに解凍します。以下、解凍フォルダはWindows10の場合「D:\arduino-1.18.12\」、Linuxの場合は「~/arduino-1.8.12/」と表します。
②「portable」フォルダを作成する
Zipやtarファイルを解凍後にできたフォルダ(arduino.exeやarduinoという実行ファイルがあるフォルダ)に「portable」というファルダを作成します。
③ArduinoIDEを起動する。
- Windows10の場合
D:\arduino-1.8.12\arduino.exeを起動します。 - Linuxの場合
~/arduino-1.8.12/arduinoを起動します。
④起動した後の設定
ここからは「ライブラリのインストール以外」通常のArduinoIDEと同じですので初心者向けM5Stackの始め方(ArduinoIDE編)を見てください。
ライブラリのインストール
①ライブラリマネージャー
ライブラリマネージャーからまず下記のものをインストールしてください。(必須ではありませんがSD-Updaterがあると開発時に便利です。)
- M5Stack-SD-Updater(下記の画面が出たら「Install all」をクリックでもOK)
- M5StackまたはM5StickCライブラリ
②LovyanGFXのインストール
ライブラリマネージャーからLovyanGFXをインストールします。
サンプルのビルドと実行
メニューの「スケッチ例」-「LovyanGFX」配下に色々サンプルがあるので使い方はこれを参考にしましょう。最初は「1_simple_use.ino」が参考になると思います。
注意事項
M5Stackライブラリ及びM5StickCライブラリと共存する場合の注意
M5StackライブラリとM5StickCライブラリと共存したい場合は、M5Displayの定義が重なるためそのままではコンパイルできません。下記のようにM5Stack.hやM5StickC.hヘッダファイルをインクルードする前に下記の2行を追加する必要があります。(Lang-shipの@tnkmasayukiさんからの情報)
#define _M5DISPLAY_H_
class M5Display {};
①M5Stack.hのインクルード
②M5StickC.hのインクルード
エラーメッセージ
上記の2行を追加しないと下記のようなエラーがたくさん出ます。(M5Displayの定義と重なるため)
- conflicting declaration ‘…’
- redefinition of ‘…’
ESP32-Chimera-Coreと共存する場合(中級者以上)
2020/4/29現在、ESP32-Chimera-CoreのlgfxブランチのM5Stack.hとはスケッチの修正なしで共存可能です。★ESP32-Chimera-CoreはM5Stackライブラリとは共存できないので注意(コンパイル時にエラーが出ます。)
トラブルシューティング
随時更新してきます。
おわりに
LovyanGFXは画期的なGFXライブラリです。M5StackやM5StickC描画速度を向上し、画像を拡大縮小することも可能になります。ぜひ使ってみましょう(‘ω’)
更新履歴
- 2020/6/1 導入部分の打消し線がGoogle検索だと表示されないので文章を変更
- 2020/5/19 ArduinoIDEのライブラリマネージャーに登録されたのでインストール方法を修正
- 2020/4/29 LovyanGFX変更に伴いM5Stackライブラリと共存する方向で全面的に修正
- 2020/4/29 新規作成(ESP32-Chimera-Coreを使う内容で作成)