v4.4.2

v4.4.2 fügt SPI-LCD-Byte-Umkehrung und MT9V0xx-Takt-Override hinzu, macht die Skriptausführung und WiFi-Socket-Behandlung robuster und behebt einen bemerkenswerten copy=-Bug bei Bildern. Die Reihenfolge der JPEG-Kompressionsargumente und die Kamera-Taktauswahl haben sich geändert — lesen Sie die nachstehenden Breaking Changes.

Highlights

  • SPI-LCD-Byte-Umkehrung und MT9V0xx-Override des externen Takts.

  • Robustere Skriptausführung und Ausnahmebehandlung sowie WiFi-Socket-Korrekturen.

  • Behebung eines copy=-Bugs in image, der das ursprüngliche Objekt veränderte.

  • Breaking: Die Positionsargument-Reihenfolge der JPEG-Kompression und die Kamera-Taktauswahl haben sich geändert — siehe die Breaking Changes.

Neue Funktionen

  • SPI-LCD-Byte-Umkehrung — der STM32-SPI-LCD-Pfad erhielt Unterstützung für die Byte-Umkehrung.

  • MT9V0xx-Takt-Override — die externe Taktfrequenz des MT9V0xx kann nun überschrieben werden (die Portenta überschreibt ihren Standard-MT-Sensortakt).

Weitere Änderungen und Verbesserungen

  • Die Skriptausführung und Ausnahmebehandlung wurden über die Ports nRF, RP2 und STM32 hinweg robuster gemacht.

  • Optimiertes Laden des MT9M114-Sensor-Patches (schnellere Initialisierung).

Fehlerbehebungen

Bildverarbeitung:

  • Behebung eines copy=-Argument-Bugs bei einer image-Operation, bei dem das ursprüngliche Objekt anstelle einer Kopie verändert wurde.

Kamera und Sensoren:

  • Hinzufügen der Sensor-Auslese-Steuerung der Nicla Vision und Korrektur ihrer Bildausrichtung.

Netzwerk und USB:

  • WINC1500 hält den lauschenden Socket bei einem Accept-Timeout nun offen und löscht die NIC beim Schließen von Sockets korrekt; Behebung der RTSP-Bibliothek.

  • Das Audio-Modul verwendet nun statische Scheduler-Knoten für eine zuverlässigere Callback-Planung; der USB-Debugger wird deaktiviert, bevor Ausnahmen ausgelöst werden, was die Stabilität der IDE-Verbindung bei Skriptfehlern verbessert.

Hardware- und Board-Unterstützung

  • Arduino Nicla Vision — Sensor-Auslese-Steuerung und korrigierte Bildausrichtung.

  • Arduino Portenta — überschreibt ihren Standard-MT-Sensortakt.

Breaking API-Änderungen

Für Benutzer sichtbare API-Brüche zwischen v4.4.1 und v4.4.2. Umfang: Python-C-Module in modules/ und Python-Bibliotheken in scripts/libraries/.

Beide Breaking Changes sind behavior-Änderungen (gleiche API, andere Ergebnisse) — überprüfen Sie abgestimmte Skripte erneut. Jeder Commit-Hash verlinkt auf seinen Diff auf GitHub.

Reihenfolge der JPEG-Kompressionsargumente (behavior)

Die Positionsargument-Behandlung der JPEG-Kompressionsfamilie (compress() / compressed() / JPEG save()) wurde korrigiert, sodass quality das erste Positionsargument ist, mit einem Standardwert von 90. Skripte, die Kompressionsargumente positional gemäß der vorherigen (falschen) Reihenfolge übergeben haben, müssen aktualisiert werden.

Commit: 509b094a5

Auswahl der Kamera-Taktfrequenz (behavior)

Die Auswahl des externen STM32-Kameratakts wählt nun die nächstgelegene verfügbare Frequenz unterhalb des angeforderten Werts, anstatt zu scheitern oder darüber hinauszuschießen. Der tatsächliche Pixeltakt für eine gegebene Anfrage kann sich von früheren Releases unterscheiden — überprüfen Sie zeitkritische Aufnahmen erneut.

Commit: 39ba1a7f5

Migrations-Checkliste

Für eine saubere Portierung auf v4.4.2: Übergeben Sie JPEG quality als erstes Positionsargument (oder als Schlüsselwort) (die JPEG-Argumentänderung) und überprüfen Sie alle zeitkritischen Kamera-Takteinstellungen erneut (die Taktauswahl-Änderung).