This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

【Chained Advertisement/Nordic 52832 or 52840】How to generate the chained advertisement with the nRF Connect SDK

Hi Nordic experts,

Recently, I tested and found that I failed to start the advertisement with NCS 1.7.0  if the length of advertising data is greater than 251 Bytes, for instance, 500bytes, or 300 bytes.

the log system showed me the too big advertising data error information, I tried to debug and found that the root is caused by BT_HCI_LE_EXT_ADV_FRAG_MAX_LEN. However, I searched the answer here and it showed me that the NCS 1.7.0 (How to scan multiple tags that are sent periodic advertising in ncs v1.6.0? - Nordic Q&A - Nordic DevZone - Nordic DevZone (nordicsemi.com)) can support up to 1650bytes. so my question is :

1. How to generate the chained advertisement when the length of advertising data is greater than 251Bytes. is it possible at this moment?

  • Hi

    I'm sorry, but chained advertising of more than 255 bytes did not make it into NCS v1.7.0. As of now the only way to transmit more than 255 bytes at a time is by segmenting the payload like Hung explains in the ticket you linked to. However, the higher chained advertising sizes will find its way into the master branch soon (I don't have an exact date I'm afraid), so keep your eyes peeled!

    Best regards,

    Simon

  • Hi Bro,

    many thanks for your clarifications. the master branch you mentioned above is Zephyr repository or nRF Connect SDK?

    Also, I checked the latest information from the zephyr repository, it seems that this feature has been implemented from 2.61 version.

  • Hi

    I'm referring to the nRF Connect SDK. Chained advertising is supported in NCS v1.7 and has been for some time, but we don't support larger transmits than 255, as it takes chained advertising to send 250 bytes or more. But the feature to add more than 255 bytes is still on its way.

    Best regards,

    Simon

  • Hi Bro

    ok, thanks. as you said above, the chained advertising is supported already, could you give me some tips on how to do it?

    in my understanding, there is on op for it, that is BT_HCI_LE_EXT_ADV_OP_FIRST_FRAG,BT_HCI_LE_EXT_ADV_OP_INTERM_FRAG,BT_HCI_LE_EXT_ADV_OP_LAST_FRAG.  However, this is not an API function that can be used for this purpose. pls correct me if I misunderstood.

    thanks in advance.

  • Hi again

    Chained advertising will be used automatically if you advertise non-connectable with more than 245 bytes of data. The SoftDevice controller will split the data in two separate packets. Please note that the stack is currently limited to 255 bytes, so anything above this will return an error. For now you'll need to follow the workaround suggested by Hung for larger advertisements.

    Best regards,

    Simon

Related