v3.5.2
3.5.2 はパッチリリースです。主な変更点は WebSocket のストリーミングレートの改善です。同期クライアントは、フルのループレートで最新のデバイス状態を受信できるようになりました。また、内部の品質改善作業や、いくつかのデバイスおよびナビゲーションの修正も含まれています。
ハイライト
- 同期 WebSocket クライアント向けのフルレートでの最新状態の配信。 セッションごとの応答スロットリングを削除したため、すべての応答に、取得直後の最新状態が含まれるようになりました。以前は約 1 kHz に頭打ちになっていました(計測値は約 31 kHz、100% 最新、Linux のリリース用マシンでの計測)。これにより、3.5.1 で導入された最新状態の配信速度の低下が元に戻ります。
内部改善
- ファームウェアのステータスコードは、読みやすさのため 0x 接頭辞付きの 16 進数でログ出力されるようになりました。
- glaze のシリアライズライブラリを v7.3.3 にアップグレードしました — ワイヤー出力はバイト単位で同一です。
- セッション単位の安全設定。
- サービス側のワークスペースの自動スケール(F1〜F3)。
修正
- return-home 設定を報告しないファームウェア 7.1 以降のデバイスが、再び検出されるようになりました — 検出ハンドシェイクで失敗しなくなりました。
- 負荷がかかった状態でバックプレッシャーによってデバイスのティック更新が誤って破棄されることがなくなりました。これにより、デバイス状態に断続的な欠落が生じていました。
- 自動追従のバブルナビゲーションで、表面付近のちらつきがなくなりました — 触覚出力の力は一定に保たれ、自動センタリングのドリフトはバブルの表面でなめらかにゼロへ収束するようになりました。
- 構成ディレクトリを作成できない場合(たとえば書き込み不可の場所など)でも、サービスがクラッシュしなくなりました。その場合は警告をログに出力して処理を続行します。