v4.4.2

v4.4.2 añade la inversión de bytes del LCD SPI y la anulación del reloj del MT9V0xx, una ejecución de scripts y un manejo de sockets WiFi más robustos, y corrige un notable error de copy= en imágenes. Cambiaron el orden de los argumentos de compresión JPEG y la selección del reloj de la cámara — lee los cambios incompatibles más abajo.

Aspectos destacados

  • Inversión de bytes del LCD SPI y anulación del reloj externo del MT9V0xx.

  • Ejecución de scripts más robusta y manejo de excepciones, además de correcciones en sockets WiFi.

  • Se corrigió un error de copy= en image que modificaba el objeto original.

  • Incompatible: cambiaron el orden de los argumentos posicionales de la compresión JPEG y la selección del reloj de la cámara — consulta los cambios incompatibles.

Nuevas características

  • Inversión de bytes del LCD SPI — la ruta del LCD SPI de STM32 obtuvo soporte de inversión de bytes.

  • Anulación del reloj del MT9V0xx — ahora se puede anular la frecuencia del reloj externo del MT9V0xx (la Portenta anula el reloj predeterminado de su sensor MT).

Otros cambios y mejoras

  • La ejecución de scripts y el manejo de excepciones se hicieron más robustos en los puertos nRF, RP2 y STM32.

  • Se optimizó la carga del parche del sensor MT9M114 (inicialización más rápida).

Correcciones de errores

Procesamiento de imágenes:

  • Se corrigió un error del argumento copy= en una operación de image donde se modificaba el objeto original en lugar de una copia.

Cámara y sensores:

  • Se añadió el control de lectura del sensor de la Nicla Vision y se corrigió la orientación de su imagen.

Redes y USB:

  • WINC1500 ahora mantiene abierto el socket de escucha cuando se agota el tiempo de espera de accept y limpia correctamente la NIC al cerrar sockets; se corrigió la biblioteca RTSP.

  • El módulo de audio ahora usa nodos de planificador estáticos para una programación de funciones de retorno (callbacks) más fiable; el depurador USB se deshabilita antes de lanzar excepciones, mejorando la estabilidad de la conexión con el IDE ante errores de script.

Hardware y soporte de placas

  • Arduino Nicla Vision — control de lectura del sensor y orientación de imagen corregida.

  • Arduino Portenta — anula el reloj predeterminado de su sensor MT.

Cambios incompatibles en la API

Cambios incompatibles de la API visibles para el usuario entre v4.4.1 y v4.4.2. Alcance: módulos C de Python en modules/ y bibliotecas de Python en scripts/libraries/.

Ambos cambios incompatibles son cambios de comportamiento (misma API, resultados diferentes) — vuelve a revisar los scripts ajustados. Cada hash de commit enlaza a su diff en GitHub.

Orden de los argumentos de compresión JPEG (comportamiento)

Se corrigió el manejo de los argumentos posicionales de la familia de compresión JPEG (compress() / compressed() / save() de JPEG) para que quality sea el primer argumento posicional, con un valor predeterminado de 90. Los scripts que pasaban argumentos de compresión de forma posicional según el orden anterior (incorrecto) deben actualizarse.

Commit: 509b094a5

Selección de la frecuencia del reloj de la cámara (comportamiento)

La selección del reloj externo de la cámara en STM32 ahora elige la frecuencia disponible más cercana por debajo del valor solicitado en lugar de fallar o excederse. El reloj de píxeles real para una solicitud dada puede diferir de versiones anteriores — vuelve a revisar las capturas sensibles a la temporización.

Commit: 39ba1a7f5

Lista de verificación de migración

Para una portabilidad limpia a v4.4.2: pasa quality de JPEG como primer argumento posicional (o como argumento con nombre) (el cambio de argumentos JPEG), y vuelve a revisar cualquier ajuste del reloj de la cámara sensible a la temporización (el cambio de selección del reloj).