ESP32へバイナリをダウンロードするバッヂファイル
ESP32へバイナリをダウンロードするバッヂファイルをご紹介します。
基本的には、Arudino IDEが書き込み時に使っているコマンドを、バッヂファイルで実行しています。
下の絵は私が作っているWiFIコントローラーのバイナリをM5Stamp C3にダウンロードするファイルのリストです。
バッチファイルが1つ、アプリが1つ、バイナリが4つあります。
Mini_210_update,batの中身はつぎになります。
2行目がパソコンのComportの状態を出力するコマンド
3行目がESP32が接続されているComportの入力
4行目が書き込みコマンドです。
echo;
powershell -sta -ExecutionPolicy Unrestricted -Command "Get-WmiObject -Class Win32_PnPEntity -Filter \"PNPClass='Ports'\" | select Name,Manufacturer,DeviceID"
set /P PORT="WiFi DCC COM Port Number ?"
.\esptool.exe --chip esp32c3 --port COM%PORT% --baud 921600 ^
--before default_reset --after hard_reset ^
write_flash -z --flash_mode dio --flash_freq 80m --flash_size 4MB ^
0x0 Mini_.ino.bootloader.bin ^
0x8000 Mini_.ino.partitions.bin ^
0xe000 boot_app0.bin ^
0x10000 Mini_.ino.bin
pause
この書き込みコマンドがどこから来たかといいますと、Arudino IDE からになります。
コマンドを調べ方ですが、環境設定でログが出力されるように設定します。
環境設定メニューを開きます。
”より詳細な情報を表示する”の”書き込み”にチェックを入れます。
これで書き込み時のログが出力されるようになります。
この状態で書き込みを行います。
Arudino IDE の下半分にログが出力されますが、その中にバイナリを書き込んでいる部分があります
C:\User\から始まる長い部分です。
改行をいれてみると、
esptool.exeを呼び出す部分
様々な設定
バイナリの書き込み先アドレスとバイナリファイルのパス
で構成されていることがわかります。
C:\Users\xxxxo\AppData\Local\Arduino15\packages\m5stack\tools\esptool_py\4.2.1/esptool.exe
--chip esp32 --port COM7 --baud 1500000 --before default_reset --after hard_reset write_flash -z
--flash_mode dio --flash_freq 80m --flash_size 4MB
0x1000 C:\Users\hideo\AppData\Local\Temp\arduino_build_603033/Pthrottle99.ino.bootloader.bin
0x8000 C:\Users\hideo\AppData\Local\Temp\arduino_build_603033/Pthrottle99.ino.partitions.bin
0xe000 C:\Users\hideo\AppData\Local\Arduino15\packages\m5stack\hardware\esp32\2.0.6/tools/partitions/boot_app0.bin
0x10000 C:\Users\hideo\AppData\Local\Temp\arduino_build_603033/Pthrottle99.ino.bin
ということで、適当なフォルダを作り、必要なファイルをCopyして、Arudino IDE が吐き出したログを参照しながらバッヂファイルを修正します。
最後に、バッチファイルを実行して、ESP32へバイナリファイルが書き込めたことを確認して、作業終了となります。
では、また!
この記事が気に入ったらサポートをしてみませんか?