14.1.1.4.5.5. การลบ filesystem ภายใน#

กล้องทุกตัวมี FAT filesystem แบบเขียนได้ขนาดเล็ก (ที่เก็บ main.py และไฟล์ผู้ใช้ แยกจาก SD card ใดๆ) การลบ filesystem คือวิธีแก้ไขเมื่อ main.py ที่มีปัญหาหรือ filesystem ที่เสียหายทำให้กล้องบูตไม่ได้ ใน OpenMV IDE ทำได้ผ่านช่องทำเครื่องหมาย Erase internal file system ใน Load Custom Firmware; คำสั่งเทียบเท่าใน command line แตกต่างกันตามตระกูลกล้อง

14.1.1.4.5.5.1. กล้อง OpenMV ที่มี bootloader openmv_dfu#

bootloader เปิดเผย erase DFU alt เฉพาะ เขียนไฟล์ที่เต็มไปด้วยศูนย์ขนาดเล็กลงไป (บล็อก 4 KB ของศูนย์เพียงพอ -- มันล้าง filesystem header เพื่อให้กล้อง reformat ในครั้งบูตถัดไป) พร้อม --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

Erase 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 filesystem แบบเขียนได้เพียงหนึ่งเดียวที่ใช้ร่วมกันโดยทั้งสอง Cortex-M55 core ลบครั้งเดียวผ่าน -a 5 ไม่มีการลบ filesystem แยกต่อ core

14.1.1.4.5.5.2. OpenMV Cam RT1062#

RT1062 ไม่มี DFU bootloader; ลบ master boot record ของ FAT disk (ที่ 0x60400000) ด้วย SPSDK flashloader ซึ่งบังคับให้ reformat ในครั้งบูตถัดไป:

blhost -u 0x15A2,0x0073 -t 120000 -- flash-erase-region 0x60400000 0x1000

14.1.1.4.5.5.3. บอร์ด STM32 Arduino#

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