https://mp.weixin.qq.com/s/oe89XpRO7-9bdmCaAhyYAw
1. BLE broadcast
BLE device may periodically send a message to the surrounding devices via a broadcast (Advertisement), the broadcast message format is expanded as follows:
PDU data on the broadcast channel a total of seven types, respectively 4Advertising + 2 Scanning +1 Connect-request. Further expansion ADV_IND message format is as follows:
Finally, one by one to see AdvData ADStructure, each advStructure comprising three parts:
-
AD length, AD Type AD Data length, and
-
AD Type: AD Data meaning of data,
-
AD Data: AD Type data indicated
AD type defined in the Core Specification Supplement (CSS) v7
BLE specification allows vendors to define their own ADtype, this time AD type a value of 0xFF, based on this, Apple and Google, respectively, defines a special broadcast of the BLE, which is iBeacon and EddystoneBeacon, Beacon is a vendor that is their definition of broadcasting data, this is not a broadcast connection, not scanning, i.e. type ADV_NONCON_IND.
2. iBeacon
iBeacon specification defines the https://developer.apple.com/ibeacon/
ADV data which are defined as follows
For example, one of ADVdata iBeacon follows:
0x0201061AFF4C0002151048E70A5D61492525698305449030901005A77C0
We can try to analyze the results of the above comparison.
3. Google Eddystone
Google Eddystone Beacon definition:
https://developers.google.com/beacons/eddystone
ADV data which are defined as follows
4. Applications
Based iBeacon location:
https://developer.apple.com/ibeacon/Getting-Started-with-iBeacon.pdf