14.1.1.3. Instalação do firmware¶
Depois de ter um firmware.bin (e o respetivo romfs<n>.img) proveniente de Compilar o firmware, programe-o na câmara. O OpenMV IDE é o método recomendado; o procedimento por linha de comandos difere consoante a família de câmaras e está documentado por família nas páginas indicadas no final. O próprio bootloader é restaurado separadamente – consulte Restaurar o bootloader.
14.1.1.3.1. OpenMV IDE: Carregar Firmware Personalizado (recomendado)¶
O OpenMV IDE inclui todas as ferramentas de instalação (dfu-util, as ferramentas NXP SPSDK, as Alif SE Tools, as ferramentas STM32), instala os controladores USB necessários no Windows, trata da entrada no bootloader e seleciona o comando correto para a câmara ligada. É a forma recomendada de instalar um build personalizado.
Ligue a câmara por USB (não é necessário clicar em Connect).
Tools -> Load Custom Firmware.
Na caixa de diálogo, defina Firmware Path para o ficheiro
build/<TARGET>/bin/firmware.bindo seu build.Opcionalmente, marque Erase internal file system para apagar o sistema de ficheiros FAT interno da câmara (consulte Apagar o sistema de ficheiros interno para saber quando e porquê).
Opcionalmente, marque Reset ROMFS file system para reinstalar o ROMFS predefinido (desativado se selecionou diretamente um ficheiro
.img).Clique em Run. O IDE reinicia a câmara para o respetivo bootloader, mostra o comando exato de instalação e uma barra de progresso, e reinicia a câmara com o novo firmware. Aguarde o LED azul de autoteste; a câmara volta a enumerar normalmente.
Existe também Tools -> Force enter OpenMV Cam bootloader para colocar a câmara em modo DFU manualmente antes da instalação.
14.1.1.3.2. Windows: instalar os controladores USB¶
O Windows não possui controladores nativos para as interfaces USB DFU, SDP e ISP da câmara, pelo que as ferramentas de linha de comandos (dfu-util, as ferramentas NXP SPSDK, as Alif SE Tools) não conseguem detetar o dispositivo enquanto um controlador WinUSB não estiver associado. O instalador do OpenMV IDE para Windows instala todos estes controladores, por isso a abordagem mais simples é instalar o OpenMV IDE uma vez – após o qual tanto o IDE como as ferramentas de linha de comandos funcionam. É por isso que a instalação via GUI funciona numa máquina Windows nova, ao contrário de um dfu-util isolado.
Se a instalação do IDE não for uma opção, execute o instalador de controladores correspondente a partir do diretório share/qtcreator/drivers/ do OpenMV IDE como Administrador:
Instalador de controlador |
Dispositivos USB que associa |
|---|---|
|
Dispositivos OpenMV DFU e as interfaces SPSDK do RT1062 ( |
|
Dispositivos Arduino DFU ( |
|
O adaptador FTDI |
|
O dispositivo DFU de sistema ST |
Em alternativa, associe WinUSB ao VID:PID específico com o Zadig ou pnputil. Nenhuma instalação de firmware por linha de comandos no Windows funciona sem isto. Linux e macOS não necessitam de instalação de controladores (o Linux requer apenas as regras udev).
14.1.1.3.3. Instalação via SWD (make deploy)¶
Se uma sonda de depuração já estiver ligada à câmara – como acontece durante a depuração – o ciclo de edição-build-instalação mais rápido ignora o USB DFU e programa o chip diretamente via SWD. Nas câmaras STM32:
make -j$(nproc) TARGET=<TARGET> deploy
Este procedimento instala o firmware recém-compilado via STM32_Programmer_CLI (do SDK) através da sonda ligada. Não há entrada no bootloader, não há reenumeração USB nem troca de cabos: compile, execute deploy e a câmara reinicia com o novo código. Este é o fluxo de trabalho recomendado durante o desenvolvimento ativo de firmware. Utilize DFU ou o OpenMV IDE quando instalar sem sonda ou quando distribuir firmware para outros.
14.1.1.3.4. Entrar no modo bootloader / DFU¶
A instalação do firmware requer que a câmara esteja no modo bootloader / DFU. Há três formas de entrar:
Na ligação (qualquer câmara). Todas as câmaras executam o bootloader durante uma breve janela ao ligar, antes do firmware iniciar – ligue a câmara por USB e o bootloader fica brevemente à escuta.
A partir do IDE (qualquer câmara). Com a câmara ligada, Tools -> Force enter OpenMV Cam bootloader reinicia-a em modo bootloader.
Botão de reset Arduino. Nas placas Arduino, clique duas vezes no botão de reset para entrar em modo bootloader.
14.1.1.3.5. Instalação por linha de comandos por família de câmaras¶
As páginas abaixo mostram o que o OpenMV IDE faz internamente para cada família de câmaras, para quando pretende executar a instalação do firmware por conta própria – em scripts, em CI ou numa linha de produção. Para instalações do dia-a-dia, recomendamos o OpenMV IDE.