ESP32、ESP-WROOM-32搭載製品の設定とプログラム書き込み方法

Arduino IDEでESP32、ESP-WROOM-32搭載製品のプログラミング、および作成したプログラムを書き込むには、ボード用コアライブラリをインストールする必要があります。本記事ではインストール方法とプログラム書き込み手順を説明しています。

メーカーによるESP32モジュールの型番の変更とマイナーチェンジがあったため、名称が分かりにくくなっております。以下のモジュールに対応しています。

新型番 (中身は同じ)旧型番
オリジナル版ESP32-WROOM-32ESP-WROOM-32
マイナーチェンジ版
(機能は完全互換)
ESP32-WROOM-32DESP-WROOM-32D
更新日 : 2020年8月1日

対応製品

E32-BreadPlus, E32-SolarCharger

ArduinoIDEのインストール

ESP32、ESP-WROOM-32は、外部マイコンからATコマンドによりWiFi通信モジュールとして動作させるだけでなく、 直接自作プログラムを書き込むことで、WiFi内蔵マイコンとしての動作が可能です。 上記「対応製品」に記載の製品はESP32自体をWiFi内蔵マイコンとして動作させることを前提に設計しております。

Arduino IDEのインストールがまだの方はArduino IDEのインストールと設定を参考にインストールして下さい。

ESP32用コアライブラリのインストール

ESP32用の開発を行うには、コアライブラリをインストールする必要があります。

1. 「ファイル>環境設定」を開き、「追加のボードマネージャ」 のURLに 「https://dl.espressif.com/dl/package_esp32_index.json」 を追加してください。既に他のURLがある場合は、半角のカンマで区切ってください。

2. 「ツール>ボード>ボードマネージャ」を開き、下の方にある「esp32 by Espressif Systems」を選択します。バージョンを選択できるので、当サイトの各サンプルプログラムに併記している動作確認済バージョンを選択して下さい。その後、 「インストール」を押します。

3. インストールに成功すると、「ツール>ボード」から”ESP32 Dev Module”が選択可能になるので、 そちらを選択してください。

プログラム書き込み

ArduinoIDEで作成したプログラムをESP32に書き込むには、PCと基板をUSBシリアルモジュールで 接続する必要があります。USBシリアルモジュールは3.3Vに対応したものをお使いください。 推奨品は FTDI USBシリアル変換アダプター、及び AE-FT234Xです。 基板P3コネクタのTX, RX, GND端子をUSBシリアルモジュールの同名の対応端子と接続します。 その後、SW2を押したままSW1を押して離す(リセット)することでESP32がプログラム書き込みモード になります。(SW1を離した後はSW2も離して構いません) その後ArduinoIDEから「マイコンボードに書き込む」 を選択するとプログラムが転送されます。

転送完了後は(SW2を押さずに)再度リセットするとプログラムが開始されます。 この点はESP-WROOM-02とは異なりますのでご注意ください。

シリアル端子の接続は以下のようになっています。 基板上のTX, RX端子にはUSBシリアルモジュールの同名の端子を接続してください。 TX, RXを入れ替える必要はありません。

プログラム書き込み時のオプション(ツール以下に表示される設定値)の推奨設定値は以下の通りです。 動作確認済みESP32coreのバージョンは各サンプルプログラムのページをご参照下さい。 異なるバージョンを使用した場合、うまく動作しない場合がございます。

ESP32core Version1.0.4
項目設定値
CPU Frequency240MHz (WiFi/BT)
Flash ModeQIO
Flash Size4MB(32Mb)
Partition SchemeDefault 4MB with spiffs (1.2MB APP/1.5MB SPIFFS)
Flash Frequency80MHz
PSRAMDisabled
Upload Speed921600
Core Debug Levelなし
PSRAMDisabled
シリアルポートお使いのUSBシリアルモジュールに対応したポート
ESP32core Version1.0.0
項目設定値
Flash ModeQIO
Flash Size4MB(32Mb)
Partition Scheme初期値
Flash Frequency80MHz
PSRAMDisabled
Upload Speed921600
Core Debug Levelなし
シリアルポートお使いのUSBシリアルモジュールに対応したポート

まとめ

Arduino IDEでESP32、ESP-WROOM-32搭載製品向けのコアライブラリインストール方法とプログラム書き込み手順は以上です。

E32-BreadPlus(スイッチ付き コンパクトESP32、ESP-WROOM-32 ブレッドボード開発基板)

WiFi、Bluetooth機能を内蔵したマイコンであるESP32、ESP-WROOM-32をブレッドボードに挿して開発するための基板です。Arduino IDEで自由に動作をプログラミングすることができます。リセットとプログラム書き込み用スイッチ実装済のため、自分の作りたい回路に集中できます。使用できないピンを削減したことで、類似品に比べてコンパクトになっています。

E32-SolarCharger (ESP32、ESP-WROOM-32/WiFi搭載 プログラマブルIoT 鉛バッテリーソーラー充電基板)

Arduino IDEで動作を自由にプログラミング可能な、IoTソーラーチャージャー基板です。WiFi内蔵マイコンであるESP32(ESP-WROOM-32)を採用しました。鉛バッテリー充放電回路、microSDスロット搭載。状況にあわせた充電、負荷の接続/切断ができ、ネットワークからのモニタリングも可能です。

Arduino IDEライブラリのインストールとディレクトリ(フォルダ)構成 (Windows, Mac, Linux対応)

Arduino IDE向けに様々なライブラリが公開されています。本記事では、Arduino IDEのライブラリのインストール方法と、ディレクトリ構成(Windows, Mac, Linux対応)とについて解説しています。ライブラリを使うことで、より高度なアプリケーション開発にチャレンジしたり、自分の作りたい部分のプログラミングに集中することができるようになります。