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

Use of Bluetooth V5 features and remain compatible with no Bluetooth V5 compatible devices

Hello

In my application, I would like to allow smartphone that are Bluetooth V5 compatible to receive more information in advertinsing packets from my devices (via the "Advertising Extensions" feature of Bluetooth 5).

But I want to keep the possibility that smartphones that are not Bluetooth V5 compatible can continue to see and connect to my devices ...

So I have several questions:
- For this to work, I will have to manage 2 advertising packets simultaneously (a normal advertinsing packets and an extended advertinsing packets ) ?
- I would like to add this functionality to the example "ble_thread_dyn_mtd_coap_cli_pca10056_s140". Should I be thinking of something in particular so that BLE and Thread continue to work well simultaneously?

Thank you
  • Hi,

    I will have to manage 2 advertising packets simultaneously (a normal advertinsing packets and an extended advertinsing packets ) ?

    You can maintain two separate advertising sets and change between these with sd_ble_gap_adv_set_configure(). It is not possible to change the advertising params while advertising is active, so you have to stop the advertising in order to change to extended advertising. The simplest way to do this is to set the duration parameter to half of the desired advertising interval, and the interval parameter to the same, and change between the two advertising-sets when you receive the BLE_GAP_EVT_ADV_SET_TERMINATED event.

    I would like to add this functionality to the example "ble_thread_dyn_mtd_coap_cli_pca10056_s140". Should I be thinking of something in particular so that BLE and Thread continue to work well simultaneously?

    In order to maintain the same advertising interval for both legacy and extended advertising, the radio-usage will more than double with this approach. Any activity on BLE will reduce the ability of the OpenThread stack to receive/send data. If you operate the Thread device in MTD mode, without routing capabilities, this should not be an issue but it is something to keep in mind. Especially if you send full packets with extended advertising, this can block the radio for some time. See this page about multiprotocol scheduling and success probability estimations.

    Best regards,
    Jørgen

Related