ESP32-C3-WROOM-02-N4は安価に(秋月電子で\340)購入できるArduino互換のマイコンですが、利用するには諸々面倒な手順を実施しないとならなかったので、解説します。
この記事ではESP32-C3-WROOM-02-N4を利用するための配線とプログラム書き込みのための設定方法を解説します。
ピッチ変換基板へのはんだ付け

👆左のところに、ESP32-C3-WROOM-02-N4
を載せて、動かないように洗濯ばさみで挟んで、頑張ってはんだ付けしました。


👆ESP32-C3-WROOM-02-N4
と ピンソケットをはんだ付けします。
ESP32-C3-WROOM-02-N4
はかなり細かいので、何度もやり直ししました。
ぱっと見、大丈夫そうでもテスターで接続確認すると繋がっていなかったり、上部カバーとショートしていたりしたので、注意が必要です。
そんなこんなで、ぐりぐりはんだごてでつつき回しましたが、壊れることなく動作してくれました。
※ ESP-WROOM-02用2.54mmピッチ変換基板にプリントされたピン配置はESP32-C3-WROOM-02-N4
とは違っているので気を付けて下さい。

👆裏はこんな感じです。
配線
ESP32-C3-WROOM-02-N4をブレッドボード上で配線します

👆配線の解説です。
①--USBシリアル変換モジュールから出力される5v電源出力を、レギュレーターで3.3vへ変換します

👆①の拡大写真。右端に接続した5v電源が、左端の端子から3.3Vで出力されます。これをESP32-C3-WROOM-02-N4
の電源にします。
②--3.3vのプラス極を3V3
ピンに接続します
③--EN
ピンを10kオームの抵抗を経由してプラス極に接続、タクトスイッチを押したらマイナス極(GND)に接続されるよう配線します
これにより、タクトスイッチがリセットスイッチになります。
④--IO8
ピンを10kオームの抵抗を経由してプラス極に接続します
これは、ブートモードをDownload Boot
に設定するためです。
※ ESP-WROOM-02用2.54mmピッチ変換基板にプリントされたピン配置はESP32-C3-WROOM-02-N4
とは違っているので気を付けて下さい。

👆ブートモードESP32-C3-WROOM02 Datasheet 3.3 Strapping Pins
⑤--IO9
ピンをマイナス極(GND)に接続します
これは、ブートモードをDownload Boot
に設定するためです。
⑥--GND
ピンをマイナス極(GND)に接続します
⑦--IO2
ピンを10kオームの抵抗を経由してプラス極に接続します
これは、ブートモードをDownload Boot
に設定するためです。
※ ESP-WROOM-02用2.54mmピッチ変換基板にプリントされたピン配置はESP32-C3-WROOM-02-N4
とは違っているので気を付けて下さい。
⑧--TXD
ピンをUSBシリアル変換モジュールのRXD
に、RXD
ピンをUSBシリアル変換モジュールのTXD
に接続します
Arduino IDE でプログラム書き込み
Arduino IDE でプログラム書き込みする手順です。
Arduino IDEの設定については、5 . ESP32マイコンのツール設定と接続を参照下さい。

👆ボードはESP32C3 Dev Module
を選択します。

👆ポートはUSBシリアル変換モジュールの接続ポートを指定します。

👆Serial Monitor
を開きます。

👆通信速度は115200
を指定します。

👆この状態で、基板のタクトスイッチをぽちっと押してすぐ離します。

👆すると、シリアルモニターにダウンロード待ちであることを示す、waiting for download
と出力されます。

👆中央のコード領域に下記コードを貼り付けて、アップロードボタンを押します。
void setup() {
Serial.begin(115200);
}
void loop() {
delay(1000);
Serial.println("test message...");
}

👆アップロードが完了するとこんな感じの表示になります。

👆次にマイナス極(GND)に接続していたIO9ピンを外してから、タクトスイッチをぽちっと押してすぐ離します。
これは、Download Bootに設定していたブートモードを通常モードに戻して再起動するためです。

👆すると、下部にメッセージ"test message..."が1秒間隔で出力されます。
これでArduino IDE でのプログラム書き込みの確認ができたことになります。
MicroPython でプログラム書き込み
Aruduino IDEのC言語ベースの言語はどうも苦手だという方のために、(私はそういう人ですが・・)MicroPython でプログラム書き込みする方法を解説します。
esptool
のインストール
Pythonがインストールされていることを前提に、下記コマンドでesptool
をインストールします。
pip install esptool
上記コマンドでインストールは完了しており、esptool
が使える状態になるのですが、私の場合パスが通っておらず、esptool
の実行ができなかったので、追加手順を解説します。
下記コマンドで、esptool
のインストールパスを確認します。
pip show esptool
以下の出力が得られます。
Name: esptool
Version: 4.8.1
Summary: A serial utility to communicate & flash code to Espressif chips.
Home-page:
Author: Fredrik Ahlberg (themadinventor), Angus Gratton (projectgus), Espressif Systems
Author-email:
License: GPLv2+
Location: C:\Users\sampleuser01\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\site-packages
Requires: bitstring, cryptography, ecdsa, intelhex, pyserial, PyYAML, reedsolo
Required-by:
Location
の出力を手がかりに周辺フォルダを探すと、下記パスにesptool
が配置されていることを確認できました。
C:\Users\sampleuser01\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\Scripts\esptool.exe
そこで、下記パスをPATH
環境変数に追加することでesptool
が使えるようになりました。
C:\Users\sampleuser01\AppData\Local\Packages\PythonSoftwareFoundation.Python.3.11_qbz5n2kfra8p0\LocalCache\local-packages\Python311\Scripts\

ファームウェアのインストール
ESP32-C3 Installation instructionsを参考にESP32-C3-WROOM-02-N4
用のMicroPython
ファームウェアをインストールします。

👆まず、この状態で、基板のタクトスイッチをぽちっと押してすぐ離します。
この操作でESP32-C3-WROOM-02-N4
はブートモードDownload Boot
に設定されます。
下記コマンドでフラッシュをクリアします。
※ ポートは利用環境に合わせて変更して下さい。
esptool --port COM8 erase_flash
ESP32-C3 Installation instructionsから最新バージョンのファームウェアをダウンロードします。
※ 本記事執筆時点ではESP32_GENERIC_C3-20250415-v1.25.0.bin
でした。
ファームウェアをダウンロードしたフォルダへ移動し、下記コマンドでインストールします。
※ ポート及びファームウェアバージョンは利用環境に合わせて変更して下さい。
esptool --port COM8 --baud 460800 write_flash 0 ESP32_GENERIC_C3-20250415-v1.25.0.bin
出力内容を参考に記載します。
>esptool --port COM8 --baud 460800 write_flash 0 ESP32_GENERIC_C3-20250415-v1.25.0.bin
esptool.py v4.8.1
Serial port COM8
Connecting....
Detecting chip type... ESP32-C3
Chip is ESP32-C3 (QFN32) (revision v0.4)
Features: WiFi, BLE
Crystal is 40MHz
MAC: 24:ec:4a:f1:f2:84
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 460800
Changed.
Configuring flash size...
Flash will be erased from 0x00000000 to 0x001c0fff...
Compressed 1835856 bytes to 1115756...
Wrote 1835856 bytes (1115756 compressed) at 0x00000000 in 30.8 seconds (effective 476.8 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
Thonnyのインストールと設定
Thonnyのページからインストーラをダウンロードしてインストールします。

👆Thonnyを起動し、Tools-Optionsを選択します。

👆Interpreterタブのinerpriter
にMicropython(ESP32)
、PortにUSBシリアル変換モジュールのポートを指定します。

👆こんな感じの表示になります。

👆マイナス極(GND)に接続していたIO9ピンを外してから、タクトスイッチをぽちっと押してすぐ離します。
この操作で、ESP32-C3-WROOM-02-N4
が再起動し、Download Bootに設定されていたブートモードが通常モードになります。

👆Shellの領域にコンソール出力が表示されます。こんな感じの表示になります。

中央の領域に以下のサンプルコードを入力し、保存ボタンをクリックします。
import time
while True:
time.sleep(1)
print("test message")

👆MicroPython Device を選択します。

👆File Name にmain.py
と入力し、OKをクリックします。
main.py
はESP32-C3-WROOM-02-N4
の起動時に自動実行されるファイル名です。

👆もう1回タクトスイッチをぽちっと押して再起動します。

👆ESP32-C3-WROOM-02-N4
が再起動し、1秒間隔でtest message
とコンソールに出力されます。
これでMycroPythonでのプログラム書き込みの確認ができたことになります。
参考

👆ピン配列ESP32-C3-WROOM02 Datasheet 3.1 PinLayout

👆ブートモードESP32-C3-WROOM02 Datasheet 3.3 Strapping Pins
用品一覧
上記の解説で使う用品とリンクです。

👆Wi-Fiモジュール ESP32-C3-WROOM-02-N4



👆低損失レギュレーター LP2950L-33-T92 3.3V100mA



👇関連記事
👇参考URL
- ESP32-C3-WROOM-02の開発環境を構築する
- Check! IoT ができるようになるまで ~ ESP-WROOM-02 にシリアル通信で接続する
- ESP32-C3-WROOM02 Datasheet
- ESP32-C3 Series Datasheet
本記事へのリンク

https://docs.saurus12.com/device/esp32_c3_wroom_setup
[keywords]
ESP32-C3-WROOM-02-N4 Arduino MicroPython
更新日:2025年05月17日