I am using a custom board with NRF51822-QFAC-R7 and Master Control panel on Android. The DFU is working with test images from SDK130. BL : examples/dfu/bootloader/hex/dfu_dual_bank_ble_s130_pca10028.hex SD: components/softdevice/s130/hex/s130_nrf51_2.0.0_softdevice.hex App: examples/ble_peripheral/ble_app_hrs/hex/ble_app_hrs_s130_with_dfu_pca10028.hex Other info: SDK11 nrfutil version: 0.5.1 Host environment: Ubuntu 14.04 Flashed the above images using nrfjprog on ubuntu.
Case(A):
A.1) I build an application image with noridc_sdk_11/examples/ble_peripheral/ble_app_hrs/pca10028/s130_with_dfu/armgcc with _MINOR ver as 0x05 and Adv name (no other changes) here after call as app_ver_5.hex
A.2) Created .zip file using below command: $ sudo nrfutil dfu genpkg --application _build/nrf51422_xxac_s130.bin --application-version 0xFFFFFFFF nrf51422_xxac_s130_hrs_ver5.zip
A.3) Copied to android mobile and updated using DFU option form the Andriod mobile app nRF Master Control Panel.
Result: New application came-up well and able to see change in advertisement name version.
Now, I repeated the above step A.1 (with _MINOR as 6 and some other adv name) A.2 and A.3, but this time observed some strange behavior
(1) It failed to boot the latest application image.
Logs copied here: D 23:23:58.986 [DFU] wait(1000) V 23:23:59.839 [DFU] Writing to characteristic 00001531-1212-efde-1523-785feabcd123 D 23:23:59.899 [DFU] gatt.writeCharacteristic(00001531-1212-efde-1523-785feabcd123) I 23:23:59.932 [DFU] Data written to 00001531-1212-efde-1523-785feabcd123, value (0x): 01-04 A 23:23:59.964 [DFU] DFU Start sent (Op Code = 1, Upload Mode = 4) V 23:24:00.041 [DFU] Writing to characteristic 00001532-1212-efde-1523-785feabcd123 D 23:24:00.076 [DFU] gatt.writeCharacteristic(00001532-1212-efde-1523-785feabcd123) I 23:24:00.106 [DFU] Data written to 00001532-1212-efde-1523-785feabcd123, value (0x): 00-00-00-00-00-00-00-00-E8-80-00-00 A 23:24:00.171 [DFU] Firmware image size sent (0b, 0b, 33000b) E 23:24:00.249 [DFU] Error (0x13): GATT CONN TERMINATE PEER USER D 23:24:00.362 [DFU] gatt.refresh() (hidden) D 23:24:00.396 [DFU] gatt.close()
(2) Only Bootloader boots up with DfuTarg
Earliest response would be a great help.
Br, ggotta