Hi everyone,
I am using "nRF5 SDK for Thread and Zigbee 2.0.0" in my project , that includes the libraries of OpenThread (commit 704511c96e0d093139e4b80ef0739ed2d701afb1).
I recompiled the libopenthread-ftd with new defines:
OPENTHREAD_CONFIG_ATTACH_BACKOFF_MINIMUM_INTERVAL=300000 # milliseconds or 5 minutes
OPENTHREAD_CONFIG_ATTACH_BACKOFF_MAXIMUM_INTERVAL=300000 # milliseconds or 5 minutes
Then two Router devices were created. And they had been working properly. In file "log-ChildId-response-success.txt" we can see, (line 111) that Child ID Response has been sent on Mac layer.
After that Sleep End Device was created. As it was expected, the interval between attempts of connection to the Parent was approximately 5 minutes.
Since i turned on one Router device and one Sleep End Device, SED hasn't been able to attach to the Router. In Wireshark (files sed-not-connect-to-router.csv, sed-not-connect-to-router.txt, sed-not-connect-to-router.pcapng) we can see, that SED didn't receive Child ID Response after sending of Child ID Request. Áttempts to attach to Parent in sniffer messages: 8, 40, 70, 100, 131 and so on.
I created the log from my Router device when SED is trying to connect to it. In file "log-ChildId-response-fails.txt" we can see, (line125) that MLE layer was trying to send Child ID Response, but Mac layer did not do that.
I have not any idea, why it happens.
Key for wireshark is 0x0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f0f.
Thank you!
Same question in openthread-users google group: