Adapt Connection Parameters Negotiation

Hi,

I'm working on optimizing the download time of data via bluetooth with the nrf52820 android and IOS phones.  
To do this, I chose to play with the connection parameters negotiated between the central and the peripheral. And especially the connection interval.
Today, during the negotiation of the parameters, my firmware only proposes a fixed connection interval of 7.5 ms (which corresponds to the minimum interval for the BLE 5.1). If there is no agreement, then the parameters do not change and remain chosen by the central unit.
Android phones have a preferred connection interval of 50 ms but new android versions switch this interval to 11.25 ms (minimum possible interval) if the device demand is lower than 11.25 ms. For IOS phones, the preferred connection interval is 30 ms but IOS can support a minimum interval of 15 ms.
By extending the connection interval to 15 ms, I managed to improve the data dump for IOS and older android phones. But I have lengthened the loading time for new android.

That's why I was wondering if there was a solution to adapt my settings according to the type of operating system or if I have to choose an interval of 15 ms to be compatible with both IOS and androids.

Sincerely,

LE MANACH Maxime.

Parents
  • Hi,

    I'm not aware of a reliable method to detect if a connected peer device is an Android or iOS device, unfortunately. But which SDK is your bootloader from? A shorter does connection interval will not always lead to faster DFU. Other factors may be packets size, number of packets per connection, sufficient time to schedule flash operation, packet receipt notification, etc.

    Best regards,

    Vidar

Reply
  • Hi,

    I'm not aware of a reliable method to detect if a connected peer device is an Android or iOS device, unfortunately. But which SDK is your bootloader from? A shorter does connection interval will not always lead to faster DFU. Other factors may be packets size, number of packets per connection, sufficient time to schedule flash operation, packet receipt notification, etc.

    Best regards,

    Vidar

Children
Related