ESP32のMicroPythonをバージョンアップする方法【安全・失敗しない手順】
この記事では、ESP32のMicroPythonのバージョンアップ方法を解説します。
結論
ESP32 の MicroPython は、事前にフラッシュを消去し、公式の安定版ファームウェアを使用することで、安全にバージョンアップできます。この記事の手順を守れば、起動しなくなるなどのトラブルを避けられます。
この記事で学べること
- MicroPython をバージョンアップすべき理由が分かる
- ESP32のMicroPythonのバージョンアップ方法
- バージョンアップの確認方法
なぜ MicroPython をバージョンアップする必要があるのか?
MicroPython は継続的に改善されており、バージョンアップには以下のメリットがあります。
- バグ修正・安定性向上
- 新機能・新モジュールの追加
- ESP32 新リビジョンへの対応
- ライブラリ互換性の改善
一方で、手順を誤ると起動しなくなるリスクもあるため、正しい方法で行うことが重要です。
バージョンアップ前の注意点(重要)
ファイルと設定のバックアップ
- main.py / boot.pyなどのプログラムファイル
- カスタムライブラリ
ファームウェア更新時に、これらは すべて消去されます。
使用中バージョンの確認方法
MicroPython v1.26.0 on 2025-08-09; Generic ESP32S3 module with ESP32S3
Type "help()" for more information or .help for custom vREPL commands.
>>> import sys
>>> print(sys.version)
3.4.0; MicroPython v1.26.0 on 2025-08-09
>>>
ステップごとの解説
- 必要な部品を準備する
今回もESP32として、M5STACK社のM5StampS3を使います。
M5StampS3は、スイッチサイエンス社、マルツエレック社などで購入することができます。 - MicroPythonの新バージョンを探す
MicroPythonのサイトにて、「DOWNLOAD」をクリックします。
表示されたページにて、MCU: esp32s3をクリックすると、下図のようになるので、表示された一覧から「ESP32-S3」をクリックします。

- MicroPythonをPCにダウンロードする
Firmware→Releasesから、(latest)のものが、今回、使用するv1.26.1なので、拡張子が「.bin」のものをクリックすると、PCにダウンロードされます。

- バックアップする
MicroPythonのバージョンアップするには、初期化、インストールという手順になるので、ESP32に保存しているファイルがあればバックアップします。
・ESP32の中のファイルリスト取得コマンド
mpremote fs ls
・ESP32の中のファイルコピーコマンド
mpremote fs cp :ファイル名 .
% mpremote fs ls
ls :
139 boot.py
716 main.py
% mpremote fs cp :main.py .
cp :main.py .
% mpremote fs cp :boot.py .
cp :boot.py .
- M5StampS3を初期化する
下記コマンドで初期化します。初期化する時は、M5StampS3のボタンを押下しながらUSBケーブルを接続します。
なぜ消去が必要か?
・古いデータが残ると起動に失敗する
・バージョン不整合を防ぐ
% ls -l /dev/tty.usbmodem*
crw-rw-rw- 1 root wheel 0x9000006 8 24 16:37 /dev/tty.usbmodem11401
注:"11401"の部分は環境によって変わります
% 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.8 seconds.
Hard resetting via RTS pin...
- ダウンロードしたMicroPythonをインストールする
下記コマンドでインストールします。
esptool.py --port /dev/tty.usbmodem11401 --before default_reset write_flash -z 0x0 ./Downloads/ESP32_GENERIC_S3-20250911-v1.26.1.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 1735456 bytes to 1137236...
Wrote 1735456 bytes (1137236 compressed) at 0x00000000 in 10.5 seconds (effective 1323.1 kbit/s)...
Hash of data verified.
Leaving...
Hard resetting via RTS pin...
- MicroPythonのバージョンを確認する
ESP32のUSBポートからUSBケーブルを一旦、外して、再度、接続します。VSCodeを起動します。
REPLのところをみると、v1.26.1となっていることが確認できます。
MicroPython v1.26.1 on 2025-09-11; Generic ESP32S3 module with ESP32S3
Type "help()" for more information or .help for custom vREPL commands.
>>> import sys
>>> print(sys.version)
3.4.0; MicroPython v1.26.1 on 2025-09-11
>>>
まとめ
- MicroPython のバージョンアップは定期的に行う価値がある
- 事前バックアップとフラッシュ消去が重要
- 公式 stable 版を使えば安全に更新できる
ESP32にインストールしたMicroPythonのバージョンアップ方法を説明しました。通常のPythonであれば、Pythonだけをバージョンアップできますが、MicroPythonはそれ単体でバージョンアップができないため、必要なファイルをバックアップ、初期化、インストールという手順となります。
本記事を参考に、ESP32 の MicroPython を安全に最新化してください。
