14.1.1.3.5.5. Effacement du système de fichiers interne

Chaque caméra possède un petit système de fichiers FAT inscriptible (où résident main.py et les fichiers utilisateur, distinct de toute carte SD). L’effacer est la solution lorsqu’un mauvais main.py ou un système de fichiers corrompu empêche la caméra de démarrer. Dans OpenMV IDE, il s’agit de la case Erase internal file system dans Load Custom Firmware ; l’équivalent en ligne de commande diffère selon la famille de caméra.

14.1.1.3.5.5.1. Caméras OpenMV avec le programme d’amorçage openmv_dfu

Le programme d’amorçage expose un alt DFU d’effacement dédié. Écrivez-y un petit fichier rempli de zéros (un bloc de 4 Ko de zéros suffit amplement – il efface l’en-tête du système de fichiers afin que la caméra le reformate au prochain démarrage) avec --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

Caméra (TARGET)

VID:PID DFU

Alt d’effacement

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

L”OpenMV AE3 dispose d’un unique système de fichiers FAT inscriptible partagé par les deux cœurs Cortex-M55, effacé en une seule fois via -a 5. Il n’y a pas d’effacement de système de fichiers distinct par cœur.

14.1.1.3.5.5.2. OpenMV Cam RT1062

Le RT1062 n’a pas de programme d’amorçage DFU ; effacez l’enregistrement d’amorçage maître de son disque FAT (à 0x60400000) avec le flashloader SPSDK, ce qui force un reformatage au prochain démarrage

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

14.1.1.3.5.5.3. Cartes Arduino STM32

Les Portenta H7, Giga et Nicla Vision s’effacent par adresse absolue plutôt que par un 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