首页 > 解决方案 > 如何实现两个设备的BLE通信?

问题描述

我有一个希望实现的 IoT 设备:

  1. 移动应用程序 - 当用户的手机发起通信时,手机是主控

  2. 远程键 - 单击所述键应使物联网设备执行某些操作。遥控钥匙应与物联网设备配对一次。

现在,我遇到的问题是我无法与两者沟通。我想始终启用与移动应用程序的连接,但我也想随时监听远程键的点击(除非我已连接到应用程序)。

这种通信的最佳架构是什么?谁是主人,谁是奴隶?我应该为遥控钥匙使用信标设备吗?这里的最佳做法是什么?

标签: bluetoothbluetooth-lowenergy

解决方案


根据 BLE 堆栈,设备当然可以同时是中央设备和外围设备(此处使用“主设备”和“从设备”不准确)。

如果我理解正确,您有 3 台设备——电话、钥匙和物联网设备。这里有几个选项:

  1. 电话是中央的,并且作为外围设备连接到密钥和设备。单击该键将通知手机,然后手机会向设备发送一些消息。优点 - 易于配对。缺点 - 手机应用程序必须一直运行。
  2. Phone 是 Central,Key 是 Central 和 Peripheral,Device 是 Peripheral。电话连接到 Key Peripheral,Key 作为 Central 连接到 Device。优点 - 即使没有电话,也可以按键控制设备。缺点 - 可能更难设置 Key 和 Device 配对(取决于它们的 I/O 能力)

推荐阅读