Arduino IDEでM5Stack Core2 for AWSの開発環境を構築します。「PlatformIOでM5Stack Core2 for AWSの開発環境の構築」ではVS Codeに、PlatformIOをインストールした開発環境を構築しました。
M5Stack Core2 for AWS開発環境の構築
Arduino IDEを使ったM5Stack Core2 for AWS開発環境の構築の手順を次に示します。
- Arduino IDEを立ち上げて、メニューから「ファイル」→「環境設定」を開き、「追加のボードマネージャのURL」次のデータを設定し、「OK」をクリックします。
- 「ツール」→「ボード」→「ボードマネージャ」をクリックし、「m5stack」と入力し、「M5Stack」をインストールします。最新版の1.08をインストールしました。
- 「ツール」→「ボード」で、「M5Stack-Arduino」→「M5Stack-Core2」を選択します。
- メニューから「スケッチ」→「ライブラリをインクルード」→「ライブラリを管理」を開き、次のように「m5core2」と入力し、「M5Core2 by M5Stack」をインストールします。最新版の0.04をインストールしました。
- 次のようにメニューから[ファイル | →「スケッチ例」→「M5Core2」→「Basics」にある 「display」で開発環境を確認します。
- パソコンとESP32ボードをUSBケーブルで接続します。パソコンのデバイスマネージャを開くと、「COM6」に「Silicon Labs CP201x USB to UART Bridge」として自動的に認識されていました。
- スケッチ例「display」をコンパイルします。理由はわかりませんが次のエラーが発生します。
- M5Stack Core2 for AWSに書き込みます。スイッチ等の操作は必要ありません。M5Stack Core2 for AWSの画面に次のように表示されます。
https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
In file included from C:\Users\ne\Documents\Arduino\libraries\M5Core2-master\src/M5Core2.h:76, from C:\Users\ne\Documents\Arduino\libraries\M5Core2-master\examples\Basics\display\display.ino:13: C:\Users\ne\Documents\Arduino\libraries\M5Core2-master\src/M5Display.h:118:12: error: 'vector' in namespace 'std' does not name a template type std::vector_displayStateStack; ^~~~~~ C:\Users\ne\Documents\Arduino\libraries\M5Core2-master\src/M5Display.h:118:7: note: 'std::vector' is defined in header ' '; did you forget to '#include '? C:\Users\ne\Documents\Arduino\libraries\M5Core2-master\src/M5Display.h:12:1: +#include
このエラーは、ライブラリにあるヘッダファイル「(xxxx)/libraries/M5Core2-master/src/M5Display.h」に「#include
」を追記することでなくなります。Arduino IDEのバージョンは1.8.13です。
「FactoryTest」の動作確認
「FactoryTest」は、次のようにメニューから[ファイル | →「スケッチ例」→「M5Core2」→「core2_for_aws」にある 「FactoryTest」を使用します。
このままだとエラーになるので、FastLEDとArduinoECCX08の機能を削除します。その後コンパイルして実行すると、次の画面がM5Stack Core2 for AWSに表示されます。
M5Stack Core2 for AWSのポートと接続ケーブル
M5Stack Core2 for AWSのポートCは、次のようにUart-RXD(GPIO13)/TXD(GPIO14)が接続されています。
Uartの動作を確認するために、次のようにTXDとRXDを接続してループ状態にします。
購入したケーブルがGrove互換ケーブルだったようで、ケーブルの色順が純正と異なり黄色と白が順番が違っています。またGroveコネクタにロックがあって接続できないので、ロックをニッパーで切る必要があります。M5Stack Core2 for AWSのポートCにはマーキングがされていなく、ポートAと同じ向きで接続します。