Hololens UWP应用能否开启BLE外设特征的Notify属性?
关于Bluetooth LE特征属性的两个问题解答
嘿,咱们一步步来拆解你的问题:
1. 能否修改BLE外设特征的属性?
答案是不行。BLE外设中特征的属性(比如write、indicate、notify这些)是在设备的固件里预先定义好的,属于外设硬件的固定配置。中央设备(比如你的Hololens)只能在服务发现阶段读取这些属性,没有权限去修改它们——这些属性从设备出厂或固件烧录完成后就确定了,除非你能修改外设的固件重新烧录,否则没法变更。
2. 能否从Hololens的UWP应用开启外设特征的notify属性?
同样不行。如果你的外设特征只声明了write和indicate属性,那notify功能根本没有被外设固件支持,中央设备(Hololens)没办法强制开启这个功能。
你提到notify比indicate更有优势(比如无需外设回复确认,延迟更低、功耗也略低),这确实是对的,但前提是外设端必须在特征属性中包含notify选项。如果想使用notify,你有两个选择:
- 如果你能控制外设的固件开发,修改固件把
notify属性添加到目标特征中,重新烧录后,Hololens的UWP应用就能发现并启用notify了; - 如果没法修改外设固件,那只能继续使用
indicate功能,虽然它需要确认,但可靠性更高,适合对数据送达有要求的场景。
内容的提问来源于stack exchange,提问作者Erik
相关产品推荐
相关产品推荐

