M5Stack-SD-Updater
READMEにも”Gamebuino”みたいなのを作った! と書かれている通り、Gamebuinoのブートローダのような動きをするアプリケーション。
これを使うことでSDカードに入れてあるバイナリをM5Stack単体で焼き直すことができる。
Gamebuinoの時はメニューに戻る機能もブートローダーに入っていたように思うが、これの場合は、各アプリに実装する必要があるようだ。
これはブートローダに手を入れず、ESP32のOTAアップデートの機能を流用していることによる制限だろう。
これはOTAの仕組みを使ったものらしい
SDカードにあるファームウェアのバイナリを、OTA領域に書き込んでリブートする
あとはOTAと同様に起動時にOTA領域を実行領域に戻すのだろう。
パーティションテーブルはこれか?
最近の更新が無いので正しいのか気になる
対象となるプログラムにはあらかじめmenu.binを焼き戻す機能を実装しておく
これが無くてもmenu.binから焼きこむことはできるが、menu.binに戻る方法がなくなる
https://gyazo.com/16b38c2e38249019cd7576b050bbede5