I am facing an issue wherein more than one device is acquiring the leader role in a same thread network.
In my setup, I have a total of 4 devices. Three of them are nfr52833_dk and one is nfr52840_dk. I am using the NCS v1.6.1 SDK version to build the projects. On three of the nfr52833_dk, I flashed coap_server open-thread sample and one nfr52840_dk I flashed coap_client open-thread sample.
When I turned on all the nfr52833_dk (running coap_server) I can see one of the devices acquire leader roles and the other two devices acquire router and child roles respectively which is correct.
But once I turn on the nfr52840_dk (running coap_client), I can see it also acquire a leader role.
After few seconds the devices with router and child role change to the leader role. Thus resulting in multiple leaders role devices in the same thread network.
I haven't done any changes to the sample program. Am I missing anything here?Another thing is I verified the panid, master key, channel set on all devices. It's the same on all devices.
This sounds weird. I suppose this should not be related to hardware so I tested with 3 nrf52840DK boards, one for coap_client and two as coap_severs, all connected with putty to monitor their state. Here are my testing steps.
1. Power on two coap_servcers first. Run "ot state" command show one become a leader and another become router.
2. Power on coap_client, it becomes a router.
3. Press button 2 of coap_client, coap_server devices LED2 can be toggled.
When programming the firmware I use "west flash --erase" to clean up potential former OT settings.
I suspect the coap_client did not really join the existing OT network, so it created a new one and self-assigned as a leader
Please pay attention to the above bold content and try to repeat the test to see if the problem still exists.
Can you try reproducing the issue with 2 nrf52833DK and 1 nrf52840DK board in your setup?
As I get this issue whenever I run the samples on dissimilar DK.
Added below zip files containing hex
I tested with your firmwares, and this is no issue with my hardware setup.
What's your hardware version of DKs? are they purchased a long time ago?
Yes, I think we had ordered them at the very beginning. Also is written nRF52840-Preview-DK on development kits see.
The board in your hand using the first engineering version of nRF52840 SoC, it is not wise to develop your product based on it. There might be some errata that introduce this issue. The nRF52840 PDK is only used for evaluation purposes for our key customers, once a formal DK board is released, you should switch to it as soon as possible. NCS coap examples do not claim support on nRF52840 PDK.
You definitely saved the day for me. I was also facing some issues running OTBR with the same kit, probably it's to do with the same.