v4.3.0

v4.3.0 voegt hardwareversnelde JPEG-decodering, de hogetemperatuurmodus en modeldetectie van de FLIR Lepton, nieuwe JPEG-kleurruimteconversies en MicroPython 1.18 toe, plus een reeks RTC- en WiFi-fixes. De Lepton-meetmodus-API is gewijzigd — lees de baanbrekende wijzigingen hieronder.

Hoogtepunten

  • Hardware-JPEG-decodering op STM32 (H7) — snellere JPEG-decompressie.

  • FLIR Lepton hogetemperatuurmodus (tot ~600 °C op de Lepton 3.5) en automatische modeldetectie (1.5–3.5).

  • Nieuwe JPEG-conversies — decodeer YCbCr-JPEG’s naar grijswaarden en grijswaarden-JPEG’s naar RGB565.

  • MicroPython bijgewerkt naar 1.18.

  • Baanbrekend: de ioctl voor de Lepton-meetmodus is gewijzigd — zie de baanbrekende wijzigingen.

Nieuwe functies

  • Hardwareversnelde JPEG-decodering — de on-chip JPEG-codec van de STM32 wordt nu gebruikt voor decompressie.

  • JPEG-kleurruimteconversies — de decoder kan YCbCr-JPEG’s naar GRAYSCALE en GRAYSCALE-JPEG’s naar RGB565 decoderen.

  • Lepton hogetemperatuurmodus — een nieuwe high_temp-meetmodus gebruikt lage versterking om het bereik op de Lepton 3.5 uit te breiden tot ongeveer 600 °C.

  • Arduino Nano RP2040 Connect — de drivermodules onewire, dht en neopixel zijn nu in de firmware ingevroren.

Overige wijzigingen en verbeteringen

  • MicroPython bijgewerkt naar 1.18.

  • De FLIR Lepton-driver detecteert en rapporteert nu het specifieke Lepton-model (1.5 / 1.6 / 2.0 / 2.5 / 3.0 / 3.5) aan de IDE.

Bugfixes

Afbeeldingsverwerking:

  • Image.to_grayscale() / L-kanaalconversie retourneert geen negatieve L-waarden meer voor donkere RGB565-pixels; de JPEG-decoder veroorzaakt geen fout meer (MemManage) bij afbeeldingen met oneven afmetingen.

Camera en sensoren:

  • De vensters-subsamplingverhoudingen en de Bayer-pixelvolgorde van de GC2145 zijn gecorrigeerd voor de juiste beeldkwaliteit bij resoluties onder QVGA en in de BAYER-modus.

Netwerken en opslag:

  • De afhandeling van niet-blokkerende sockettime-outs van de WINC1500 is gecorrigeerd en er is correcte MicroPython errno-mapping voor socketfouten toegevoegd; de bestandsafhandeling van de STM32 OpenMV USB-disk is gerepareerd.

Real-timeklok:

  • De RTC-kloksource / LSE-versus-LSI-selectie en de errata van de LSE-oscillator zijn gerepareerd op de OpenMV Cam H7 Plus- en Pure Thermal-boards.

Hardware- en boardondersteuning

  • STM32 (H7) — hardware-JPEG-decodering.

  • OpenMV Cam H7 Plus / Pure Thermal — fixes voor de RTC-kloksource.

  • Arduino Nano RP2040 Connect — ingevroren onewire / dht / neopixel-drivers.

Baanbrekende API-wijzigingen

Voor gebruikers zichtbare API-breuken tussen v4.2.3 en v4.3.0. Reikwijdte: Python C-modules in modules/ en Python-bibliotheken in scripts/libraries/.

Elke wijziging is voorzien van een label dat de impact aangeeft:

  • minor — beperkte API; treft alleen scripts die deze gebruikten.

  • behavior — dezelfde API, andere resultaten; controleer afgestemde scripts opnieuw.

Beide baanbrekende wijzigingen betreffen uitsluitend de FLIR Lepton thermische sensor. Elke commit-hash verwijst naar de bijbehorende diff op GitHub.

Lepton-meetmodus-ioctl (minor)

sensor.ioctl(SET_MEASUREMENT_MODE, ...) accepteert een nieuw optioneel high_temp-argument, en GET_MEASUREMENT_MODE retourneert nu een 2-tuple (enabled, high_temp) in plaats van één enkele boolean. Code die de vorige boolean-retourwaarde uitlas, moet worden bijgewerkt om de tuple uit te pakken.

Commit: 6b2cd1008

Standaard temperatuurbereik van de Lepton (behavior)

Het standaard temperatuurbereik van de FLIR Lepton is gewijzigd van −17.78 °C…37.78 °C naar −10.0 °C…40.0 °C. De kleurtoewijzing en de gerapporteerde temperaturen voor scènes die op het oude standaardbereik vertrouwden, zullen verschillen — stel een expliciet bereik in als je het vorige gedrag nodig hebt.

Commit: bc07e0131

Migratiechecklist

Alleen FLIR Lepton-scripts worden getroffen: pak de nieuwe GET_MEASUREMENT_MODE (enabled, high_temp)-tuple uit (de meetmoduswijziging) en stel een expliciet temperatuurbereik in als je afhankelijk was van het oude standaardbereik (de wijziging van het standaardbereik). Alle andere scripts draaien ongewijzigd.