CH58x的central工程,想增加一个通知的订阅应该怎么处理呢?

一个Mac的蓝牙键盘,想用CH582抓取它的键值。现在标准按键已经可以抓到了,标准按键是通过0x0035的通知上报的。

但是多媒体键是通过0x0041上报的,我想增加一个0x0041的订阅应该怎么加呢?

1702957624656_6BCF1C02-AD77-4749-BA79-6809887B61AE.png

1702957217244_29B11D52-3ED4-4333-8C25-066083FA5A90.png

通知noti是从机发送数据给主机,默认的central例程是根据从机uuid进而枚举对应的handle,从而进行数据收发。

根据上图是已经获取到了handle值,这时候就不需要再通过uuid来获取它了,将这个handle值填写并直接进行接收数据。image.png


现在的案例可以读到设备发过来的0x0035跟0x003d,如果我要增加一个0x0041也是直接修改centralCCCDHdl吗?



image.png


确认0x41是cccd的handle,可以抓包手机与从机的连接透传获取。然后直接将该handle填写进行进行收数据即可。



不太行,抓包发现键盘压根不发0042的数据。有可能是需要写订阅使能的操作,请问写订阅使能有案例吗?


已经解决了,往需要订阅的handle里面发0x01,0x00就可以了

image.png


只有登录才能回复,可以选择微信账号登录