14.1.1.3.5.5. Стирание внутренней файловой системы¶
Каждая камера имеет небольшую перезаписываемую файловую систему FAT (где живут main.py и пользовательские файлы, отдельно от любой SD-карты). Её стирание – это решение, когда плохой main.py или повреждённая файловая система не дают камере загрузиться. В OpenMV IDE это флажок Erase internal file system в Load Custom Firmware; эквивалент для командной строки различается в зависимости от семейства камер.
14.1.1.3.5.5.1. Камеры OpenMV с загрузчиком openmv_dfu¶
Загрузчик предоставляет выделенный erase DFU alt. Запишите в него небольшой файл, заполненный нулями (блока в 4 КБ нулей достаточно – он очищает заголовок файловой системы, чтобы камера переформатировала её при следующей загрузке) с --reset:
dd if=/dev/zero of=erase.bin bs=4096 count=1
dfu-util -w -d ,<DFU VID:PID> -a <erase alt> --reset -D erase.bin
Камера ( |
DFU VID:PID |
Erase alt |
|---|---|---|
OpenMV Cam M4 ( |
|
|
OpenMV Cam M7 ( |
|
|
OpenMV Cam H7 ( |
|
|
OpenMV Cam H7 Plus ( |
|
|
OpenMV Pure Thermal ( |
|
|
OpenMV Cam N6 ( |
|
|
OpenMV AE3 ( |
|
|
OpenMV AE3 имеет единую перезаписываемую файловую систему FAT, разделяемую обоими ядрами Cortex-M55, стираемую один раз через -a 5. Отдельного стирания файловой системы для каждого ядра нет.
14.1.1.3.5.5.2. OpenMV Cam RT1062¶
У RT1062 нет DFU-загрузчика; сотрите главную загрузочную запись его FAT-диска (по адресу 0x60400000) с помощью флешлоадера SPSDK, что принудительно вызывает переформатирование при следующей загрузке:
blhost -u 0x15A2,0x0073 -t 120000 -- flash-erase-region 0x60400000 0x1000
14.1.1.3.5.5.3. Платы Arduino на STM32¶
Portenta H7, Giga и Nicla Vision стираются по абсолютному адресу, а не по alt:
dd if=/dev/zero of=erase.bin bs=4096 count=1
dfu-util -w -d ,<DFU VID:PID> -a 0 -s 0x08020000 -D erase.bin
dfu-util -w -d ,<DFU VID:PID> -a 1 -s 0x90000000 --reset -D erase.bin