14.1.1.3.5.4. Placas Arduino

As placas Arduino baseadas em STM32 (Portenta H7, Giga, Nicla Vision) são gravadas com o dfu-util usando endereços absolutos de flash através do bootloader DFU do Arduino. As duas placas Nano usam suas próprias ferramentas.

14.1.1.3.5.4.1. Placas Arduino STM32: dfu-util

Para entrar no bootloader, toque duas vezes no botão de reset (ou abra a porta serial da placa a 1200 baud – o reset por “toque” do Arduino).

Placa

VID:PID DFU

Comando do firmware

Comando do ROMFS

Arduino Portenta H7

2341:035b

-a 0 -s 0x08040000

-a 1 -s 0x90B00000:leave

Arduino Giga

2341:0366

-a 0 -s 0x08040000

-a 1 -s 0x90B00000:leave

Arduino Nicla Vision

2341:035f

-a 0 -s 0x08040000

-a 1 -s 0x90B00000:leave

Grave a aplicação (Nicla Vision mostrada):

dfu-util -w -d ,2341:035f -a 0 -s 0x08040000 -D firmware.bin

O Wi-Fi e o Bluetooth precisam de dois blobs adicionais que acompanham o OpenMV IDE em share/qtcreator/firmware/CYW4343/:

Componente

Endereço de flash

Arquivo

Firmware do Wi-Fi

0x90F00000

cyw4343_7_45_98_102.bin

Firmware do Bluetooth

0x90FC0000

cyw4343_btfw.bin

Grave ambos no alt da flash externa, com :leave na transferência final (Nicla Vision mostrada):

dfu-util -w -d ,2341:035f -a 1 -s 0x90F00000 -D cyw4343_7_45_98_102.bin
dfu-util -w -d ,2341:035f -a 1 -s 0x90FC0000:leave -D cyw4343_btfw.bin

14.1.1.3.5.4.2. Arduino Nano 33 BLE Sense: bossac

O Nano 33 BLE Sense (nRF52840) não usa o dfu-util. Para entrar no bootloader, toque duas vezes no botão RESET; a placa enumera como o dispositivo DFU do nRF52840 (2341:805a). Grave-a com o bossac, escrevendo a aplicação no offset de flash 0x16000 – acima do SoftDevice de fábrica e do bootloader, que nunca são escritos:

bossac -e -w -v -R --offset=0x16000 firmware.bin

14.1.1.3.5.4.3. Arduino Nano RP2040 Connect: picotool

Para entrar no bootloader, segure o botão BOOTSEL enquanto conecta o USB; a placa monta uma unidade de armazenamento em massa USB chamada RPI-RP2. Grave-a copiando um arquivo .uf2 para essa unidade ou com o picotool

picotool load -x firmware.uf2

Aviso

Os bootloaders das placas Arduino são bloqueados de fábrica e não podem ser restaurados pelo usuário – apenas a região da aplicação é escrita. Um bootloader Arduino danificado deve ser recuperado com as ferramentas próprias da Arduino. Os procedimentos de restauração de bootloader em Restaurando o bootloader aplicam-se somente às câmeras da marca OpenMV.

Ver também

Para apagar o sistema de arquivos FAT interno da câmera – a solução quando um main.py ruim ou um sistema de arquivos corrompido impede a câmera de inicializar – veja Apagando o sistema de arquivos interno.