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

Unable to perform DFU over Thread

I'm trying to run the Thread DFU examples on nRF52840, unfortunately I can't get them to work. On the client, I got the bootloader set up and ready, with the client application, I also got the upgrade app pkg done.

The nrfutil package seems kind of working, but probably not 100%. It flashed the device nicely, and started to send trigger packets (I tried both multicast and specific client device addresses), and the client is receiving the trigger packets. But, when client tries to ask for init packet, nrfutil doesnt seem to receive it. I do see that both nRF devices are connected and within the same network (ping works, I can see the router table output on the client having both devices etc.) But, it seems that nrfutil is not able to receive anything from NCP, i.e. the communication there is one-way only. Even if I added some debug statements to tncp.py/_wpan_receive, it doesn't seem to be ever called. (When nrfutil starts, it does succesfully set few spinel properties like panid, though). Even if I do call coap manually from client's CLI, nrfutil doesnt seem to receive it.

So, the resulting situation is that when I start nrfutil, it transfers a number of trigger packets, and prints out timeouts, and the client is receiving them, asks for init packets, but also retries few times with timeouts.

Any suggestions?

Related