Flexi BMS 備忘録④FWアップデート

もうあまり触ることがないと思っていたFlexi BMSを触ることになった。ファームウェアアップデートだ。これは慣れるとさほどではないけど、初の試みでは心が折れかねない苦行となる。おそらく日本人の誰の役にも立たないだろうが、私個人の備忘録として記す。今回は以下余計なコメントを入れず、淡々と記す。

→これが本家のFWアップデート方法のリンク

本家サイトを翻訳しつつ見ながら、補足として今回の投稿を見れば良いと思う。本家サイトだけだとつまずくポイントがいくつかある。

本家サイトのリンクからHtermとZadigというソフトをそれぞれ入手する。

↑ Hteamを起動したらFlexi BMSとPCをUSBで繋ぎ左上のボタンでソフトと接続する。ConnectからDisconnectに変わっていればOK。
↑ 黄色の円のところに$$と入力すると、現在のパラメータがずら〜〜っと出てくるのでとりあえずスクショを撮っておく。後で役に立つかもしれない??
↑ このHtermというソフトは日本語キーボードだと「=」が打てなかったりして面倒なので英語(USキーボード)モードに切り替えられるようにしておこう。

パラメーターをスクショを取るなりして保存したら、次は$Bと打ち込む。するとBMSはブートローダーモードになる。

そしてとりあえず、Windowsのデバイスマネージャーを開いてみる。

→ ユニバーサルシリアルバスデバイスのところにSTM32 BOOTLOADERが表示されていれば問題ない。そうでない場合はZadigを起動する。
↑ 上のoptionsをクリックしてList All Devicesにチェックを入れた後、画像のように「STM32 BOOTLOADER」を選択して、右下の「Reinstall Driver」をクリック。バーが動いて30秒程度待つとインストールが終わる。もう一回デバイスマネージャーを開いてみよう。ユニバーサルシリアルバスデバイスのところにSTM32 BOOTLOADERが表示されていればOKだ。

ここまで来たらHteamの接続を切る。これが大事だ。左上のDisconnectをクリックして接続を切る。しかしUSB接続は物理的には切らない。あくまでHteamのソフトとの接続を内部的に切る形だ。

↑ 本家のリンク先からdfu-utilというソフトをダウンロードする。画像では日本語に訳してあるが、リリースというリンクをクリック。何やらたくさん出てくるが、ここで0.9-win64.zipをダウンロード。

さらに公式から最新版のファームウェアもダウンロード。dfu-utilのフォルダに最新ファームウェアのbinファイルを入れる。

↑ このような形になる。今回は0.19だ。
↑ そのままフォルダパスにcmdと打ち込む。するとコマンドプロンプトが起動する。

↑ コマンドプロンプトでdfu-util -lと打ち込む。緑枠のように認識されればOK。ここに罠があり、さきほどのHteamの接続を切らないと認識されないのだ。また、utilと次のハイフン(-)の間にはスペースが入る。これも罠だ。

↑ 上の黄枠はスペースを入れなかった場合、認識されない。下の黄枠はスペースを入れた場合、これで正しく認識される。
↑ いよいよ最後だ。公式に則り、上のようなコマンドを入れてファームウェアをアップデートするのだが、これが何回か失敗する。そのたびにコマンドを入れるのは面倒なのでテキストドキュメントを開いてあらかじめコマンドを書く。これをコピーしてコマンドに貼り付けて実行、これを成功するまで繰り返す。運が悪ければ10回以上失敗することもある。後半の-D以降はひとつスペースを空けたのち、ファームウェアのbinファイル名となる。

とにかく失敗してもコマンドを繰り返して、100%まで行けばオッケー。あとはHteamを開き、$Wと打ち込みファームウェアが更新されているか確認。あとは$$と打ち込んで、はじめに撮ったスクショと設定を見比べるなり、また設定を弄るなりお好きにどうぞ。

以上!