一图看懂BLE广播数据包

从机广播时的数据包如下图:

注意:

  1. 广播接入地址:固定为0x8E 89 BE D6,在广播、扫描、发起连接时使用。因为BLE蓝牙是LSB传输,
    所以先捕获到低字节数据,即 0xD6 BE 89 8E
  2. 当主从设备建立连接后,广播接入地址会被变成 数据接入地址,这是个随机值,不同的连接有不同的值
  3. 发送地址类型 和 接收地址类型:分 公共地址(Public Address)还是随机地址(Random Address)
    公共地址(Public Address):0
    随机地址(Random Address):1
  4. AD_Structure:
    Length:AD Type和AD Data的长度。
    AD Type:指示AD Data数据的含义。
  5. BLE广播时是强制包含GAP服务和GATT服务的,但是这两个服务的UUID是没有放进广播包里的

我们看看实际捕获到一个数据:如图

捕获的数据是:d6 be 89 8e :广播接入地址0x8E 89 BE D6
60:0110 0000 -----bit7(RxAdd)是0,bit6(TxAdd)是1,发送地址是Random Address,广播类型是通用广播(ADV_INI 0000)
21:后面数据一共33个字节
66 eb 67 81 69 f0:设备地址f0 69 81 67 eb 66,Random Address
0319 00 00:0x03---后面3字节,0x19:外观特性,AD Data:00 00
0201 06:0x02---后面2字节,0x01:可发现性标志
0512 1e 00 64 00:0x05---后面5字节,0x12:从机的最小最大连接间隔,0x1e(30,37.5ms),0x64(100,125ms)
0d09 42 4c 45 5f 54 65 6d 70 6c 61 74 65:0x0d---后面13字节,0x09:完整的设备本地名称 BLE_Template
93 0f 44:校验码

posted @ 2025-06-01 17:15  感兴趣就学  阅读(379)  评论(0)    收藏  举报