This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Maximum extended advertising data length supported

Hello,

I have PCA10040 development board with nRF52832, Softdevice S132 v6.1.0 & SDK 15.1.0). I wanted to use the extended advertisement feature to advertise more than 255 bytes of data.

Looking:

- In the release note (s132_nrf52_6.1.0_release-notes.pdf), I see that chained advertisement is supported since v6.1.0

- On the nordic site at https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.s132.sds%2Fdita%2Fsoftdevices%2Fs130%2Fs130sds.html, I read "Advertising and scanning up to 255 bytes of advertising data in an advertising event".

- In the ble_gap.h header file, I see  BLE_GAP_ADV_SET_DATA_SIZE_EXTENDED_MAX_SUPPORTED = 255.

The information in the release note, the site and the code are not consistent to me and it's not clear that chained advertisement are supported.

The BLE specification mentions that up to 1650 bytes could be sent in an extended advertisement. So, if chained advertisement is supported,  I would have imagined that  BLE_GAP_ADV_SET_DATA_SIZE_EXTENDED_MAX_SUPPORTED > 255 with a maximal value of 1650.

Do you confirm that s132 supports chained advertising? If yes how many chained packet does s132 softdevice support?

What is the BLE_GAP_ADV_SET_DATA_SIZE_EXTENDED_MAX_SUPPORTED define for? How do you ensure user does not provide more than 1650 bytes?

While writing the above lines, I noticed that in ble_gap.h there is a define set to 1650 (only for "advertising data received from advertiser" says the comment).

#define BLE_GAP_SCAN_BUFFER_EXTENDED_MAX           (1650)                           /**< Maximum data length for an
                                                                                         extended advertising set. */
#define BLE_GAP_SCAN_BUFFER_EXTENDED_MAX_SUPPORTED (255)                            /**< Maximum supported data length for
                                                                                         an extended advertising set. */

The BLE_GAP_SCAN_BUFFER_EXTENDED_MAX_SUPPORTED define makes me think again that the maximum supported data is 255 not 1650 which means that chained advertising is not supported. Do you confirm my understanding?

Thanks.

Best regards,

Olivier

Related