v2.9.7

v2.9.7 是一个针对 OpenMV 的发布版本,重点是通过内置引导加载程序实现大幅更快、更可靠的固件烧录,提供高速 USB 支持、强化的串行驱动以及批量视频转换。它仍基于 Qt Creator 4.0.2 构建(此范围内未进行变基),对现有项目没有破坏性变更。

亮点

  • 更快的固件烧录。 内置引导加载程序现在会批量处理非投递(non-posted)USB 数据包,并使用高速(480 Mb/s)端点大小,而不是每块数据使用一个缓慢的填充数据包并在每块之后固定延迟。

  • OpenMV Cam H7 Pro DFU 支持 现已得到识别(OMV4_H7_PRO_32768_SDRAM),并支持高速引导加载程序。

  • 强化的串行驱动,适用于 480 Mb/s 高速模式,配备 64 MB 读/写缓冲区,并在操作系统返回数据停滞时优雅恢复。

  • 批量转换视频。 选择多个源文件后,现在只需一次性提示输出设置即可全部转换。

  • 发行说明预览。 安装最新开发版 对话框现在会在询问是否烧录之前下载并显示 GitHub 发行说明。

新功能

  • 转换视频 工具现在支持批量转换:选择多个源文件后会一次性提示输出文件夹、格式、缩放宽度和跳帧设置,然后一次性转换所有文件(864a0babd)。

  • 安装最新开发版 对话框现在会下载 GitHub 发布页面,并在询问是否烧录之前,在一个只读的可滚动视图中显示渲染后的发行说明(页面的 markdown-body 部分),其前面有一个 正在下载 进度对话框(3a7805b4f)。

其他变更和改进

  • 更快的引导加载程序烧录。 通过内置引导加载程序进行固件烧录的速度大幅提升,使用批量的非投递 USB 数据包和高速(480 Mb/s)端点大小,而不是每块数据使用一个缓慢的填充数据包并在每块之后固定延迟(c2910aeef66031209ea82783208a5e185d963d0b2e98b)。

  • 强化的串行驱动,适用于 480 Mb/s 高速模式:64 MB 读/写缓冲区、打开时进行 Windows SetupComm 缓冲区大小设置,以及在操作系统接受 USB 数据但停滞将其返回给应用程序时优雅恢复(零填充)(d0b3bcdb7)。

  • 固件烧录现在在 Windows 和 Linux 上运行更快,因为跳过了仅用于 macOS、用以规避 macOS USB 行为的端点填充和同步查询数据包(711281155)。

  • 串行终端现在会绘制一个闪烁的文本光标(75e52095d)。

  • 引导加载程序/DFU 恢复的措辞现在描述的是修复常规引导加载程序的 DFU 引导加载程序复位,引导用户拔除 BOOT/RST 跳线并重新连接,而不是暗示直接进行固件升级(9e436cdc0)。

Bug 修复

  • 修复了 Linux 和虚拟机上的固件编程可靠性问题:闪存写入/擦除的成功状态现在会在批量数据包之间按位与累积,端口 flush() 的返回值被忽略,且停滞的引导加载程序传输会针对引导加载程序模式与正常模式重新发出正确的查询(a82783208f76406597)。

  • 修复了在移除陈旧的板卡 USB VID/PID 映射时发生的崩溃,方法是在依赖该映射的查找之后而非之前擦除迭代器(5950b0851)。

  • 修正了自动加载的 helloworld.py 路径以及注册后说明,使其符合新的示例布局(Examples > HelloWorld 而非 Examples > OpenMV > Basics)(def9b7dad)。

平台和工具支持

  • Qt Creator 基础版本: 4.0.2。

  • 新增了 对 OpenMV Cam H7 Pro 的 DFU 支持OMV4_H7_PRO_32768_SDRAM)以及对高速引导加载程序序列号 000000000010 的识别(c2910aeef)。

  • 将捆绑的 OpenMV 固件更新到 v4.3.2,并刷新了各板卡的固件镜像(firmware.bin 以及视板卡而定的 firmware.dfufirmware.hexfirmware.uf2)、引导加载程序和 UVC 镜像。OPENMV2、OPENMV3、OPENMV4、OPENMV4P、OPENMVPT、NICLAV 和 PORTENTA 提供 firmware.bin/firmware.dfu;NANO33 提供 firmware.bin/firmware.hex;ARDUINO_NANO_RP2040_CONNECT 提供 firmware.bin/firmware.uf2OpenMV Cam H7 ProOPENMV4_PRO)的全新固件、引导加载程序和 UVC 镜像现在首次被捆绑(08ac2e33f)。

  • 重新组织并扩充了捆绑的示例,包括一个新的顶层 00-HelloWorld、一个 TensorFlow 物体检测示例,以及许多 Arduino Portenta-H7、Nicla-Vision 和 Nano-RP2040 的板卡控制、传感器、WiFi、蓝牙和低功耗示例(08ac2e33f)。

破坏性变更

无。本次发布与现有项目和工作流完全向后兼容。