1
Introduction
Legacy advertising only sends on channels 37 (2402), 38 (2426), and 39 (2480), and can only use 1M PHY, with a maximum effective data payload of 31 bytes.
Core 5.0 introduces extended advertising, which can carry more advertising data, allowing the application layer to set up to 1650 bytes of advertising data. It carries less data on channels 37/38/39 and sends large amounts of data on channels 0-36, reducing the probability of advertising collisions. Additionally, different PHYs can be used for transmission, meeting different requirements for speed (2M) and distance (S2/S8). The introduction of advertising sets allows multiple broadcasts with different intervals and different advertising data to be sent simultaneously. A periodic advertising feature has been added. Summary of extended advertising features:
-
Each packet of effective data can reach a maximum of 254 bytes, with the application layer able to set up to 1650 bytes of data.
-
Advertising can be sent on 40 channels, reducing the probability of advertising collisions and increasing the reliability of broadcasts.
-
Different PHYs can be used for transmission, meeting different requirements for speed and distance.
-
Advertising sets allow multiple configurations of broadcasts to operate simultaneously.
-
Fixed interval advertising: periodic advertising.
2
About Extended Advertising
Extended Advertising Packet Format

Focus on AuxPtr and SyncInfo:


Terminology Introduction
-
Primary channel: 37 (2402), 38 (2426), 39 (2480)
-
Secondary channel: 0-36
Naming Rules
-
Primary channel: ADV_EXT_IND
-
Secondary channel: all start with AUX_, including AUX_ADV_IND, AUX_SYNC_IND, AUX_CHAIN_IND. (Core 5.4 added AUX_SYNC_SUBEVENT_IND, AUX_SYNC_SUBEVENT_RSP)
3
Implementation of Extended Advertising

-
Send ADV_EXT_IND on the primary channel, carrying the AuxPtr field. (AuxPtr contains all the information needed for synchronization: Timing, Channel, PHY. With these three pieces of information, the scanning device can scan the corresponding advertising packet according to the time, channel, and PHY specified by AuxPtr.)
-
Send AUX_ADV_IND on the corresponding secondary channel based on the information described by AuxPtr.
-
If AdvData is large and cannot be fully sent with AUX_ADV_IND, a corresponding chain packet (AUX_CHAIN_IND) can be introduced through AuxPtr to send the remaining AdvData. AUX_CHAIN_IND can also introduce the corresponding AUX_CHAIN_IND again through AuxPtr, and so on, until all AdvData is sent. Note: The upper layer sets the maximum AdvData to 1650 bytes, so chain packets are not unlimited introductions.

Note:
-
ADV_EXT_IND is only sent on the primary channel, and can only use 1M/S2/S8, and cannot use 2M PHY. Prior to Core 5.4, only coded PHY was specified, without specifying S2/S8. Core 5.4 added advertising coding selection to specify whether to use S2 or S8. Because S2 and S8 have different transmission distances, specific specification of S2 or S8 is required in certain application scenarios.
-
AUX_ADV_IND and its guided AUX_CHAIN_IND, as well as all subsequent AUX_CHAIN_IND guided by them, do not necessarily have maximum lengths and can be other length values, such as the 198 bytes shown in the diagram below.

4
Implementation of Periodic Advertising
Core 5.0 provides a form of advertising with a fixed interval: periodic advertising. Prior to Core 5.0, each interval had a random delay of 0-10ms. Periodic advertising is part of extended advertising.
-
Broadcasting end: the device sending periodic advertising;
-
Synchronizing end: the device synchronizing periodic advertising.

-
First, the broadcasting end sends ADV_EXT_IND on the primary channel, carrying AuxPtr, pointing to AUX_ADV_IND.
-
Then, the broadcasting end sends AUX_ADV_IND on the corresponding secondary channel according to the information described by AuxPtr.
-
AUX_ADV_IND carries the SyncInfo field, which contains all the information about periodic advertising, such as: timing information, interval, access code, channel map, etc. Based on the information in the SyncInfo field, the synchronizing end can synchronize with the corresponding periodic advertising (AUX_SYNC_IND).

Note:
-
After introducing periodic advertising, ADV_EXT_IND and the corresponding AUX_ADV_IND can continue to be sent, so that other devices that have not synchronized can continue to synchronize with the corresponding periodic advertising. For synchronized devices, once synchronized, there is no need to continue scanning ADV_EXT_IND and AUX_ADV_IND, to save power consumption.
-
AUX_SYNC_IND and its guided AUX_CHAIN_IND, as well as all subsequent AUX_CHAIN_IND guided by them, do not necessarily have maximum lengths and can be other length values, such as the 196 bytes shown in the diagram below.

5
Comparison of Legacy Advertising and Extended Advertising


Reference Document Access Links:
Bluetooth Core Specification v5.4:
https://www.bluetooth.com/specifications/specs/
Bluetooth Core Specification Version 5.0 Feature Overview:
https://www.bluetooth.com/bluetooth-resources/bluetooth-5-go-faster-go-further/

About Telink
Telink Semiconductor is committed to providing customers with one-stop low-power, high-performance wireless connection SoC chip solutions, including classic Bluetooth, Bluetooth Low Energy, Bluetooth Mesh, Zigbee, Thread, Matter, Apple HomeKit, Apple “Find My”, and private protocols, among others, low-power 2.4GHz multi-protocol wireless connection system-level chips and a rich firmware protocol stack. The company’s products are widely used in various consumer and commercial application scenarios such as smart lighting, smart home/building, smart remote control, wireless peripherals, smart retail, wearable devices, wireless audio, smart toys, logistics tracking, and smart cities.
Official Website: www.telink-semi.com
WeChat Official Account: telink-semi
Telink Developer Forum:
https://developers.telink-semi.cn/
Sales Contact:
China Mainland (East China, North China):
+86-21-20281118-8213
China Mainland (South China, Hong Kong, Audio):
+86-0755-26614003