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

Завантажувач надає спеціальний alt для стирання DFU. Запишіть невеликий файл із нулів до нього (блок із 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

Камера (TARGET)

DFU VID:PID

Alt для стирання

OpenMV Cam M4 (OPENMV2)

37C5:9202

-a 1

OpenMV Cam M7 (OPENMV3)

37C5:9203

-a 1

OpenMV Cam H7 (OPENMV4)

37C5:9204

-a 1

OpenMV Cam H7 Plus (OPENMV4P)

37C5:924A

-a 3

OpenMV Pure Thermal (OPENMVPT)

37C5:9205

-a 3

OpenMV Cam N6 (OPENMV_N6)

37C5:9206

-a 2

OpenMV AE3 (OPENMV_AE3)

37C5:96E3

-a 5

OpenMV AE3 має єдину файлову систему FAT із записом, спільну для обох ядер Cortex-M55, яка стирається одноразово через -a 5. Окремого стирання файлової системи для кожного ядра немає.

14.1.1.3.5.5.2. OpenMV Cam RT1062

RT1062 не має DFU-завантажувача; стирайте головний завантажувальний запис FAT-диска (за адресою 0x60400000) за допомогою flash-завантажувача 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