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

S110 - Sending multiple notifications per connection event

Hello,

I have a couple of questions about sending multiple notifications:

  1. I want to send multiple notifications (from same characteristic), is that allowed by S110 softdevice?

  2. What is the maximum number of packets that S110 could process per connection event?

  3. If I send 3 notifications in the order N1, N2 & N3 at same time, the receiving end will get them with the same order, is that correct?

  4. A BLE_EVT_TX_COMPLETE event will be generated when the packet has been transmitted, so if I send 3 notifications at same time, 3 BLE_EVT_TX_COMPLETE events will be generated, is that correct?

  5. If a BLE_EVT_TX_COMPLETE event is generated for the packet transmission, does it mean that the packet has been successfully received by the receiver?

Thank you for your attention! Joseph

  • If what you're after is throughput, i.e., lots of data; need multiple server->client packets in one connection event, then yes. You may check the DFU example in the SDK albeit it's client->server, it does many WRITEs (no response), then a custom "verify" request to make sure all data are transfered intact.

    However if you can afford doing the notification/"manual verification" one by one in series, using the standard server-to-client INDICATION/CONFIRMATION pair is a better choice IMHO.

  • What is the best way to ensure that the peer has actually processed it? Add a characteristic (i.e. flag) that the peer can write to indicate that it has completed? For example:

    clear the flag send out the packet wait for the BLE_EVT_TX_COMPLETE AND the flag to be set by the peer clear the flag and send out next packet

    Use indications instead of notifications if you need to make sure the remote Host has received and processed the packet.

    If you want something more efficient then as mentioned, take look at the DFU example.

  • Hi Carles.

    Can you write to several characteristics in one connection event?

    Kind regards

    Jack

Related