Arduino STM32のUSB HIDインタフェースの新しいブートローダー (2)
記事「Arduino STM32のUSB HIDインタフェースの新しいブートローダー」を書いた時点では
Arduino IDEのメニューにてHIDブートローダ経由書き込み指定が出来なかったのですが、
先日の更新後のArduino STM32パッケージをインストールして確認したところ、
メニューに組み込まれていました。
そこで、実際にHID経由でのスケッチ書き込みを試してみました。

試してみたボード
・Blue Pillボード(写真 左)
・Bkack Pillボード(写真 中)
・RobotDym Blue Pill互換ボード(写真 右)

まずはHID用のブートローダを書き込む必要があります。
HID用ブートローダは、本来は下記のサイトが公式サイトになるのですが、
・rogerclarkmelbourne/STM32_HID_Bootloader
まだ、Blue Pill用のものしか置いていないようです。若干古い可能性があります。
当面は、オリジナル版開発者の下記のサイトから入手した方が良さそうです。
・https://github.com/Serasidis/STM32_HID_Bootloader
HIDブートローダは、
・Blue Pillボード、RobotDym Blue Pill互換ボード
hid_generic_pc13.bin を利用
・Bkack Pillボード
hid_generic_pb12.bin を利用
ST-Linkを使ってHIDブートローダを書き込みます。

書き込み後、パソコンにUSB経由で接続します。
この時、ボードマイコン(ここではBlue Pill)のBOOT1を1に設定してから、
パソコンに接続します。 LEDが激しく点滅します。
(この手順が分からす、なかなか書込み出来ませんでた。試行錯誤のため、
手順としては間違っている可能性があります。)

つなげると、パソコン(Windows 10)でSTM32F HID Bootlooader が認識されました。

デバイスを調べてみると、次のような感じで登録されています。

試しに、Lチカスケッチを書き込んでみます。

問題無く書き込めました。
マイコンボードのBOOT1を0側にして、リセットボタンを押します。
これで、書き込んだスケッチが実行されます。
再度スケッチを書き込むには、 マイコンボードのUSB接続を抜き、
BOOT1を1にして、パソコンに接続します。
なぜか、USBの接続を一旦抜いてからでないとダメでした。
このあたりは、ちょっと面倒です。
もしたら、手順として間違っている可能性があるため、もう少し試してみます。
HIDブートローダのメリットとしては、
ブートローダが8Kバイトから4Kバイトに小さくなり、利用出来るフラッシュメモリの領域が
4kバイト増えた点と、ドライバーのインストールが不要な点です。
手順(もし、今回のやり方が正しいとすれば)的には、HIDブートローダ経由は、
BOOTピンの設定変更とボートの抜き差しがちょっと面倒です。
USBはCDC(シリアル通信)としても使うので、
HIDブートローダを有効にするために、BOOT1の設定が必要みたいです。
« TV出力ライブラリ更新を豊四季Tiny BASIC for Arduino STM32に適用する | トップページ | (メモ) マイクロソフトが公開しているWindows Commands Reference(PDF) »
「arduino」カテゴリの記事
- Freenove Mecanum ホイール カー キットを購入しました(2025.05.28)
- Arduino IDE+Arduino STM32環境で指定と異なるgccが使われてしまう(2025.01.23)
- Zorin OSでArduino Uno互換機(CH340)が認識しない(2025.01.19)
- Arduino IDE 2.3.4でArduino STM32を利用する(2025.01.12)
- Arduino用 SKK日本語変換ライブラリの開発 その1(2024.12.28)
「ARM」カテゴリの記事
- Arduino IDE+Arduino STM32環境で指定と異なるgccが使われてしまう(2025.01.23)
- Arduino IDE 2.3.4でArduino STM32を利用する(2025.01.12)
- PocketGoで遊んでみる(1)(2020.03.24)
- Arduino用 MML文演奏ライブラリの作成 その1(2019.04.01)
- BluePillボードで4桁7セグLEDの制御(2019.03.21)
「STM32」カテゴリの記事
- Arduino IDE+Arduino STM32環境で指定と異なるgccが使われてしまう(2025.01.23)
- Arduino IDE 2.3.4でArduino STM32を利用する(2025.01.12)
- 「Arduino STM32 リファレンス 日本語版」が2万アクセス突破!(2021.03.26)
- SPI接続フラッシュメモリモジュールを入手しました(2020.05.13)
- Arduino STM32でキャラクタ液晶ディスプレイを使う(2019.06.01)
« TV出力ライブラリ更新を豊四季Tiny BASIC for Arduino STM32に適用する | トップページ | (メモ) マイクロソフトが公開しているWindows Commands Reference(PDF) »

コメント