v1.1.0

v1.1.0 робить OpenMV IDE обізнаним із мікропрограмою: побудований на Qt Creator 4.0.2, він тепер виявляє застарілу OpenMV Cam при підключенні та автоматично оновлює її мікропрограму через серійний завантажувач, додає підтримку нової OpenMV Cam на базі Cortex-M7, а також перетворює панель General Messages на повноцінний серійний термінал. У цьому релізі змінено деяку поведінку за замовчуванням (автоматичне оновлення мікропрограми та фільтри файлів Python), про які варто знати; дивіться Критичні зміни нижче.

Основне

  • Автоматичне оновлення мікропрограми — при підключенні IDE виявляє застарілу OpenMV Cam та прошиває вбудовану мікропрограму через серійний завантажувач, з можливістю також стерти внутрішню файлову систему.

  • Підтримка OpenMV Cam на базі Cortex-M7 — нова плата на базі STM32F769 (OMV7) підтримується поряд з існуючою платою Cortex-M4 (OMV2), з окремими мікропрограмами та автоматичним визначенням.

  • Відновлення після збою — якщо камеру не знайдено, IDE може примусово прошити відповідну мікропрограму на пошкоджену камеру після її повторного підключення.

  • Серійний термінал — панель General Messages тепер є темношкірим Serial Terminal зі 100000 рядків прокрутки, що з’являється при отриманні виводу.

  • Неблокуюче підключення/відключення — підключення, перепідключення та завершення роботи тепер виконуються асинхронно з діалогами прогресу, тому IDE більше не зависає.

  • Живий перегляд бінарних зображень та відтінків сірого — переглядач кадрового буфера відображає 1-бітові зображення та зображення у відтінках сірого на додаток до RGB565 та JPEG.

Нові можливості

  • Автоматичне оновлення мікропрограми. Коли підключена OpenMV Cam повідомляє про версію мікропрограми, старішу за вказану в firmware.txt, IDE запускає завантажувач, стирає сектори флеш-пам’яті, прошиває firmware.bin частинами з діалогами прогресу та скидає камеру. Користувач може за бажанням стерти внутрішню файлову систему як частину оновлення. (a175bff39, 50375ee95, 502177f3c, a871bfb48, 30eb9e0dc, 552803018, 889bc38fb, 047581ed5)

  • Шлях відновлення після збою. Якщо OpenMV Cam не знайдено, IDE запитує, чи підключена пошкоджена камера, дозволяє вибрати тип плати та примусово прошиває відповідну мікропрограму після повторного підключення пристрою. (a175bff39, 30eb9e0dc)

  • Збереження скрипту та дії скидання. Нові пункти меню Tools зберігають поточний скрипт на флеш-диску OpenMV Cam (Save script to OpenMV Cam) та скидають камеру (Reset OpenMV Cam); Stop також отримала комбінацію клавіш Ctrl+T. (9fc3dfa5a, a175bff39, 889bc38fb)

  • Сповіщення про оновлення та локальна документація. IDE перевіряє openmv.io під час запуску на наявність новішої версії IDE та показує сповіщення про завантаження. Дія Docs у меню Help тепер відкриває локально вбудовану HTML-документацію (html/index.html), а дія розпіновки відкриває вбудоване зображення розпіновки (html/_images/pinout.png) замість вебсайту. (a175bff39, 50375ee95)

  • Кадровий буфер для бінарних зображень та відтінків сірого. Переглядач кадрового буфера тепер відображає бінарні (1-бітові) зображення та зображення у відтінках сірого на додаток до RGB565 та JPEG, а кадровий буфер можна вмикати та вимикати в реальному часі з панелі інструментів; стара кнопка JPEG-стиснення на панелі інструментів була прихована на користь цього перемикача вкл/викл. (a175bff39)

  • Нові та оновлені приклади. Додано приклад розгону CPU (до 216 МГц), покращений MJPEG Wi-Fi стрімер для кількох клієнтів, тест FPS та тест кольорових смуг, адаптований до датчика OV7725. (a175bff39, 32dc31962, 502177f3c)

Інші зміни та покращення

  • Серійний термінал. Панель General Messages була перероблена як Serial Terminal з темним фоном, підвищеним пріоритетом у рядку стану, 100000 рядків прокрутки та без перенесення слів. Вона з’являється та спалахує, коли камера виводить дані. (9fc3dfa5a)

  • Неблокуюче підключення та відключення. Підключення та відключення були перероблені на неблокуючі з діалогами прогресу та чистим асинхронним завершенням роботи, тому IDE більше не зависає під час зайнятості камери та замість цього показує Busy... please wait.... (502177f3c, a175bff39, 6275d8855, 234f76389)

  • Згладжений лічильник FPS. Лічильник FPS тепер є згладженим ковзним середнім за останні кілька кадрів замість миттєвого значення, з підказкою, що він може відрізнятися від FPS камери. (a175bff39, 889bc38fb)

  • Полірування темної теми. Темна тема отримала смуги прокрутки власного стилю із зображеннями стрілок у редакторах та панелях, темношкірі виділення результатів пошуку та областей у стилі Inkpot, а також білий текст на панелі Find. (9fc3dfa5a, 94d8c41f1, 9d8683355)

  • Стандартні налаштування, орієнтовані на Python. Find in Files тепер використовує *.py як фільтр файлів за замовчуванням, а діалог відкриття файлів показує всі файли, відповідаючи розробці на MicroPython, а не на C++. (94d8c41f1, a175bff39)

Виправлення помилок

  • Покращено обробку серійних портів на macOS (фільтрація за іменами портів, що містять cu) та Linux (чіткіші вказівки щодо відмови в доступі з пропозицією sudo adduser <user> dialout), придушено попередження SSL, зроблено діалоги завантажувача модальними на рівні застосунку та скориговано тайминги та таймаути завантажувача для надійності. (a175bff39, 552803018, a871bfb48, 30eb9e0dc)

  • IDE тепер автоматично відкриває приклад helloworld.py, якщо при запуску не відкрито жодного документа, та надійно закриває заставний екран, виправляючи проблеми зі станом вікна редагування та запуску. (a175bff39, 9d8683355, 502177f3c)

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

  • Основа Qt Creator: 4.0.2.

  • Версія OpenMV IDE: підвищено з 1.0.0 до 1.1.0. (50375ee95)

  • Нова плата: OpenMV Cam на базі Cortex-M7 (STM32F769, OMV7) тепер підтримується поряд з OpenMV Cam на базі Cortex-M4 (STM32F427, OMV2), з окремими директоріями мікропрограм для кожної плати та автоматичним визначенням типу плати через boards.txt. (a175bff39)

  • Вбудована мікропрограма: оновлено до 1.7.0, а потім до 1.8.0 для плат OMV2 та OMV7; мінімальна/сумісна версія мікропрограми для завантажувача — 1.6.0. (502177f3c, 32dc31962, a175bff39)

  • USB-драйвери для Windows: вбудовано цифрово підписані файли USB-драйверів для Windows (openmv та pybcdc .inf/.cat) та включено директорію з драйверами до поставки IDE. (047581ed5)

Критичні зміни

Видимі для користувача зміни в робочому процесі та поведінці у v1.1.0:

  • Автоматичне оновлення мікропрограми при підключенні. Якщо мікропрограма підключеної OpenMV Cam старіша за версію у вбудованому firmware.txt, IDE пропонує оновити її (та за бажанням стерти внутрішню файлову систему), перш ніж дозволити продовжити. Скасування під час стирання або прошивки може залишити камеру в непрацездатному стані до повторного підключення та перепрошивки.

  • Змінені стандартні налаштування файлів. Стандартний фільтр файлів Find in Files змінено з *.cpp,*.h на *.py, а діалог відкриття файлів тепер показує всі файли замість фільтрів за MIME-типом.