v4.2.0

В v4.2.0 появляется новый режим OpenMV Viewer и диалог Debug Protocol Settings для настройки опроса между IDE и камерой, обновляется встроенная прошивка всех плат до v4.5.6 и исправляется ряд проблем в редакторе, терминале и диалогах. Этот выпуск остаётся на базе Qt Creator 10.0.1, поэтому нарушающих совместимость изменений для существующих проектов нет.

Основные изменения

  • Режим OpenMV Viewer можно запустить с помощью новой опции командной строки -viewer_mode, чтобы отображать только буфер кадра и вывод последовательного порта.

  • Диалог Debug Protocol Settings, открываемый по кнопке FPS в строке состояния, позволяет настраивать частоту опроса между IDE и камерой и использовать объединённый режим опроса get_state.

  • Встроенная прошивка обновлена до v4.5.6 для всех плат, добавлена поддержка датчика PAG7920 и обновлённая прошивка WiFi/Bluetooth CYW4343.

  • Примеры Open-AMP добавлены для Arduino Giga и Portenta H7 для демонстрации двухъядерного обмена данными.

  • Исправлена потеря истории отмены/повтора и редактирования при подключении или отключении камеры.

Новые возможности

  • Добавлена новая опция командной строки -viewer_mode, которая запускает приложение в упрощённом виде OpenMV Viewer. Пункты файлового меню New/Open/Save/Save As/Close/Print и список недавних файлов, меню Edit, действия Run/Stop, редактор набора данных, несколько переключателей инструментов и центральная панель редактора кода скрыты, поэтому отображаются только буфер кадра и вывод последовательного порта (27ba14cc5).

  • Добавлен диалог Debug Protocol Settings, открываемый щелчком по кнопке FPS в строке состояния, который позволяет настраивать частоту опроса между IDE и камерой и использовать новый объединённый режим опроса get_state. Интервалы опроса frame-size-dump, get-script-running и get-tx-buffer теперь настраиваются в разделе Split Polling этого диалога, оставляя одно соответствующее переопределение командной строки (-override_per_command_wait) для задержки между командами (d0ee9d22a, fabb8c4fe).

  • Добавлена новая категория примеров Open-AMP (examples/11-Open-AMP, включая vuart.py), доступная для Arduino Giga и Portenta H7 для демонстрации двухъядерного обмена данными (03808a403).

Прочие изменения и улучшения

  • В списке выбора типа платы в загрузчике теперь отображаются понятные человеку названия плат с сохранением сопоставления с внутренним идентификатором прошивки (52763b52e).

  • Выбор пути к прошивке в диалоге загрузчика теперь запоминает и заранее подставляет последний использованный файл прошивки (cc7a9806e) и предоставляет автодополнение по истории путей (284784bc2).

  • После обновления прошивки диалог по завершении обновления теперь предлагает отключить камеру, снять перемычку SBL-to-3.3V и снова подключить камеру (1bf5c15ad).

  • Меню Examples больше не всегда сворачивает папки с единственным вложением в их родительскую папку; теперь это происходит только при включённой фильтрации примеров (014849db1).

  • Настройки отображения и ввода в редакторе (маркеры сворачивания, автосворачивание первого комментария, отображение символов конца строки файла, запрет отступа по табуляции, однострочные комментарии) теперь принудительно установлены в значения по умолчанию OpenMV и больше не переопределяются сохранёнными настройками (570b7028b).

  • Добавлена защита от принудительного завершения, которая завершает работу IDE через 10 секунд и в крайнем случае прерывает зависший поток последовательного порта, чтобы IDE всегда могла завершиться (58a2dfedb).

Исправления ошибок

  • Исправлена потеря истории отмены/повтора и редактирования при подключении или отключении камеры за счёт выделения специфичных для датчика исправлений скрипта в единый вспомогательный метод fixScriptForSensor() вместо изменения содержимого буфера на месте (50b0403f1).

  • Исправлено преобразование видеофайлов в MJPEG за счёт сопоставления с кодировщиками, а не декодировщиками в списке выходных форматов, и принудительного использования контейнера AVI для выходов .mjpeg/.mjpg (35fb91935).

  • Исправлено неверное начальное отображение видимости панелей выдвижного буфера кадра за счёт восстановления состояния вертикального разделителя перед состоянием горизонтального разделителя при запуске (f0d930f02).

  • Исправлено перекрытие всплывающих окон LED-states и More-Examples с другими модальными диалогами за счёт их отложенного показа до тех пор, пока ни один модальный виджет не активен (e007defeb).

  • Строки KeyboardInterrupt и Exception: IDE interrupt отфильтрованы из вывода последовательного терминала, поэтому остановка скрипта больше не выводит ложную трассировку стека или исключение (c4a2dcab8, b1c459d83).

  • Обновлено регулярное выражение фильтра трассировки ошибок, чтобы трассировки MicroPython 1.23 разбирались корректно, исключая KeyboardInterrupt и вложенные строки File из обработки как строки ошибки (6df9ecb78).

  • Предотвращена попытка IDE открыть несуществующий файл исходного кода при переходе к месту исключения за счёт предварительной проверки существования файла по пути на устройстве (4e8e98c2e).

Поддержка платформ и инструментов

  • База Qt Creator: 10.0.1.

  • Встроенная прошивка плат обновлена до v4.5.6 для OpenMV2/3/4/4P/PT, RT1060, Giga, Portenta H7, Nicla Vision, Nano RP2040 и Arduino Nano 33 BLE Sense, с обновлёнными загрузчиками и прошивкой UVC (03808a403).

  • Добавлена поддержка датчика изображения PAG7920 (03808a403).

  • Встроенная прошивка WiFi CYW4343 обновлена до 7.45.98.102 и добавлена прошивка Bluetooth CYW4343, прошиваемая во флеш-память для Arduino Giga, Portenta H7 и Nicla Vision (которые имеют встроенный модуль WiFi/Bluetooth CYW4343) (03808a403).

Нарушающие совместимость изменения

Отсутствуют. v4.2.0 остаётся на базе Qt Creator 10.0.1 и не вносит изменений, затрагивающих существующие проекты или рабочие процессы.