v4.4.2

v4.4.2 は、カメラの停止や切断を引き起こすおそれのあったゼロ長パケットの重なりを解消するために USB シリアルプロトコルを刷新し、ボードごとの USB ハイスピードモードを追加し、Windows のドライバインストーラを修正します。前リリースから変わらず Qt Creator 14.0.2 上に構築されており、破壊的変更は含まれていません。

ハイライト

  • USB シリアルプロトコルの再設計 により、同期を破壊しカメラの停止や切断を引き起こしていたゼロ長パケット(ZLP)の重なりを取り除きました。

  • ボードごとの USB ハイスピードモード により、接続時に正しいバルクエンドポイントサイズ(512 か 64)を選択します。

  • より応答性の高いライブビュー を、フレームバッファと状態のポーリング間隔を短縮することで実現しました。

  • Windows ドライバインストーラの修正 により、USB ドライバのステップが IDE インストール全体を失敗させることがなくなりました。

  • Windows の読み取りストール復旧 を再有効化し、それ自体がストールを引き起こしていた GET_STATE ping の回避策を廃止しました。

新機能

  • ボードごとのハイスピードフラグ。 firmware/settings.json にボードごとの highSpeed エントリが追加され、接続時に IDE が正しい USB エンドポイントサイズを選べるようになりました。RT1062、AE3、N6、Portenta、Nicla Vision はハイスピードとしてフラグ付けされ、F4/F7/H7 カメラと Giga はフルスピードのままです。IDE は接続時に setHighSpeed() を通じて一致したボードの値を適用し、デフォルトはフルスピードです (431fc7bd4)。

その他の変更と改善

  • ポーリング間隔を短縮 し、より応答性の高いライブビューを実現しました。フレームサイズダンプの間隔は 50 ms から 5 ms へ、TX バッファの間隔は 20 ms から 5 ms へ短縮され、get-state の間隔は 16 ms に落ち着きました (431fc7bd4, c8c14006a)。

  • 使用できないコードナビゲーション操作を削除 しました。Find UsagesRename Symbol、および in Next Split のシンボル追跡・型追跡の各種に加え、それらのショートカット(Ctrl+Shift+U / Ctrl+Shift+R)とコンテキストメニューの項目をエディタから取り除きました (2a28fba9b)。

バグ修正

  • 同期を破壊しカメラの停止や切断を引き起こしていたゼロ長パケット(ZLP)の重なりを解消するために USB シリアルプロトコルを再設計しました。USB バルクエンドポイントの境界に揃う転送は、エンドポイントサイズに対してパディングまたはトリミングされるようになり、ボードごとの USB ハイスピードモードが追加されました (431fc7bd4, 79f452128, 1be51d27f, cac187991)。

  • OS がデータを受信してもアプリケーションには渡さないという Windows の読み取りストール復旧パスを再有効化し、それ自体がストールを引き起こしていた GET_STATE ping の回避策を廃止しました。復旧タイムアウトを調整するための新しいコマンドラインオプション -override_read_stall_timeout(ping するまでの待機ミリ秒、デフォルト 1000)が追加されました (cac187991)。

  • Windows の USB ドライバインストーラを修正し、IDE インストール全体を失敗させないようにしました。ドライバの .cmd スクリプトが成功で終了するようになり、インストーラがそれらの終了コードを受け入れるようになりました (750560aac, ba8537fa5)。

プラットフォームとツールのサポート

  • Qt Creator ベース: 14.0.2。

破壊的変更

なし。本リリースはユーザー向けのプロジェクトワークフローを一切変更しません。