14.1.1.3.5.4. Placas Arduino

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

14.1.1.3.5.4.1. Placas Arduino STM32: dfu-util

Para entrar no bootloader, toque duas vezes rapidamente no botão de reset (ou abra a porta série da placa a 1200 baud – o reset «touch» do Arduino).

Placa

DFU VID:PID

Comando de firmware

Comando 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

Flashar a aplicação (Nicla Vision como exemplo):

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

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

Componente

Endereço flash

Ficheiro

Firmware Wi-Fi

0x90F00000

cyw4343_7_45_98_102.bin

Firmware Bluetooth

0x90FC0000

cyw4343_btfw.bin

Flashar ambos no alt flash externo, com :leave na transferência final (Nicla Vision como exemplo):

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 utiliza dfu-util. Para entrar no bootloader, toque duas vezes rapidamente no botão RESET; a placa enumera como dispositivo nRF52840 DFU (2341:805a). Flashe-o com bossac, escrevendo a aplicação no deslocamento de flash 0x16000 – acima do SoftDevice e bootloader de fábrica, 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, mantenha premido o botão BOOTSEL ao ligar o USB; a placa monta uma unidade de armazenamento em massa USB com o nome RPI-RP2. Flashe-a copiando um ficheiro .uf2 para essa unidade, ou com picotool

picotool load -x firmware.uf2

Aviso

Os bootloaders das placas Arduino estão bloqueados de fábrica e não podem ser restaurados pelo utilizador – apenas a região da aplicação é alguma vez escrita. Um bootloader Arduino danificado tem de ser recuperado com as próprias ferramentas da Arduino. Os procedimentos de restauração do bootloader em Restaurar o bootloader aplicam-se apenas às câmaras com a marca OpenMV.

Veja também

Para apagar o sistema de ficheiros FAT interno da câmara – a solução quando um main.py defeituoso ou um sistema de ficheiros corrompido impede a câmara de arrancar – consulte Apagar o sistema de ficheiros interno.