事前準備 / コンパイル環境

コンパイル環境

$Date: 2024/04/08 02:07:49 $
$Revision: 1.11 $

ここが最大の難関かも...

コンパイル環境の構築についての詳細は他のサイトにも情報がありますので、そちらを参考にしてください。

シリアルドライバーのインストール

ESP32開発ボードに乗っているUSB関係のチップ(CP2102 : USB-UART Bridge)がそのままではPC側に認識されませんので、ドライバーのインストールが必要です。

M5Stackの最新版はUSB関係のチップが変更になっています。 CH9102Fに変更になっていますので、CH9102F対応のドライバーが必要です。

USB接続できるRIGの一部では、CP210xを利用しているものがあります。 これらのドライバーと相性(同居)ができない場合もあるかもしれません。 私の場合は、USB接続タイプのGPSロガーとの同居ができない問題にぶつかったことがあります。

M5Stack Basic v2.6から、USB関係のチップがCH9102Fに変更になっています。 ところが、V2.6の初期版(?)は、基板上のシルク印刷が2.4のままになっているものがあります。 これは、パッケージに記されているバージョンは2.6であることと、基板上のチップのシルク印字で9102であることを確認するのが確実ですが......私の場合、このチップ上の型番の印字が肉眼では見えません(涙)。

Arduino IDEのインストール

Arduino 1.8.13以降、なにやら大きな違いがあるようで、そのまま1.8.15に上書きしてもうまくコンパイルできない場合があります。 いろいろ試した結果、Arduino環境をすべて削除して、最初からインストールしなおしたらうまくいきました。

1.8.16から1.8.18に更新した際にも同様の事態に陥りました。結局、最初からインストールしなおしたらうまくいきます。Arduino IDEを更新する度に、クリーンインストールするのが確実かも...

下記サイトからArduino IDEをダウンロードしインストールしてください。 Arduino IDE 1.8.18で動作確認をしています。

Arduino IDEの環境設定

ネット上にある M5Stack用のArduino IDEの環境構築に関する情報が、新旧入り混じって混乱しています! 既に、Arduino IDEをインストール済みの方も、一度全削除して、ゼロから環境構築を行った方が確実です。

ボードマネージャーとM5Stackの利用設定

  1. Arduino IDEを起動
  2. 環境設定 , 追加のボードマネージャのURLに https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.jsonを指定する
  3. ツールボードボードマネージャM5Stackを検索し、追加
  4. ツールボードM5Stack ArduinoからでM5Stack-Core-ESP32を選択 (Core2Core2の方はM5Stack-Core2を選択)

ライブラリー

Arduino IDEのライブラリーマネージャーで下記のライブラリーをインクルードしてください。 ツールライブラリーを管理ライブラリー名を検索してインストール

  • M5Module-LAN-13.2 (M5 LAN Moduleを利用する場合) 依存するライブラリーもインストール

ライブラリーの入手とインストール

下記のサイトからライブラリー(*.zip)をダウンロードして保存(適当な場所に..) 。 いずれもGitHubにあります。緑の Code から Download Zipを選んでダウンロードしてください。その後、zipファイルを解凍(最近の若者は展開というらしい)する必要はありません。

ダウンロード後、スケッチライブラリーをインクルード.ZIP形式のライブラリーをインストールから、 先ほどダウンロードした*.ZIPを指定してインストールしてください。 tinyGPSPlusとArduinoJsonのそれぞれに作業が必要です。

スケッチの読み込み

別ページに掲載しているKetaiTracker for M5Stackのスケッチ(ソースコード)をArduino IDEで開いてください。

ライブラリーのインクルード

スケッチを読み込んだあと、下記の手順でライブラリー (M5Stack Core2Core2の方はM5Stack Core2 , Arduino_JSON およびTinyGPSPlus )をインクルードしてください。 OTAを利用する場合はArduinoOTAもインクルードしてください。 この時、スケッチの上部に #include <TinyGPS++.h>lおよび#include <ArduinoJson.h>などが自動的に追加されます。 既にスケッチ中に、上記の#include文があり重複しますが、そのままでもいいし、追加された先頭の2行を削除してもどちらもでOKのようです。

M5Stackの接続とシリアルポートの設定

M5Stackをコンピュータに接続し、Arduino IDEが利用するシリアルポートを下図のように変更してください。

Arduino IDEの利用でつまづくのはこのページに記載している内容のどこかです。。。 実際にスケッチをコンパイルすると、あれこれエラーを吐いてくる場合があります。

Arduino IDEでライブラリーのインクルードを行うということは、必要な ヘッダーファイルのインクルード(#include)とリンカでマージするライブラリーの指定も行うようです。 低水準(旧人類)プログラマーの私には、最初その挙動が理解できず悩みました。

印刷日: 2024-05-20 15:33:22
User:
URL: https://ketaitracker.info/ktm5stack/index.php?page=software