14.1.1.3. Mem-flash firmware

Setelah Anda memiliki firmware.bin (beserta romfs<n>.img-nya) dari Membangun firmware, program ke kamera. OpenMV IDE adalah metode yang direkomendasikan; prosedur baris perintah berbeda per keluarga kamera dan didokumentasikan per keluarga di halaman yang ditautkan di bagian bawah. Bootloader itu sendiri dipulihkan secara terpisah -- lihat Memulihkan bootloader.

14.1.1.3.2. Windows: instal driver USB

Windows tidak memiliki driver bawaan untuk antarmuka USB DFU, SDP, dan ISP kamera, sehingga alat baris perintah (dfu-util, alat NXP SPSDK, Alif SE Tools) tidak dapat mendeteksi perangkat hingga driver WinUSB terikat padanya. Installer Windows OpenMV IDE menginstal semua driver ini, sehingga pendekatan paling sederhana adalah menginstal OpenMV IDE satu kali -- setelah itu baik IDE maupun alat baris perintah akan berfungsi. Inilah mengapa flashing via GUI berhasil di mesin Windows baru sementara dfu-util mandiri tidak.

Jika menginstal IDE bukan pilihan, jalankan installer driver yang sesuai dari direktori share/qtcreator/drivers/ OpenMV IDE sebagai Administrator:

Installer driver

Perangkat USB yang diikat

openmv\openmv.cmd

Perangkat OpenMV DFU, dan antarmuka RT1062 SPSDK (0x1FC9:0x0135 SDP ROM dan 0x15A2:0x0073 flashloader)

arduino\arduino.cmd

Perangkat Arduino DFU (2341:03xx)

ftdi\ftdi.cmd

Adaptor FTDI 0403:6015 yang digunakan untuk pemulihan bootloader AE3

DFU_Driver\STM32Bootloader.bat

Perangkat DFU sistem ST 0483:df11 yang digunakan untuk pemulihan bootloader STM32

Sebagai alternatif, ikat WinUSB ke VID:PID tertentu menggunakan Zadig atau pnputil. Tidak ada flashing baris perintah di Windows yang berfungsi tanpa ini. Linux dan macOS tidak memerlukan instalasi driver (Linux hanya membutuhkan aturan udev).

14.1.1.3.3. Flashing melalui SWD (make deploy)

Jika probe debug sudah terhubung ke kamera -- seperti saat debugging -- siklus edit-build-flash tercepat melewati USB DFU dan memprogram chip langsung melalui SWD. Pada kamera STM32:

make -j$(nproc) TARGET=<TARGET> deploy

Ini mem-flash firmware yang baru dibangun melalui STM32_Programmer_CLI (dari SDK) melalui probe yang terhubung. Tidak ada entri bootloader, tidak ada enumerasi ulang USB, dan tidak ada penukaran kabel: build, jalankan deploy, dan kamera me-restart dengan menjalankan kode baru. Ini adalah alur kerja yang direkomendasikan selama pengembangan firmware aktif. Gunakan DFU atau OpenMV IDE saat flashing tanpa probe atau saat mendistribusikan firmware ke orang lain.

14.1.1.3.4. Memasuki mode bootloader / DFU

Flashing memerlukan kamera untuk berada dalam mode bootloader / DFU. Ada tiga cara untuk masuk:

  • Saat dihubungkan (kamera mana pun). Setiap kamera menjalankan bootloader-nya untuk jendela singkat saat menyala, sebelum firmware dimulai -- colokkan kamera ke USB dan bootloader sebentar mendengarkan.

  • Dari IDE (kamera mana pun). Dengan kamera yang terhubung, Tools -> Force enter OpenMV Cam bootloader me-reboot-nya ke mode bootloader.

  • Tombol reset Arduino. Di board Arduino, klik dua kali tombol reset untuk masuk ke mode bootloader.

14.1.1.3.5. Flashing baris perintah per keluarga kamera

Halaman di bawah menunjukkan apa yang dilakukan OpenMV IDE di balik layar untuk setiap keluarga kamera, untuk saat Anda ingin menjalankan flashing sendiri -- dalam skrip, dalam CI, atau di jalur produksi. Untuk flashing sehari-hari kami merekomendasikan OpenMV IDE.