BLE之Beacon

Posted someone-device

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BLE之Beacon相关的知识,希望对你有一定的参考价值。

 

https://mp.weixin.qq.com/s/oe89XpRO7-9bdmCaAhyYAw

技术图片

 

1. BLE广播


BLE设备可以通过广播(Advertisement)周期性的向周围的设备发送消息,广播消息格式展开如下:

技术图片


技术图片

 

广播通道上的PDU数据总共有7个类型,分别为4Advertising + 2 Scanning +1 Connect-request。进一步的展开ADV_IND消息格式如下:

 

技术图片

 

最终,看到AdvData由一个个ADStructure组成,每个advStructure包括三个部分:

  • AD length,AD Type和AD Data的长度

  • AD Type:AD Data的数据含义,

  • AD Data:AD Type所指示的数据

 

AD type定义在Core Specification Supplement(CSS) v7  

 

BLE规范允许厂商定义自己的ADtype,此时AD type值为0xFF,基于此,Apple和Google公司分别定义了一种特殊的BLE广播,这就是iBeacon和EddystoneBeacon,即Beacon是一种厂商自己定义的广播数据,这种广播类型是不可连接,不可扫描的,即类型为ADV_NONCON_IND。


2. iBeacon

 

iBeacon 规范定义在 https://developer.apple.com/ibeacon/

其ADV data定义如下

 

技术图片

 

 

例如 一个iBeacon的ADVdata如下:

 

0x0201061AFF4C0002151048E70A5D61492525698305449030901005A77C0

就可以尝试对比上面的结果分析。

 

3. Google Eddystone

 

Google Eddystone Beacon定义在: 

 https://developers.google.com/beacons/eddystone

 

其ADV data定义如下

 

技术图片

 

 

 

4. 应用

 

基于iBeacon的定位:  

https://developer.apple.com/ibeacon/Getting-Started-with-iBeacon.pdf

 

技术图片

 

 

技术图片

 

 

以上是关于BLE之Beacon的主要内容,如果未能解决你的问题,请参考以下文章

BLE之Beacon

ESP32入门基础之ble spp client 和 ble spp server 的学习理解

Android BLE与终端通信——Google API BLE4.0低功耗蓝牙文档解读之案例初探

蓝牙BLE之DA1469x的应用

蓝牙协议分析(11)_BLE安全机制之SM

BLE控制器之链路层