読み込み中...

Haply デバイス向けのサービスランタイムおよびランタイム SDK です。便利なインストーラーにまとめられています。「external」サービスとも呼ばれます。
(ヘッディング)が 135 度から 180 度に変更されました。これは、それ以外の変更がないデフォルトのセッションにおいて、バージョン 3.5.6からの唯一の目に見える違いです。
ゲート制御やオプトインは不要で、ハンドルのファームウェアバージョン1.3.1以上のすべてのユーザーが対象となります。詳細については「修正」をご覧ください。
state.body_orientation が20 Hz でデバイスの姿勢を追従します(Inverse3 /Minverse ファームウェア 7.9 以降、デフォルトで有効)。
config/torque_scaling、config/重力補正、config/handedness に対する DELETE は、サービスに組み込まれた固定の工場出荷時定数ではなく、デバイスの起動時に保持されている値が返されるようになりました。そのため、左手用として保存されていたデバイスが右手用にリセットされることはなくなりました。
セッション更新済み が送信されていました。しかも、いずれもデバイスを特定するものではありませんでした。保持されているすべてのセッションは、引き続き次のスナップショットから更新されます。
devices/*inverse/body_orientation_poll_interval_ms(デフォルトは 50 ms、0 (無効、範囲 0~5000)により、リアルタイムの姿勢データの読み取りを調整できるようになりました。ただし、50 ms のデバイスモーションタイマーが実質的な下限となります。
devices/*inverse/query_orientation_on_idle を有効にした場合、黙って無視されるのではなく、その設定が機能しないことが通知されます。
保存されている値自体は変更されないため、デバイスは引き続き使用できます。
config/mount あるいは config/body_orientation の書き込みは、これまで通りデフォルトのイベントチャネルで通知されます。削除されたのはデバイススコープに関連する要素のみであり、利き手、トルク・スケーリング、重力補正 引き続き、セッションごとの通知を行います。
その値は設定 devices/*inverse/inkwell/dock_heading_deg となりました。2026年9月22日、ハンドルのファームウェア 1.3.1 を搭載したスタイラス付き Minverse を使用して測定しました。従来の 135 度では、ドッキングされたペンの角度が 45 度不足していたため、
ヨー推定器でこれを補正する必要がありました(観測値は +42~+50 度)。現在、残差は約 5 度以内に収まっています。段階的なゲートの対象外です(ドック・キャリブレーションの処理経路は常に実行されます)。そのため、ハンドルのファームウェア 1.3.1 以降を使用しているすべてのユーザーについては、
ドッキングされたペンの表示される姿勢が 45 度変化します。このバージョンより前のファームウェアでは、ファームウェアがこの値を無視して姿勢全体を即座に設定するため、これらのユーザーには変化はありません。
state.body_orientation は、デバイスがアイドル状態のときにのみ更新されていたため、アプリケーションが力覚のストリーミングを開始した瞬間に値が固定され、すべての利用者が古いハンドシェイクのスナップショットを読み取っていました。現在は既存のモーションタイマーによってポーリングされており、セッション中もリアルタイムで更新されます。
config/torque_scaling、config/重力補正、config/handedness に対する DELETE は、デバイス自体が保存している設定の上に、コンパイル時に組み込まれた工場出荷時の定数を上書きしていました。そのため、「デフォルトにリセット」と、デバイスの実際の起動時の状態が一致していませんでした。config/handedness は、保存されていた値にかかわらず、常に 右 に設定されていました。現在、これら 3 つすべてについて保存されていた値が復元され、
従来の定数は、デバイスから一度も読み取られたことのない項目に限り使用されます。
session_id、プロフィール、範囲 のみが含まれており、デバイス識別子もなかったため、購読者は、複製の発生源を特定することも、一連のイベントの重複を排除することもできませんでした。デバイス単位の通知については、デバイスを指定するための代替手段が提供されるまで保留となります。セッションごとの更新については変更はありません。
config/torque_scaling を削除、config/重力補正、config/handedness は、リセットがどういう意味かを変更しています。応答と書き込まれる値は、サービス側の固定定数ではなく、デバイスに保存された設定になりました。応答の形式は変わりません。値が異なるのは、保存された設定が工場出荷時の定数と異なるデバイスに限られます。ただし、
リテラル定数(false / {enabled: true, scaling_factor: 0.0} / 右)を前提としていた連携では、異なる値が返されるようになります。
state.body_orientation は、形式や階層(tier)を変えずに、値の意味が変わります。ストリーミングクライアントにとっては実質的に静的だったフィールドが、20 Hz で変化するようになります。アタッチ後は定数として扱っていた利用者は、オプトインなしに新しい動作を目にすることになります。
また、非推奨となっている従来のフラットな ボディ・オリエンテーション スコープも同様のレーンに従うようになり、デフォルトのチャネルに逆流することがなくなりました。移行: イベントを更新のトリガーとして扱うのをやめ、
セッションのスナップショットから値を読み取ってください。スナップショットは、保持されているすべてのセッションにおいて、オプトインを一切必要とせずに引き続き更新されます。同等のセッションスコープを持つイベントや、
利き手 / トルク・スケーリング / 重力補正 の通知には影響がありません。
これは、ファームウェア 1.3.1 以降を使用しているすべてのユーザーにおいて、オプトインなしでも観測値が変更されるためです。そのため、従来の 135 度の基準値に合わせて独自のアプリケーションを調整していた利用者は、実際に移行作業を行う必要があります。形式の変更はありません。
devices/*inverse/query_orientation_on_idle 新しいポーリング間隔がゼロ以外であれば冗長になってしまいますが、3.5.7 では意図的に 旧式 としてフラグを付ける行っていません。この機能の非推奨化はバージョン 3.6 で予定されています。
このリリースで利用可能なすべてのダウンロード: