見出し画像

ESP32 Arduino無し書き込みしてみた(esptool.py)

こんにちは、Rcatです。
今回は配布している、ESP32-CAMお手軽監視カメラシステムをさらにお手軽化するため、ファームウェアの書き込みが簡単にできないか考えてみました。
というわけでPythonをさえ入っていれば、コンパイル済みのバイナリを書き込む方法がありましたので紹介します。


ESPToolのインストール

ESP32に対して書き込んだり、削除したりするためのものです。
Arduinoでも内部ではこれを使用しています。
そして、これはPython版が用意されており、非常に簡単にインストールできます。インストール方法は以下です。
pipというのは、Pythonのライブラリインストールコマンドです。
なので、Pythonが入っていないと実行できませんので、予めご了承ください。

pip install esptool

さて、これで環境は整いました。早いですね。

書き込み

まずはESP32をパソコンに接続してください。
開発ボードか上記のように専用の書き込みボードがあるとやりやすいですね。
ない場合はUSBシリアル変換アダプターを使用して接続してください

次に私が配布しているバイナリを書き込んでみましょう。
配布データを展開すると、以下のようなデータが入っています。
使用するのはwrite.batです。
それ以外は書き込まれるデータになります。

ダブルクリックでバッチを立ち上げると、黒い画面でポート番号を要求されますので数字で入力してください。
数字は分からないと思うので、powershellを使ってデバイス検索をして表示されます。
以下のRcatの例だとCOM5がESP32のシリアルポートなので、"5"と入力します。

この番号はArduinoで言う以下の部分になります。

番号が合っていると書き込みが開始されます。
書き込みが始まらなかったり、すぐに落ちてしまう場合は番号が違うということです。

まとめ

いかがでしたか?
お手軽監視システムといっても、本体の用意があまりお手軽ではありませんでした。具体的にはソースのコンパイルが必要な部分ですね。ボードの追加やライブラリのインストールを行った上で、コンパイルをしないと書き込めないというのが非常にやりづらいです。
その点、今回の方法を使えば、コンパイル済みのバイナリを簡単に書き込むことができるので、パソコンと繋ぐことさえできればかなり楽に書き込むことができると思います。

配布

今回紹介したバッチとESP32-CAMバイナリのセットは以下から配布していますので、よろしければご活用ください。
※このパック内のバイナリは、アップデートがあっても更新されません。導入後必ずOTAアップデートボタンを押して更新してください。

https://script.google.com/macros/s/AKfycbysRqb7488rvLGPqOOhGlr0w513zIHC67BEPzJtPAKrAc4lKfDCmsB0mVL1Ha5BY5P0/exec?name=ESP32_バイナリ書き込みパック

ESP32-CAMについては以下をご参照ください。


情報が役に立ったと思えば、僅かでも投げ銭していただけるとありがたいです。