v4.3.0

v4.3.0 lägger till maskinvaruaccelererad JPEG-avkodning, högtemperaturläge och modelldetektering för FLIR Lepton, nya JPEG-färgrymdskonverteringar samt MicroPython 1.18, plus en omgång RTC- och WiFi-rättningar. API:t för Leptons mätläge ändrades — läs om de brytande ändringarna nedan.

Höjdpunkter

  • Maskinvaru-JPEG-avkodning på STM32 (H7) — snabbare JPEG-dekomprimering.

  • Högtemperaturläge för FLIR Lepton (upp till ~600 °C på Lepton 3.5) och automatisk modelldetektering (1.5–3.5).

  • Nya JPEG-konverteringar — avkoda YCbCr-JPEG:er till gråskala och gråskale-JPEG:er till RGB565.

  • MicroPython uppdaterad till 1.18.

  • Brytande: ioctl-anropet för Leptons mätläge ändrades — se de brytande ändringarna.

Nya funktioner

  • Maskinvaruaccelererad JPEG-avkodning — STM32:s inbyggda JPEG-codec används nu för dekomprimering.

  • JPEG-färgrymdskonverteringar — avkodaren kan avkoda YCbCr-JPEG:er till GRAYSCALE och GRAYSCALE-JPEG:er till RGB565.

  • Högtemperaturläge för Lepton — ett nytt mätläge high_temp använder låg förstärkning för att utöka räckvidden till ungefär 600 °C på Lepton 3.5.

  • Arduino Nano RP2040 Connect — drivrutinsmodulerna onewire, dht och neopixel är nu infrysta i den fasta programvaran.

Övriga ändringar och förbättringar

  • MicroPython uppdaterad till 1.18.

  • FLIR Lepton-drivrutinen detekterar och rapporterar nu den specifika Lepton-modellen (1.5 / 1.6 / 2.0 / 2.5 / 3.0 / 3.5) till IDE:n.

Buggfixar

Bildbehandling:

  • Image.to_grayscale() / L-kanalskonvertering returnerar inte längre negativa L-värden för mörka RGB565-pixlar; JPEG-avkodaren felar inte längre (MemManage) på bilder med udda dimensioner.

Kamera och sensorer:

  • Rättade GC2145:s subsamplingsförhållanden för fönster och Bayer-pixelordning för korrekt bildkvalitet vid upplösningar under QVGA och i BAYER-läge.

Nätverk och lagring:

  • Korrigerade hanteringen av icke-blockerande socket-timeout för WINC1500 och lade till korrekt MicroPython errno-mappning för socket-fel; rättade filhanteringen för STM32 OpenMV USB-disk.

Realtidsklocka:

  • Rättade RTC:ns klockkälla / valet LSE-kontra-LSI samt errata för LSE-oscillatorn på OpenMV Cam H7 Plus- och Pure Thermal-korten.

Maskinvaru- och kortstöd

  • STM32 (H7) — maskinvaru-JPEG-avkodning.

  • OpenMV Cam H7 Plus / Pure Thermal — rättningar av RTC-klockkälla.

  • Arduino Nano RP2040 Connect — infrysta drivrutiner onewire / dht / neopixel.

Brytande API-ändringar

Användarsynliga API-brott mellan v4.2.3 och v4.3.0. Omfattning: Python C-moduler i modules/ och Python-bibliotek i scripts/libraries/.

Varje ändring är märkt med sin påverkan:

  • minor — smalt API; påverkar bara skript som använde det.

  • behavior — samma API, andra resultat; kontrollera trimmade skript på nytt.

Båda de brytande ändringarna berör endast FLIR Lepton-värmesensorn. Varje commit-hash länkar till sin diff på GitHub.

Ioctl för Leptons mätläge (minor)

sensor.ioctl(SET_MEASUREMENT_MODE, ...) accepterar ett nytt valfritt argument high_temp, och GET_MEASUREMENT_MODE returnerar nu en 2-tupel (enabled, high_temp) i stället för ett enstaka booleskt värde. Kod som läste det tidigare booleska returvärdet måste uppdateras för att packa upp tupeln.

Commit: 6b2cd1008

Leptons standardtemperaturintervall (behavior)

FLIR Leptons standardtemperaturintervall ändrades från −17,78 °C…37,78 °C till −10,0 °C…40,0 °C. Färgmappningen och de rapporterade temperaturerna för scener som förlitade sig på det gamla standardintervallet kommer att skilja sig — ange ett uttryckligt intervall om du behöver det tidigare beteendet.

Commit: bc07e0131

Migreringschecklista

Endast FLIR Lepton-skript påverkas: packa upp den nya GET_MEASUREMENT_MODE-tupeln (enabled, high_temp) (mätlägesändringen) och ange ett uttryckligt temperaturintervall om du var beroende av det gamla standardvärdet (ändringen av standardintervallet). Alla andra skript körs oförändrade.