ESP32にMicroPythonをインストールする方法【初心者でも失敗しない完全手順】

この記事では、ESP32にMicroPythonをインストールする方法を解説します。

結論

ESP32 に MicroPython をインストールするには、公式ファームウェアを使用し、事前に開発環境を正しく準備することが重要です。この記事の手順通りに進めれば、初心者でも確実に MicroPython を書き込み、動作確認まで行えます。

この記事で学べること

  • ESP32とPCの接続方法
  • MicroPythonの探し方
  • MicroPythonのインストール方法

なぜ ESP32 に MicroPython を使うのか?

MicroPython は Python ライクな文法でマイコンを制御できる軽量言語です。
ESP32 に MicroPython を導入すると、以下のメリットがあります。

  • C/C++ よりも学習コストが低い
  • 開発・デバッグのスピードが速い
  • IoT プロトタイピングに向いている
  • センサー制御や WiFi 通信を簡単に試せる

特に IoT 学習・検証用途 では、MicroPython は非常に相性の良い選択肢です。

ステップごとの解説

  1. 必要な部品を準備する
    今回はESP32として、M5STACK社のM5StampS3を使います。
    M5StampS3は、スイッチサイエンス社マルツエレック社などで購入することができます。
  2. esptoolをインストールする
    ESP32を初期化したり、MicroPythonをインストールするのに、esptoolが必要になるのでPCにインストールします。
    esptool(esptool.py)は ESP32 や ESP8266 のマイコンにファームウェアを書き込むための公式Python製ツール です。Espressif(ESP32のメーカー)が提供しています。
    インストールするには下記コマンドを実行します。PCにPythonとpipが必要になります。
    pipとは、Pythonのパッケージやライブラリをインストール、アンインストール、管理するためのパッケージ管理システムです。
pip install esptool
  1. M5StampS3とPCを接続する
    M5StampS3はUSB Type-Cコネクタが装備されているので、PCと簡単に接続ができます。
    M5StampS3が接続するポートを調べるため、リセットスイッチを押しながらUSBケーブルでPCと接続して、下記コマンドを実行します。
ls -l /dev/tty.usbmodem*
crw-rw-rw-  1 root  wheel  0x9000006  8 24 16:37 /dev/tty.usbmodem11401
注:"11401"の部分は環境によって変わります
  1. M5StampS3を初期化する
    なぜ、初期化(フラッシュ消去)が必要かを下記します。
  • 以前の 環境(Arduino スケッチなど)が残っている場合がある
  • 書き込みエラーや起動失敗を防ぐため

下記コマンドで初期化します。使用するポートは3で判明したものを使います。

esptool.py --port /dev/tty.usbmodem11401 erase_flash
esptool.py v4.9.0
Serial port /dev/tty.usbmodem11401
Connecting...
Detecting chip type... ESP32-S3
Chip is ESP32-S3 (QFN56) (revision v0.1)
Features: WiFi, BLE, Embedded Flash 8MB (GD)
Crystal is 40MHz
USB mode: USB-Serial/JTAG
MAC: dc:54:75:c8:81:94
Uploading stub...
Running stub...
Stub running...
Erasing flash (this may take a while)...
Chip erase completed successfully in 2.7 seconds.
Hard resetting via RTS pin...
  1. MicroPythonとは
    MicroPythonとは、Python をマイコン(小さなコンピュータ)で動かせるようにした軽量版 です。
     ✅ 特徴
     普通の Python とほぼ同じ文法で書ける
     ESP32 / ESP8266 / Raspberry Pi Pico などの小型マイコンで動く
     センサーやLED、モーターを Pythonコードで直接制御できる
     軽量で、マイコンの小さなメモリでも動作するよう最適化されている
  2. 使用するMicroPythonを探す
    MicroPythonの公式サイトにて、ESP32用の安定版(stable)ファームウェアをダウンロードします。
    ダウンロードするには、「DOWNLOAD」をクリックします。

    ポイント:
    ・初心者は nightly build ではなく stable 版 を使用する
    ・拡張機能付き(GENERIC)を選ぶ

表示されたページにて、MCU: esp32s3をクリックすると、下図のようになるので、表示された一覧から「ESP32-S3」をクリックします。

  1. MicroPythonをPCにダウンロードする
    Firmware→Releasesから、v1.25.0と表示されている拡張子が「.bin」のものをクリックすると、PCにダウンロードされます。最新版は、latestと表示されているv1.26.0ですが、動作が不安定なので、今回はv1.25.0を使います。
  1. M5StampS3にMicroPythonをインストールする
    下記コマンドでインストールします。
esptool.py --port /dev/tty.usbmodem11401 --before default_reset write_flash -z 0x0 ./ESP32_GENERIC_S3-20250415-v1.25.0.bin 

esptool.py v4.9.0
Serial port /dev/tty.usbmodem11401
Connecting...
Detecting chip type... ESP32-S3
Chip is ESP32-S3 (QFN56) (revision v0.1)
Features: WiFi, BLE, Embedded Flash 8MB (GD)
Crystal is 40MHz
USB mode: USB-Serial/JTAG
MAC: dc:54:75:c8:81:94
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Flash will be erased from 0x00000000 to 0x001a7fff...
Compressed 1732848 bytes to 1135871...
Wrote 1732848 bytes (1135871 compressed) at 0x00000000 in 10.4 seconds (effective 1339.1 kbit/s)...
Hash of data verified.

Leaving...
Hard resetting via RTS pin...

よくあるエラーと対処法

ESP32が認識されない

  • USB ケーブルが充電専用
  • ドライバ未インストール

書き込みに失敗する

  • ボード選択が違う
  • フラッシュ消去をしていない

REPL に接続できない

  • ボーレート設定ミス
  • ポート指定ミス

まとめ

ESP32にMicroPythonをインストールすれば、シンプルなコードでLEDを点灯させたり、センサーを動かしたりできます。応用すればIoTデバイスに簡単に組み込めます。
次回は、実際にMicroPythonがインストールされたのか確認します。

類似投稿