v4.4.2#

v4.4.2 додає інвертування байтів SPI-LCD та перевизначення тактування MT9V0xx, більш надійне виконання скриптів і обробку WiFi-сокетів, а також виправляє помітну помилку з аргументом copy= зображення. Порядок аргументів стиснення JPEG та вибір тактування камери змінено — ознайомтеся зі змінами, що порушують сумісність, нижче.

Основні можливості#

  • Зворотне перетворення байтів SPI LCD та перевизначення зовнішньої тактової частоти MT9V0xx.

  • Надійніше виконання скриптів та обробка винятків, плюс виправлення сокетів WiFi.

  • Виправлено помилку copy= у image, що модифікувала оригінальний об’єкт.

  • Критична зміна: порядок позиційних аргументів стиснення JPEG та вибір тактової частоти камери змінились — дивіться критичні зміни.

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

  • Зворотне перетворення байтів SPI LCD — шлях SPI LCD на STM32 отримав підтримку зворотного перетворення байтів.

  • Перевизначення тактової частоти MT9V0xx — зовнішню тактову частоту MT9V0xx тепер можна перевизначити (Portenta перевизначає свою стандартну тактову частоту MT-датчика).

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

  • Виконання скриптів та обробка винятків зроблені надійнішими на портах nRF, RP2 та STM32.

  • Оптимізовано завантаження патчу датчика MT9M114 (швидша ініціалізація).

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

Обробка зображень:

  • Виправлено помилку аргументу copy= операції image, де оригінальний об’єкт змінювався замість копії.

Камера та датчики:

  • Додано керування зчитуванням датчика Nicla Vision та виправлено орієнтацію зображення.

Мережа та USB:

  • WINC1500 тепер зберігає відкритим слухаючий сокет при тайм-ауті прийняття з’єднання та правильно очищує NIC при закритті сокетів; виправлено бібліотеку RTSP.

  • Аудіомодуль тепер використовує статичні вузли планувальника для надійнішого планування зворотних викликів; налагоджувач USB вимикається перед генерацією винятків, що покращує стабільність з’єднання IDE при помилках скрипту.

Апаратне забезпечення та підтримка плат#

  • Arduino Nicla Vision — керування зчитуванням датчика та виправлена орієнтація зображення.

  • Arduino Portenta — перевизначення стандартної тактової частоти MT-датчика.

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

Зміни API, видимі користувачу, між v4.4.1 та v4.4.2. Область: C-модулі Python у modules/ та бібліотеки Python у scripts/libraries/.

Обидві критичні зміни є поведінковими (той самий API, різні результати) — перевірте налаштовані скрипти. Кожен хеш коміту є посиланням на різницю на GitHub.

Порядок аргументів стиснення JPEG (behavior)#

Обробку позиційних аргументів для сімейства функцій стиснення JPEG (compress() / compressed() / JPEG save()) виправлено так, що quality є першим позиційним аргументом зі значенням за замовчуванням 90. Скрипти, що передавали аргументи стиснення позиційно відповідно до попереднього (некоректного) порядку, потрібно оновити.

Коміт: 509b094a5

Вибір тактової частоти камери (behavior)#

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

Коміт: 39ba1a7f5

Контрольний список міграції#

Для чистого переходу на v4.4.2: передавайте quality JPEG як перший позиційний аргумент (або як іменований) (зміна аргументу JPEG), та перевірте будь-які налаштування тактової частоти камери, чутливі до часових параметрів (зміна вибору тактової частоти).