Hi,
I am working on nRF5 Thread 4.1.0 and I am trying to do implement Thread secure DFU.
I am following infocenter.nordicsemi.com/index.jsp
i have run the command
nrfutil dfu thread -f -pkg app_dfu_package.zip -p COM16 --channel 11 --panid 43981 -r 4 -rs 5000 -a FF03::1
I get the following error:
C:\Development\Thread_DFU>nrfutil dfu thread -f -pkg app_dfu_package.zip -p COM16 --channel 11 --panid 43981 -r 4 -rs 5000 -a FF03::1
Using connectivity board at serial port: COM16
Flashing connectivity firmware...
Connectivity firmware flashed.
Waiting for NCP to promote to a router...
Waiting 20s before starting multicast DFU procedure
Thread DFU server is running... Press <Ctrl + D> to stop.
ff03::1: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 3/3 [00:00<00:00, 3.84it/s]
ff03::1: 37%|████████████████████████████████████████████████████████████████████▏ | 2349/6413 [10:37<17:52, 3.79it/s]Exception in thread Upload thread:
Traceback (most recent call last):
File "C:\Users\spx0847\AppData\Local\Programs\Python\Python39\lib\threading.py", line 973, in _bootstrap_inner
self.run()
File "C:\Users\spx0847\AppData\Local\Programs\Python\Python39\lib\threading.py", line 910, in run
self._target(*self._args, **self._kwargs)
File "C:\Users\spx0847\AppData\Local\Programs\Python\Python39\lib\site-packages\nordicsemi\thread\dfu_server.py", line 290, in _upload
self._send_block(remote,
File "C:\Users\spx0847\AppData\Local\Programs\Python\Python39\lib\site-packages\nordicsemi\thread\dfu_server.py", line 269, in _send_block
self.protocol.request(request)
File "C:\Users\spx0847\AppData\Local\Programs\Python\Python39\lib\site-packages\piccata\core.py", line 559, in request
return self._transaction_layer.send_request(request, response_callback, response_callback_args, response_callback_kw)
File "C:\Users\spx0847\AppData\Local\Programs\Python\Python39\lib\site-packages\piccata\core.py", line 442, in send_request
self._message_layer.send_message(request)
File "C:\Users\spx0847\AppData\Local\Programs\Python\Python39\lib\site-packages\piccata\core.py", line 216, in send_message
self._transport.send(raw_message, message.remote)
File "C:\Users\spx0847\AppData\Local\Programs\Python\Python39\lib\site-packages\nordicsemi\thread\tncp.py", line 184, in send
src_addr = ipaddress.ip_address(self._ml_prefix + b'\x00\x00\x00\xff\xfe\x00' + struct.pack('>H', rloc16))
struct.error: required argument is not an integer
I have tried the solutions from this ticket as I had similar issues at first,
https://devzone.nordicsemi.com/f/nordic-q-a/82416/thread-secure-dfu
But then I get this error.
Python: 3.9.1, nrfutil: 6.1.3, nrfjprog: 10.15.4 external JlinkARM.dll: 7.58b