2026年11月2日月曜日

ubuntuからSTM32CubeProgrammerを利用してstlinkのファームウェアを更新する


背景

probe-rsでstm32マイコンにstlink経由でプログラムを書き込もうとしたら下記のエラーが発生して書き込みが失敗しました。
       Error Failed to open probe: Failed to open the debug probe.

Caused by:
0: An error which is specific to the debug probe in use occurred.
1: The firmware on the probe is outdated, and not supported by probe-rs. The minimum supported firmware version is 3.
Use the ST-Link updater utility to update your probe firmware.

probe-rsの説明ページによるとstlink3の場合3.2なら対応していると書かれているのですが、念の為stlinkのプログラムを更新したところ書き込みが成功しました。
備忘録としてstlinkのファームウェアの書き換え方を記事に残します。

使ったもの

  • ubuntu24.04をインストールしたPC 
  • STM32CubeProgrammer
    下記のページからインストーラーをダウンロードして実行してlinux版をubuntu24.04に入れました。
    STM32CubeProg
    なお、インストーラーのダウンロードにはstmへの会員登録が必要です。
  • 書き換えたいstlink
    今回は下記のstlinkのプログラムを書き換えました。
    nucleo-stm32h753zi
    中国製stlink2コピー品

STM32CubeProgrammerからstlinkのファームウェアを書き換え

stlinkをPCに繋いだ状態でSTM32CubeProgrammerの右側中央にある「ワームウェアアップグレード」を押します。


Open in update modeを押します。
コピー品stlinkは開けないとエラーが表示されましたが何回か押すと読み込まれました。


更新対象のstlinkのファームウェアのバージョンと更新予定のバージョンが表示されます。
問題なければUpdateを押します。


上記の操作でnucleo-h753ziに載っているstlink3のファームウェアをV3JM1からV3J17M11に更新できました。
この更新後はprobe-rsでのプログラム書き込みが成功しました。

中国製のコピー品stlink2も同様の方法でV2J29S7からV2J48S7に更新できました。
このstlink2は更新前のバージョンでもprobe-rsが期待通りに動きましたが、更新できるか気になったので試してみました。




更新後も問題なくプログラムを書き込めるのを確認できました。

おわり

stlinkのファームウェアをubuntuにインストールしたSTM32CubeProgrammerで更新できました。
probe-rsでエラーが発生するstlink3がファームウェア更新によって期待通りに動くようになったので良かったです。

参考

STM32CubeProg

0 件のコメント :