14.1.1.3.5.3. OpenMV Cam RT1062: NXP SPSDK¶
OpenMV Cam RT1062 は、USB DFU ブートローダーを持たない唯一のカメラです。NXP MCU ブートローダー USB インターフェースを提供するオンフラッシュのセキュアブートローダー(SBL)を介して、外部フラッシュから起動します。フラッシュには NXP の SPSDK ツール blhost と sdphost を使用します。これらは OpenMV SDK に同梱され、python -m spsdk.apps.blhost / python -m spsdk.apps.sdphost として呼び出されます。
ブートローダーに入るには、カメラをリセットまたは再接続します。SBL はすでに存在するためジャンパーは不要で、SBL デバイス(blhost VID:PID 0x15A2:0x0073)として列挙されます。ファームウェアのみのシーケンスは次のとおりです:
blhost -u 0x15A2,0x0073 -t 120000 -- flash-erase-region 0x60040000 <firmware_size>
blhost -u 0x15A2,0x0073 -- write-memory 0x60040000 firmware.bin
blhost -u 0x15A2,0x0073 -- reset
<firmware_size> は firmware.bin のバイトサイズです。ROMFS もリセットするには、ファームウェアの手順の前にこれらを実行します:
blhost -u 0x15A2,0x0073 -t 120000 -- flash-erase-region 0x60800000 0x00800000
blhost -u 0x15A2,0x0073 -- write-memory 0x60800000 romfs0.img
RT1062 の 16 MiB 外部フラッシュマップ(0x60000000--0x61000000、OpenMV IDE の設定より):
領域 |
アドレス |
サイズ(16 進数) |
サイズ(バイト) |
|---|---|---|---|
フラッシュ設定ブロック(FCB) |
|
|
4,096(4 KiB) |
セキュアブートローダー(SBL) |
|
|
258,048(252 KiB) |
ファームウェア |
|
|
3,932,160(3.75 MiB) |
FAT ディスク(内部ファイルシステム) |
|
|
4,194,304(4 MiB) |
ROMFS |
|
|
8,388,608(8 MiB) |
FCB、FAT ディスク、ROMFS のサイズは IDE 設定で固定されています。表示されている SBL とファームウェアのサイズは、次の領域のベースアドレスまでの領域の範囲です(開始アドレスは固定ですが、実際のイメージはそれより小さくなります)。
参考
カメラの内部 FAT ファイルシステムを消去するには(不正な main.py や破損したファイルシステムでカメラが起動しなくなった場合の修正方法)、内部ファイルシステムの消去 を参照してください。
カメラのブートローダー自体を復元するには、ブートローダーの復元 を参照してください。