Hi everyone ,
I want to perform DFU of SD+Bl+APP via UART.
I use nrfutil version 6.1.3.
The Softdevice is s140_nrf52_7.2.0_softdevice.hex and the application is based on SDK 17.0.2.
I prepared a ZIP file using :
nrfutil pkg generate --hw-version 52 --application-version 3 --application ../images/brg/version_3.0.0/3.0.0.hex --sd-req 0x00,0x0100 --softdevice ../images/brg/version_3.0.0/s140_nrf52_7.2.0_softdevice.hex --sd-id 0x0100 --bootloader ../images/brg/version_3.0.0/brg-secure_bootloader_uart_3.0.0.hex --bootloader-version 3 --key-file ../images/bootloader/private.key ../images/brg/version_3.0.0/3.0.0.zip
The zip contains:
- 3.0.0.bin
- 3.0.0.dat
- sd_bl.bin
- sd_bl.dat
- manifest.json
This is the manifest file :
{
"manifest": {
"application": {
"bin_file": "3.0.0.bin",
"dat_file": "3.0.0.dat"
},
"softdevice_bootloader": {
"bin_file": "sd_bl.bin",
"dat_file": "sd_bl.dat",
"info_read_only_metadata": {
"bl_size": 24340,
"sd_size": 153140
}
}
}
}
When I call nrfutil dfu serial --package 3.0.0.zip -p COM7 -fc 0 -b 115200 -t 10 it starts upgrading the but stops after 53% (probably after upgrading the sd_bl).
version_3.0.0>nrfutil dfu serial --package 3.0.0.zip -p COM7 -fc 0 -b 115200 -t 10
[###################-----------------] 53% 00:00:31
Traceback (most recent call last):
File "c:\python37\lib\runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "c:\python37\lib\runpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:\Python37\Scripts\nrfutil.exe\__main__.py", line 7, in <module>
File "c:\python37\lib\site-packages\click\core.py", line 764, in __call__
return self.main(*args, **kwargs)
File "c:\python37\lib\site-packages\click\core.py", line 717, in main
rv = self.invoke(ctx)
File "c:\python37\lib\site-packages\click\core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "c:\python37\lib\site-packages\click\core.py", line 1137, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "c:\python37\lib\site-packages\click\core.py", line 956, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "c:\python37\lib\site-packages\click\core.py", line 555, in invoke
return callback(*args, **kwargs)
File "c:\python37\lib\site-packages\nordicsemi\__main__.py", line 1064, in serial
timeout)
File "c:\python37\lib\site-packages\nordicsemi\__main__.py", line 978, in do_serial
dfu.dfu_send_images()
File "c:\python37\lib\site-packages\nordicsemi\dfu\dfu.py", line 127, in dfu_send_images
self._dfu_send_image(self.manifest.application)
File "c:\python37\lib\site-packages\nordicsemi\dfu\dfu.py", line 88, in _dfu_send_image
self.dfu_transport.open()
File "c:\python37\lib\site-packages\nordicsemi\dfu\dfu_transport_serial.py", line 214, in open
raise NordicSemiException("No ping response after opening COM port")
pc_ble_driver_py.exceptions.NordicSemiException: No ping response after opening COM port
Can anyone suggest what is the problem and how to fix it ?
Thanks in advance ,
Rafalino.