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

How to multiple times update program in secure OTA

Hi,

I had done secure OTA in my custom board using SDK12.2.0 with S130 v2.0.1 softdevice. But when i am trying to update the same for multiple times then its not happened.

Which configuration needed for multiple times update? Any example is availble in SDK12.2.0?

  • I accidentally erased the log from the first DFU, could you post it in a comment below.

  • nRF Connect, 2017-07-31 DfuTarg (DB:A7:5E:8D:30:75) V 13:27:56.262 Connecting to DB:A7:5E:8D:30:75... D 13:27:56.263 gatt = device.connectGatt(autoConnect = false) D 13:27:56.305 [Callback] Connection state changed with status: 0 and new state: CONNECTED (2) I 13:27:56.305 Connected to DB:A7:5E:8D:30:75 D 13:27:56.369 [Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED V 13:27:56.370 Discovering services... D 13:27:56.370 gatt.discoverServices() D 13:27:57.474 [Callback] Services discovered with status: 0 I 13:27:57.475 Services discovered V 13:27:57.495 Generic Access (0x1800) - Device Name [R W] (0x2A00) - Appearance [R] (0x2A01) - Peripheral Preferred Connection Parameters [R] (0x2A04) Generic Attribute (0x1801) Secure DFU Service (0xFE59) - DFU Packet [WNR] (8ec90002-f315-4f60-9fb8-838830daea50) - DFU Control Point [N W] (8ec90001-f315-4f60-9fb8-838830daea50) Client Characteristic Configuration (0x2902) V 13:28:10.583 [DFU] DFU service started V 13:28:10.584 [DFU] Opening file... I 13:28:10.794 [DFU] Image file opened (28736 bytes in total) D 13:28:10.794 [DFU] wait(1000) D 13:28:11.795 [DFU] wait(1000) V 13:28:12.796 [DFU] Connecting to DFU target... D 13:28:12.798 [DFU] gatt = device.connectGatt(autoConnect = false) I 13:28:12.813 [DFU] Connected to DB:A7:5E:8D:30:75 V 13:28:12.814 [DFU] Discovering services... D 13:28:12.814 [DFU] gatt.discoverServices() I 13:28:12.830 [DFU] Services discovered D 13:28:12.873 [DFU] wait(1000) V 13:28:13.866 [DFU] Enabling notifications for 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:13.866 [DFU] gatt.setCharacteristicNotification(8ec90001-f315-4f60-9fb8-838830daea50, true) D 13:28:13.868 [DFU] gatt.writeDescriptor(00002902-0000-1000-8000-00805f9b34fb, value=0x01-00) I 13:28:13.911 [DFU] Data written to descr.8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 01-00 V 13:28:13.913 [DFU] Notifications enabled for 8ec90001-f315-4f60-9fb8-838830daea50 A 13:28:13.913 [DFU] Notifications enabled D 13:28:13.913 [DFU] wait(1000) V 13:28:14.914 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:14.915 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:14.963 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 06-01 I 13:28:14.965 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-06-01-00-01-00-00-00-00-00-00-00-00-00-00 A 13:28:14.967 [DFU] Command object info received (Max size = 256, Offset = 0, CRC = 00000000) V 13:28:14.968 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:14.968 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:15.021 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 02-00-00 I 13:28:15.022 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-02-01 A 13:28:15.022 [DFU] Packet Receipt Notif disabled (Op Code = 2, Value = 0) V 13:28:15.022 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:15.022 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:15.081 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 01-01-87-00-00-00 I 13:28:15.083 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-01-01 A 13:28:15.083 [DFU] Command object created V 13:28:15.083 [DFU] Writing to characteristic 8ec90002-f315-4f60-9fb8-838830daea50 D 13:28:15.083 [DFU] gatt.writeCharacteristic(8ec90002-f315-4f60-9fb8-838830daea50) I 13:28:15.084 [DFU] Data written to 8ec90002-f315-4f60-9fb8-838830daea50, value (0x): 12-84-01-0A-3E-08-01-12-3A-08-01-10-33-1A-02-87-01-20-00-28 V 13:28:15.084 [DFU] Writing to characteristic 8ec90002-f315-4f60-9fb8-838830daea50 D 13:28:15.084 [DFU] gatt.writeCharacteristic(8ec90002-f315-4f60-9fb8-838830daea50) I 13:28:15.087 [DFU] Data written to 8ec90002-f315-4f60-9fb8-838830daea50, value (0x): 00-30-00-38-C0-E0-01-42-24-08-03-12-20-75-BF-3E-CE-E2-6C-B3 V 13:28:15.087 [DFU] Writing to characteristic 8ec90002-f315-4f60-9fb8-838830daea50 D 13:28:15.087 [DFU] gatt.writeCharacteristic(8ec90002-f315-4f60-9fb8-838830daea50) I 13:28:15.091 [DFU] Data written to 8ec90002-f315-4f60-9fb8-838830daea50, value (0x): 82-FE-EF-F2-25-A1-63-37-CB-64-8A-F3-3E-C8-2B-BE-92-E4-CB-37 V 13:28:15.091 [DFU] Writing to characteristic 8ec90002-f315-4f60-9fb8-838830daea50 D 13:28:15.091 [DFU] gatt.writeCharacteristic(8ec90002-f315-4f60-9fb8-838830daea50) I 13:28:15.091 [DFU] Data written to 8ec90002-f315-4f60-9fb8-838830daea50, value (0x): 9E-92-3C-F7-B9-48-00-10-00-1A-40-41-C6-91-6F-FF-0E-27-A5-3B V 13:28:15.091 [DFU] Writing to characteristic 8ec90002-f315-4f60-9fb8-838830daea50 D 13:28:15.091 [DFU] gatt.writeCharacteristic(8ec90002-f315-4f60-9fb8-838830daea50) I 13:28:15.098 [DFU] Data written to 8ec90002-f315-4f60-9fb8-838830daea50, value (0x): DD-B8-4F-35-43-1E-CD-43-73-CD-5E-A3-93-90-70-D5-5E-26-B3-63 V 13:28:15.098 [DFU] Writing to characteristic 8ec90002-f315-4f60-9fb8-838830daea50 D 13:28:15.098 [DFU] gatt.writeCharacteristic(8ec90002-f315-4f60-9fb8-838830daea50) I 13:28:15.104 [DFU] Data written to 8ec90002-f315-4f60-9fb8-838830daea50, value (0x): 7A-5A-7E-24-FD-07-AD-AF-74-AA-FA-38-3A-59-1D-C3-1F-E7-0F-8B V 13:28:15.104 [DFU] Writing to characteristic 8ec90002-f315-4f60-9fb8-838830daea50 D 13:28:15.105 [DFU] gatt.writeCharacteristic(8ec90002-f315-4f60-9fb8-838830daea50) I 13:28:15.107 [DFU] Data written to 8ec90002-f315-4f60-9fb8-838830daea50, value (0x): 1A-05-3E-30-7F-D3-53-72-BF-F6-FB-CC-1A-F7-10 A 13:28:15.107 [DFU] Command object sent (CRC = EFBEE3BF) V 13:28:15.107 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:15.107 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:15.231 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 03 I 13:28:15.266 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-03-01-87-00-00-00-BF-E3-BE-EF A 13:28:15.266 [DFU] Checksum received (Offset = 135, CRC = EFBEE3BF) V 13:28:15.266 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:15.266 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:15.321 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 04 I 13:28:16.522 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-04-01 A 13:28:16.522 [DFU] Command object executed V 13:28:16.523 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:16.523 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:16.585 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 02-0A-00 I 13:28:16.585 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-02-01 A 13:28:16.585 [DFU] Packet Receipt Notif Req (Op Code = 2) sent (Value = 10) V 13:28:16.585 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:16.585 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:16.641 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 06-02 I 13:28:16.644 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-06-01-00-10-00-00-00-00-00-00-00-00-00-00 A 13:28:16.644 [DFU] Data object info received (Max size = 4096, Offset = 0, CRC = 00000000) V 13:28:16.683 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:16.683 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:16.704 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 01-02-00-10-00-00 I 13:28:16.704 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-01-01 A 13:28:16.704 [DFU] Data object (1/8) created A 13:28:16.704 [DFU] Uploading firmware... V 13:28:16.704 [DFU] Sending firmware to characteristic 8ec90002-f315-4f60-9fb8-838830daea50... V 13:28:20.376 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:20.376 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:20.429 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 03 I 13:28:20.429 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-03-01-00-10-00-00-E7-E1-4F-42 A 13:28:20.429 [DFU] Checksum received (Offset = 4096, CRC = 424FE1E7) V 13:28:20.429 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:20.429 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:20.482 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 04 I 13:28:20.511 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-04-01 A 13:28:20.512 [DFU] Data object executed V 13:28:20.512 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:20.513 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:20.579 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 01-02-00-10-00-00 I 13:28:20.579 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-01-01 A 13:28:20.579 [DFU] Data object (2/8) created A 13:28:20.579 [DFU] Uploading firmware... V 13:28:20.579 [DFU] Sending firmware to characteristic 8ec90002-f315-4f60-9fb8-838830daea50... V 13:28:24.185 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:24.186 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:24.293 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 03 I 13:28:24.299 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-03-01-00-20-00-00-0E-4E-BD-83 A 13:28:24.299 [DFU] Checksum received (Offset = 8192, CRC = 83BD4E0E) V 13:28:24.300 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:24.300 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:24.351 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 04 I 13:28:24.352 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-04-01 A 13:28:24.354 [DFU] Data object executed V 13:28:24.354 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:24.354 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:24.434 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 01-02-00-10-00-00 I 13:28:24.434 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-01-01 A 13:28:24.434 [DFU] Data object (3/8) created A 13:28:24.434 [DFU] Uploading firmware... V 13:28:24.434 [DFU] Sending firmware to characteristic 8ec90002-f315-4f60-9fb8-838830daea50... V 13:28:28.026 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:28.027 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:28.131 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 03 I 13:28:28.137 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-03-01-00-30-00-00-83-69-70-1B A 13:28:28.137 [DFU] Checksum received (Offset = 12288, CRC = 1B706983) V 13:28:28.137 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:28.137 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:28.191 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 04 I 13:28:28.222 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-04-01 A 13:28:28.223 [DFU] Data object executed V 13:28:28.223 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:28.224 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:28.281 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 01-02-00-10-00-00 I 13:28:28.288 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-01-01 A 13:28:28.288 [DFU] Data object (4/8) created A 13:28:28.288 [DFU] Uploading firmware... V 13:28:28.288 [DFU] Sending firmware to characteristic 8ec90002-f315-4f60-9fb8-838830daea50... V 13:28:31.987 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:31.988 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:32.098 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 03 I 13:28:32.098 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-03-01-00-40-00-00-23-AD-A2-97 A 13:28:32.099 [DFU] Checksum received (Offset = 16384, CRC = 97A2AD23) V 13:28:32.099 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:32.099 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:32.151 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 04 I 13:28:32.152 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-04-01 A 13:28:32.153 [DFU] Data object executed V 13:28:32.153 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:32.153 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:32.213 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 01-02-00-10-00-00 I 13:28:32.252 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-01-01 A 13:28:32.253 [DFU] Data object (5/8) created A 13:28:32.253 [DFU] Uploading firmware... V 13:28:32.253 [DFU] Sending firmware to characteristic 8ec90002-f315-4f60-9fb8-838830daea50... V 13:28:35.921 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:35.922 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:35.962 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 03 I 13:28:35.963 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-03-01-00-50-00-00-A3-88-39-7A A 13:28:35.977 [DFU] Checksum received (Offset = 20480, CRC = 7A3988A3) V 13:28:35.977 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:35.977 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:36.026 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 04 I 13:28:36.052 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-04-01 A 13:28:36.053 [DFU] Data object executed V 13:28:36.053 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:36.053 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:36.111 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 01-02-00-10-00-00 I 13:28:36.113 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-01-01 A 13:28:36.114 [DFU] Data object (6/8) created A 13:28:36.114 [DFU] Uploading firmware... V 13:28:36.114 [DFU] Sending firmware to characteristic 8ec90002-f315-4f60-9fb8-838830daea50... V 13:28:39.729 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:39.730 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:39.831 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 03 I 13:28:39.862 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-03-01-00-60-00-00-1E-1D-AC-EA A 13:28:39.863 [DFU] Checksum received (Offset = 24576, CRC = EAAC1D1E) V 13:28:39.863 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:39.863 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:39.929 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 04 I 13:28:39.929 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-04-01 A 13:28:39.929 [DFU] Data object executed V 13:28:39.929 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:39.929 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:39.990 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 01-02-00-10-00-00 I 13:28:40.014 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-01-01 A 13:28:40.014 [DFU] Data object (7/8) created A 13:28:40.014 [DFU] Uploading firmware... V 13:28:40.015 [DFU] Sending firmware to characteristic 8ec90002-f315-4f60-9fb8-838830daea50... V 13:28:43.625 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:43.626 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:43.736 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 03 I 13:28:43.736 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-03-01-00-70-00-00-A5-21-D5-85 A 13:28:43.736 [DFU] Checksum received (Offset = 28672, CRC = 85D521A5) V 13:28:43.736 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:43.736 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:43.798 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 04 I 13:28:43.825 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-04-01 A 13:28:43.826 [DFU] Data object executed V 13:28:43.826 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:43.826 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:43.888 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 01-02-40-00-00-00 I 13:28:43.971 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-01-01 A 13:28:43.971 [DFU] Data object (8/8) created A 13:28:43.971 [DFU] Uploading firmware... V 13:28:43.972 [DFU] Sending firmware to characteristic 8ec90002-f315-4f60-9fb8-838830daea50... V 13:28:43.973 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:43.973 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:44.068 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 03 I 13:28:44.068 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-03-01-40-70-00-00-A7-83-7C-62 A 13:28:44.068 [DFU] Checksum received (Offset = 28736, CRC = 627C83A7) V 13:28:44.068 [DFU] Writing to characteristic 8ec90001-f315-4f60-9fb8-838830daea50 D 13:28:44.068 [DFU] gatt.writeCharacteristic(8ec90001-f315-4f60-9fb8-838830daea50) I 13:28:44.094 [DFU] Data written to 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 04 I 13:28:44.658 [DFU] Notification received from 8ec90001-f315-4f60-9fb8-838830daea50, value (0x): 60-04-01 A 13:28:44.658 [DFU] Data object executed A 13:28:44.658 [DFU] Upload completed in 27951 ms D 13:28:48.770 [Callback] Connection state changed with status: 0 and new state: DISCONNECTED (0) I 13:28:48.770 Disconnected D 13:28:48.789 gatt.refresh() (hidden) D 13:28:48.875 [Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED I 13:28:48.881 [DFU] Disconnected by the remote device D 13:28:48.881 [DFU] gatt.refresh() (hidden) D 13:28:48.881 [DFU] gatt.close() D 13:28:48.881 [DFU] wait(1400) D 13:28:48.881 [DFU] [Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED D 13:28:49.127 gatt.close() D 13:28:49.129 wait(200) V 13:28:49.333 Connecting to DB:A7:5E:8D:30:75... D 13:28:49.333 gatt = device.connectGatt(autoConnect = false) V 13:28:51.801 Cancelling connection... D 13:28:51.801 gatt.disconnect() I 13:28:51.802 Disconnected D 13:28:51.802 gatt.close() D 13:28:51.803 wait(200)

  • Examining the log I can see that you never enter the bootloader on the second attempt, you're only writting to the Experimental Buttonless Characteristic. Have you added the missing write property in the buttonless example which is described in this answer.

  • Hi,

    Thank you.

    After adding the line "char_md.char_props.write = 1;" in ble_dfu.c file. I have done successfully secure OTA multiple times.

    But when i perform the DFU second time, one more tab opened by itself "DFUtarg" in my mobile application. My application transferred successfully.

    so, Is there any problem in transfer process?

  • No, this is a known issue that does not affect the transfer. It has been fixed in in the upcoming SDK release where we are pulling the buttonless example out of experimental.

Related