v1.9.0

v1.9.0 is de internationaliseringsrelease, die een volledig vertaalde gebruikersinterface in meer dan een dozijn talen toevoegt, naast een nieuw bootloader-queryprotocol dat de daadwerkelijke flash-erase-sectorindeling van elk board uitleest voor veiliger firmware-flashen. De IDE blijft gebouwd op Qt Creator 4.0.2, en de meegeleverde OpenMV-firmware is vernieuwd naar 2.9.0. Er zijn geen brekende wijzigingen voor bestaande projecten.

Hoogtepunten

  • Meertalige UI is nu beschikbaar en voegt vertalingen toe in het Chinees (vereenvoudigd en traditioneel), Japans, Frans, Italiaans, Spaans, Russisch, Duits, Arabisch, Tsjechisch, Hongaars, Pools, Sloveens en Oekraïens.

  • Bootloader flash-sectorquery laat de IDE de daadwerkelijke erase-sectorindeling van een verbonden cam uitlezen via de bootloader in plaats van uitsluitend te vertrouwen op hardgecodeerde standaardwaarden.

  • Erase-bereiken per board worden nu uitgelezen uit boards.txt, zodat elk cameramodel de juiste flashsectoren wist bij het opnieuw flashen van firmware.

  • Prompt voor verouderde firmware biedt aan de cam automatisch bij te werken wanneer bij het verbinden een verouderde firmwareversie wordt gedetecteerd.

  • Nieuwe meegeleverde voorbeelden voegen tekenprimitieven, beeldfilters, een time-lapse-fotoscript, een CMSIS CNN-objectclassificatiedemo en motor-shield-voorbeelden toe.

  • Meegeleverde firmware 2.9.0 vernieuwt de M7 (OPENMV3)- en H7 (OPENMV4)-firmware en DFU-images (en de H7-bootloader).

Nieuwe functies

  • Meertalige UI-vertalingen voegen Chinees (vereenvoudigd en traditioneel), Japans, Frans, Italiaans, Spaans, Russisch, Duits, Arabisch, Tsjechisch, Hongaars, Pools, Sloveens en Oekraïens toe, met een build-regel die de vertalingen opnieuw genereerbaar maakt (8350ff9ac, 4ef99202b, 0a7c85bfc, c678482dd, 052113877, e48ff5d34, 9dddbc498).

  • Bootloader flash-sectorquery voegt een nieuw bootloader-protocol toe waarbij de IDE de verbonden cam bevraagt om de daadwerkelijke flash-erase-sectorindeling (start-, all-start- en laatste sectoren) uit te lezen in plaats van uitsluitend te vertrouwen op hardgecodeerde standaardwaarden (38a84883e).

  • Erase-bereiken per board worden nu uitgelezen uit boards.txt (afsluitende sectornummers per regel), zodat elk cameramodel de juiste sectoren wist in plaats van één enkele globale standaard te gebruiken. De aanvankelijke implementatie kwam niet overeen met boards.txt (dat al met spaties gescheiden afsluitende nummers gebruikte) totdat 8217b94c3 de board-matchvoorwaarde corrigeerde en de regex voor het scheidingsteken van afsluitende sectoren wijzigde van + naar witruimte; 4843e46a8 verwijderde vervolgens een achtergebleven qDebug()-debugprint (68a45da02, 8217b94c3, 4843e46a8).

  • Prompt voor verouderde firmware: bij het verbinden, als de firmware van de cam als verouderd wordt gedetecteerd, vraagt de IDE nu om bij te werken en start, na bevestiging, de firmware-update automatisch (a79a40b45, 8217b94c3).

  • Nieuwe meegeleverde voorbeelden voegen tekenprimitieven toe (pijl, cirkel, kruis, lijn, rechthoek, tekst, afbeelding, flood fill), nieuwe beeldfilters (blur, cartoon, edge, bilateraal voor kleur en grijswaarden, lichtverwijdering, kernel, unsharp, histogram- en adaptieve-histogramegalisatie), een time-lapse-fotovoorbeeld, een CMSIS CNN-objectclassificatievoorbeeld dat img.classify_object() met CIFAR-labels gebruikt, en motor-shield-voorbeelden (909016427).

Overige wijzigingen en verbeteringen

  • Standaard projectmap staat nu standaard ingesteld op een ~/OpenMV-map, en Open/Save-vensters onthouden en heropenen de laatst bezochte map tussen sessies (fbdac7576).

  • Het About-venster toont nu een sectie Credits die de (Engelse) vertaalauteur vermeldt; gelokaliseerde builds vervangen de vertalerstring (e8e823a11, 2efbe1e29).

  • Vernieuwde meegeleverde offline-documentatie, met name een uitbreiding van de omv.image-API-referentie en andere MicroPython-bibliotheekpagina’s (aef76b825, b0f4701af).

  • De extra schijf-flush-schrijfactie uitgeschakeld (het openmv.null-tijdelijke bestand) die werd uitgevoerd bij het loskoppelen, om onnodige schijfactiviteit op de massaopslagschijf van de cam te vermijden (6be486c62).

Bugfixes

  • Een bootloader-query gecorrigeerd die de volgorde van de erase-flash-sectorwaarden (all-start, start, last) verwisselde, waarmee wordt gecorrigeerd welke flashsectoren worden gewist tijdens het flashen van firmware en bootloader (fbdac7576).

  • De videoopname-converter en -speler herwerkt om ffmpeg en ffplay te starten via een gegenereerd tijdelijk script op Windows, macOS en Linux, zodat bestandspaden met spaties betrouwbaar werken, en het meegeleverde Linux-ffmpeg-pad dat door de converter wordt gebruikt gecorrigeerd (8f17f888d, 83cd73144).

  • Bij het verbinden met een camera worden nu automatisch tot 10 nieuwe pogingen gedaan wanneer de firmwareversie-handshake een time-out geeft voordat de time-outfout wordt getoond, waardoor storende verbindingsfouten worden verminderd (ae18dca93).

  • De timing van seriële commando’s op macOS gecorrigeerd door de start- en eind-intercommandovertragingen af te stemmen: de meeste werden verhoogd (arch-string, scriptuitvoering, descriptor/template-opslag, sys reset en frame buffer inschakelen naar 25-50 ms) terwijl de firmwareversievertraging opnieuw werd uitgebalanceerd (korter begin, langer eind), wat communicatietime-outs voorkomt (763357a08).

  • De boardregistratiesleutel die in het custom-board-venster wordt ingevoerd verwijdert nu alle witruimte, zodat per ongeluk getypte spaties in de sleutel worden genegeerd (6be486c62, 8217b94c3).

Platform- en toolondersteuning

  • Qt Creator-basis: 4.0.2.

  • Meegeleverde OpenMV-firmware: de globale firmware.txt-versie is nu 2.9.0 (van 2.7.0 via 2.8.0). De verhoging naar 2.9.0 vernieuwde alleen de M7 (OPENMV3)- en H7 (OPENMV4)-firmware en DFU-images, samen met de H7-bootloader (de M7 vernieuwde alleen bootloader.elf); de M4 (OPENMV2)-images werden voor het laatst vernieuwd in 2.8.0 (bfc0b188e, c0a86dd35).

  • OpenMV IDE-versie intern verhoogd naar 1.9.0 (van 1.8.2) (8f17f888d).

Brekende wijzigingen

Geen. Deze release introduceert geen workflow- of gedragsbreuken; bestaande projecten blijven ongewijzigd werken.