2026-06-24 MLV6触摸上行
用户目标
- 当前目标收口为三条:MLV6 触摸信号接收、触摸速度区间计算、按速度触发对应叫床声播放。
- 用户明确放弃 MLV6 晃动感应恢复;MLV6 的
0x30 被拦截、不再误触发叫床/震动,是当前希望保留的效果。
已完成事项
- 对真实触摸日志进行复核:连续触摸 30-60 秒期间,App 只收到
0x44 心跳包,未收到独立 0x31/0x32/0x33 触摸命令。
- 确认
0x44 包内 offset 11 的 0x32 不是触摸腿,而是 heartBeat.fromBytes() 解析出的 vibStrength。
- 形成新的排查假设:MLV6 触摸可能在同一服务的另一个 notify/indicate 特征值上报,而旧 SDK 只订阅了第一个 notify/indicate 特征值。
- 在 LMSDK 源头
/Users/ar/Projects/langmei/.worktrees/lm-sdk-MV6touch-210/uni_modules/bobo-miniapp/utils/bluetooth.js 修改 subscribeNotify(serviceId):
- 记录目标服务全部 characteristics:
sdk.ble.characteristics.list
- 订阅全部 notify/indicate characteristics
- 记录每个订阅成功/失败:
sdk.ble.notify.subscribe.success / sdk.ble.notify.subscribe.fail
- 使用
npm run sync:sdk 将 LMSDK 源头同步到 App 运行副本。
- 生成 Android 候选包:
/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/unpackage/release/apk/__UNI__693A991__20260624142318.apk
- 验包确认包内包含:
sdk.ble.characteristics.list
sdk.ble.notify.subscribe.success
sdk.ble.notify.subscribe.fail
- APK SHA256:
745298109c2b646050bf50245bcced8b3cbda6abba9d65f0602d1ab63107b49b
- 已把当前状态写入:
/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/docs/round5/TODO.md
/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/docs/round5/QA_RUN_20260624_1244.md
关键决策
- 不再尝试让 MLV6 的
0x30 晃动通过 gate。
- 不允许把
0x44 内部的 0x32 当成触摸事件,否则会把振动强度字段误判为触摸腿。
- 下一步必须安装包含“订阅所有 notify/indicate 特征值”改动的新 APK 后再重新触摸测试;旧包继续测试没有价值。
文件变更
- SDK 源头:
/Users/ar/Projects/langmei/.worktrees/lm-sdk-MV6touch-210/uni_modules/bobo-miniapp/utils/bluetooth.js
- App 同步副本:
/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/uni_modules/bobo-miniapp/utils/bluetooth.js
- Round5 文档:
/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/docs/round5/android-pack-mlv6-touch-2.1.0.json
/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/docs/round5/TODO.md
/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/docs/round5/QA_RUN_20260624_1244.md
- 候选 APK:
/Users/ar/Projects/langmei/.worktrees/lm-app-MV6touch-210/unpackage/release/apk/__UNI__693A991__20260624142318.apk
未决问题
- 新 APK 尚未安装成功。
adb install 和 adb push + pm install 均失败:
INSTALL_FAILED_USER_RESTRICTED: Install canceled by user
- 旧包已卸载,当前手机未安装
langmei.boborobots.com。
- 已将 APK 推送到手机:
/sdcard/Download/langmei-mlv6-touch-210.apk
- 已尝试拉起系统安装界面,但 30 秒轮询后仍未安装成功。
后续建议
- 手机端先放行调试安装或手动从 Download 安装
langmei-mlv6-touch-210.apk。
- 安装成功后启动 Langmei,登录测试账号,连接 MLV6,进入辛灵通话页。
- 使用提醒音频提示用户多触摸片同时触摸挤压 30 秒。
- 重点检查日志:
- 是否出现
sdk.ble.characteristics.list
- 是否订阅了多个 notify/indicate 特征值
- 是否在新增特征值上收到独立
0x31/0x32/0x33
- 是否触发
cmdTouchChest/cmdTouchLeg/cmdTouchB
- 是否发送
/engine/input
- 如果仍无独立
0x31/0x32/0x33,需要进一步确认 MLV6 固件是否需要额外开启触摸上报命令,或触摸协议是否与现有 MLV5 文档不同。