找回密码
 立即注册

微信扫码登录

查看: 96|回复: 2

[BLE SDK] 问下大佬们有关于b85m 蓝牙切换hid 的问题

[复制链接]

1

主题

1

回帖

15

积分

英勇黄铜

积分
15
发表于 6 天前 | 显示全部楼层 |阅读模式 来自 广东
Information
说明:   建议参照本版块置顶帖内容输入必要信息
芯片型号: TLSR8251
SDK及版本: b85_ble_sdk_230410
问题描述: 蓝牙要通过手机app切换手写板的映射区域,切换时,要将新的映射区域值写入hid并重新载入到att属性表中,发现我在载入hid前需要将与手机连接的匹配信息在板子端删除,才能够正确修改映射区域,如果只是简单的断开连接,再重新初始化蓝牙,发现没有办法正确修改映射区域。

请问有什么方法 在不删除匹配信息的情况下,正确将新的hid导入att属性表中并成功载入呢?(新的hid 用到的report id 要和之前的hid 相同)

48

主题

321

回帖

1205

积分

版主

积分
1205
发表于 5 天前 | 显示全部楼层 来自 上海
使用GATT中的Service Change,告知对方服务发生变化

1

主题

1

回帖

15

积分

英勇黄铜

积分
15
 楼主| 发表于 4 天前 | 显示全部楼层 来自 广东东莞
尝试过断联重新走初始化流程并更新hid参数,然后通过
    發送 Service Changed Indication(通知 Host GATT 數據庫已改變)
    u8 payload[4] = {U16_LO(0x0030), U16_HI(0x0030), U16_LO(0x007F), U16_HI(0x007F)};
    blc_gatt_pushHandleValueIndicate(connHandle, serviceChangedHandle, payload, 4);
   
    以及等待 Host 回覆 Confirm(或延遲一段時間)
    然后斷開連接,強制 Host 重新連接並重新發現服務
    bls_ll_terminateConnection(HCI_ERR_REMOTE_USER_TERM_CONN);
最后调用strat reboot 重启蓝牙,发现手机端hid 还是没有将hid修改过来
请问有gatt service change 的参考例程可以参考一下吗
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Telink forum ( 沪ICP备17008231号-1 |沪公网安备31011502403548号 )

GMT+8, 2026-6-9 13:18 , Processed in 0.088938 second(s), 23 queries .

Powered by Discuz! 隐私政策

泰凌微电子版权所有 © 。保留所有权利。 2024

快速回复 返回顶部 返回列表