Connection parameter optimize: nRF52840(central) multilink with 8x52832 peripherals

Hi all,

I'm developing a multilink system with 52840 dongle as central and 8 52832 devices as peripherals, which is similar to previous project in thread part I & Part II.

8 peripherals are exactly the same and generates 172Bytes/each device every 100ms, so total data rate would be 13.76kB/s. 

↑According to power profiler, I foud that data packets generated every 100ms, which is 8(peripheral devices) * 251(PDU size) * 1(packet per device) could be transmited within 25ms.  So I set central connection parameters as follows:

But here is my problem: the throughput could reach the requirement, but the connection stability seems very sensitive to distance. When peripheral devices are placed closely to central, the connection is very stable. Then I move peripherals 1 meter away from the central, the devices start to disconnect & reconnect frequently which cause severe packet loss.

I've tried different parameters in previous thread, for instance, 100ms connection interval or 80ms interval. I also tried 52840 module with PA/LNA to raise TX/RX sensitivity. Seems no help. So I think there might be some faults in parameter setting?

Thnaks.

Ava

Parents
  • Hi!

    1) Are you testing this with custom board or DK ? If you are using custom board, do you see the same behavior with nRF52840-DK?

    2) What is your NRF_SDH_BLE_GAP_EVENT_LENGTH value in sdk_config.h?

    3) 

    stability seems very sensitive to distance.

    Does this happen when there are only 1 device connected? or do you need to connect all 8 peripherals for this to happen?

  • Hi,

    Yes I tried the same setting on 52840 DK, 52840 dongle and custome board.

    1) Are you testing this with custom board or DK ? If you are using custom board, do you see the same behavior with nRF52840-DK?

    Current GAP_EVENT_LENGTH is 80(this is for 80ms connection interval condition I previous set, and remain untouched when change to 30ms interval). 

    2) What is your NRF_SDH_BLE_GAP_EVENT_LENGTH value in sdk_config.h?

    If TOTAL_LINK_CNT is set to 1 then it won't happen. This only happens in multilink applications.

    Does this happen when there are only 1 device connected? or do you need to connect all 8 peripherals for this to happen?

Reply
  • Hi,

    Yes I tried the same setting on 52840 DK, 52840 dongle and custome board.

    1) Are you testing this with custom board or DK ? If you are using custom board, do you see the same behavior with nRF52840-DK?

    Current GAP_EVENT_LENGTH is 80(this is for 80ms connection interval condition I previous set, and remain untouched when change to 30ms interval). 

    2) What is your NRF_SDH_BLE_GAP_EVENT_LENGTH value in sdk_config.h?

    If TOTAL_LINK_CNT is set to 1 then it won't happen. This only happens in multilink applications.

    Does this happen when there are only 1 device connected? or do you need to connect all 8 peripherals for this to happen?

Children
Related