首页 > 解决方案 > Windows 10 UWP - 在不同机器上使用 BluetoothLE SDK 示例连接到 BLE 设备时出现问题

问题描述

我正在使用库存的 Windows 10 UWP SDK 示例 BluetoothLE,连接到 Microchip RN4870 BLE 透明 UART 设备,这是一个 BLE 5.0 认证模块。在我最初的开发 PC 上,我能够成功地枚举、选择,然后连接到设备。(当然还有订阅和交流)

问题是这只适用于某些机器。例如,在此 Surface Pro 6 上,(最新的 Win 更新与原始开发 PC 相同)它枚举,但无法连接。尝试了至少 4 台其他 PC,只有 1 台连接。我从一台正常工作的机器上取下了 Belkin 4.0 fob,将其卡在 Surface 中,启用它,但它仍然失败......所以不是 BT 调制解调器,不是 Win 版本,相同的应用程序。还涉及什么?

失败的地方是:Scenario2_Client.xaml.cs(第 132 行)GattDeviceServicesResult 结果 = await bluetoothLeDevice.GetGattServicesAsync(BluetoothCacheMode.Uncached);

在失败的情况下,它总是返回 Device Unreachable。

我不确定如何进行。MS 的 SDK github 家伙说他不会调试设备问题,但也不提供其他支持。MS 技术支持告诉我打开付费支持案例...

很多人使用这些设备,所以它可能相当简单。

我尝试过的事情:

可疑:在好机器上,KnownDevice 列表显示 IsConnectable 标志并且它在闪烁。就像它不断变化一样。在 Surface 上,它从不这样做,或者很少这样做。我觉得这很重要,但是我能理解的文档太少了.. idk 该怎么做。

RN4870 是一个 UART,因此它与它所得到的相呼应。在好的机器上它吐出这个: %REBOOT%%CONNECT,0,982CBC6906B2%%SECURED% 在坏的机器上它吐出这个: %CONNECT,0,F06E0BC5CE8B%%ERR_SEC%%DISCONNECT%

希望大家帮帮我,谢谢

标签: uwpwindows-10bluetooth-lowenergymicrochip

解决方案


推荐阅读