Maximum posibble connection Interval

Hello,

I'm using the nRF52832 product, nRF5_SDK_15.3.0_59ac345, and the android S21 mobile phone as a back-end system. I'm working on ble_app_bps, ble_app_gls, and ble_app_hrs applications. I have 2 different category questions. The first one is :

1. Regarding Questions about the connection interval negotiation page "devzone.nordicsemi.com/.../questions-about-connection-interval-negotiation. "

how I can manage these parameters to get the maximum possible connection interval. According to the above link, the max connection interval is 4s. How it's possible with this condition?

Interval Max * (Slave Latency + 1) ≤ 2 seconds

I looked at the apple guidelines for the connection parameters, is there the same document for android you are aware of? (I couldn't find myself)

Then my first question is how to select the connection parameters to reach the 4s connection interval.

2. My second question is for how long the connection can be on without sending data. More specifically, after connecting to the back-end system, the application does not send the data, it has to get this data from the sensor every 10 minutes and then send it. Is it possible to send empty packets for 10 minutes?

  • Hello,

    As a peripheral device you typically have gap_params_init() and conn_params_init() somewhere during init.

    The conn_params_init() will try to update the connection parameters to fullfill the paramters you defined in gap_params_init().

    So, if you want to fullfill the following:

    Interval Max * (Slave Latency + 1) ≤ 2 seconds

    Then you can for instance try to set either of these:

    MIN_CONN_INTERVAL=MAX_CONN_INTERVAL=2seconds and SLAVE_LATENCY=0
    MIN_CONN_INTERVAL=MAX_CONN_INTERVAL=1seconds and SLAVE_LATENCY=1
    MIN_CONN_INTERVAL=MAX_CONN_INTERVAL=0.5seconds and SLAVE_LATENCY=3
    ...

    is there the same document for android you are aware of? (I couldn't find myself)

    Not that I am aware of either, but the apple guidelines seems to work for anyone.

    Then my first question is how to select the connection parameters to reach the 4s connection interval.

    That is not possible if you want to fullfill the apple guidelines, but if you don't care about those, then it would be something like:

    MIN_CONN_INTERVAL=MAX_CONN_INTERVAL=4seconds and SLAVE_LATENCY=0

    Is it possible to send empty packets for 10 minutes?

    From a BLE specification point of view that is possible yes, whether the peer device (e.g. phone) allow this without disconnecting is a different question (I don't know). It could be that a phone disconnect if it's inactivity for x number of minutes.

    Kenneth

Related