14.1.1.3.5.3. OpenMV Cam RT1062 : NXP SPSDK

L’OpenMV Cam RT1062 est la seule caméra sans programme d’amorçage USB DFU. Elle démarre depuis la mémoire flash externe via un programme d’amorçage sécurisé (SBL) embarqué dans la flash qui présente l’interface USB MCU-bootloader de NXP. Le flashage utilise les outils SPSDK de NXP blhost et sdphost, que le SDK OpenMV regroupe et invoque sous la forme python -m spsdk.apps.blhost / python -m spsdk.apps.sdphost.

Pour entrer dans le programme d’amorçage, réinitialisez ou rebranchez la caméra : le SBL est déjà présent, aucun cavalier n’est donc nécessaire, et elle s’énumère comme le périphérique SBL (blhost VID:PID 0x15A2:0x0073). La séquence pour le micrologiciel seul est

blhost -u 0x15A2,0x0073 -t 120000 -- flash-erase-region 0x60040000 <firmware_size>
blhost -u 0x15A2,0x0073 -- write-memory 0x60040000 firmware.bin
blhost -u 0x15A2,0x0073 -- reset

<firmware_size> est la taille en octets de firmware.bin. Pour réinitialiser aussi le ROMFS, exécutez ceci avant les étapes du micrologiciel

blhost -u 0x15A2,0x0073 -t 120000 -- flash-erase-region 0x60800000 0x00800000
blhost -u 0x15A2,0x0073 -- write-memory 0x60800000 romfs0.img

La cartographie de la mémoire flash externe de 16 Mio du RT1062 (0x600000000x61000000, d’après la configuration d’OpenMV IDE) :

Région

Adresse

Taille (hex)

Taille (octets)

Bloc de configuration flash (FCB)

0x60000000

0x1000

4 096 (4 Kio)

Programme d’amorçage sécurisé (SBL)

0x60001000

0x3F000

258 048 (252 Kio)

Micrologiciel

0x60040000

0x3C0000

3 932 160 (3,75 Mio)

Disque FAT (système de fichiers interne)

0x60400000

0x400000

4 194 304 (4 Mio)

ROMFS

0x60800000

0x800000

8 388 608 (8 Mio)

Les tailles du FCB, du disque FAT et du ROMFS sont fixées dans la configuration de l’IDE. Les tailles du SBL et du micrologiciel indiquées correspondent à l’étendue de la région jusqu’à l’adresse de base de la région suivante (les adresses de départ sont fixes ; l’image réelle est plus petite).

Voir aussi

Pour effacer le système de fichiers FAT interne de la caméra – la solution lorsqu’un mauvais main.py ou un système de fichiers corrompu empêche la caméra de démarrer – voir Effacement du système de fichiers interne.

Pour restaurer le programme d’amorçage de la caméra lui-même, voir Restauration du programme d’amorçage.