はじめに
電子工作やIoTプロジェクトを始めるなら、ESP32は最適な選択肢の一つです。
本記事では、2026年現在の最新情報をもとに、Arduino IDE 2.xを使ったESP32の開発環境構築を一から解説します。
初めての方でも安心して取り組めるよう、画像付きで丁寧に説明していきます。
ESP32とは?その魅力を徹底解説
ESP32の基本スペック
ESP32は、Espressif Systems社が開発した32ビットマイコンで、以下の特徴を持つ革新的なチップです。
- Wi-Fi(2.4GHz)とBluetooth(BLE/クラシック)を標準搭載
- デュアルコア 最大240MHzの高性能CPU
- 技適取得済みで日本国内でも安心して使用可能
- 低価格(数百円~)で入手可能
- 豊富なGPIOピン(デジタル/アナログ入出力、PWM、I2C、SPIなど)
なぜESP32が人気なのか?
-
Arduino IDEで開発できる
豊富なライブラリとコミュニティのサポートにより、Arduinoと同じ感覚で開発可能です。 -
IoTプロジェクトに最適
Wi-FiやBluetoothを活用したスマート家電、センサーネットワーク、遠隔制御などが簡単に実現できます。 -
省電力設計
ディープスリープモードにより、バッテリー駆動のプロジェクトにも対応。 -
幅広い製品ラインナップ
M5Stack、ESP32-WROOM、ESP32-S3、ESP32-C3など、用途に応じた多様なモジュールが存在します。
こんなプロジェクトに使われています
- スマートホームデバイス(照明制御、温度監視など)
- ウェアラブルデバイス
- ロボット制御
- 環境センサーネットワーク
- Webサーバー構築
本記事では、ESP32-WROOMまたはESP32-S3の開発ボードを使って、基本的なLED点滅(Lチカ)から始めていきます。
おすすめのESP32開発ボード
ESP32-WROOM開発ボード(Amazon)
ESP32-WROOM-32(秋月電子)
初めての方は、USB-Cコネクタ搭載の最新モデルがおすすめです。
必要なもの
開発を始める前に、以下を準備しましょう。
ハードウェア
- ESP32開発ボード(ESP32-WROOM、ESP32-S3など)
- USBケーブル(Type-CまたはMicro-USB、ボードに応じて)
- ブレッドボード
- LED(赤色または好みの色)
- 抵抗(220Ω~330Ω)
- ジャンパーワイヤー
ソフトウェア
- Arduino IDE 2.x(最新版を推奨)
- USBドライバ(後述)
Arduino IDE 2.xのインストール
Arduino IDEをダウンロード
まずは、Arduino IDEの最新版(2.x系)をインストールします。
- Arduino公式サイトにアクセス
- お使いのOS(Windows/Mac/Linux)に対応したバージョンをダウンロード
- インストーラーを実行し、画面の指示に従ってインストール
Arduino IDE 2.xは、旧バージョン(1.x)に比べて以下の改善があります:
- 高速なコンパイルとファイル検索
- 自動補完機能による快適なコーディング
- モダンなユーザーインターフェース
- 統合されたライブラリマネージャー
Arduino IDEにESP32ボードを追加する
ステップ1:ボードマネージャのURLを設定
ESP32をArduino IDEで使用するには、ESP32ボードパッケージを追加する必要があります。
- Arduino IDE 2.xを起動
- [ファイル] → [基本設定] (Windowsの場合) または [Arduino IDE] → [Settings] (Macの場合) を開く
- 「追加のボードマネージャのURL」に以下のURLを入力:
https://espressif.github.io/arduino-esp32/package_esp32_index.json
ボードマネージャURL設定画面
💡 ポイント: 2026年現在、EspressifはGitHub経由の新しいURLを推奨しています。旧URLも動作しますが、最新版を使用しましょう。
ステップ2:ESP32ボードパッケージをインストール
- 左側のサイドバーから 「ボードマネージャ」 アイコンをクリック(または [ツール] → [ボード] → [ボードマネージャ])
- 検索欄に 「esp32」 と入力
- 「esp32 by Espressif Systems」 を見つけてインストール
ボードマネージャーでESP32を検索
インストール時の注意点:
- 最新版(3.x系)を推奨しますが、安定性を優先する場合は2.0.x系も選択可能
- インストールには数分かかることがあります
- ネットワーク環境により時間がかかる場合もあるので、気長に待ちましょう
ステップ3:USBドライバのインストール
ESP32とPCを接続する際、USBシリアル変換ドライバが必要です。
使用するESP32ボードによって、必要なドライバが異なります。
主なドライバの種類
| ドライバ | 対応チップ | ダウンロードリンク |
|---|---|---|
| CH340/CH341 | 多くの安価なESP32ボード | WCH公式サイト |
| CP210x | 一部の開発ボード | Silicon Labs公式サイト |
| USB内蔵 | ESP32-S3など最新ボード | ドライバ不要(UF2対応) |
ドライバのインストール手順
- ESP32をUSBで接続
- Windowsがドライバを自動認識しない場合、上記リンクからダウンロード
- インストーラーを実行し、指示に従う
- デバイスマネージャー(Windowsキー + X → デバイスマネージャー)で 「ポート (COMとLPT)」 を確認
- 「USB-SERIAL CH340 (COMx)」 のように表示されていればOK
💡 トラブルシューティング: ポートが認識されない場合は、USBケーブルの確認(データ転送対応か)、別のUSBポートの使用、PCの再起動を試してください。
これで、ESP32の開発準備が完了しました!次は実際にプログラムを書き込んでみましょう。
ESP32でLチカ実装!回路とプログラム
Lチカ回路の作成
LED点滅(Lチカ)は、電子工作の基本中の基本です。
まずは、簡単な回路を組んでみましょう。
回路図
Lチカ用回路図
配線の説明
| 接続元 | 接続先 |
|---|---|
| ESP32 GPIO12 | 抵抗(220Ω~330Ω)の片側 |
| 抵抗のもう片側 | LEDのアノード(長い足、+側) |
| LEDのカソード(短い足、-側) | ESP32 GND |
実際の配線
ブレッドボード上の実装例
💡 注意点:
- 抵抗を必ず入れる: LEDに直接電流を流すと破損します
- 極性に注意: LEDの長い足(アノード)がプラス側
- 使用できないピン: GPIO36、GPIO39、GPIO34、GPIO35は入力専用のため、出力に使用不可
詳細はESP32-WROOM データシートを参照してください。
Arduino IDEでボード設定
コードを書く前に、ESP32ボードの設定を行います。
- [ツール] → [ボード] → [esp32] から使用するボードを選択
- ESP32-WROOM系: 「ESP32 Dev Module」
- ESP32-S3系: 「ESP32S3 Dev Module」
- [ツール] → [Port] からESP32が接続されているCOMポートを選択
- 例: COM3(Windows)、/dev/cu.usbserial-XXXX(Mac)
ボード選択画面
ボードが見つからない場合:
- USBケーブルを差し直す
- 別のUSBポートを試す
- デバイスマネージャーで認識されているか確認
Lチカプログラムの作成
Arduino IDEに以下のコードを入力します。
// GPIO12にLEDを接続
const int LED_PIN = 12;
void setup() {
// GPIO12を出力モードに設定
pinMode(LED_PIN, OUTPUT);
// シリアル通信を初期化(デバッグ用、オプション)
Serial.begin(115200);
Serial.println("ESP32 Lチカプログラム起動!");
}
void loop() {
// LEDを点灯
digitalWrite(LED_PIN, HIGH);
Serial.println("LED ON");
delay(500); // 500ミリ秒待機
// LEDを消灯
digitalWrite(LED_PIN, LOW);
Serial.println("LED OFF");
delay(500); // 500ミリ秒待機
}
コードの解説
| コード | 説明 |
|---|---|
const int LED_PIN = 12; |
GPIO12をLED用ピンとして定義 |
pinMode(LED_PIN, OUTPUT); |
GPIOを出力モードに設定 |
digitalWrite(LED_PIN, HIGH); |
GPIOをHIGH(3.3V)にしてLED点灯 |
digitalWrite(LED_PIN, LOW); |
GPIOをLOW(0V)にしてLED消灯 |
delay(500); |
500ミリ秒(0.5秒)プログラムを停止 |
Serial.begin(115200); |
シリアル通信を初期化(デバッグ用) |
プログラムの書き込み
- Arduino IDEの左上の「→」ボタン(アップロード) をクリック
- コンパイルが開始されます(「Compiling sketch…」と表示)
- 「Connecting…」と表示されたら、ESP32のBOOTボタンを長押し(ボードによっては不要)
- 「Leaving… Hard resetting via RTS pin…」と表示されたら書き込み完了
💡 書き込みが失敗する場合:
- BOOTボタンを押しながらアップロードを試してください
- Upload Speedを115200から9600に変更してみてください([ツール] → [Upload Speed])
- シリアルモニタを開いている場合は閉じてください
動作確認とデバッグ
LEDの動作確認
書き込みが完了したら、LEDが0.5秒間隔で点滅するはずです。
同じように動作していれば成功です!🎉
シリアルモニタで動作確認
プログラムの動作をより詳しく確認するには、シリアルモニタが便利です。
- Arduino IDEの右上にある**「シリアルモニタ」アイコン**をクリック
- 右下のボーレート設定を115200 baudに変更
- 「LED ON」「LED OFF」が交互に表示されることを確認
💡 ポイント: シリアルモニタはデバッグに非常に便利なツールです。センサー値の表示やエラー確認に活用しましょう。
よくあるトラブルと対処法
1. ボードが認識されない
症状: ポート選択に何も表示されない
対処法:
- USBケーブルがデータ転送対応か確認(充電専用ケーブルでは認識されません)
- USBドライバが正しくインストールされているか確認
- デバイスマネージャーで「不明なデバイス」がないか確認
- 別のUSBポートを試す
- PCを再起動
2. 書き込み時に「Failed to connect」エラー
症状: 「A fatal error occurred: Failed to connect to ESP32」
対処法:
- BOOTボタンを押しながらアップロード
- Upload Speedを115200から9600に変更
- ENボタンを押してリセット後、再度アップロード
- USBケーブルを交換
3. コンパイルエラーが出る
症状: 「error: ‘xxx’ was not declared in this scope」
対処法:
- コードの綴りミスを確認
- ESP32ボードパッケージが正しくインストールされているか確認
- Arduino IDEを再起動
4. LEDが点滅しない
症状: プログラムは書き込めたがLEDが光らない
対処法:
- LEDの極性(向き)を確認
- 抵抗が正しく接続されているか確認
- 別のGPIOピン(例: GPIO13、GPIO14)を試す
- LEDが故障していないか別の回路でテスト
ESP32のピン配置を理解しよう
ESP32を使いこなすには、ピン配置の理解が重要です。
主要なGPIOピンの特徴
| ピン | 特徴 | 用途 |
|---|---|---|
| GPIO36~39 | 入力専用 | センサー入力、アナログ読み取り |
| GPIO0 | 起動モード選択 | BOOTボタン(開発時以外は使用推奨) |
| GPIO2 | 起動時LOW必須 | LED制御可(起動に注意) |
| GPIO12~15 | 汎用GPIO | デジタル入出力、PWMなど |
| GPIO34、35 | 入力専用、プルアップなし | アナログ入力専用 |
💡 推奨GPIOピン: GPIO12~27は比較的自由に使えます。
詳細はESP32 Pinout Referenceも参照してください。
次のステップ:応用プロジェクト
Lチカができたら、次はこんなプロジェクトに挑戦してみましょう!
初級編
- 複数のLED制御: 信号機のような点灯パターンを作る
- スイッチ入力: ボタンを押したらLEDが光る
- PWM制御: LEDの明るさを変化させる(フェードイン/アウト)
中級編
- 温湿度センサー連携: DHT11/DHT22で温度・湿度を測定
- OLED表示: 小型ディスプレイに情報を表示
- サーボモーター制御: ロボットアームを動かす
上級編
- Wi-Fi通信: スマホからLEDを操作(Webサーバー構築)
- Bluetooth通信: スマホアプリと連携
- IoTダッシュボード: センサーデータをクラウドに送信
当サイトでは、これらのプロジェクトも順次紹介していきます!
関連記事
他のESP32プロジェクトも参考にしてください:
- ESP32汎用テストボードの作成 - デバッグに便利な自作ボード
- ESP32でニキシー管時計を作る - レトロな時計プロジェクト
- ESP32でMCP23017 I/Oエクスパンダー - GPIO拡張テクニック
まとめ
本記事では、2026年最新版として、ESP32の開発環境構築からLチカ実装までを解説しました。
本記事のポイント
✅ Arduino IDE 2.xを使った最新のセットアップ手順
✅ ESP32ボードパッケージの追加方法
✅ USBドライバのインストール
✅ Lチカプログラムの作成と書き込み
✅ よくあるトラブルの対処法
✅ 次のステップへの道筋
ESP32は、Wi-FiとBluetoothを搭載した強力なマイコンで、IoTプロジェクトに最適です。
本記事で基礎を固めたら、ぜひ様々なセンサーやアクチュエーターと組み合わせて、オリジナルのプロジェクトに挑戦してみてください。
電子工作の世界は無限大です。楽しい創作ライフを!
次回予告: ESP32でWi-Fi接続とWebサーバー構築に挑戦します。お楽しみに!
参考リンク
See You Next Time! 🚀
更新履歴
- 2026年2月: Arduino IDE 2.x対応、最新情報に全面リライト
- 2020年8月: 初版公開