nrf52840 ble disconnection issue

Hi,

I have a medical device where my mother board has a NRF52840 chip which communicates with a Android Tablet through blue-tooth. We find it gets connected with few tablets & not with others. Following problems we see - 1) Getting connected through serial terminal manually & thereafter remains connected, 2) In other cases it connects and disconnects after say 20seconds

Can you suggest some solution for this?

Also, as my device runs on continuous main power, I want to run NR52840 on Class blue tooth...Is it possible to run it on classic blue tooth to maintain connectivity?

Parents
  • Hi again

    There are too many possible reasons that these disconnects can happen when you don't have a specific disconnect reason, a log from either side, or a sniffer trace so we can see what is going on over the air. I'm sorry, but I won't be able to help you as it would only be shots in the dark as to what could be going on. For example, it could be due to the nRF52840 board you have not having an external LF crystal, and that the LF clock thus drifts and is not accurate enough to keep a connection up and running.

    If so, you would need to set the following defines in sdk_config.h to these values:

    #define NRF_SDH_CLOCK_LF_SRC 0
    #define NRF_SDH_CLOCK_LF_RC_CTIV 16
    #define NRF_SDH_CLOCK_LF_RC_TEMP_CTIV 2
    #define NRF_SDH_CLOCK_LF_ACCURACY 1

    Best regards,
    Simon
Reply
  • Hi again

    There are too many possible reasons that these disconnects can happen when you don't have a specific disconnect reason, a log from either side, or a sniffer trace so we can see what is going on over the air. I'm sorry, but I won't be able to help you as it would only be shots in the dark as to what could be going on. For example, it could be due to the nRF52840 board you have not having an external LF crystal, and that the LF clock thus drifts and is not accurate enough to keep a connection up and running.

    If so, you would need to set the following defines in sdk_config.h to these values:

    #define NRF_SDH_CLOCK_LF_SRC 0
    #define NRF_SDH_CLOCK_LF_RC_CTIV 16
    #define NRF_SDH_CLOCK_LF_RC_TEMP_CTIV 2
    #define NRF_SDH_CLOCK_LF_ACCURACY 1

    Best regards,
    Simon
Children
No Data
Related