v4.4.2

v4.4.2 overhauls the USB serial protocol to eliminate the zero-length-packet overlap that could stall or disconnect the camera, adds a per-board USB high-speed mode, and fixes the Windows driver installer. It is built on Qt Creator 14.0.2, unchanged from the previous release, and contains no breaking changes.

Highlights

  • USB serial protocol rework removes the zero-length-packet (ZLP) overlap that corrupted synchronization and caused the camera to stall or disconnect.

  • Per-board USB high-speed mode selects the correct bulk-endpoint size (512 vs 64) at connect time.

  • More responsive live view from tighter framebuffer and state polling intervals.

  • Windows driver installer fix so a USB-driver step no longer fails the whole IDE install.

  • Windows read-stall recovery is re-enabled while dropping the GET_STATE ping workaround that was itself causing stalls.

New features

  • Per-board high-speed flag. firmware/settings.json gains a highSpeed entry per board so the IDE picks the correct USB endpoint size at connect time. RT1062, AE3, N6, Portenta, and Nicla Vision are flagged high-speed while the F4/F7/H7 cameras and Giga remain full-speed; the IDE applies the matched board’s value via setHighSpeed() on open, defaulting to full-speed (431fc7bd4).

Other changes and improvements

  • Tightened polling intervals for a more responsive live view: the frame-size dump spacing drops from 50 ms to 5 ms, the TX-buffer spacing from 20 ms to 5 ms, and the get-state spacing settles at 16 ms (431fc7bd4, c8c14006a).

  • Removed unusable code-navigation actions from the editor, including Find Usages, Rename Symbol, and the in Next Split follow-symbol and follow-type variants, along with their shortcuts (Ctrl+Shift+U / Ctrl+Shift+R) and context-menu entries (2a28fba9b).

Bug fixes

  • Reworked the USB serial protocol to eliminate the zero-length-packet (ZLP) overlap that corrupted synchronization and caused the camera to stall or disconnect. Transfers that land on a USB bulk-endpoint boundary are now padded or trimmed against the endpoint size, and a per-board USB high-speed mode was added (431fc7bd4, 79f452128, 1be51d27f, cac187991).

  • Re-enabled the Windows read-stall recovery path, where the OS receives data but withholds it from the application, while dropping the GET_STATE ping workaround that was itself causing stalls; a new -override_read_stall_timeout command-line option (milliseconds to wait before pinging, default 1000) was added to tune the recovery timeout (cac187991).

  • Fixed the Windows USB-driver installer so it no longer fails the whole IDE install: the driver .cmd scripts now exit with success and the installer accepts those exit codes (750560aac, ba8537fa5).

Platform and tool support

  • Qt Creator base: 14.0.2.

Breaking changes

None. This release changes no user-facing project workflows.