使用WIndows 10 UWMP与多个BLE设备通信

时间:2016-04-03 20:08:40

标签: c# bluetooth win-universal-app bluetooth-lowenergy iot

我在Raspberry pi 3上运行Windows 10 IoT,我有10个基于Arduino的BLE设备,我需要与之通信。

我需要我的程序遍历所有10个BLE设备,发送命令并接收响应。

我在Android上做过,但我不知道如何在Windows 10上做到这一点。任何帮助都会很棒。

谢谢

1 个答案:

答案 0 :(得分:2)

不完全确定您是否想要将10个Arduinos插入Raspberry Pi,或者您想要通过无线方式与10个BLE启用的Arduinos进行通信。如果是后者,我可以提供帮助。我假设你对BLE的基本原理有所了解。

概述:基本上,您需要将蓝牙Arduinos与Win IoT配对,连接到每一个,使用GATT特性发送和接收数据,然后在完成时断开连接。

  1. 从Win IoT的list of supported BLE dongles获取HCI BLE加密狗。
  2. 然后你必须pair each BLE Arduino to Win IoT。这将允许Pi通过您的代码查找设备。
  3. 要从无线BLE设备发送数据和接收响应,必须首先建立连接。
  4. 我假设您已经将Arduinos编程为具有特征(可能命名为“命令”),在其GATT数据库中具有写访问权限,另一个(可能命名为“响应”)具有读取访问权限和启用通知。特征就像插座。确保你的Arduinos有类似于这个设置。
  5. 在您的Win IoT代码中,连接到Arduino时必须discover these GATT Characteristics。发现后,可以将数据写入“命令​​”特征。
  6. 然后,Arduino可以通过触发数据正在等待“响应”特征的通知来做出响应。在Pi收到此通知后,它应该继续阅读Arduino的GATT数据库中的“响应”特征。
  7. 完成后再断开连接并重复下一个Arduino。