Sporadic disconnects with reason 8 but good RSSI

Hi,

I'm having some problems with sporadic disconnects with reason 8 (timeout) although the RSSI values are in a good range.
The disconnects are very rare, I would say maybe every 1-2 hours; if there is more interference, then maybe more.

As peripheral and central I'm using a NRF52840; my RTOS is Zephyr and my NCS Version is 2.5.1

Details:

  • I'm using coded PHY S8
  • RSSI values are all about -70dbm
  • Connection parameter:
    • Interval: 400ms
    • Latency: 4 (means every 2 seconds the sensor must awake and send
    • Timeout 8 seconds
  • External LF crystal, 20ppm

I've already tried to play around with the PPM settings and tried CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM, but there was no improvement. Also the crystal is rated with 20ppm, so I think that should not be the problem.

I've chooses the connection parameter like this, because I really do not have to send much data and want to keep the battery consumption on a minimum.

What could be the problem and how could I improve the connection? What can I try?

Thanks a lot,
Phobios

  • Well, in the end, it could boil down to some unavoidable disconnects due to the environment.

  • Thank you for the clarification. I assume the uptime counter is only reset after a reboot, not upon disconnection. This suggests that the connection timeout isn't due to an unexpected reset, at least. The fact that this issue doesn't occur when the devices are placed closer together indicates that it's likely not related to exessive clock drift either.

    The s8 encoding is more susceptible to interference from other devices operating on the same frequency bands, as the packets require a longer airtime.

  • Ok, thanks for the hint with the clock drift, that makes sense.

    To the encoding: I thought S8 increases the range and robustness because it is coded and adds error correction? That's the reason I'm choosing this, because I want to cover a long distance. If I have to switch back to 1M PHY then the range is limited.

    Can I play with the connection parameter or are there any other options I can try?

  • s8 will generally extend the range, but it may perform worse in noisy environments.

    You can try to disable slave latency to see if it helps improve the robustness of your link. 

    Phobios said:
    If I have to switch back to 1M PHY then the range is limited.

    Is the RADIO configured to transmit with 0 dBm (default), or have you increased it to +8 dBm? 

  • I've already increased to 8dBm - but as you said (and the RSSI value shows) - I think in that special environment, the problem is more the interference than the range limits.

    I've also thought about using Nordic range extension IC, but only on the central device (since the sensor is battery powered, I don't want to loose more capacity). According to the datasheet is increases the receiving sensitivity as well, not only transmitting power.

    Do you think changing to 1M PHY will help me with the interference, and the range extension IC (but only on the Central) will help me getting longer range? 

Related