14.1.1.3.5.1. OpenMV STM32 カメラ: dfu-util¶
シングルコアの STM32 OpenMV カメラ(M4、M7、H7、H7 Plus、Pure Thermal、N6)をスクリプトや CI でフラッシュするには、dfu-util を直接使用します。これは OpenMV SDK と OpenMV IDE のツールディレクトリに含まれています。Linux では、DFU デバイスへの非 root アクセスに udev ルールが必要です。OpenMV IDE をインストールするか(ルールがインストールされます)、その 99-openmv*.rules ファイルを share/qtcreator/pydfu/ から /etc/udev/rules.d/ にコピーして sudo udevadm control --reload-rules && sudo udevadm trigger を実行してください。それ以外の場合は dfu-util を sudo で実行します。
これらのカメラは openmv_dfu ブートローダーを使用し、絶対アドレスではなく DFU alt 設定で(-a N)フラッシュされます。ブートローダーが各 alt を正しいフラッシュ領域にマッピングします。ブートローダーに入るには、カメラを接続するだけです。電源投入時に短時間待ち受け、-w を指定すると dfu-util がデバイスの出現を待ちます。最後の転送で --reset を指定すると、カメラが新しいファームウェアで再起動します。
カメラ( |
アプリ VID:PID |
DFU VID:PID |
ファームウェアコマンド |
ROMFS コマンド |
|---|---|---|---|---|
OpenMV Cam M4( |
|
|
|
|
OpenMV Cam M7( |
|
|
|
|
OpenMV Cam H7( |
|
|
|
|
OpenMV Cam H7 Plus( |
|
|
|
|
OpenMV Pure Thermal( |
|
|
|
|
OpenMV Cam N6( |
|
|
|
|
OpenMV Cam H7 をフラッシュします。まずファームウェア、次に ROMFS です:
dfu-util -w -d ,37C5:9204 -a 2 -D build/OPENMV4/bin/firmware.bin
dfu-util -w -d ,37C5:9204 -a 3 --reset -D build/OPENMV4/bin/romfs0.img
参考
カメラの内部 FAT ファイルシステムを消去するには(不正な main.py や破損したファイルシステムでカメラが起動しなくなった場合の修正方法)、内部ファイルシステムの消去 を参照してください。
カメラのブートローダー自体を復元するには、ブートローダーの復元 を参照してください。