Bluetooth LE Extended Advertising Explained for Devs
Advertisement
Introduction : In legacy Bluetooth, all advertising data is broadcast on three primary advertising channels, which can cause congestion and limits the data size to 31 bytes. Extended advertising solves this by splitting the process as follows.
- Primary Channels (“ADV_EXT_IND”): The device broadcasts a tiny packet on the primary channels. Instead of holding the actual data, this packet contains a pointer (the “AuxPtr” field) telling the scanner exactly when, on which secondary channel, and on which physical layer (PHY) the actual data will be sent.
- Secondary Channels (“AUX_ADV_IND”): The scanner tunes to the specified secondary channel at the exact right time to receive the larger data packet.
The Common Extended Advertising Payload Format
All extended advertising packets share a unified structure known as the “Common Extended Advertising Payload Format”. This format is highly flexible. It consists of following fields.
- AdvMode: A field indicating the type of advertisement (e.g., whether it is connectable, scannable, or undirected).
- Extended Header Length: Indicates the size of the header.
- Extended Header: A variable-length header controlled by a series of “Flags.” A field is only included in the packet if its corresponding flag is set to 1. This keeps packets as small as possible. Fields can include:
- AdvA / TargetA: The advertiser’s or target’s device addresses.
- TxPower: The transmit power level.
- AuxPtr: The pointer to the next auxiliary packet.
- SyncInfo: Information used to synchronize to a periodic advertising train.
- ADI (AdvDataInfo): Used for identifying data sets and duplicates.
Overcoming Payload Limits (Fragmentation)
Extended advertising allows a Host to send up to 1650 octets (bytes) of advertising data. Because a single physical packet payload is capped at 255 bytes, the Link Layer handles this using Fragmentation and “Chaining.”
If the data is too large for one “AUX_ADV_IND” packet, the Link Layer puts the first chunk in the “AUX_ADV_IND” packet and includes an “AuxPtr” pointing to an “AUX_CHAIN_IND” packet. This chaining packet holds the next chunk of data and can point to yet another “AUX_CHAIN_IND” packet, continuing until all data is transmitted.
Advertising Sets and ADI
A single Bluetooth device can act as multiple virtual advertisers at the same time. For example, a smartwatch might advertise a heart rate service while simultaneously advertising a media-control service with different timing parameters.
The specification handles this using “Advertising Sets”. To help receiving devices manage these sets efficiently, extended advertising uses “AdvDataInfo (ADI)” field, which contains two subfields as follows.
- Advertising SID (Set ID): Identifies which specific advertising set the packet belongs to.
- Advertising DID (Data ID): A randomly chosen value that identifies the actual data payload. If the advertiser changes the data, it changes the DID.
This allows a scanning device to look at the ADI field, realize it has already received the data for this specific DID, and immediately stop listening, saving battery life.
Periodic Advertising
Extended advertising enables Periodic Advertising. This allows an advertiser to broadcast data regularly at a fixed interval (the Periodic Advertising Interval).
- The advertiser sends an “AUX_ADV_IND” packet containing a “SyncInfo” field.
- The scanner reads the “SyncInfo” field, which contains the exact timing, channel map, and interval parameters needed to “synchronize” with the advertiser.
- Once synchronized, the scanner no longer needs to scan constantly. It can sleep and wake up exactly when the advertiser transmits the periodic “AUX_SYNC_IND” packets.
The Bluetooth Specification outlines Periodic Advertising with Responses (PAwR). In this mode, the periodic event is divided into “subevents.” The advertiser sends data in an “AUX_SYNC_IND” or “AUX_SYNC_SUBEVENT_IND” packet, and synchronized observing devices are given specific time slots to transmit responses back (“AUX_SYNC_SUBEVENT_RSP”), enabling bi-directional, connectionless communication networks.
Summary
In short, LE Extended Advertising shifts the heavy lifting of data broadcasting from the primary channels to a vast array of secondary channels. By doing so, it allows for massive data payloads (up to 1650 bytes via chaining), concurrent and distinct advertising sets, power saving duplicate filtering (via ADI), and highly synchronized, connectionless data streams (Periodic Advertising).
References & Further Reading
- Bluetooth SIG : Bluetooth Core Specification Version 6.3, May 5, 2026.
- Bluetooth SIG : Bluetooth Core Specification change history
- Bluetooth SIG : Bluetooth Technology Overview
Continue Learning Bluetooth Basic Concepts
- What are new features in Bluetooth 6.3 Version
- Bluetooth GATT Vs. ATT Vs. GAP : Key Comparison
- Bluetooth Service Vs. Characteristic Vs. Descriptor
- Bluetooth Central Vs. Peripheral : Key Differences
- Bluetooth pairing Vs. Bonding Phase
- Bluetooth Notifications Vs. Indications
- Bluetooth Channel Sounding Vs. RSSI
- Bluetooth Direction Finding Methods : AoA Vs. AoD
- Bluetooth HID Over GATT
- Bluetooth IRK Vs. LTK : Key Differences
- Bluetooth PHY : 1M Vs. 2M Vs. Coded Differences
- What is ATT MTU Size in Bluetooth
- Bluetooth Ranging : Phase Based Vs. RTT Based
- Bluetooth Error Codes Guide : Meanings, Causes & Fixes
- Bluetooth L2CAP and HCI : Key Differences
Continue Learning Bluetooth Technology
- Bluetooth Basics Tutorial
- Bluetooth Low Energy (BLE) Basics Tutorial
- Bluetooth Protocol Stack & Device State Diagram
- Bluetooth Physical Layer Modules
- Bluetooth MAC Layer Overview
- Bluetooth Channel Frequency List
- Bluetooth Network Security
- Bluetooth Low Energy (BLE) Connection Establishment Procedure
- Bluetooth Profiles: HFP, HSP, A2DP, AVRCP, PBAP & MAP
- Bluetooth Mesh Node Types & Protocol Stack Layer Functions
Compare Bluetooth With Other Technologies
- Bluetooth V5.0 Vs. V5.1 Vs. V5.2 Vs. V5.3
- Bluetooth Vs BLE : Key Differences
- Bluetooth Vs UWB Technology : Key Differences
- Bluetooth Vs Wi-Fi Vs UWB
- Comparison Between All Bluetooth Versions from 1.0 to 6.3
Explore Deep Insight Bluetooth Technology
- Bluetooth Error Recovery : ARQ, ACK, NAK
- Bluetooth Bit Stream Processing: HEC, CRC, FEC & More
- Bluetooth Routing: How Devices Know a Packet is for Them
- Bluetooth Flow Control: Understanding GO & STOP Bits
- Bluetooth Power Management: Sniff, Hold & Active Modes
- Bluetooth Packets Decoded: Structure, Types & Routing
- Decoding Bluetooth Packet Types: Control, ACL, SCO & eSCO
