14.1.1.3.5.3. OpenMV Cam RT1062: NXP SPSDK

OpenMV Cam RT1062 – единственная камера без загрузчика USB DFU. Она загружается с внешней флеш-памяти через расположенный в ней защищённый загрузчик (SBL), который представляет USB-интерфейс NXP MCU-bootloader. Для прошивки используются инструменты NXP SPSDK blhost и sdphost, которые входят в состав OpenMV SDK и вызываются как python -m spsdk.apps.blhost / python -m spsdk.apps.sdphost.

Чтобы войти в загрузчик, сбросьте или переподключите камеру: SBL уже присутствует, поэтому перемычка не нужна, и она перечисляется как устройство SBL (VID:PID blhost 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

Карта 16 МиБ внешней флеш-памяти RT1062 (0x600000000x61000000, из конфигурации OpenMV IDE):

Регион

Адрес

Размер (hex)

Размер (байты)

Блок конфигурации флеш-памяти (FCB)

0x60000000

0x1000

4 096 (4 КиБ)

Защищённый загрузчик (SBL)

0x60001000

0x3F000

258 048 (252 КиБ)

Прошивка

0x60040000

0x3C0000

3 932 160 (3,75 МиБ)

Диск FAT (внутренняя файловая система)

0x60400000

0x400000

4 194 304 (4 МиБ)

ROMFS

0x60800000

0x800000

8 388 608 (8 МиБ)

Размеры FCB, диска FAT и ROMFS фиксированы в конфигурации IDE. Показанные размеры SBL и прошивки – это протяжённость региона до базового адреса следующего региона (начальные адреса фиксированы; фактический образ меньше).

См. также

Чтобы стереть внутреннюю файловую систему FAT камеры – решение, когда повреждённый main.py или повреждённая файловая система не дают камере загрузиться – см. Стирание внутренней файловой системы.

Чтобы восстановить сам загрузчик камеры, см. Восстановление загрузчика.