How to diagnose central connection timeout?

My custom board with a NRF5340 (MDBT53-1M) with LF crystal is running as a central on NCS 2.6.1.

It's connecting to a legacy device which has a BLE121LR.

  1. NRF5340 centrals connects to BLE121LR.
  2. NRF5340 pairs via legacy OOB.
  3. NRF5340 subscribes to characteristics.
  4. NRF5340 changes connection parameters which make the BLE121LR send a message at a interval larger than 6 seconds.
  5. No notifications from BLE121LR is received.
  6. NRF5340 reports connection has timed out.

I have tried a few combinations of interval and slave latency and I was still unable to get past 6 second.

Setting CONFIG_CLOCK_CONTROL_NRF_K32SRC_500PPM did not fix it.

I have connected my custom board to a NRF5340-DK running as a peripheral and the connection parameters worked.

How can I workout what is causing this?

I have a nRF52840 dongle is that helps.

//Works
{
    .interval_min = 400,
    .interval_max = 400,
    .latency = 11,
    .timeout = 3200
}
//Works
{
    .interval_min = 80,
    .interval_max = 80,
    .latency = 59,
    .timeout = 3200
}

//Timeout
{
    .interval_min = 400,
    .interval_max = 400,
    .latency = 12,
    .timeout = 3200
}
//Timeout
{
    .interval_min = 80,
    .interval_max = 80,
    .latency = 69,
    .timeout = 3200
}

Related