nRF52840 valid connection interval options

Hello everyone,

I am working with the latest Zephyr NCS 2.0.2 SDK to develop a BLE App with a nRF52840 Soc.

The device is going to produce a very low data rate, so I want to extend the battery life to the maximum possible value.

To do this, I wanted to adjust the following Zephyr CONFIG params:

CONFIG_BT_PERIPHERAL_PREF_MIN_INT  --> Minimum connection interval (default value is 24)
CONFIG_BT_PERIPHERAL_PREF_MAX_INT --> Maximum connection interval (default value is 40)

CONFIG_BT_PERIPHERAL_PREF_TIMEOUT --> Supervision timeout (default value is 42)

I tried various settings, such as 1, 1.5, 2, 2.5 seconds connection interval and supervision timeouts greater than 2 times that values according to specifications, respectively.

However, all of those values produce disconnect events (0x13 error code) after a successful BLE connection without that event being generated by the user.

I came to the conclusion that the softdevice used (S112 in my case) cannot support these high timer values.

I would like to know if there is any guide or similar document with experimentally tested connection intervals and supervision timeouts that work well.

Thanks in advance

Parents
  • Hello again,

    No. It is a custom service based on the peripheral_ht example.

    I am also using a custom Android App based on the Nordic Android-nRF-Blinky example.

    I think this issue regarding timeout intervals can be reproduced with any example.

    Regards

  • Hi,

    jasr93 said:
    No. It is a custom service based on the peripheral_ht example.

    ok, but this applies for the peripheral though?

    jasr93 said:
    I am also using a custom Android App based on the Nordic Android-nRF-Blinky example.

    Have you tried the nRF Connect Android app and see if it disconnects? Where is the error printed, is it on your phone or directly from the nRF? Error 0x13 indicates that it's the peer that does the disconnection. The central doesn't usually disconnect because of the connection parameters suggested by the peripheral, since it's the central itself that decides the connection parameters.

    I modified the peripheral uart example to set connection parameters to 1250 ms and it worked without any disconnections:

    regards
    Jared 

  • Hi again,

    The error occurs in he NCS device logs. And the smartphone closes the connection.

    I will try the nRF Connect App but this App is closed source so I can not check the code.

    Instead I was using the nRF Blinky example because it uses the Nordic Android BLE library.

    It would be great if you could use the nRF Blinky example with those connection parameters to check if the device shows the 0x13 error code.

    Regards

  • Hi,

    I tried the Led button example with the nRF Blinky example and it worked. Were you able to reproduce it with the nRF Connect app?

    regards

    Jared 

Reply Children
No Data
Related