.binを.uf2に変換するWebサイト

Seeed K.K.の松岡です。

Wio TerminalをAzure IoTに接続するサンプルコード、wioterminal-aziot-exampleをリリースする都度、お手軽に書き込みできるようにビルド済みの.uf2ファイルをReleaseに添付しています。毎回、.binファイルを.uf2ファイルに変換するPythonプログラムuf2conv.pyをダウンロードしてWSL2でpython3 uf2conv.py -c -b 0x4000 -o xxx.uf2 yyy.binを実行していますが、ちょっと面倒です。そこで、.binファイルを.uf2ファイルに変換するWebサイトを作ってみました。

f:id:matsujirushix:20210328135612p:plain

Webサイトで.binを.uf2に変換

Webサイトの使い方です。

https://seeedjp.github.io/uf2/

f:id:matsujirushix:20210328140900p:plain

  1. アドレスを入力します。Seeeduino XIAOは0x2000、Wio Terminalは0x4000と入力してください。
  2. Load .binをクリックして、.binファイルを選択します。
  3. 画面下部に、読み込んだプログラムのサイズが表示されます。
  4. Save .uf2をクリックして、.uf2ファイルを保存します。

何故、.binファイルを.uf2ファイルに変換するの?

.uf2ファイルにしておくと、特別なツール(Arduino IDEとか)が無くても、プログラムをSeeeduino XIAOやWio Terminalに書き込むことができるからです。

Seeeduino XIAOやWio Terminalには、UF2 Bootloaderというブートローダーがあらかじめ書き込んであります。これらのデバイスでブートローダーモードに切り替える(リセットを素早く2回やるやつ)と、USB接続しているPCにドライブが表示されます。このドライブに.uf2ファイルをコピーすると、プログラムがデバイスに書き込みできるようになっています。(参考

何故、アドレスは0(ゼロ)ではないのか?

.binのプログラム(バイナリ)を配置するアドレスを入力します。Seeeduino XIAOやWio Terminalは、先頭にブートローダー(UF2 Bootloader)があるので、その後ろに配置します。
Seeeduino XIAOは0x2000、Wio Terminalは0x4000に配置するようコンパイルされているので、これを指定します。

変更履歴

日付 変更者 変更内容
2021/3/29 松岡 作成