14.1.1.3.5.5. Xóa filesystem nội bộ

Mỗi camera có một filesystem FAT có thể ghi nhỏ (nơi lưu main.py và các file người dùng, tách biệt với thẻ SD). Xóa nó là cách khắc phục khi main.py lỗi hoặc filesystem bị hỏng ngăn camera khởi động. Trong OpenMV IDE đây là hộp kiểm Erase internal file system trong Load Custom Firmware; lệnh tương đương trên dòng lệnh khác nhau tùy họ camera.

14.1.1.3.5.5.1. Camera OpenMV với bootloader openmv_dfu

Bootloader lộ một alt DFU xóa chuyên dụng. Ghi một file nhỏ đầy số không vào nó (một khối 4 KB số không là đủ -- nó xóa header filesystem để camera định dạng lại khi khởi động tiếp theo) với --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

Camera (TARGET)

DFU VID:PID

Alt xóa

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 có một filesystem FAT có thể ghi dùng chung cho cả hai nhân Cortex-M55, xóa một lần qua -a 5. Không có thao tác xóa filesystem riêng theo từng nhân.

14.1.1.3.5.5.2. OpenMV Cam RT1062

RT1062 không có bootloader DFU; hãy xóa master boot record của đĩa FAT (tại 0x60400000) bằng SPSDK flashloader, điều này buộc định dạng lại khi khởi động tiếp theo:

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

14.1.1.3.5.5.3. Các bo mạch Arduino STM32

Portenta H7, Giga và Nicla Vision xóa theo địa chỉ tuyệt đối thay vì 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