v3.5.3
3.5.3はパッチリリースです。主な変更点は、ペアリング済みのInverse3 +Gripセットの片方を交換した際に再ペアリングを行う、よりスマートな自動ペアリング機能の追加、有線接続のVerse Gripにおける誤ったバッテリー警告の解消、 非対応のコマンドを黙って破棄しないよう改善された、より透明性の高いファームウェア機能の検証、接続時のステータスLEDの安定性の向上、およびサービスのクラッシュのない終了と再起動が含まれます。さらに、このリリースには、デバイスおよびシリアル化に関する複数の修正に加え、バイト単位の転送に関するいくつかの注意事項が含まれています。
主な新機能
- セットの片方を交換すると、自動ペアリングが再設定されます。自動ペアリングされたInverse3 +Verse Gripセットのいずれかのデバイスを交換した場合、SDKは古いペアリングを解除し、新たに接続されたデバイスとペアリングを行います。手動でのペアリングには影響ありません。
- 有線接続のVerse Gripでは、バッテリーに関する誤った警告が表示されなくなりました。バッテリー残量が「低」または「危険」レベルになった際の警告は、ワイヤレス接続のVerse Gripでのみ表示されるようになりました。有線接続のVerse Gripでは、バッテリー残量が「低」または「危険」レベルになっても、誤った警告が表示されることはなくなりました。
- ファームウェア機能の検証をより透明性の高いものにする。 デバイスのファームウェアのバージョンが古すぎて対応できないハプティック機能(ファームウェアバージョン7.5より前の場合は「均一または方向依存の減衰」、7.4より前の場合は「初期位置への復帰」)を要求した場合、システムはHTTP 422とイベントで応答するようになりました。
device-protocol-unsupported、誤解を招く「200」という数値を用いて、その問い合わせを暗黙のうちに却下したのではなく。 - 接続時のステータスLEDの動作が安定しました。 Inverse3 のステータスLEDは、接続や再接続のたびに赤く点滅しなくなりました。起動後の約5秒間の安定化期間中は接続が維持されるため、ファームウェアの接続ウォッチドッグが作動しなくなりました。
- サービスのクラッシュのない終了および再起動。サービスの終了および再起動時に、クラッシュやフリーズが発生しなくなりました。サービスの起動および停止時に発生していたパニックやフリーズを解消するため、終了および再起動の処理が改良されました。
内部の改善
- クラッチ・ナビゲーションモード(実験的機能、デフォルトでは無効)。物理デバイスが動き続けている間も、サービスがシーンにエクスポートする動きを縮小したり完全に凍結させたりできる新しいナビゲーションモードです。微調整用の半速モード(「precise」)と、作業領域の位置を再設定するための完全凍結モードが用意されています。 ボタンを離すと、蓄積されたオフセットがワークスペースに反映されるため、シーンカーソルが飛び跳ねることはありません。どの比率でも力フィードバックは維持されます。このサイクルでは、このモードは明示的に有効化された場合にのみ利用可能であり、標準プロトコルは変更されません。
- セッションベースの力制御(プレビュー)。クライアントは、シミュレーションセッションのハプティック出力をゼロまで低減させることができます(たとえば、パイメニューが開いている間など)。これにより、デバイスがハブに引き継がれ、メニューのハプティックフィードバックが通常の制御経路を通じて出力されるようになります。 セッションが終了するか、メニューが閉じられると、出力は自動的に復元されます。この機能はプレビューフラグの背後で有効化されており、標準プロトコルに変更はありません。
- ワークスペースのピボットポイントによるズーム(実験的機能)。ワークスペースの変形を更新する際に、ピボットポイント(たとえば、アクティブなカーソル)を指定します。これにより、そのポイントを中心にビューが拡大・縮小され、画面上の位置が維持されます。つまり、カーソル位置への即時ズームが実現されます。Inverse3 でのみ利用可能です。このサイクルでは実験的機能であるため、標準プロトコルは変更されません。
- JSONシリアライゼーションエンジン(glaze)をv7.8.4に更新しました。これはインフラストラクチャのみの更新であり、公開APIや動作に変更はありません。また、テキストプロトコルにおける浮動小数点数の再フォーマット機能(値の整合性を維持する)が追加されました。詳細は、以下の「発生しうる互換性破綻」の項をご覧ください。
不具合の修正
- デバイスのマウント変換を変更またはリセットしても、もはやクラッシュは発生しません。以前、マウントの変更が行われるたびに、残っていたプロトタイプのコードパスがファームウェアのワークスペース境界ボックスを移動させていましたが、このコードパスは削除されました。
- Inkwellドックでの再キャリブレーション後、機体の姿勢情報が更新されます。Inkwellへの再ドッキングおよびキャリブレーション後、ストリーミングされる機体の姿勢情報は、次回の再接続までキャリブレーション前の値を報告するのではなく、デバイス側で更新されるようになりました。デバイスの最新ファームウェアが必要です。Wireフォーマットに変更はありません。
- Minverse キャリブレーションがブロックされた場合は、常に通知します。 Minverse イベントを送信します
device-calibration-failed、ファームウェアがキャリブレーションの停止を報告した時点で――これには、これまでエラーを黙って吸収していた、ホール信号が振動するといったエッジケースも含まれる――デバイスマネージャーには常に「Calibration failed」というメッセージが表示されるようになる。 - 「中央揃え」プリセットは、ワークスペース内で実際に到達可能な中心点を原点に設定します。
arm_front_centeredundled_front_centered(Inverse3 / Inverse3x) は、可動範囲内で中心に位置していない手首の軸に沿って配置されていた。そのため、set_cursor_position起源{0, 0, 0}中心から外れています。Minverse の中心に配置された原点も、約10 mm右にずれていました。各軸におけるこのずれは、ファームウェアの安全マージンの境界領域を除外して測定された、各軸で到達可能な範囲の半分に相当します(機械的に可能な範囲ではありません)。(「互換性を損なう可能性のある変更」の項にある原点オフセットに関する注記を参照してください。)
互換性を損なう可能性のある変更
POST/DELETE /config/filters/dampingバージョン7.5より前のファームウェアでは、HTTP 422が返されるようになりました、ある出来事とともにdevice-protocol-unsupported、書き込み処理を黙って破棄していた「200」の代わりに。バージョン7.5以降のファームウェアは影響を受けません(引き続き「200」が返されます)。対応策:デバイスのファームウェアをバージョン7.5以降に更新するか、「422」の応答に対処してください。POST/DELETE /home_returnこのコマンドがないファームウェア(7.4より古いバージョン)では、HTTP 422が返されるようになりました、無条件の200ではなく。影響を受けるのは古いファームウェアを搭載したデバイスに限られます。対処法:ファームウェアを7.4以降に更新するか、422応答に対処してください。- コマンドのエコーについて
config/mountundstate/transform(GET/POST/PATCH/DELETE) のシリアライズtransform.rotation鍵の順序で{w,x,y,z}statt{x,y,z,w}, ストリーミングされるコンテンツの再生順序に合わせてstate-スナップショット。バイトレベルでのみ――値とキー名は同じで、キーの順序のみが変更されます。3つのコンポーネントはすべて引き続き返されます。キー名に基づいてJSONを解析するクライアントは、何も変更する必要はありません。ただし、バイト単位や順序の厳密な比較を行う場合は、参照データを再生成する必要があります。 - 個々のデバイスに構成を適用する際の変更通知における適用範囲の名前。 変更イベント「session-updated」は、設定のスコープ名を通知するようになりました(
config.mount,config.basis,config.preset) 単なる名前ではなく (mount,basis,preset)、個々のデバイスの設定が適用される場合。これらのイベントのスコープ文字列をフィルタリングするクライアントは、そのマッピングを調整する必要があります。 - Glaze におけるすべての数値ワイヤー値の浮動小数点テキスト表示の再フォーマット(v3.0 および v3.1) (例えば
1.0E-7->1E-7,16777216->1.6777216E7,-1.0E-37->-1E-37). バイトレベルでのみ変更されています。数値パーサーは同一の値を認識しますが、テキスト形式のみが変更されています。文字列比較を行うクライアントは、フィクスチャを再生成する必要があります。 - 中央揃えのプリセットにおける原点の移動。 中央揃えのプリセットは、実際に到達可能な中心点を目標とするようになったため、3.5.2と比較して、それらが設定する原点がずれています:
arm_front_centered/led_front_centeredデバイスの奥行き軸に沿って25 mm移動し、中央配置の「Minverse 」プリセットは、X方向に10 mm、Y方向に20 mm、Z方向に20 mm移動し、minverse_zupX方向に20 mm、Y方向に30 mmずれます。これは、デフォルトで有効になっているインターフェースに適用され、minverse_zup検出されたフリーフォームセッションには自動的に適用されます。影響範囲:中心位置プリセットが有効な間、原点に配置されたコンテンツ、または原点に対して相対的に配置されたジオメトリは、原点とともに移動します。 移行方法:原点に整列されたジオメトリを再確認するか、これまでのオフセットをユーザー定義のマウント変換として明示的に設定してください。中央揃えではないプリセット(device_defaults,arm_front,led_front) は恒等変換であり、影響を受けません。
廃止された機能
- レガシー入力
valuesinverse3 コマンドの実行時に、警告が表示されるようになりました。 配列の送信valuesanset_cursor_force,set_cursor_position,set_angular_positionoderset_angular_torquesコマンドの指定されたフィールドの代わりに (vector/position/angles/torques) は引き続き動作しますが、イベントを発生させますcommand-deprecated(30秒ごとに1回、コマンドごとに1回に制限されます)が、暗黙的に受け入れられることはありません。移行してくださいvalues指定されたフィールドへ。レガシー入力は、バージョン4.0での廃止が予定されています。 - それ以外では、このサイクルにおいて影響を受ける公開ワイヤインターフェースはありません。