1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ESP32‑S3 × Python で作る小型I/Oデバイス(第2回:ESP32-S3 の環境構築)

1
Last updated at Posted at 2026-02-26

連載一覧

はじめに

第1回では、このプロジェクト全体のゴールとデバイスの仕様を整理し、ESP32‑S3 と Python アプリを組み合わせた「小さくて扱いやすい IoT デバイス」を作るための全体像を共有しました。
第2回となる今回は、ESP32‑S3 を実際に動かすための環境構築を行います。
Arduino IDE を使って開発環境を整え、USB 経由でファームウェアを書き込み、最小限の動作確認(USB シリアル接続・オンボードLED 点滅)まで行います。

環境構築

必要なもの

  • PC(今回はWindows11を使用)
  • ESP32‑S3 ボード(USB Type‑C ケーブル)
  • インターネット環境(ボードマネージャの取得に必要)

Arduino IDE のインストール

  • Arduino 公式サイトから最新版をダウンロードする
    「Windows Win 10 or newer (64-bit)」を選択
    https://www.arduino.cc/en/software/#ide
    image.png
  • ダウンロードしたファイルを実行し、デフォルト設定のままインストールする
    ※必要に応じて選択を変更してください。

Arduino IDE のセットアップ

  • 「File」→「Preferences」→「Language」を「日本語」に設定する
  • 「ツール」→「ボード」→「ボードマネージャ」を開く
  • 検索欄に「ESP32-S3」と入力し、esp32ボードをインストール
    image.png

ファームウェア書き込み

接続とボードの選択

  • ESP32-S3とPCをUSBケーブルで接続
  • 「ツール」から、「ボード」と「ポート」を設定
    ボード:ESP32S3 Dev Module
    ポート:ESP32-S3を接続したポートを選択
    image.png
  • ボード設定の下記3項目を設定
    image.png
    image.png
    image.png
    ※ESP32-S3にUSBポートが2つある場合は、「ESP32 Family Device」と表示される方を使用します。「未知のボード」と表示される場合はもう1つのポートに差し替えてくだい。

サンプルコードの書き込み

  • 下記のサンプルコードをArduino IDEに入力して書き込みを実行
  • シリアルモニタに1秒間隔で「Hello from ESP32-S3」が表示されたら書き込み成功
void setup() {
  Serial.begin(115200);     // シリアル開始
  delay(1000);     // 1秒待機
  Serial.println("ESP32-S3 USB Serial Connected!");
}

void loop() {
  // 1秒間隔でメッセージを表示
  Serial.println("Hello from ESP32-S3!");
  delay(1000);
}

ここまででESP32-S3を扱うための環境構築は完了しました。

USB シリアル接続

PCとの接続

Arduino IDEでシリアルモニタができていれば、すでにPCとのシリアル接続は完了しています。
第5回で扱う予定のPythonからの接続も、今回選択したポート番号を使用します。

最小動作確認(オンボードLED 点滅)

  • 下記のサンプルコードを書き込むと、ボードに搭載されているLEDが点滅する
    ※ESP32-S3ボードにはいくつか種類があり、ボードによってピン番号が違う様です。私のボード(ESP32-S3-WROOM)は44番ピンでRXのオンボードLEDが点滅しました。
    使用するボードに合わせてピン番号は変更してください。

image.png
※点滅しない場合はUSBケーブルを抜き差しするか、ボード上にあるRETボタンを押してみてください。

サンプルコード

const int LED_PIN = 44;     // 使用するPIN番号

void setup() {
  pinMode(LED_PIN, OUTPUT);     // 選択PIN番号を出力に設定
}

void loop() {
  digitalWrite(LED_PIN, HIGH);  // 点灯
  delay(500);
  digitalWrite(LED_PIN, LOW);   // 消灯
  delay(500);
}

次回予告

第3回では、ESP32‑S3 を「実際に外部デバイスを制御できるマイコン」として使うための基礎となる I/O(入力・出力)まわりの実装を扱います。
扱う内容は次の3つが中心です。

  • デジタル入出力(DIO)
    ボタン入力やリレー制御など、最も基本的な GPIO の使い方を整理します。
  • PWM 出力(LED やモーター制御)
    LED の明るさ調整やサーボモーター制御に使う PWM 出力を行います。
  • ADC(アナログ入力)
    可変抵抗・光センサー・温度センサーなどのアナログ値を読み取る方法を扱います。
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?