v4.3.1¶
v4.3.1 добавляет поддержку многозонного времяпролётного датчика VL53L5CX, улучшенный CAN FD, автоматически закрывающийся финализатор ImageIO и широкий набор исправлений надёжности камеры, USB и программной перезагрузки.
Основные изменения¶
VL53L5CX — поддержка многозонного времяпролётного датчика (модуль Python + примеры).
Улучшенный CAN FD на STM32.
Автозакрытие
ImageIO— потоки теперь закрываются сами при сборке мусора.Несовместимое изменение: stdout теперь буферизуется — см. описание несовместимого изменения.
Новые возможности¶
VL53L5CX — новый модуль Python для многозонного датчика ToF VL53L5CX, драйвер ST и примеры скриптов ToF.
Финализатор
ImageIO— потокImageIOтеперь закрывается автоматически при сборке мусора объекта.CAN FD — улучшена поддержка CAN FD на STM32.
Многоустройственные шины I2C — сканирование шины камеры может возвращать несколько устройств, а тепловые датчики FIR поддерживают шины, разделяемые с другими устройствами; порт RP2 получил поддержку общего вызова (general-call) I2C.
Исправления ошибок¶
Обработка изображений:
Исправлены утечка памяти
quad_segment_maxima(обнаружение AprilTag/четырёхугольников), SIMD-преобразование цвета YCbCr→RGB, чёрные линии на первом кадре и использование кэша LCD на OpenMV Pure Thermal.
Камера и датчики:
Исправлены синхронизация чтения кадров MLX9064x, обработка VSYNC EXTI на Portenta H7 / STM32, а также режим питания и значение тактовой частоты HSE для Arduino Nicla Vision.
Система и USB:
Исправлены смещение дескриптора конечной точки USB High-Speed, деинициализация модулей при переходе
main.py→ IDE, очистка при программной перезагрузке (mp_deinit()и сброс буфера CDC), инициализацияsys.pathна nRF и частота режима fast-mode-plus I2C на RP2.
Поддержка оборудования и плат¶
VL53L5CX — многозонный датчик ToF.
OpenMV Cam H7 — больший линейный буфер кадра (обрабатывает более широкие изображения).
Arduino Nicla Vision — исправления питания и тактирования.
Несовместимые изменения API¶
Заметные пользователю изменения API между v4.3.0 и v4.3.1.
Единственное несовместимое изменение — это изменение behavior (тот же API, иной тайминг).
Буферизованный stdout (behavior)¶
Стандартный вывод теперь буферизуется. Вывод print() может появиться на хосте/в IDE не сразу — он сбрасывается при переводе строки или при заполнении буфера. Скрипты, полагавшиеся на посимвольный небуферизованный вывод, должны добавить явный сброс (или вывод перевода строки) там, где требуется немедленный вывод.
Коммит: 8cddada54
Чек-лист миграции¶
Затронут только тайминг вывода: добавьте явный сброс там, где вы полагаетесь на немедленный вывод print() (изменение буферизации stdout). Все остальные скрипты работают без изменений.