14.1.1.3.5.4. Arduinoボード

STM32ベースのArduinoボード(Portenta H7、Giga、Nicla Vision)は、Arduino DFUブートローダーを通じて 絶対フラッシュアドレス を用いて dfu-util でフラッシュします。2つのNanoボードは独自のツールを使用します。

14.1.1.3.5.4.1. STM32 Arduinoボード: dfu-util

ブートローダーに入るには、リセットボタンをダブルタップします(またはボードのシリアルポートを1200ボーで開きます。これがArduinoの「タッチ」リセットです)。

ボード

DFU VID:PID

ファームウェアコマンド

ROMFSコマンド

Arduino Portenta H7

2341:035b

-a 0 -s 0x08040000

-a 1 -s 0x90B00000:leave

Arduino Giga

2341:0366

-a 0 -s 0x08040000

-a 1 -s 0x90B00000:leave

Arduino Nicla Vision

2341:035f

-a 0 -s 0x08040000

-a 1 -s 0x90B00000:leave

アプリケーションをフラッシュします(Nicla Visionの例):

dfu-util -w -d ,2341:035f -a 0 -s 0x08040000 -D firmware.bin

Wi-FiとBluetoothには、OpenMV IDEに share/qtcreator/firmware/CYW4343/ で同梱されている2つの追加blobが必要です:

コンポーネント

フラッシュアドレス

ファイル

Wi-Fiファームウェア

0x90F00000

cyw4343_7_45_98_102.bin

Bluetoothファームウェア

0x90FC0000

cyw4343_btfw.bin

両方を外部フラッシュのaltに書き込みます。最後の転送で :leave を付けます(Nicla Visionの例):

dfu-util -w -d ,2341:035f -a 1 -s 0x90F00000 -D cyw4343_7_45_98_102.bin
dfu-util -w -d ,2341:035f -a 1 -s 0x90FC0000:leave -D cyw4343_btfw.bin

14.1.1.3.5.4.2. Arduino Nano 33 BLE Sense: bossac

Nano 33 BLE Sense(nRF52840)は dfu-util を使用しません。ブートローダーに入るには、RESET ボタンをダブルタップします。ボードはnRF52840 DFUデバイス(2341:805a)として列挙されます。bossac でフラッシュし、アプリケーションをフラッシュオフセット 0x16000 に書き込みます。これは、決して書き込まれない工場出荷時のSoftDeviceとブートローダーの上です:

bossac -e -w -v -R --offset=0x16000 firmware.bin

14.1.1.3.5.4.3. Arduino Nano RP2040 Connect: picotool

ブートローダーに入るには、BOOTSEL ボタンを押しながらUSBを接続します。ボードは RPI-RP2 という名前のUSBマスストレージドライブとしてマウントされます。.uf2 ファイルをそのドライブにコピーするか、picotool でフラッシュします:

picotool load -x firmware.uf2

警告

Arduinoボードのブートローダーは工場出荷時にロックされており、ユーザーが復元することは できません。書き込まれるのはアプリケーション領域のみです。破損したArduinoブートローダーは、Arduino独自のツールで復旧する必要があります。ブートローダーの復元 のブートローダー復元手順は、OpenMVブランドのカメラにのみ適用されます。

参考

カメラの内部FATファイルシステムを消去する方法(不正な main.py や破損したファイルシステムがカメラの起動を妨げるときの対処)については、内部ファイルシステムの消去 を参照してください。