14.1.1.3. Laiteohjelmiston flashaus

Kun sinulla on firmware.bin (ja sen romfs<n>.img) kohteesta Laiteohjelmiston kääntäminen, ohjelmoi se kameraan. OpenMV IDE on suositeltu tapa; komentorivimenettely vaihtelee kameraperheen mukaan, ja se on dokumentoitu perhekohtaisesti sivun alalaidassa linkitetyillä sivuilla. Käynnistyslatain itse palautetaan erikseen – katso Käynnistyslataimen palauttaminen.

14.1.1.3.2. Windows: asenna USB-ajurit

Windowsissa ei ole sisäänrakennettua ajuria kameran USB DFU-, SDP- ja ISP-rajapinnoille, joten komentorivityökalut (dfu-util, NXP SPSDK -työkalut, Alif SE -työkalut) eivät voi havaita laitetta, ennen kuin siihen on sidottu WinUSB-ajuri. OpenMV IDE:n Windows-asentaja asentaa kaikki nämä ajurit, joten yksinkertaisin tapa on asentaa OpenMV IDE kerran – minkä jälkeen sekä IDE että komentorivityökalut toimivat. Tämän vuoksi graafinen flashaus onnistuu tuoreessa Windows-koneessa, kun taas itsenäinen dfu-util ei onnistu.

Jos IDE:n asentaminen ei ole vaihtoehto, suorita vastaava ajurin asennusohjelma OpenMV IDE:n hakemistosta share/qtcreator/drivers/ järjestelmänvalvojana:

Ajurin asennusohjelma

USB-laitteet, joihin se sitoutuu

openmv\openmv.cmd

OpenMV DFU -laitteet sekä RT1062 SPSDK -rajapinnat (0x1FC9:0x0135 SDP ROM ja 0x15A2:0x0073 flashloader)

arduino\arduino.cmd

Arduino DFU -laitteet (2341:03xx)

ftdi\ftdi.cmd

FTDI 0403:6015 -sovitin, jota käytetään AE3:n käynnistyslataimen palautukseen

DFU_Driver\STM32Bootloader.bat

ST 0483:df11 -järjestelmän DFU-laite, jota käytetään STM32:n käynnistyslataimen palautukseen

Vaihtoehtoisesti voit sitoa WinUSB:n tiettyyn VID:PID-pariin työkalulla Zadig tai pnputil. Mikään komentorivipohjainen flashaus Windowsissa ei toimi ilman tätä. Linux ja macOS eivät tarvitse ajurin asennusta (Linux vaatii vain udev-säännöt).

14.1.1.3.3. Flashaus SWD:n kautta (make deploy)

Jos debug-anturi on jo kytketty kameraan – kuten debuggausta varten – nopein muokkaa-käännä-flashaa -sykli ohittaa USB DFU:n ja ohjelmoi sirun suoraan SWD:n kautta. STM32-kameroissa:

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

Tämä flashaa juuri käännetyn laiteohjelmiston STM32_Programmer_CLI-työkalulla (SDK:sta) kytketyn anturin kautta. Käynnistyslataimeen ei siirrytä, USB:tä ei tunnisteta uudelleen eikä kaapeleita tarvitse vaihtaa: käännä, suorita deploy, ja kamera käynnistyy uudelleen ajaen uutta koodia. Tämä on suositeltu työnkulku aktiivisen laiteohjelmistokehityksen aikana. Käytä DFU:ta tai OpenMV IDE:tä, kun flashaat ilman anturia tai kun jaat laiteohjelmistoa muille.

14.1.1.3.4. Käynnistyslatain- / DFU-tilaan siirtyminen

Flashaus edellyttää, että kamera on käynnistyslatain- / DFU-tilassaan. Siihen on kolme tapaa:

  • Kytkettäessä (mikä tahansa kamera). Jokainen kamera ajaa käynnistyslatainta lyhyen aikaikkunan ajan käynnistyessään, ennen kuin laiteohjelmisto käynnistyy – kytke kamera USB:hen, niin käynnistyslatain kuuntelee hetken.

  • IDE:stä (mikä tahansa kamera). Kun kamera on kytkettynä, Tools -> Force enter OpenMV Cam bootloader käynnistää sen uudelleen käynnistyslatain-tilaan.

  • Arduinon reset-painike. Arduino-korteissa käynnistyslatain-tilaan siirrytään kaksoisnapsauttamalla reset-painiketta.

14.1.1.3.5. Komentorivipohjainen flashaus kameraperheittäin

Alla olevat sivut näyttävät, mitä OpenMV IDE tekee konepellin alla kullekin kameraperheelle, kun haluat suorittaa flashauksen itse – skripteissä, CI:ssä tai tuotantolinjalla. Päivittäiseen flashaukseen suosittelemme OpenMV IDE:tä.