This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

DLE negotiation LL_LENGTH_REQUEST failure

Hi, I'm having problems negotiating DLE with a nRF52840.

I'm sending a LL_LENGTH_REQ (251 octets and 2120ms time) to nRF52840 from an ESP32.

According to the spec. those parameters are valid. For some reason the nRF52840 responds with LL_LENGTH_RSP (251, 2704ms)

2704ms only valid for 2mb phy, and not supported by ESP32, so the ESP32 responds with a LL_REJECT_IND.

Now the link just dies, according to the sniffer no device sends a disconnect, and after a few seconds I get a connection timout on the ESP32.

The disconnect event on the nRF52840 comes quickly after it receives the LL_REJECT_IND, while the disconnect event on the ESP32 takes a few seconds, I suspect that the nRF52840 just ignores the link after the LL_REJECT_IND and therefore it times out for the ESP32.

So there are one primary problem, which is why nRF52840 doesn't want to accept LL_LENGTH_REQ (252, 2120)

And the secondary issue is why the link is lost without someone making an active disconnect.

I have attached .cfg file with air traces (opened by Frontline Protocol Analyzer) and also a screenshot of valid LL_LENGTH_REQ  parameters.

/cfs-file/__key/support-attachments/beef5d1b77644c448dabff31668f3a47-e18a105bc3c54cc69ff44a8ae0d6ed2b/dle_5F00_fail_5F00_rejected.cfa

SDK: nRF5_SDK_15.0.0_a53641a

Softdevice: 6.1

Thank you

Jakob

Related