ESP32の開発環境にはArduino IDE, PlatformIO, ESP-IDFの3種類があるが(更に、PlatformIOとESP-IDFにはIDE版とCLI版がある)、 現時点(2024年2月)のワタシ的には手間やライブラリの豊富さからArduino IDEで行こうと思う。
PlatformIOとESP-IDFはコンソール版とVSCodeのExtension版があり、エディタをvim(風)にして編集効率を上げることができるのだが、 マイコンの世界ではArduinoの影響が強く、Arduino IDE用のライブラリや情報が最も多い。
今回、M5StackのAtomS3を購入したので、その時に開発環境を準備したときの備忘録。 なので、AtomS3限定の情報もあるが、ESP32デバイス全般にも参考になるかもしれない。 ちなみに、PlatformIOとESP-IDFはVSCodeのExtension版をインストールしてみた。
I. Arduino IDE
参考にしたのは、M5STACK ATOMS3製品ページから辿った。
インストール
- インストーラをダウンロードし、インストール。
- Open the Arduino IDE, select File->Preferences->Settings
- Copy the M5Stack board management URL below to the Additional Development Board Manager:
https://m5stack.oss-cn-shenzhen.aliyuncs.com/resource/arduino/package_m5stack_index.json
- Select Tools->Board->Boards Manager...: M5Stackをインストール
- Select Tools->Board->M5Stack, and select the corresponding board (M5AtomS3).
- Select Sketch->Include Library->Libraries Management...
- Search for M5AtomS3 and install it.
スケッチの作成とアップロード
pragma message "No hardware SPI pins defined. All SPI access will default to bitbanged output"
なんて出てくる場合があるが、意味不明なウォーニングらしく、無視して良いらしい。
- AtomS3のリセットボタンをLEDが緑になるまで長押しし、アップロードモードにする(*)
- スケッチをアップロード
- アップロードが完了したらリセットボタンを(短く)押すと、プログラム実行モードになる() ()アップロードモードにしなくても、アップロードできる時もある。
HelloLCD.ino : AtomS3のLCDに文字を表示する
#include <M5AtomS3.h> void setup() { M5.begin(); M5.Lcd.println("Hello AtomS3 LCD!"); } void loop() {}
参考
II. PlatformIO IDE for VSCode
インストール
参考にしたのは、EspressifのArduino-ESPチームのインストール方法のページから PlatformIO IDEを経て PlatformIO IDE for VSCode
これだけ。実に簡単だ。
プロジェクトの作成とアップロード
- VSCodeのサイドバーでPlatformIO IDEボタンをクリック
- PlatformIO HomeにてCreate New Project - + New Project
- Project WizardにてBoards: M5Stack AtomS3 / Framework: arduino
- (プログラム作成)
- PlatformIO Toolbarのコンパイルボタンでコンパイル
- PlatformIO Toolbarのアップロードボタンでアップロード
Library/Package
PlatformIO Homeのサイドバーの"Libraries"にて、検索窓に入れたいライブラリ名を入力して検索し、インストールする。
しかし、プログラム毎にライブラリをインストールするので、PCの保存域をバカ食いするのは何とかならんもんか。
参考
III. ESP-IDF
Espressifの公式開発フレームワーク
インストール
- Pythonをインストール
- Getting Started with ESP-IDFからMCUを選択
- S3: ESP-IDF Programming Guideから Get Startedをクリック
- VSCode Extensionを選択(Eclipse Pluginが好きな人はそちらへ。Windowsコマンドプロンプトでの開発環境もある。)
- Visual Studio Codeをダウンロード&インストール
- VSCodeにてESP-IDF Extensionをインストール
- "View"-"Command Palette"-"configure esp-idf extension" and setup
プロジェクトの作成とアップロード
参考: "View"-"Command Palette"-"ESP-IDF: welcome"でESP-IDF Basic useより
- サンプルプログラムは"View"-"Command Palette"-"ESP-IDF: Show Examples Projects"
- 新規プロジェクト作成は"View"-"Command Palette"-"ESP-IDF: Create ESP-IDF Project"
- "ESP-IDF: Set Espressif Device Target"でターゲットデバイスを選択
- "ESP-IDF: Select Port to Use (COM, tty, usbserial)"で接続ポートを指定
- "ESP-IDF: Build your Project"でビルド
"ESP-IDF: Flash Device"でアップロード
ESP-IDF: SDK Configuration Editor
- ESP-IDF: Size Analysis of the Binaries
Library
ライブラリはどうするのだろう?