nRF52 connection parameters for multilink -- PART II

Hi,

Follow up with previous thread. I'm still working 1 central vs 9 peripheral project but still sufferering packet loss. I'll describe both central and peripheral configurations below, please let me know if I misunderstand any part of it.

Since peripheral 1 has largest data rate among all 9 peripherals, so connection parameters for all devices are aligned with peripheral 1. 

Peripheral 1 setups:

  • Connection event length extension ENABLED
  • Generate 131Bytes packet every 20ms and send with API -- ble_nus_data_send();
  • Connection interval range is set to 7.5ms~200ms
  • Gap_evt_length is set to 16(20ms)

             

So I'm thinking of setting the connection interval to 200ms and set aside 20ms for each peripheral connection. According to power profiler, 20ms alows 1757Bytes transmitting via 1M PHY. Since peripheral 1 will generate 10 packets(10 * 131Bytes = 1310Byte in total) during 200ms interval. Thus 20ms gap_event _length could totally cover the peripheral 1 data transferring. Aligned the rest peripherals with peripheral 1, the total gap_evt_length would be 9 * 20ms = 180ms. Allocate 10ms for scan window and reserve the rest 10ms as margin.

With above thinking, the central is configured as:

  • Connection event length extension ENABLED
  • Scan and connectoin parameters configurations:

                      

But I'm still sufferring from severe packet lost with such settings. Did I miss any key parameters for multilink applicaiton, like slave latency? Or did I mistakenly calculate the parameter units?

Thanks!

Parents Reply Children
No Data
Related