v4.4.0¶
v4.4.0 додає API tf.regression(), підтримку FLIR Lepton на OpenMV Cam H7 Pro, підтримку співпроцесора Cortex-M4 на Arduino Nicla Vision та MicroPython 1.19. Деякі модулі для конкретних плат і поведінка WiFi/LCD змінились — читайте про критичні зміни нижче.
Основні можливості¶
tf.regression()— виконання регресійних моделей TensorFlow Lite з 1D-входом/1D-виходом.Підтримка теплового датчика FLIR Lepton на OpenMV Cam H7 Pro.
Arduino Nicla Vision — підтримка співпроцесора Cortex-M4, робота MicroSpeech, LPUART1.
MicroPython оновлено до 1.19; ulab оновлено до 5.1.1.
Критична зміна: модулі
lcd/tvна Nicla Vision вимкнено, а драйвер WiFi RP2040 Connect змінено — дивіться критичні зміни.
Нові можливості¶
tf.regression(model, input_array)— нова функція для регресійних моделей TensorFlow Lite з 1D-входом/виходом, що повертає список значень з плаваючою точкою.Керування GC2145 —
sensor.set_auto_exposure()таsensor.set_auto_whitebal()тепер працюють на GC2145 (автоматичну витримку / баланс білого можна вимкнути; явне встановлення витримки/підсилення ще не підтримується).Arduino Nicla Vision — увімкнено підтримку співпроцесора Cortex-M4 (CM4) та периферійного пристрою LPUART1.
machine.Pin— вивідUSB_VBUSтепер доступний у скриптах користувача.
Інші зміни та покращення¶
MicroPython оновлено до 1.19; ulab до 5.1.1; оновлено вбудований драйвер WiFi cyw43.
Порти RP2 (Arduino Nano RP2040 Connect) та nRF (Arduino Nano 33 BLE Sense) перейшли на новий налагоджувач на базі TinyUSB для з’єднання IDE/хост.
XCLK для OV7670 підвищено з 12 МГц до 24 МГц (оновлений набір регістрів).
Виправлення помилок¶
Камера та датчики:
Статистика температури плям OpenMV Pure Thermal тепер використовує ІЧ-зображення замість кольорового, тому середня температура кожної плями розраховується правильно.
Виправлено обробку ROI у
draw_image()та масштабування площі для точнішого масштабованого виводу.IMU повторно ініціалізується після програмного скидання, тому продовжує працювати, коли ввімкнено шину SPI для IMU.
Система:
Виправлено проблеми зі знаковим/беззнаковим порівнянням у виявленні ознак FAST/AGAST, виявленні плям, CLAHE та драйверах LCD/TV; виправлено де-ініціалізацію камери-GPIO / SPI / DAC на STM32, відображення виводів H7 LPUART та реєстрацію модуля
nnSTM32Cube.AI.
Arduino Nicla Vision:
MicroSpeech тепер працює (збільшено буфер PDM удвічі, додано приклад), виправлено режим очікування з низьким енергоспоживанням.
Апаратне забезпечення та підтримка плат¶
OpenMV Cam H7 Pro — підтримка теплового датчика FLIR Lepton.
Arduino Nicla Vision — співпроцесор CM4, LPUART1, MicroSpeech, режим очікування з низьким енергоспоживанням.
Критичні зміни API¶
Зміни API, видимі користувачу, між v4.3.3 та v4.4.0. Область: C-модулі Python у modules/ та бібліотеки Python у scripts/libraries/.
Кожна зміна позначена за впливом:
minor — вузький API; стосується лише скриптів для конкретної плати.
behavior — той самий API, різні результати; перевірте налаштовані скрипти.
Зміни згруповані за впливом у такому порядку. Якщо ви просто хочете перенести свій код, перейдіть до контрольного списку міграції в кінці. Кожен хеш коміту є посиланням на різницю на GitHub.
Модулі Nicla Vision та WiFi RP2040 (minor)¶
На Arduino Nicla Vision модулі lcd та tv було вимкнено для звільнення пам’яті для підтримки співпроцесора CM4 — скрипти, що використовують ці модулі на Nicla Vision, більше їх не знайдуть. Arduino Nano RP2040 Connect перейшов з власної реалізації WiFi/nina від OpenMV на драйвер/модуль NINA-W10 від основного MicroPython, API якого відрізняється.
Тайм-аут сокета WiFi та вертикальне перевертання LCD (behavior)¶
Тайм-аут сокета WINC1500 тепер повертає помилку неблокувального режиму (EWOULDBLOCK) замість ETIMEDOUT, тому сокети з тайм-аутом більше не закриваються несподівано — код, що перехоплював ETIMEDOUT, потрібно оновити. SPI LCD шилд display тепер викидає ValueError («Vertical flip requires triple buffering!») коли запитується від’ємний y_scale без увімкненого потрійного буферування.
Контрольний список міграції¶
Для чистого переходу на v4.4.0 потрібно:
На Nicla Vision — припинити використання
lcd/tv; на Nano RP2040 Connect — перенести код WiFi на драйвер NINA-W10 (зміни модулів плати).Оновити код сокетів WINC1500 для очікування
EWOULDBLOCKпри тайм-ауті та увімкнути потрійне буферування для вертикально перевернутого виводу LCD (поведінкові зміни).