shuhelohelo’s blog

Xamarin.Forms多めです.

Arduino IDEを使ったM5Stack開発環境を整える

M5Stackの開発をしたいと思い立ち、開発環境を整えてみる

色々なサイトを参考にしながらすすめる。

基本はこちらから。

Getting Started: M5Stack の開発環境を準備する | プロトタイプ向けマイコンモジュール M5Stack と 3G 拡張ボードをセットアップする | ソラコムユーザーサイト - SORACOM Users

Arduino IDEのインストール

こちらからダウンロードする

Software | Arduino

Windowsストアからもインストールできるけれど、一番上のInstaller版を選択する。 ストア版などだと後々VSCodeとの連携で失敗するかもしれないとのことだった。

そのままの設定でインストール。

インストール中に以下のようなダイアログが表示された。 まあ全部インストールする。

インストールが終わったら起動してみる。 こんな感じ。

USBドライバーのインストール

次はUSBドライバーをインストールする。

Download | m5stack-store

CP2104 DriverのWindows用をダウンロードする

ダウンロードしたzipファイルを解凍して、以下のファイルを実行する。

インストーラが起動するので、インストールする。 インストール完了。

PCとM5StackをUSBケーブルで接続する。 デバイスマネージャを開いて以下のように表示されることを確認する。 よし!

M5Stackのボード定義のインストール

Arduino IDEで使えるようにするには、Arduino IDEでボード定義というものをインストールする必要がある。 そのためにライブラリマネージャに追加のライブラリ検索範囲を設定する必要がある。 ファイル > 環境設定

環境設定が開いたら、 追加のボードマネージャのURLの欄に以下のURLを追加する。 https://dl.espressif.com/dl/package_esp32_index.json

OKを押して環境設定を閉じる。

ツール > ボード > ボードマネージャを選択する。

検索欄にESP32と入力して検索すると、esp32というパッケージが見つかるので、これをインストールする。

さて、ボードをインストールするのだけれど、自分の持っているM5Stackはどれかというとこれ。

M5Stack Gray(9軸IMU搭載)--在庫限り - SWITCH-SCIENCE

ツール > ボード > ESP32 Arduinoを選択すると、ずらっとデバイスのリストが表示されるのでその中から対象のM5Stackデバイスを選択する。 M5Stack Grayの場合はどれだ?

こちらの記事によると、Grayの場合はM5Stack-Core-ESP32とのこと。

【M5Stack】ビルド時のボード・オプションの選び方(ArduinoIDE,VSCode+PIO) | M5Stack沼人の日記

Arduino IDEで先程のリストからM5Stack-Core-ESP32を選択する。

シリアルポートを選択

Arduino IDEからM5Stackにプログラムを書き込んだり、通信するためのシリアルポートを選択します。 ツールを開いてみると、シリアルポートにCOM3(環境によって異なる)があるので、これを選択します。デバイスマネージャで確認したポートです。

M5Stackライブラリのインストール

M5Stackの様々な機能にアクセスするためのライブラリをインストールします。

スケッチ > ライブラリをインクルード > ライブラリを管理を選択する。

ライブラリマネージャが表示されるので、M5Stackと入力して検索する。 絞り込んでも山ほどあるので、頑張ってM5Stackというライブラリを探す。真ん中ぐらいかな。

依存するライブラリもインストールするか訊かれるので、全部インストールする。

あれ、途中で失敗した。スクショ取り忘れた。

でも、ファイル > スケッチ例にM5Stackが追加されている。 まあいっか。

Hello Worldしてみる

それじゃHello Worldいってみますか スケッチ例にHello Worldがあるのでそれを選択する。

setup関数でディスプレイに「Hello World」を表示するだけの簡単なサンプルが表示される。

このまま左上の⇒ボタンをクリックすればコンパイルとデプロイが始まる

結構時間かかる…初回だからとのこと。

書き込みが完了した。 以下のように表示されたらOK。

M5Stackに「Hello World」と表示されている やった!