v1.1.0

v1.1.0 hace que OpenMV IDE reconozca el firmware: construido sobre Qt Creator 4.0.2, ahora detecta una OpenMV Cam desactualizada al conectar y actualiza su firmware automáticamente mediante el gestor de arranque (bootloader) serie, añade compatibilidad con la nueva OpenMV Cam Cortex-M7, y convierte el panel General Messages en un verdadero Serial Terminal. Esta versión cambia algunos comportamientos predeterminados (la actualización automática del firmware y los filtros de archivos de Python) que los usuarios deben tener en cuenta; consulta Cambios incompatibles más abajo.

Aspectos destacados

  • Actualización automática del firmware — al conectar, el IDE detecta una OpenMV Cam desactualizada y graba el firmware incluido mediante el gestor de arranque (bootloader) serie, con la opción de borrar también el sistema de archivos interno.

  • Compatibilidad con la OpenMV Cam Cortex-M7 — la nueva placa basada en el STM32F769 (OMV7) es compatible junto con la placa Cortex-M4 existente (OMV2), con firmware por placa y detección automática.

  • Recuperación de cámaras bloqueadas — si no se encuentra ninguna cámara, el IDE puede forzar la grabación del firmware correspondiente en una cámara bloqueada una vez que se reconecta.

  • Serial Terminal — el panel General Messages es ahora un Serial Terminal con tema oscuro y un historial de 100000 líneas que aparece al recibir salida.

  • Conexión/desconexión no bloqueante — conectar, reconectar y apagar ahora se ejecutan de forma asíncrona con cuadros de diálogo de progreso, de modo que el IDE ya no se cuelga.

  • Vista previa en vivo binaria y en escala de grises — el visor del búfer de fotogramas (frame buffer) renderiza imágenes de 1 bit y en escala de grises además de RGB565 y JPEG.

Nuevas funciones

  • Actualización automática del firmware. Cuando una OpenMV Cam conectada informa de una versión de firmware más antigua que el firmware.txt incluido, el IDE inicia el gestor de arranque (bootloader), borra los sectores de la memoria flash, programa firmware.bin por fragmentos con cuadros de diálogo de progreso y reinicia la cámara. El usuario puede, opcionalmente, borrar el sistema de archivos interno como parte de la actualización. (a175bff39, 50375ee95, 502177f3c, a871bfb48, 30eb9e0dc, 552803018, 889bc38fb, 047581ed5)

  • Ruta de recuperación de cámaras bloqueadas. Si no se encuentra ninguna OpenMV Cam, el IDE pregunta si hay una cámara bloqueada conectada, te permite elegir el tipo de placa y fuerza la grabación del firmware correspondiente una vez que el dispositivo se reconecta. (a175bff39, 30eb9e0dc)

  • Acciones de guardar script y reiniciar. Las nuevas entradas del menú Tools guardan el script actual en la unidad flash de la OpenMV Cam (Save script to OpenMV Cam) y reinician la cámara (Reset OpenMV Cam); Stop también incorporó un atajo de teclado Ctrl+T. (9fc3dfa5a, a175bff39, 889bc38fb)

  • Notificación de actualización y documentación local. El IDE comprueba openmv.io al iniciarse para ver si hay una versión más reciente del IDE y muestra una notificación de descarga. La acción Docs del menú Help ahora abre la documentación HTML incluida localmente (html/index.html) y la acción de pinout abre la imagen de pinout incluida (html/_images/pinout.png) en lugar del sitio web. (a175bff39, 50375ee95)

  • Búfer de fotogramas (frame buffer) binario y en escala de grises. El visor del búfer de fotogramas (frame buffer) ahora renderiza imágenes binarias (1 bit) y en escala de grises además de RGB565 y JPEG, y el búfer de fotogramas (frame buffer) puede activarse y desactivarse en vivo desde la barra de herramientas; el antiguo botón de compresión JPEG de la barra de herramientas se ocultó en favor de esta opción de activado/desactivado. (a175bff39)

  • Ejemplos nuevos y actualizados. Se añadió un ejemplo de overclocking de la CPU (hasta 216MHz), un mejorado transmisor MJPEG WiFi multicliente, una prueba de FPS y una prueba de barras de color que se adapta al sensor OV7725. (a175bff39, 32dc31962, 502177f3c)

Otros cambios y mejoras

  • Serial Terminal. El panel General Messages se reconvirtió en un Serial Terminal con fondo oscuro, mayor prioridad en la barra de estado, un historial de 100000 líneas y sin ajuste de línea. Aparece y parpadea cuando la cámara imprime salida. (9fc3dfa5a)

  • Conexión y desconexión no bloqueantes. La conexión y la desconexión se rediseñaron para que no sean bloqueantes, con cuadros de diálogo de progreso y un apagado asíncrono limpio, de modo que el IDE ya no se cuelga mientras la cámara está ocupada y muestra Busy... please wait... en su lugar. (502177f3c, a175bff39, 6275d8855, 234f76389)

  • Lectura de FPS suavizada. La lectura de FPS es ahora una media móvil suavizada sobre los últimos fotogramas en lugar de un valor instantáneo, con una información sobre herramientas que indica que puede diferir de los FPS de la cámara. (a175bff39, 889bc38fb)

  • Mejoras del tema oscuro. El tema oscuro incorporó barras de desplazamiento con estilo personalizado e imágenes de flechas en los editores y paneles, resaltado de resultados de búsqueda y de ámbito con tema oscuro en el estilo Inkpot, y texto blanco en la barra de herramientas Find. (9fc3dfa5a, 94d8c41f1, 9d8683355)

  • Valores predeterminados de archivos orientados a Python. Find in Files ahora establece su filtro de archivos por defecto en *.py y el cuadro de diálogo de apertura de archivos muestra todos los archivos, en consonancia con el desarrollo en MicroPython en lugar de C++. (94d8c41f1, a175bff39)

Correcciones de errores

  • Se mejoró la gestión de puertos serie en macOS (filtrando los nombres de puerto que contienen cu) y en Linux (con una guía más clara para el permiso denegado, sugiriendo sudo adduser <user> dialout), se suprimió una advertencia de SSL, se hicieron modales de aplicación los cuadros de diálogo del gestor de arranque (bootloader) y se ajustaron los tiempos y los tiempos de espera del gestor de arranque (bootloader) para mayor fiabilidad. (a175bff39, 552803018, a871bfb48, 30eb9e0dc)

  • El IDE ahora abre automáticamente el ejemplo helloworld.py cuando no hay ningún documento abierto al iniciarse y cierra de forma fiable la pantalla de bienvenida, corrigiendo problemas en el estado de la ventana de edición y de inicio. (a175bff39, 9d8683355, 502177f3c)

Compatibilidad de plataformas y herramientas

  • Base de Qt Creator: 4.0.2.

  • Versión de OpenMV IDE: actualizada de 1.0.0 a 1.1.0. (50375ee95)

  • Nueva placa: la OpenMV Cam Cortex-M7 (STM32F769, OMV7) ahora es compatible junto con la OpenMV Cam Cortex-M4 (STM32F427, OMV2), con directorios de firmware por placa y detección automática de la cadena de placa mediante boards.txt. (a175bff39)

  • Firmware incluido: actualizado a 1.7.0 y luego a 1.8.0 para ambas placas OMV2 y OMV7; la versión de firmware mínima/compatible del gestor de arranque (bootloader) es 1.6.0. (502177f3c, 32dc31962, a175bff39)

  • Controladores USB de Windows: se incluyeron archivos de controlador USB de Windows firmados digitalmente (openmv y pybcdc .inf/.cat) y se empaquetó el directorio de controladores con el IDE. (047581ed5)

Cambios incompatibles

Cambios de flujo de trabajo y de comportamiento visibles para el usuario en v1.1.0:

  • Actualización automática del firmware al conectar. Cuando el firmware de la OpenMV Cam conectada es más antiguo que la versión del firmware.txt incluido, el IDE te pide que lo actualices (y, opcionalmente, que borres el sistema de archivos interno) antes de dejarte continuar. Cancelar durante el paso de borrado o de programación puede dejar la cámara bloqueada hasta que se reconecte y se vuelva a grabar.

  • Cambio en los valores predeterminados de archivos. El filtro de archivos por defecto de Find in Files cambió de *.cpp,*.h a *.py, y el cuadro de diálogo de apertura de archivos ahora muestra todos los archivos en lugar de filtros por tipo MIME.