21
14

More than 1 year has passed since last update.

Arduino IDEの設定 (M5Stackシリーズ)

Last updated at Posted at 2020-11-14

はじめに

Arduino IDEを使用してM5Stackシリーズの開発を行う場合、使用するモデルごとにいろいろと設定が異なる。
開発元(M5Stack社)の情報を参照しても設定に関する情報がちゃんと更新されていないのか、複数のパターンがあるようで混乱したのでまとめておく。

環境

Windows PC:Windows 10 Pro 64bit (1909)
Arduino IDE:V1.8.13

開発元(M5Stack社)のドキュメント情報(2020/11/14 現在)

開発元(M5Stack社)のドキュメント情報のうち、自分で使用中のM5シリーズ+αのみ表にまとめた。(間違いやすい部分は赤字表記)

モ デ ル ドライバー

インストール
追加のボードマネージャのURL ボードマネージャ
追加するボード
選択する
ボード
ライブラリ
マネージャ
追加する
ライブラリ
必須
ヘッダー
ファイル
BASIC 要 (CP210X) https://dl.espressif.com/dl/
package_esp32_index.json 1
esp32 M5Stack-Core-ESP32 M5Stack M5Stack.h
GRAY 要 (CP210X) https://dl.espressif.com/dl/
package_esp32_index.json 1
esp32 M5Stack-Core-ESP32 M5Stack M5Stack.h
M5StickC 不要 https://dl.espressif.com/dl/
package_esp32_index.json 1
esp32 M5Stick-C M5StickC M5StickC.h
M5StickC
PLUS
不要 https://dl.espressif.com/dl/
package_esp32_index.json 1
esp32 M5Stick-C 手動インストール2 M5StickCPlus.h
ATOM
Lite
不要 https://dl.espressif.com/dl/
package_esp32_index.json 1
esp32 M5Stick-C
または
ESP32 Pico KIT[^ESP32 Pico KIT選択時の注意]
M5Atom

FastLED
M5Atom.h
ATOM
Matrix
不要 https://dl.espressif.com/dl/
package_esp32_index.json 1
esp32 M5Stick-C
または
ESP32 Pico KIT[^ESP32 Pico KIT選択時の注意]
M5Atom

FastLED
M5Atom.h
M5Core2 要 (CP210X) https://m5stack.oss-cn-shenzhen.aliyuncs.com/
resource/arduino/
package_m5stack_index.json 3
M5Stack M5Stack-Core2 M5Core2 M5Core2.h
CoreInk 要 (CP210X) https://m5stack.oss-cn-shenzhen.aliyuncs.com/
resource/arduino/
package_m5stack_index.json 3
M5Stack M5Stack-CoreInk M5-CoreInk M5CoreInk.h

追加のボードマネージャのURLとはArduino IDEの環境設定メニュー→追加のボードマネージャのURLフィールド(Additional Boards Manager URLsの日本語訳)の事

複数のモデルを同時に使用する場合

では、複数のモデル(例えば、BASICとCore2)を同時に1つの環境で使用する場合、追加のボードマネージャのURLはどうしたらいいか?

追加のボードマネージャのURLは以下の2種類があってそれぞれM5Stackのボード情報が含まれている。

  1. ESP32用URLhttps://dl.espressif.com/dl/package_esp32_index.json
  2. M5Stack用URLhttps://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json

M5Stack用URLが後から追加されているので、普通に考えると2つのバターンが考えられる。

  • ESP32用URLM5Stack用URL両方を指定する。(指定順序が影響する可能性あり)
  • M5Stack用URLだけ指定する。

感覚的には新しい方のM5Stack用URLだけ指定すればいいようにも思えるが、両方のURLを指定した場合新旧両方のURLにM5Stackのボード情報があるのでどちらかが優先されたり、バッティングしたりしたら厄介だ。

[^ESP32 Pico KIT選択時の注意]: ESP32 Pico KITを選択する場合はボーレートで115200を選択する事

追加のボードマネージャのURLに指定できるURLは他にもある。

  • ESP32(安定板):https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
  • ESP32(開発版):https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json

上記2つを含めて合計4つのURLに指定されているM5Stackのボード情報(ZIPファイル)を比較したところ次のようになっていた。

含まれるボード情報 ESP32用
(v1.0.6)
M5Stack用
(v1.0.6)
M5Stack用
(v1.0.7)
M5Stack用
(v1.0.8)
M5Stack用
(v1.0.9)
M5Stack用
(v2.0.0)
M5Stack用
(v2.0.1
~v2.0.3)
M5Stack用
(v2.0.4
~v2.0.5)
M5Stack用
(v2.0.6)
(参考)
ESP32
安定板
(v2.0.6)
(参考)
ESP32
開発版
(v2.0.6)
m5stack_core_esp32
m5stack_fire
m5stick_c
m5stack_atom
m5stack_core2
m5stack_timer_cam
timer_cam
m5stack_coreink
m5stack_paper
m5stick_c_plus  
m5stack_tough  
m5stack_stamp_pico
stamp_pico
   
m5stack_poe_cam
poe_cam
     
m5stack_stamp_c3        
m5stack_unit_cam          
m5stack_station            
m5stack_atoms3                  

確認したのは以下の情報で他にもあるのかもしれない。

  • variants/<ボード>/pins_arduino.h(ピンの定義、特にSDA/SCL等)
  • boards.txt(ボード設定)

少なくとも上記情報に関してバージョン4が新しくなると基本的に情報が追加されていただけなので、バージョン4の一番新しいもの、つまりM5Stack用URLだけを使えば良さそうだ。(ただし、pins_arduino.hの一部ピンの定義(マクロ、static const変数)が変更されているのでライブラリやサンプルスケッチとの互換性に注意

まとめ(2021/1/20更新)

特定のM5Stackのモデルで開発する場合、開発元のドキュメント情報にしたがって設定をする。

いろいろなM5Stackのモデル(特に新旧のモデル混在)で開発する場合、追加のボードマネージャのURLM5Stack用URL(https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json)だけを使えばよさそう。その場合、上記表は以下のようになる。(追加のボードマネージャのURLは省略。また、間違いやすい部分上記表と異なる項目赤字表記

モ デ ル ドライバー

インストール
ボード
マネージャ
追加するボード
選択する
ボード
ライブラリ
マネージャ
追加する
ライブラリ
必須
ヘッダー
ファイル
BASIC 要 (CP210X) M5Stack M5Stack-Core-ESP32 M5Stack M5Stack.h
GRAY 要 (CP210X) M5Stack M5Stack-Core-ESP32 M5Stack M5Stack.h
M5StickC 不要 M5Stack M5Stick-C M5StickC M5StickC.h
M5StickC
PLUS
不要 M5Stack M5Stick-C
または
M5Stick-C-Plus5
M5StickCPlus6 M5StickCPlus.h
ATOM
Lite
不要 M5Stack M5Stack-ATOM M5Atom

FastLED
M5Atom.h
ATOM
Matrix
不要 M5Stack M5Stack-ATOM M5Atom

FastLED
M5Atom.h
M5Core2 要 (CP210X) M5Stack M5Stack-Core2 M5Core2 M5Core2.h
CoreInk 要 (CP210X) M5Stack M5Stack-CoreInk M5-CoreInk M5CoreInk.h

更新情報(2022/1/19更新)

久しぶりに開発元(M5Stack社)の情報を確認したところ、追加のボードマネージャのURLはM5Stack社提供のURLに統一されていた。

今後はArduino IDEの追加のボードマネージャのURLにはM5Stack社提供のURL(https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json)だけを指定すればよいことになる。

ただし、M5Stackシリーズ以外のマイコンボードを使用するためにESP32用URL(https://dl.espressif.com/dl/package_esp32_index.json)を併用する場合は、一部のM5Stackシリーズの情報が重複するために問題が発生するかもしれない。もし問題が起きても、いずれリリースされるArduino IDE 2.0で解消されるとは思う。

  1. Espressif社ESP32。v1.0.6(2021/3/27現在) 2 3 4 5 6

  2. (インストール方法) GitHubからZIPファイルをダウンロードして、Arduino IDEのスケッチメニュー→ライブラリをインクルード.ZIP形式のライブラリをインストール...からダウンロードしたZIPファイルを選択してインストールする

  3. M5Stack公式。v1.0.7(2021/1/20現在) 。サーバーが遅いのかWindows版Arduino IDEからはタイムアウトでダウンロードできない事がある 2

  4. ESP32用とM5Stack用で同じバージョン体系とは限らないの注意 2

  5. v1.0.7で追加(2021/1/20確認)。確認した限りではM5Stick-Cとまったく同一

  6. ドキュメント等に記載はないがライブラリーマネージャから追加可能(2020/12/24確認)。

21
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
14