驱动 / Runtime

独立 Inverse

适用于Haply Service Runtime 和 Runtime SDK。已打包为一个便捷的安装程序。也称为“外部”服务。

推荐版本3.5.2

3.5.2

最新
发布日期 2026-06-19 21:24
内部改进
  • devices::inverse3: 曲目 控制模式 通过固件 FSM 状态通知 (cc2daa9)
  • 事件:添加 device-protocol-deprecated 事件,该事件在 warn_if_deprecated 中按条件触发(ec704f6),关闭 #234
  • events:添加事件触发宏 (9ad8531),关闭 #185
  • inverse:在 scale-popup 事件中添加 button_b 手势菜单触发器 (5fc7ab5)
  • modules::inverse:通知与安全协议 v2(固件版本 >= 7.7.0)(3929372),已关闭 #234 #255 #254
  • 协议:将固件代码以0x为前缀的字节形式记录(49a4001)
  • 序列化:添加实验性门控,从预览中分离(58426f3),关闭 #234
  • 序列化: 为……添加 rate_dispatch 阶段 rate/dispatch/* (2289e34),关闭 #241
  • 系列化:将 Glaze 升级至 v5.7.2 (20c8705),已关闭 #260
  • 序列化:将 Glaze 升级至 v6.5.1(b5885af),已解决 #260
  • 序列化:将 Glaze 升级至 v7.3.3 (545376d),已关闭 #260
  • 序列化:将阶段门与 API 路径解耦(af22d01),已关闭 #259
  • 序列化:pre-stage glaze 5-7 与 4.4.3(592fb5e)兼容,已关闭 #260
  • 序列化: 将“first-message version receipt”重命名为 config.version (c33cf82),关闭 #258
  • 序列化:待处理:延迟安全线重构(da06d7c),已关闭 #237 #237
  • 服务:添加会话范围的安全配置,并在关闭时恢复基线 (e55362e)
  • 服务:添加 v3.1 安全配置的 HTTP 和 WS 快照 API (d973ff6)
  • 服务:实现工作区自动扩展 F1-F3 服务端 (a512ea7)
  • 服务:将线缆安全配置的 SET/RESET 功能设置为固件串行模式 (9c1a40e)
  • 会话;HTTP;事件:连接时间版本协商,已作为预览版(229fbc6)的分阶段功能推出,关闭 #261 #258
  • 设置:将阶段速率调节旋钮设为实验性功能(76de901),关闭 #259
错误修复
  • 核心:为 GCC 13 -O3 应用 JSON 缓冲区的零初始化设置 (efd0e00)
  • 设备:恢复对未配置“返回主界面”功能的固件 7.1 及以上版本的检测(6d43b38),已关闭 #222
  • 引擎:防止因背压问题导致时钟分发错误而中断(690c588),关闭 #241
  • inverse:将 grip_hook 的调试日志级别降级为 trace(cff1446)
  • inverse:在活动控制会话中触发 gate grip_hook(eb19c5d)
  • modules::inverse-ux: normalize legacy (FW < 7.7.0) notifications to v2 (eb9b6ff), closes #234
  • modules::navigation:停止自动跟随,强制在界面上闪烁(152df00),已关闭 #269
  • 协议:将 0xBB 系列 B 的安全信道重构为系列 A(6b97234),关闭 #234
  • 序列化:将安全补丁移至 v3_1 并采用通用补丁覆盖方案 (186fa52),已关闭 #259
  • 序列化: 恢复原型握把 extension_data 已合并到快照 (142ba92),关闭 #263
  • sessions:防止 try_get_device 遇到为空的引擎单例(d584dcc)
  • 速度阈值 - 更宽的锥形区域 - 需按下校准按钮以激活 (ed366a0)
性能改进
  • force_bench:移除帧率限制 (bb52166)
  • force_bench:同步性能循环 + 指标 JSON (46686c1)
  • force-bench:提高输出可读性 (b8cfa89)

3.5.1

发布日期 2026-05-28 22:32
内部改进
  • core / gates:backoff_time_gate + 抑制命中计数器(cc989c0),关闭 #244
  • core / gates:streak_gate 及其带键控的变体(748f419),关闭 #244
  • 设备:为无线Verse手柄添加充电指示灯(6482bd6)
  • 设备:以 20 Hz 的频率轮询 inverse3 的运动状态(bfc160d)
  • 设备: 使用 v3.1 序列化格式 就绪 快照调试日志(0c59c26)
  • http:允许在“高级 / 已弃用设置”页面上使用精确路径的 GET 请求(2b5f037)
  • http: gate GET / settings 按标志设置可见性(4f013d8),关闭 #251
  • modules:: inverse: 揭露 paired_with.auto 后面 预览模式 门(1f7f0e1),关闭 #230
  • 序列化: 添加 预览模式 预发布字段的全局标志(422e822),已关闭 #230
  • 序列化:为 v3.1 四元数添加欧拉表示法(c32dd6b),已关闭 #239
  • 序列化: 显式 四元数 操作数 + 核心分配操作(677ed6f)
  • 会话:允许亚毫秒级流式响应限流(9a42719)
  • sessions:预览受限 / sessions v3.1 数据增强(6c1c8f2)
  • 设置: 推广 杂项 / 已弃用 作为高级设置(b3528d7)
  • 教程:流式响应帧检查原型(6b57c39)
错误修复
  • command_processor:防止在强制 / 位置互换时发生模式翻转(d754ef1),已关闭 #232
  • command_processor:将一次性内联排水从 ZOH 控制中分离出来(5960498),关闭 #117
  • core:: gates:带键值的时间门在每次触发时采用最新周期(c73b86a)
  • 检测:合并 extra_ports 的首次注入日志(57e21d7)
  • 检测:通过 keyed_gate 实现按端口日志门控(04b8d54),关闭 #243
  • 设备:仅在手柄信息(dfd7d5d)之后标记为支持无线Verse握把
  • 设备: 速率限制 set_extension_data 前往无线 verse_grip(011d5a0)
  • http:设备选择器接受“#1234”和“1234”作为设备 ID(1452c10)
  • http: 移除阻碍 macOS 发布构建的未使用上下文字段(-Wunused - private - field)(5345989)
  • modules:: inverse:当连接 1 个 Inverse3 和 1 个握把时自动配对(41b3024),已关闭 #227 #227
  • modules:: inverse:当拓扑结构超出 1↔1 时移除自动配对(e4fb80c)
  • modules:: inverse: 荣誉 force_attached 覆盖 Minverse 校准(e24bf84),关闭 #224
  • modules:: inverse: 配对 附上 始终为 Minverse 启用[secure],并在首次 POST 时生效(cafb574)
  • modules:: inverse:按设备管理的 Inverse3 ↔ VerseGrip 配对注册表(ac63d2a),关闭 #224
  • modules:: inverse: POST 和 DELETE 配对 路线返回计算结果 附上 状态(a751208)
  • 防止服务在尝试将非 WVG 设备识别为 WVG 时重复显示警告(17ad373)
  • protocol:: inverse3:处理可变长度的 0xBA 通知负载(61f7b1f)
  • 服务:在索引中应用设备选择器类(2d6422a)
  • 服务:在 404 响应中保留设备选择器表达式(d2c4626)
  • 会话: apply_preset 重置挂载点 默认值 / 前臂(a333da8),关闭 #240
  • 会话:当跨会话 ID 未知时,回退到自身目标(14367ed),关闭 #239
  • 会话:针对跨会话强制渲染完整状态的完整快照响应(8afc646)
  • 会话:honor execute: [secure] 位于 session.configure.serialization(3458af0)
  • 会话: 应用时保持设备挂载清空 默认值 / 前臂 预设(698008b),已关闭 #252 #253
  • 会话: 将挂载重置为“identity” 默认值 / 前臂 预设(a0a2b29),关闭 #240
  • sessions:在受限流式快照上恢复 WS 响应(787a656),关闭 #248
  • sessions:在持续的模拟负载下优化 WS 接收端热路径(e4e55d0)
性能改进
  • command_processor:仅控制批处理的 WS RX 快速路径(92bb4e8),已解决 #241
  • 引擎:通过 AIMD 阻尼实现自适应调度速率的收敛(b8fc1c8),已关闭 #249
  • main_loop:绑定具有“待处理”时钟周期上限的 ASIO 队列(8d77823)
  • 序列化:在静态结构体中缓存预览选项(8698636),已关闭 #241
  • 会话:减少热路径上的 session:: _mutex 竞争(bf117c8),已关闭 #241 #242
  • 会话: 标记 Tracy 作用域限定 关于会话设备调用(7404990)
内部改进
  • devices::inverse3: 曲目 控制模式 通过固件 FSM 状态通知 (cc2daa9)
  • 事件:添加 device-protocol-deprecated 事件,该事件在 warn_if_deprecated 中按条件触发(ec704f6),关闭 #234
  • events:添加事件触发宏 (9ad8531),关闭 #185
  • inverse:在 scale-popup 事件中添加 button_b 手势菜单触发器 (5fc7ab5)
  • modules::inverse:通知与安全协议 v2(固件版本 >= 7.7.0)(3929372),已关闭 #234 #255 #254
  • 协议:将固件代码以0x为前缀的字节形式记录(49a4001)
  • 序列化:添加实验性门控,从预览中分离(58426f3),关闭 #234
  • 序列化: 为……添加 rate_dispatch 阶段 rate/dispatch/* (2289e34),关闭 #241
  • 系列化:将 Glaze 升级至 v5.7.2 (20c8705),已关闭 #260
  • 序列化:将 Glaze 升级至 v6.5.1(b5885af),已解决 #260
  • 序列化:将 Glaze 升级至 v7.3.3 (545376d),已关闭 #260
  • 序列化:将阶段门与 API 路径解耦(af22d01),已关闭 #259
  • 序列化:pre-stage glaze 5-7 与 4.4.3(592fb5e)兼容,已关闭 #260
  • 序列化: 将“first-message version receipt”重命名为 config.version (c33cf82),关闭 #258
  • 序列化:待处理:延迟安全线重构(da06d7c),已关闭 #237 #237
  • 服务:添加会话范围的安全配置,并在关闭时恢复基线 (e55362e)
  • 服务:添加 v3.1 安全配置的 HTTP 和 WS 快照 API (d973ff6)
  • 服务:实现工作区自动扩展 F1-F3 服务端 (a512ea7)
  • 服务:将线缆安全配置的 SET/RESET 功能设置为固件串行模式 (9c1a40e)
  • 会话;HTTP;事件:连接时间版本协商,已作为预览版(229fbc6)的分阶段功能推出,关闭 #261 #258
  • 设置:将阶段速率调节旋钮设为实验性功能(76de901),关闭 #259
错误修复
  • 核心:为 GCC 13 -O3 应用 JSON 缓冲区的零初始化设置 (efd0e00)
  • 设备:恢复对未配置“返回主界面”功能的固件 7.1 及以上版本的检测(6d43b38),已关闭 #222
  • 引擎:防止因背压问题导致时钟分发错误而中断(690c588),关闭 #241
  • inverse:将 grip_hook 的调试日志级别降级为 trace(cff1446)
  • inverse:在活动控制会话中触发 gate grip_hook(eb19c5d)
  • modules::inverse-ux: normalize legacy (FW < 7.7.0) notifications to v2 (eb9b6ff), closes #234
  • modules::navigation:停止自动跟随,强制在界面上闪烁(152df00),已关闭 #269
  • 协议:将 0xBB 系列 B 的安全信道重构为系列 A(6b97234),关闭 #234
  • 序列化:将安全补丁移至 v3_1 并采用通用补丁覆盖方案 (186fa52),已关闭 #259
  • 序列化: 恢复原型握把 extension_data 已合并到快照 (142ba92),关闭 #263
  • sessions:防止 try_get_device 遇到为空的引擎单例(d584dcc)
  • 速度阈值 - 更宽的锥形区域 - 需按下校准按钮以激活 (ed366a0)
性能改进
  • force_bench:移除帧率限制 (bb52166)
  • force_bench:同步性能循环 + 指标 JSON (46686c1)
  • force-bench:提高输出可读性 (b8cfa89)
内部改进
  • core / gates:backoff_time_gate + 抑制命中计数器(cc989c0),关闭 #244
  • core / gates:streak_gate 及其带键控的变体(748f419),关闭 #244
  • 设备:为无线Verse手柄添加充电指示灯(6482bd6)
  • 设备:以 20 Hz 的频率轮询 inverse3 的运动状态(bfc160d)
  • 设备: 使用 v3.1 序列化格式 就绪 快照调试日志(0c59c26)
  • http:允许在“高级 / 已弃用设置”页面上使用精确路径的 GET 请求(2b5f037)
  • http: gate GET / settings 按标志设置可见性(4f013d8),关闭 #251
  • modules:: inverse: 揭露 paired_with.auto 后面 预览模式 门(1f7f0e1),关闭 #230
  • 序列化: 添加 预览模式 预发布字段的全局标志(422e822),已关闭 #230
  • 序列化:为 v3.1 四元数添加欧拉表示法(c32dd6b),已关闭 #239
  • 序列化: 显式 四元数 操作数 + 核心分配操作(677ed6f)
  • 会话:允许亚毫秒级流式响应限流(9a42719)
  • sessions:预览受限 / sessions v3.1 数据增强(6c1c8f2)
  • 设置: 推广 杂项 / 已弃用 作为高级设置(b3528d7)
  • 教程:流式响应帧检查原型(6b57c39)
错误修复
  • command_processor:防止在强制 / 位置互换时发生模式翻转(d754ef1),已关闭 #232
  • command_processor:将一次性内联排水从 ZOH 控制中分离出来(5960498),关闭 #117
  • core:: gates:带键值的时间门在每次触发时采用最新周期(c73b86a)
  • 检测:合并 extra_ports 的首次注入日志(57e21d7)
  • 检测:通过 keyed_gate 实现按端口日志门控(04b8d54),关闭 #243
  • 设备:仅在手柄信息(dfd7d5d)之后标记为支持无线Verse握把
  • 设备: 速率限制 set_extension_data 前往无线 verse_grip(011d5a0)
  • http:设备选择器接受“#1234”和“1234”作为设备 ID(1452c10)
  • http: 移除阻碍 macOS 发布构建的未使用上下文字段(-Wunused - private - field)(5345989)
  • modules:: inverse:当连接 1 个 Inverse3 和 1 个握把时自动配对(41b3024),已关闭 #227 #227
  • modules:: inverse:当拓扑结构超出 1↔1 时移除自动配对(e4fb80c)
  • modules:: inverse: 荣誉 force_attached 覆盖 Minverse 校准(e24bf84),关闭 #224
  • modules:: inverse: 配对 附上 始终为 Minverse 启用[secure],并在首次 POST 时生效(cafb574)
  • modules:: inverse:按设备管理的 Inverse3 ↔ VerseGrip 配对注册表(ac63d2a),关闭 #224
  • modules:: inverse: POST 和 DELETE 配对 路线返回计算结果 附上 状态(a751208)
  • 防止服务在尝试将非 WVG 设备识别为 WVG 时重复显示警告(17ad373)
  • protocol:: inverse3:处理可变长度的 0xBA 通知负载(61f7b1f)
  • 服务:在索引中应用设备选择器类(2d6422a)
  • 服务:在 404 响应中保留设备选择器表达式(d2c4626)
  • 会话: apply_preset 重置挂载点 默认值 / 前臂(a333da8),关闭 #240
  • 会话:当跨会话 ID 未知时,回退到自身目标(14367ed),关闭 #239
  • 会话:针对跨会话强制渲染完整状态的完整快照响应(8afc646)
  • 会话:honor execute: [secure] 位于 session.configure.serialization(3458af0)
  • 会话: 应用时保持设备挂载清空 默认值 / 前臂 预设(698008b),已关闭 #252 #253
  • 会话: 将挂载重置为“identity” 默认值 / 前臂 预设(a0a2b29),关闭 #240
  • sessions:在受限流式快照上恢复 WS 响应(787a656),关闭 #248
  • sessions:在持续的模拟负载下优化 WS 接收端热路径(e4e55d0)
性能改进
  • command_processor:仅控制批处理的 WS RX 快速路径(92bb4e8),已解决 #241
  • 引擎:通过 AIMD 阻尼实现自适应调度速率的收敛(b8fc1c8),已关闭 #249
  • main_loop:绑定具有“待处理”时钟周期上限的 ASIO 队列(8d77823)
  • 序列化:在静态结构体中缓存预览选项(8698636),已关闭 #241
  • 会话:减少热路径上的 session:: _mutex 竞争(bf117c8),已关闭 #241 #242
  • 会话: 标记 Tracy 作用域限定 关于会话设备调用(7404990)