Windows无法回答BLE参数更新请求

时间:2015-09-24 09:29:23

标签: windows winapi bluetooth bluetooth-lowenergy

我有一个带蓝牙低能量堆栈的自定义嵌入式设备。设备正在通告自己,直到请求连接,我通过Windows 10中的蓝牙菜单配对并连接到它,我可以使用Win32 API中的以下BLE GATT functions读取/写入我的自定义GATT服务。

对于我的应用程序,我需要使用特征上的通知接收高频数据,因此我使用与上述相同的API启用它并接收正确的数据但速度太慢。 Windows使用的默认连接参数是不够的,我想更新它们,以便我可以接收更高频率的通知事件,但Windows API不提供此类功能。连接到Android手机时遇到了同样的问题,我通过从设备请求连接参数更新解决了这个问题(连接中的奴隶),Android手机接受了它,一切都按预期工作。

唯一的问题是当我在连接到Windows主设备时尝试从设备请求连接参数更新时,我没有收到任何响应(不接受也不拒绝),同时我仍然收到通知事件所以我知道连接仍然有效。奇怪的是,如果我将设备靠近计算机的蓝牙天线, 会收到响应并更新连接参数。

知道发生了什么事吗?它是Windows堆栈中的错误吗?

1 个答案:

答案 0 :(得分:0)

应该验证保持设备靠近天线的事实。以不同的方式多次尝试。

你提到Android,从Android进一步拿着设备还会阻止连接参数更新吗?

如果这证明是真的,我会说设备有问题。我会比较不同设备之间的行为,如果它们来自不同的制造商或至少是模型,那就更好了。