14.1.1.3.5.4. Các bo mạch Arduino

Các bo mạch Arduino dựa trên STM32 (Portenta H7, Giga, Nicla Vision) được nạp flash bằng dfu-util sử dụng địa chỉ flash tuyệt đối thông qua bootloader DFU của Arduino. Hai bo Nano sử dụng công cụ riêng của chúng.

14.1.1.3.5.4.1. Bo mạch Arduino STM32: dfu-util

Để vào bootloader, nhấp đôi nút reset (hoặc mở cổng serial của bo mạch ở tốc độ baud 1200 -- "touch" reset của Arduino).

Bo mạch

DFU VID:PID

Lệnh firmware

Lệnh 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

Nạp ứng dụng (ví dụ Nicla Vision):

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

Wi-Fi và Bluetooth cần hai blob bổ sung đi kèm với OpenMV IDE trong share/qtcreator/firmware/CYW4343/:

Thành phần

Địa chỉ flash

File

Firmware Wi-Fi

0x90F00000

cyw4343_7_45_98_102.bin

Firmware Bluetooth

0x90FC0000

cyw4343_btfw.bin

Nạp cả hai vào alt flash ngoài, với :leave ở lần truyền cuối cùng (ví dụ Nicla Vision):

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

Arduino Nano 33 BLE Sense (nRF52840) không dùng dfu-util. Để vào bootloader, nhấp đôi nút RESET; bo mạch liệt kê như thiết bị nRF52840 DFU (2341:805a). Nạp flash bằng bossac, ghi ứng dụng tại offset flash 0x16000 -- phía trên SoftDevice và bootloader gốc từ nhà máy, những thứ này không bao giờ bị ghi đè:

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

14.1.1.3.5.4.3. Arduino Nano RP2040 Connect: picotool

Để vào bootloader, giữ nút BOOTSEL trong khi cắm USB; bo mạch gắn kết một ổ đĩa USB mass-storage có tên RPI-RP2. Nạp flash bằng cách sao chép file .uf2 vào ổ đĩa đó, hoặc dùng picotool

picotool load -x firmware.uf2

Cảnh báo

Bootloader của các bo mạch Arduino được khóa từ nhà máy và không thể được khôi phục bởi người dùng -- chỉ có vùng ứng dụng được ghi. Bootloader Arduino bị hỏng phải được phục hồi bằng công cụ của Arduino. Các quy trình khôi phục bootloader trong Khôi phục bootloader chỉ áp dụng cho các camera mang thương hiệu OpenMV.

Xem thêm

Để xóa filesystem FAT nội bộ của camera -- cách khắc phục khi main.py lỗi hoặc filesystem bị hỏng khiến camera không thể khởi động -- xem Xóa filesystem nội bộ.