Next Generation BLE BeaconsJ O E T I L L I S O N | S R . M A N A G E R , R E G I O N A L P R O D U C T M A R K E T I N G
E M B E D D E D W O R L D : F E B R U A R Y 2 6 - 2 8 , 2 0 1 9
§ Simplest of Bluetooth Low Energy devices
§ Periodic broadcast of a pre-defined advertising packet
§ One-way transmitter
§ Enabler for “proximity aware” smartphone apps
§ Small and typically battery powered
§ Sometimes integrated with other services§ e.g. temperature, open/close sensors, etc.
§ Not defined by the Bluetooth SIG§ All beacon formats are pseudo-standards§ e.g. iBeacon and Eddystone
What Is a Beacon? – A Brief Review
silabs.com | @silabs
§ Retail marketing push notifications§ Personalized greetings§ Loyalty programs – coupons, points
§ Point-of-sale§ Fast food pick up§ Vending machine secure payments
§ Indoor navigation and information§ Hospitals, museums, airports, shopping centers§ Could be integrated with Bluetooth mesh nodes e.g. commercial lighting
§ Asset tracking§ Location awareness of goods/containers within supply chain§ Geo-fencing for inventory control and management
Proximity Aware Applications
silabs.com | @silabs
§ Up to 47 byte packet§ Variable data payload up to 31 bytes§ Organized as tuplets – length, type, data
§ 376 µs for a full packet
§ 3 packets per advertising event§ One packet on each of three advertising channels
BLE 4.x Advertising Packet
Prea
mbl
e
Acce
ssAd
dres
s
CRC
Protocol Data Unit(protected by CRC)
(1) (4) (3)(0 to 31)
PDU Header Data Payload
(2) (bytes)
Adv
376µs
Adv
376µs
Adv
376µs
~ 1ms
Adv
376µs
min: 100ms
. . .
Adv Addr
(6)
silabs.com | @silabs
§ Limited 31-byte payload§ iBeacon – UUID, major, minor§ Eddystone – Four different beacon formats
§ Interleaving multiple beacon formats§ e.g. iBeacon @ 100 ms + Eddystone @ 1000 ms
§ Crowded advertising channels§ Especially with arrival of Bluetooth mesh
§ Range
Challenges
silabs.com | @silabs
§ Two new PHYs
§ LE 2M PHY - 2Mbps
§ LE Coded PHY (500kbps, 125kbps)
§ New channel selection algorithm
§ Enables +20dBm in EU
§ Advertising Extensions
§ Secondary advertising channels
§ Advertising Packet Chaining
§ Advertising Sets
§ Periodic Advertising
§ High Duty Cycle Advertising
New in Bluetooth 5
silabs.com | @silabs
Description PDU Type ADV PDU 4.x 5.01M 2M Coded
Connectable and scannable undirected advertising ADV_IND • • • • Primary
Connectable directed advertising ADV_DIRECT_IND • • • • Primary
Non-connectable and non-scannable undirected advertising ADV_NONCONN_IND • • • • Primary
discoverable undirected advertising event replaced by ADV_SCAN_IND
ADV_DISCOVER_IND • • Primary
replaced by CONNECT_IND CONNECT_REQ • Primary
Scan request SCAN_REQ • • • Primary
Scan request AUX_SCAN_REQ • • • • Secondary
Scan response SCAN_RSP • • • Primary
Connection request CONNECT_IND • • Primary
Connection request AUX_CONNECT_REQ • • • • Secondary
Scannable undirected advertising ADV_SCAN_IND • • • • Primary
All advertising events(except connectable and scannable undirected)
ADV_EXT_IND • • • • Primary
All advertising events(except connectable and scannable undirected)
AUX_ADV_IND • • • • • Secondary
AUX scan response AUX_SCAN_RSP • • • • Secondary
Periodic advertising AUX_SYNC_IND • • • • • Secondary
Additional advertising data AUX_CHAIN_IND • • • • • Secondary
Connection response AUX_CONNECT_RSP • • • • Secondary
Allowed LE PHY Advertising channel
Advertising PDU Types
silabs.com | @silabs
§ Channels 37, 38, 39: primary advertising channels
§ Channels 0 – 36: data and secondary advertising channels
§ New packet type for Primary Channels ADV_EXT_IND§ Only contains header with Aux pointer to secondary advertising channel
Secondary Advertising Channels
4.x 5.0
PRIMARY CHANNELS
SECONDARY CHANNELS
silabs.com | @silabs
§ Can use any PHY: 1M, 2M or LE Coded PHY
§ Up to 254 byte payload
§ Can include Aux pointer to another packet - Advertising Packet Chaining§ Multiple packets can be chained for payloads larger than 254 bytes
§ Offloads traffic from primary advertising channels§ Especially important with Bluetooth mesh
Secondary Advertising Channels
silabs.com | @silabs
§ Advertising Data Sets§ One device acts as a multiple beacons§ Separate instances of the advertising state§ Each uses different advertising parameters§ PHY, power level, interval, packet format, etc.
§ Interleaving is managed by link layer§ No host CPU involvement necessary§ More power efficient
§ Scan Event Reporting§ Scan requests notified to the host processor§ Positive indication that advertisement was successfully heard§ Host can take action e.g. stop successive advertisements
Advertising Data Sets and Scan Event Reporting
silabs.com | @silabs
Other Advertising Enhancements
§ High Duty Cycle Non-Connectable Advertising§ Minimum interval reduced from 100 ms to 20 ms§ Better location accuracy for moving objects
§ Periodic Advertising§ Deterministic timing between advertising events§ Used to stream data over secondary channels§ Multiple receivers sync to advertising stream
Air Interface Protocol PRELIMINARY 22 August 2016
Bluetooth SIG Proprietary & Confidential
BLUETOOTH SPECIFICATION Version Shanghai | Vol 6, Part B page 2782
Link Layer Specification
the auxiliary packet within 2.5*T microseconds of the start of auxiliary packet of the original PDU. [ID7466_r07]
4.4.2.2.3 Periodic Advertising Events [ID7202_r06]
The Periodic Advertising Interval is the interval between the start of two AUX_SYNC_IND PDUs from the same advertising set. The Periodic Advertising Interval shall be an integer multiple of 1.25 ms in the range of 7.5 ms to 81.91875 s.
A periodic advertising event for a given advertising set consists of an AUX_SYNC_IND PDU and zero or more AUX_CHAIN_IND PDUs pointed by the AUX_SYNC_IND PDU that occur during the periodic advertising intervalits subordinate set. [ID7251_r06]
Figure 4.6: Example of Periodic Advertising Events from the same Advertising Set
Two periodic advertising events for the same advertising set shall not overlap each other.
4.4.2.3 Connectable and Scannable Undirected Event Type
When the connectable and scannable undirected advertising event type is used, advertising indications (ADV_IND PDUs) are sent by the Link Layer. [E6586]
The connectable and scannable undirected advertising event type allows a scanner or initiator to respond with either a scan request or connect request. A scanner may send a scan request (SCAN_REQ PDU) to request additional information about the advertiser. An initiator may send a connect request (CONNECT_REQIND PDU) to request the Link Layer to enter the Connection State. [E6672]
The Link Layer shall listen on the same primary advertising channel index for requests from scanners or initiators.
If the advertiser receives a SCAN_REQ PDU that contains its device address from a scanner allowed by the advertising filter policy, it shall reply with a SCAN_RSP PDU on the same primary advertising channel index. After the
Adve (ADV_EXT_IND
AUX_ADV_IND
Adve (ADV_EXT_IND
AUX_SYNC_IND
AUX_CHAIN_IND
AUX_CHAIN_IND
AUX_ADV_IND
AUX_SYNC_IND
AUX_CHAIN_IND
AUX_CHAIN_IND
Pe EveS ar
silabs.com | @silabs
§ Virtually limitless content (large packets or chained packets)§ All-inclusive beacons§ e.g. Eddystone UID + URL + TLM
§ No more compressed URLs§ Better network security
§ Polymorphic beacon formats (advertising data sets)§ e.g. iBeacon + Eddystone-UID + proprietary
§ Long-range beacons (+20 dBm, Coded PHY, CSA#2)
§ Offloaded traffic from Primary Advertising Channels
§ Enabled with firmware update (AE)
§ Backward compatible
§ The future: Precision location with Angle-of-Arrival§ Check schedule for the next presentation
Advanced Beacons
Beacon (TX)
Locator (RX)
!
silabs.com | @silabs
Silicon Labs Devices for Bluetooth 5 Beacons
SoC EFR32BG12 EFR32BG13
Bluetooth version 5.0 and mesh (2M and Bluetooth 5 Æ)
5.1 and mesh (2M, LE LR and Bluetooth 5 Æ)
Proprietary 2.4G and sub-GHz 2.4G and sub-GHz Modules BGM13P BGM13S
Max TX power +19 dBm +19 dBm Bluetooth version 5.1 and mesh (2M, LE LR and Bluetooth 5 Æ)
5.1 and mesh (2M, LE LR and Bluetooth 5 Æ)
CPU (Clock Speed) Cortex M4 (38.4 MHz) Cortex M4 (38.4 MHz) SoC EFR32BG13 EFR32BG13
Flash size (kB) 1024 512 Antenna Chip or U.FL Chip or RF pin
RAM (kB) 256 64 Max TX power +8 / +19 dBm +8 / +18 dBm
Sleep Current (EM2) 1.5µA (16kB RAM, LFXO)
1.3µA (16kB RAM, LFXO) Flash size (kB) 512 512
Active Current (EM0) 70 µA/MHz 70µA/MHz RAM (kB) 64 64
Max GPIO 65 31 Max GPIO 25 30
Crypto Acceleration 2x AES-128/256, ECC, SHA-1/224/256, TRNG
2x AES-128/256, ECC, SHA-1/224/256, TRNG
Operating Voltage 1.8V – 3.6V 1.8V – 3.6V
Operating Voltage 1.8V – 3.6V 1.8V – 3.6V Max Operating Temp -40 to +85C -40 to +85C
Max Operating Temp (TA / TJ)
-40 - +85C / -40 -+125C
-40 - +85C / -40 - +125C Package dimensions (WxLxH) (mm) 13.0 x 15.0 x 2.2 LGA 6.5 x 6.5 x 1.4 LGA
Packages (mm) 7x7 QFN48, 7x7 BGA125
5x5 QFN32, 7x7 QFN48 Certifications BT, CE, FCC, ISED, Japan, S-Korea and Taiwan
BT, CE, FCC, ISED, Japan & S-Korea
silabs.com | @silabs