v4.4.0¶
v4.4.0 lägger till ett tf.regression()-API, stöd för FLIR Lepton på OpenMV Cam H7 Pro, stöd för Cortex-M4-koprocessorn på Arduino Nicla Vision samt MicroPython 1.19. Några kortspecifika moduler och WiFi/LCD-beteenden ändrades — läs de bakåtinkompatibla ändringarna nedan.
Höjdpunkter¶
tf.regression()— kör TensorFlow Lite-regressionsmodeller med 1D-indata/1D-utdata.FLIR Lepton-värmesensorstöd på OpenMV Cam H7 Pro.
Arduino Nicla Vision — stöd för Cortex-M4-koprocessorn, fungerande MicroSpeech, LPUART1.
MicroPython uppdaterad till 1.19; ulab uppdaterad till 5.1.1.
Bakåtinkompatibelt: modulerna
lcd/tvpå Nicla Vision inaktiverades och WiFi-drivrutinen för RP2040 Connect ändrades — se de bakåtinkompatibla ändringarna.
Nya funktioner¶
tf.regression(model, input_array)— en ny funktion för TensorFlow Lite-regressionsmodeller med 1D in-/utdata, som returnerar en lista med flyttalsutdata.GC2145-kontroller —
sensor.set_auto_exposure()ochsensor.set_auto_whitebal()är nu funktionella på GC2145 (automatisk exponering / vitbalans kan inaktiveras; explicit exponering/förstärkning stöds ännu inte).Arduino Nicla Vision — stöd för Cortex-M4-koprocessorn (CM4) och kringutrustningen LPUART1 aktiverades.
machine.Pin— stiftetUSB_VBUSexponeras nu för användarskript.
Övriga ändringar och förbättringar¶
MicroPython uppdaterad till 1.19; ulab till 5.1.1; den medföljande cyw43-WiFi-drivrutinen uppdaterades.
RP2-porten (Arduino Nano RP2040 Connect) och nRF-porten (Arduino Nano 33 BLE Sense) bytte till den nya TinyUSB-baserade felsökaren för IDE-/värdanslutningen.
OV7670:s XCLK höjdes från 12 MHz till 24 MHz (uppdaterad registeruppsättning).
Buggfixar¶
Kamera och sensorer:
Blob-temperaturstatistiken på OpenMV Pure Thermal använder nu IR-bilden istället för färgbilden, så att medeltemperaturen per blob blir korrekt.
Åtgärdade ROI-hantering och areaskalning i
draw_image()för mer korrekt skalad utdata.IMU:n återinitieras efter en mjuk omstart så att den fortsätter fungera när IMU:ns SPI-buss är aktiverad.
System:
Åtgärdade problem med jämförelser mellan tecken/teckenlösa värden i FAST/AGAST-särdragsdetektering, blob-detektering, CLAHE och LCD/TV-drivrutinerna; åtgärdade de-initialisering av STM32-kamerans GPIO / SPI / DAC, H7:s LPUART-stiftmappning samt registreringen av STM32Cube.AI:s
nn-modul.
Arduino Nicla Vision:
MicroSpeech fungerar nu (dubblerad PDM-buffert, exempel tillagt) och lågeffektsläget för viloläge åtgärdades.
Maskinvaru- och kortstöd¶
OpenMV Cam H7 Pro — stöd för FLIR Lepton-värmesensor.
Arduino Nicla Vision — CM4-koprocessor, LPUART1, MicroSpeech, lågeffektsviloläge.
Bakåtinkompatibla API-ändringar¶
Användarsynliga API-brott mellan v4.3.3 och v4.4.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 endast skript på ett specifikt kort.
behavior — samma API, andra resultat; kontrollera finjusterade skript på nytt.
Ändringarna är grupperade efter påverkan i den ordningen. Om du bara vill porta din kod, hoppa till migreringschecklistan i slutet. Varje commit-hash länkar till sin diff på GitHub.
Nicla Vision-moduler och RP2040 WiFi (minor)¶
På Arduino Nicla Vision inaktiverades modulerna lcd och tv för att frigöra minne till stödet för CM4-koprocessorn — skript som använder dessa moduler på Nicla Vision kommer inte längre att hitta dem. Arduino Nano RP2040 Connect bytte från den OpenMV-anpassade WiFi-/nina-implementeringen till den uppströms MicroPython NINA-W10-drivrutinen/modulen, vars API skiljer sig.
WiFi-sockettimeout och LCD vertikal spegling (behavior)¶
En WINC1500-sockettimeout returnerar nu ett icke-blockerande fel (EWOULDBLOCK) istället för ETIMEDOUT, så att socketar som fått timeout inte längre stängs oväntat — kod som fångade ETIMEDOUT måste uppdateras. SPI LCD-skärmens display genererar nu ValueError (”Vertical flip requires triple buffering!”) när en negativ y_scale begärs utan att trippelbuffring är aktiverad.
Migreringschecklista¶
För en ren portning till v4.4.0 är det typiska arbetet:
På Nicla Vision, sluta använda
lcd/tv; på Nano RP2040 Connect, porta WiFi-kod till den uppströms NINA-W10-drivrutinen (kortmodulsändringarna).Uppdatera WINC1500-socketkod till att förvänta sig
EWOULDBLOCKvid timeout, och aktivera trippelbuffring för vertikalt speglad LCD-utdata (beteendeändringarna).