蓝牙BLE的UUID和MAC地址

14

我必须承认,当涉及到BLE 4.0时,我是个新手,我希望了解什么组成BLE外围设备的唯一标识符。通常,对于所有WiFi通信,MAC被视为设备的唯一ID。我有以下问题:

  • UUID用于什么?不同的BLE外围设备应该有不同的UUID吗?
  • BLE外围设备的唯一ID是什么,可由其他中央BLE设备进行识别?例如,Android上的位置查找应用如何检测外围BLE设备?
  • 是否可以通过扫描(即无需连接)获取BLE外围设备的唯一ID?
  • 连接到BLE外围设备是否需要任何手动干预?我已阅读过,不需要人工选择即可读取外围设备传输的数据。

希望有人能帮助解答。

1个回答

8

BLE设备与普通蓝牙一样具有独特的6字节蓝牙地址,可以唯一标识设备。然而,BLE还可以使用“随机”地址,其遵循特定格式,因此您可以区分随机地址和常规公共地址。

  • 在BLE术语中,“UUID”指用于标识通用属性协议(GATT)中发现的数据类型的标识代码
  • 不确定我是否理解了这个问题……有蓝牙地址,但是再次说明,BLE设备可以使用随机地址。
  • 当您扫描广告数据包时,您会收到包含蓝牙地址的数据包。这些地址是用于连接到特定设备的。
  • 当您想要“连接”到设备时,必须手动进行连接。但是,广告数据包可以包含数据,您可以在没有任何连接的情况下被动接收。 iBeacon使用无连接广告数据包信息,因此不会建立任何连接。

我正在阅读BLE的文档,它说我们需要连接才能获取该服务的服务和特征。那么这个连接是否需要手动干预,比如在Android/iPhone应用程序中弹出要求用户权限的窗口?还是会在用户不知情的情况下无缝进行? - Ouroboros
啊..我不知道iPhone或Android是如何实现它的。但是获取特征需要双向通信流量,因此需要某种连接。 - Tim Tisdall
根据数字,某些服务UUID可以列在广告数据包中,因此不需要双向流量来发现它们,但是较长的列表需要主动查询。移动操作系统似乎在“连接”和“配对”之间划分界限,前者通常允许无需用户确认,但后者通常需要确认。 - Chris Stratton

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接