Hi
I am using SDK V. 15.3.0 and Softdevice S132 6.1.1 on a nRF52832. I am developing two devices, one of with is battery powered and one that is connected to a serial interface. Both devices connect via BLE.
The battery powered device allows application update via DFU over BLE using the secure boot loader and the nRF Android app.
Now I am working on the DFU over serial for the second device. Using the same key as with the BLE update, I get this message when updating with nrfutil:
Fullscreen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
nrfutil -v -o nrfutil.log dfu serial --package update-0.0.1.zip --baud-rate=115200 -fc false -p COM39 --connect-delay 1
[##################################--] 95% 00:00:07
Traceback (most recent call last):
...
File "c:\bernhard\pyhton2.7\lib\site-packages\nordicsemi\__main__.py", line 956, in do_serial
dfu.dfu_send_images()
File "c:\bernhard\pyhton2.7\lib\site-packages\nordicsemi\dfu\dfu.py", line 129, in dfu_send_images
self._dfu_send_image(self.manifest.application)
File "c:\bernhard\pyhton2.7\lib\site-packages\nordicsemi\dfu\dfu.py", line 102, in _dfu_send_image
self.dfu_transport.send_firmware(data)
File "c:\bernhard\pyhton2.7\lib\site-packages\nordicsemi\dfu\dfu_transport_serial.py", line 302, in send_firmware
self.__execute()
File "c:\bernhard\pyhton2.7\lib\site-packages\nordicsemi\dfu\dfu_transport_serial.py", line 421, in __execute
self.__get_response(DfuTransportSerial.OP_CODE['Execute'])
File "c:\bernhard\pyhton2.7\lib\site-packages\nordicsemi\dfu\dfu_transport_serial.py", line 502, in __get_response
raise NordicSemiException('Extended Error 0x{:02X}: {}'.format(resp[3], data))
pc_ble_driver_py.exceptions.NordicSemiException: Extended Error 0x0C: The hash of the received firmware image does not match the hash in the init packet.
The command to build the update package:
Fullscreen
1
nrfutil pkg generate --hw-version 52 --application-version-string "0.0.1" --app-boot-validation VALIDATE_ECDSA_P256_SHA256 --sd-req 0xb7 --key-file private.key --application app.hex update-0.0.1.zip
Any hint how to fix this is highly welcome. I am puzzled since this works well over BLE without much difference.
Thanks
Bernhard