v2.9.7

v2.9.7 ist eine OpenMV-spezifische Version, die sich auf ein dramatisch schnelleres und zuverlässigeres Firmware-Flashing über den integrierten Bootloader konzentriert, mit High-Speed-USB-Unterstützung, einem gehärteten seriellen Treiber und Stapel-Videokonvertierung. Sie basiert weiterhin auf Qt Creator 4.0.2 (in diesem Bereich kein Rebase) und es gibt keine bahnbrechenden Änderungen für bestehende Projekte.

Höhepunkte

  • Schnelleres Firmware-Flashing. Der integrierte Bootloader bündelt nun nicht-gepostete USB-Pakete und verwendet High-Speed-Endpunktgrößen (480 Mb/s) anstelle eines langsamen aufgefüllten Pakets pro Block mit einer festen Verzögerung nach jedem.

  • OpenMV Cam H7 Pro DFU-Unterstützung wird nun erkannt (OMV4_H7_PRO_32768_SDRAM), zusammen mit dem High-Speed-Bootloader.

  • Gehärteter serieller Treiber für den High-Speed-Modus mit 480 Mb/s, mit 64-MB-Lese-/Schreibpuffern und sauberer Wiederherstellung, wenn das Betriebssystem die Datenrückgabe blockiert.

  • Stapelvideo konvertieren. Bei der Auswahl mehrerer Quelldateien werden diese nun alle auf einmal nach einer einzigen Abfrage der Ausgabeeinstellungen konvertiert.

  • Vorschau der Versionshinweise. Der Dialog Neueste Entwicklungsversion installieren lädt nun die GitHub-Versionshinweise herunter und zeigt sie an, bevor zum Flashen aufgefordert wird.

Neue Funktionen

  • Das Tool Convert Video unterstützt nun die Stapelkonvertierung: Bei der Auswahl mehrerer Quelldateien wird einmal nach einem Ausgabeordner, Format, einer Skalierungsbreite und einem Frame-Skip gefragt und dann werden alle Dateien auf einmal konvertiert (864a0babd).

  • Der Dialog Install Latest Development Release lädt nun die GitHub-Versionsseite herunter und zeigt die gerenderten Versionshinweise (den Abschnitt markdown-body der Seite) in einer schreibgeschützten, scrollbaren Ansicht an, bevor zum Flashen aufgefordert wird, hinter einem Downloading-Fortschrittsdialog (3a7805b4f).

Weitere Änderungen und Verbesserungen

  • Schnelleres Bootloader-Flashing. Das Firmware-Flashing über den integrierten Bootloader ist dramatisch schneller und verwendet gebündelte nicht-gepostete USB-Pakete und High-Speed-Endpunktgrößen (480 Mb/s) anstelle eines langsamen aufgefüllten Pakets pro Block mit einer festen Verzögerung nach jedem (c2910aeef, 66031209e, a82783208, a5e185d96, 3d0b2e98b).

  • Gehärteter serieller Treiber für den High-Speed-Modus mit 480 Mb/s: 64-MB-Lese-/Schreibpuffer, Windows-SetupComm-Puffergrößenanpassung beim Öffnen und saubere Wiederherstellung (Nullfüllung), wenn das Betriebssystem USB-Daten akzeptiert, deren Rückgabe an die Anwendung jedoch blockiert (d0b3bcdb7).

  • Das Firmware-Flashing läuft unter Windows und Linux nun schneller, da die nur unter macOS verwendete Endpunktauffüllung und die Sync-Query-Pakete übersprungen werden, die zur Umgehung des macOS-USB-Verhaltens dienten (711281155).

  • Das serielle Terminal zeichnet nun einen blinkenden Textcursor (75e52095d).

  • Die Formulierung zur Bootloader-/DFU-Wiederherstellung beschreibt nun ein DFU-Bootloader-Reset, das den regulären Bootloader repariert, und leitet den Benutzer an, den BOOT/RST-Jumper zu entfernen und neu zu verbinden, anstatt ein direktes Firmware-Upgrade nahezulegen (9e436cdc0).

Fehlerbehebungen

  • Die Zuverlässigkeit der Firmware-Programmierung unter Linux und auf VMs wurde behoben: Der Erfolg von Flash-Schreib-/Löschvorgängen wird nun über gebündelte Pakete hinweg UND-akkumuliert, der Rückgabewert von flush() des Ports wird ignoriert und blockierte Bootloader-Übertragungen senden die korrekte Abfrage für den Bootloader- bzw. Normalmodus erneut (a82783208, f76406597).

  • Ein Absturz beim Entfernen veralteter Board-USB-VID/PID-Zuordnungen wurde behoben, indem der Iterator nach und nicht vor den abhängigen Map-Suchen gelöscht wird (5950b0851).

  • Der Pfad der automatisch geladenen helloworld.py und die Anweisungen nach der Registrierung wurden auf das neue Beispiel-Layout korrigiert (Examples > HelloWorld anstelle von Examples > OpenMV > Basics) (def9b7dad).

Plattform- und Tool-Unterstützung

  • Qt Creator-Basis: 4.0.2.

  • DFU-Unterstützung für die OpenMV Cam H7 Pro (OMV4_H7_PRO_32768_SDRAM) und die Erkennung der High-Speed-Bootloader-Seriennummer 000000000010 hinzugefügt (c2910aeef).

  • Die mitgelieferte OpenMV-Firmware wurde auf v4.3.2 aktualisiert und die boardspezifischen Firmware-Images aufgefrischt (firmware.bin plus firmware.dfu, firmware.hex oder firmware.uf2 je nach Board), Bootloader und UVC-Images. OPENMV2, OPENMV3, OPENMV4, OPENMV4P, OPENMVPT, NICLAV und PORTENTA liefern firmware.bin/firmware.dfu; NANO33 liefert firmware.bin/firmware.hex; ARDUINO_NANO_RP2040_CONNECT liefert firmware.bin/firmware.uf2. Brandneue Firmware-, Bootloader- und UVC-Images für die OpenMV Cam H7 Pro (OPENMV4_PRO) sind nun zum ersten Mal enthalten (08ac2e33f).

  • Die mitgelieferten Beispiele wurden neu organisiert und erweitert, darunter ein neues Beispiel 00-HelloWorld auf oberster Ebene, ein TensorFlow-Objekterkennungsbeispiel und viele Beispiele zur Board-Steuerung, zu Sensoren, WiFi, Bluetooth und niedrigem Stromverbrauch für Arduino Portenta-H7, Nicla-Vision und Nano-RP2040 (08ac2e33f).

Bahnbrechende Änderungen

Keine. Diese Version ist vollständig abwärtskompatibel mit bestehenden Projekten und Workflows.