蓝牙靠近发现广播与蓝牙碰一碰广播:主要包含服务数据,对应AD Type取值为0x16,结构说明详见蓝牙靠近发现广播、蓝牙碰一碰广播。 扫描响应包与常态广播:主要包含蓝牙设备名称等信息,对应AD Type取值为0x09,结构说明详见设备名称广播。 说明 常态广播:对于支持靠近发现的设备,除了发送靠近发现广播...
例如小米mibeacon的AD Stucture: AD Length + Type(0x16)+ 16bit Service Data UUID(0xFE95,小米申请的UUID)+ Frame Control(2字节) + Product ID(2字节) + Frame Counter (1字节)+ … 注:各大公司申请的UUID见附件:《16-bit UUID Numbers Document.pdf》,其中百度(0xFDC2,0xFDC3),小米(0xFDAB,0...
而第二个广播数据单元,第一个字节的值是 0x16 ,转换为十进制就是22,表示后面22个字节为第二个广播数据单元。 在广播数据单元的 数据部分 中, 第一个字节 代表 数据类型 (AD type),决定数据部分表示的是什么数据。(即广播数据单元第二个字节为AD type)AD Type 的...
BLE_GAP_AD_TYPE_SIMPLE_PAIRING_HASH_C 0x0E /**< Simple Pairing Hash C. */13#defineBLE_GAP_AD_TYPE_SIMPLE_PAIRING_RANDOMIZER_R 0x0F /**< Simple Pairing Randomizer R. */14#defineBLE_GAP_AD_TYPE_SECURITY_MANAGER_TK_VALUE 0x10 /**< Security Manager TK Value. */15#defineBLE_GAP_A...
02 01 06 03 03 aa fe 17 16 aa fe 00 -10 00 01 02 03 04 05 06 07 08 09 0a 0b 0e 0f 00 00 00 00 02 01 06,是一个AD Structure:Data的长度是02;Data是01 06;AD Type是01(Flags);AD Data是06,表明支持General Discoverable Mode、不支持BR/EDR。
查看Nordic的SDK中的定义,AD type的定义在程序的“ble_gap.h”头文件中。定义如下: 1 #define BLE_GAP_AD_TYPE_FLAGS 0x01 /**< Flags for discoverability. */ 2 #define BLE_GAP_AD_TYPE_16BIT_SERVICE_UUID_MORE_AVAILABLE 0x02 /**< Partial list of 16 bit service UUIDs. */ 3 #define BLE...
AD type 的定义 Flags TYPE = 0x01,用来标识设备 LE 物理连接的功能。DATA 是 0 到多个字节的 Flag 值,每个 bit 上用 0 或者 1 来表示是否为 True。如果有任何一个 bit 不为 0,并且广播包是可连接的,就必须包含此数据。各 bit 的定义如下: ...
从BLE广播包中提取Network PDU,检查AD Type是否为0x2B,表示Mesh Message。 使用网络密钥(NetKey)派生的解密密钥(EncryptionKey)和隐私密钥(PrivacyKey)对Network PDU进行解密和反混淆,得到网络层的消息。 检查网络层消息的目的地址(DST)是否与本地节点的单播地址或订阅地址匹配,如果匹配则继续处理,否则丢弃或中继。 使...
DM_ADV_TYPE_LOCAL_NAME, /*! AD type */ 'F', 'i', 't' }; 看一下着里面的几个的几个宏定义,就理解adv广播的含义了: #define ATT_UUID_HEALTH_THERM_SERVICE 0x1809 /*!< \brief Health Thermometer Service */ #define ATT_UUID_DEVICE_INFO_SERVICE 0x180A /*!< \brief Device Information...
0x12 表示SLAVE CONNECTION INTERVAL RANGE 后面四字节:06 00 80 0c 对于SLAVE CONNECTION INTERVAL RANGE,其定义如下: 各个AD Type的值在QN9020 SDK里也可以看到: /// GAP Advertising Flags enum { /// Flag GAP_AD_TYPE_FLAGS = 0x01, /// Use of more than 16 bits UUID ...