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

DFU starts but disconnects after a while

DFU has worked fine until just recently.

Our custom hardware is using the nRF51822 and softdevice 8. We are using non-secure DFU. 

We are using the latest nrFConnect. We have tried both the iOS and Android app.

The log from the DFU is the following:

nRF Connect, 2019-02-21
Lock 66 (F4:44:F2:00:A4:66)
V	09:52:56.808	Connecting to F4:44:F2:00:A4:66...
D	09:52:56.808	gatt = device.connectGatt(autoConnect = false, TRANSPORT_LE) (hidden)
D	09:52:57.360	[Callback] Connection state changed with status: 0 and new state: CONNECTED (2)
I	09:52:57.360	Connected to F4:44:F2:00:A4:66
D	09:52:57.433	[Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
V	09:52:57.461	Discovering services...
D	09:52:57.461	gatt.discoverServices()
D	09:53:02.234	[Callback] Services discovered with status: 0
I	09:53:02.237	Services discovered
V	09:53:02.301	Generic Access (0x1800)
- Device Name [R W] (0x2A00)
- Appearance [R] (0x2A01)
- Peripheral Preferred Connection Parameters [R] (0x2A04)
Generic Attribute (0x1801)
- Service Changed [I] (0x2A05)
 Client Characteristic Configuration (0x2902)
Device Information (0x180A)
- Manufacturer Name String [R] (0x2A29)
- Model Number String [R] (0x2A24)
- Hardware Revision String [R] (0x2A27)
- Firmware Revision String [R] (0x2A26)
Unknown Service (b1de1523-85ef-37cc-00c8-a3cf3412a548)
- Unknown Characteristic [N R] (b1de1524-85ef-37cc-00c8-a3cf3412a548)
 Client Characteristic Configuration (0x2902)
- Unknown Characteristic [W] (b1de1525-85ef-37cc-00c8-a3cf3412a548)
- Unknown Characteristic [W] (b1de1526-85ef-37cc-00c8-a3cf3412a548)
- Unknown Characteristic [R] (b1de1527-85ef-37cc-00c8-a3cf3412a548)
Device Firmware Update Service (00001530-1212-efde-1523-785feabcd123)
- DFU Packet [WNR] (00001532-1212-efde-1523-785feabcd123)
- DFU Control Point [N W] (00001531-1212-efde-1523-785feabcd123)
 Client Characteristic Configuration (0x2902)
- DFU Version [R] (00001534-1212-efde-1523-785feabcd123)
D	09:53:02.322	gatt.setCharacteristicNotification(00002a05-0000-1000-8000-00805f9b34fb, true)
D	09:53:02.325	gatt.setCharacteristicNotification(b1de1524-85ef-37cc-00c8-a3cf3412a548, true)
V	09:53:28.559	[DFU] DFU service started
V	09:53:28.559	[DFU] Opening file...
I	09:53:28.559	[DFU] Firmware file opened successfully
V	09:53:28.559	[DFU] Connecting to DFU target...
D	09:53:28.559	[DFU] gatt = device.connectGatt(autoConnect = false)
I	09:53:28.705	[DFU] Connected to F4:44:F2:00:A4:66
V	09:53:28.709	[DFU] Discovering services...
D	09:53:28.709	[DFU] gatt.discoverServices()
I	09:53:32.052	[DFU] Services discovered
D	09:53:32.134	[DFU] wait(1000)
V	09:53:33.184	[DFU] Reading DFU version number...
D	09:53:33.184	[DFU] gatt.readCharacteristic(00001534-1212-efde-1523-785feabcd123)
I	09:53:33.224	[DFU] Read Response received from 00001534-1212-efde-1523-785feabcd123, value (0x): 01-00
A	09:53:33.224	[DFU] Version number read: 0.1
W	09:53:33.224	[DFU] Application with buttonless update found
V	09:53:33.224	[DFU] Jumping to the DFU Bootloader...
V	09:53:33.224	[DFU] Enabling notifications for 00001531-1212-efde-1523-785feabcd123
D	09:53:33.224	[DFU] gatt.setCharacteristicNotification(00001531-1212-efde-1523-785feabcd123, true)
D	09:53:33.224	[DFU] gatt.writeDescriptor(00002902-0000-1000-8000-00805f9b34fb, value=0x01-00)
I	09:53:33.324	[DFU] Data written to descr.00001531-1212-efde-1523-785feabcd123, value (0x): 01-00
V	09:53:33.324	[DFU] Notifications enabled for 00001531-1212-efde-1523-785feabcd123
A	09:53:33.324	[DFU] Notifications enabled
D	09:53:33.324	[DFU] wait(1000)
V	09:53:34.348	[DFU] Writing to characteristic 00001531-1212-efde-1523-785feabcd123
D	09:53:34.348	[DFU] gatt.writeCharacteristic(00001531-1212-efde-1523-785feabcd123)
D	09:54:04.338	[Callback] Connection state changed with status: 22 and new state: DISCONNECTED (0)
E	09:54:04.338	Error 22 (0x16): GATT CONN TERMINATE LOCAL HOST
I	09:54:04.339	Disconnected
A	09:54:04.373	[DFU] Jump to bootloader sent (Op Code = 1, Upload Mode = 4)
I	09:54:04.373	[DFU] Disconnected by the remote device
D	09:54:04.373	[DFU] gatt.refresh() (hidden)
D	09:54:04.373	[DFU] gatt.close()
V	09:54:04.405	[DFU] DFU service started
I	09:54:04.405	[DFU] Firmware file opened successfully
D	09:54:04.405	[DFU] wait(1000)
D	09:54:04.511	[Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED
D	09:54:04.529	[DFU] [Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED
D	09:54:05.395	[DFU] wait(1000)
V	09:54:06.401	[DFU] Connecting to DFU target...
D	09:54:06.469	[DFU] gatt = device.connectGatt(autoConnect = false)
I	09:54:06.857	[DFU] Connected to F4:44:F2:00:A4:66
V	09:54:06.857	[DFU] Discovering services...
D	09:54:06.857	[DFU] gatt.discoverServices()
D	09:54:06.857	[Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
D	09:54:06.889	[DFU] [Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
I	09:54:07.541	[DFU] Services discovered
D	09:54:07.574	[DFU] wait(1000)
V	09:54:08.564	[DFU] Reading DFU version number...
D	09:54:08.564	[DFU] gatt.readCharacteristic(00001534-1212-efde-1523-785feabcd123)
I	09:54:08.665	[DFU] Read Response received from 00001534-1212-efde-1523-785feabcd123, value (0x): 01-00
A	09:54:08.665	[DFU] Version number read: 0.1
W	09:54:08.665	[DFU] Application with buttonless update found
V	09:54:08.665	[DFU] Jumping to the DFU Bootloader...
V	09:54:08.666	[DFU] Enabling notifications for 00001531-1212-efde-1523-785feabcd123
D	09:54:08.666	[DFU] gatt.setCharacteristicNotification(00001531-1212-efde-1523-785feabcd123, true)
D	09:54:08.666	[DFU] gatt.writeDescriptor(00002902-0000-1000-8000-00805f9b34fb, value=0x01-00)
I	09:54:08.766	[DFU] Data written to descr.00001531-1212-efde-1523-785feabcd123, value (0x): 01-00
V	09:54:08.766	[DFU] Notifications enabled for 00001531-1212-efde-1523-785feabcd123
A	09:54:08.766	[DFU] Notifications enabled
D	09:54:08.766	[DFU] wait(1000)
V	09:54:09.842	[DFU] Writing to characteristic 00001531-1212-efde-1523-785feabcd123
D	09:54:09.842	[DFU] gatt.writeCharacteristic(00001531-1212-efde-1523-785feabcd123)
A	09:54:39.849	[DFU] Jump to bootloader sent (Op Code = 1, Upload Mode = 4)
I	09:54:39.850	[DFU] Disconnected by the remote device
D	09:54:39.850	[DFU] gatt.refresh() (hidden)
D	09:54:39.867	[DFU] gatt.close()
V	09:54:39.897	[DFU] DFU service started
I	09:54:39.897	[DFU] Firmware file opened successfully
D	09:54:39.897	[DFU] wait(1000)
D	09:54:40.032	[Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED
D	09:54:40.064	[DFU] [Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED
D	09:54:40.886	[DFU] wait(1000)
V	09:54:41.892	[DFU] Connecting to DFU target...
D	09:54:41.970	[DFU] gatt = device.connectGatt(autoConnect = false)
I	09:54:42.229	[DFU] Connected to F4:44:F2:00:A4:66
V	09:54:42.229	[DFU] Discovering services...
D	09:54:42.230	[DFU] gatt.discoverServices()
D	09:54:42.244	[Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
D	09:54:42.266	[DFU] [Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
I	09:54:42.866	[DFU] Services discovered
D	09:54:42.967	[DFU] wait(1000)
V	09:54:43.955	[DFU] Reading DFU version number...
D	09:54:43.956	[DFU] gatt.readCharacteristic(00001534-1212-efde-1523-785feabcd123)
I	09:54:44.057	[DFU] Read Response received from 00001534-1212-efde-1523-785feabcd123, value (0x): 01-00
A	09:54:44.057	[DFU] Version number read: 0.1
W	09:54:44.057	[DFU] Application with buttonless update found
V	09:54:44.057	[DFU] Jumping to the DFU Bootloader...
V	09:54:44.057	[DFU] Enabling notifications for 00001531-1212-efde-1523-785feabcd123
D	09:54:44.057	[DFU] gatt.setCharacteristicNotification(00001531-1212-efde-1523-785feabcd123, true)
D	09:54:44.057	[DFU] gatt.writeDescriptor(00002902-0000-1000-8000-00805f9b34fb, value=0x01-00)
I	09:54:44.157	[DFU] Data written to descr.00001531-1212-efde-1523-785feabcd123, value (0x): 01-00
V	09:54:44.157	[DFU] Notifications enabled for 00001531-1212-efde-1523-785feabcd123
A	09:54:44.157	[DFU] Notifications enabled
D	09:54:44.157	[DFU] wait(1000)
V	09:54:45.198	[DFU] Writing to characteristic 00001531-1212-efde-1523-785feabcd123
D	09:54:45.198	[DFU] gatt.writeCharacteristic(00001531-1212-efde-1523-785feabcd123)
A	09:55:15.208	[DFU] Jump to bootloader sent (Op Code = 1, Upload Mode = 4)
I	09:55:15.209	[DFU] Disconnected by the remote device
D	09:55:15.209	[DFU] gatt.refresh() (hidden)
D	09:55:15.209	[DFU] gatt.close()
V	09:55:15.256	[DFU] DFU service started
I	09:55:15.256	[DFU] Firmware file opened successfully
D	09:55:15.256	[DFU] wait(1000)
D	09:55:15.408	[Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED
D	09:55:15.422	[DFU] [Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED
D	09:55:16.258	[DFU] wait(1000)
V	09:55:17.268	[DFU] Connecting to DFU target...
D	09:55:17.269	[DFU] gatt = device.connectGatt(autoConnect = false)
I	09:55:17.457	[DFU] Connected to F4:44:F2:00:A4:66
V	09:55:17.457	[DFU] Discovering services...
D	09:55:17.457	[DFU] gatt.discoverServices()
D	09:55:17.466	[Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
D	09:55:17.483	[DFU] [Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
I	09:55:18.188	[DFU] Services discovered
D	09:55:18.389	[DFU] wait(1000)
V	09:55:19.395	[DFU] Reading DFU version number...
D	09:55:19.395	[DFU] gatt.readCharacteristic(00001534-1212-efde-1523-785feabcd123)
I	09:55:19.455	[DFU] Read Response received from 00001534-1212-efde-1523-785feabcd123, value (0x): 01-00
A	09:55:19.455	[DFU] Version number read: 0.1
W	09:55:19.455	[DFU] Application with buttonless update found
V	09:55:19.455	[DFU] Jumping to the DFU Bootloader...
V	09:55:19.455	[DFU] Enabling notifications for 00001531-1212-efde-1523-785feabcd123
D	09:55:19.455	[DFU] gatt.setCharacteristicNotification(00001531-1212-efde-1523-785feabcd123, true)
D	09:55:19.455	[DFU] gatt.writeDescriptor(00002902-0000-1000-8000-00805f9b34fb, value=0x01-00)
I	09:55:19.546	[DFU] Data written to descr.00001531-1212-efde-1523-785feabcd123, value (0x): 01-00
V	09:55:19.546	[DFU] Notifications enabled for 00001531-1212-efde-1523-785feabcd123
A	09:55:19.547	[DFU] Notifications enabled
D	09:55:19.547	[DFU] wait(1000)
V	09:55:20.587	[DFU] Writing to characteristic 00001531-1212-efde-1523-785feabcd123
D	09:55:20.588	[DFU] gatt.writeCharacteristic(00001531-1212-efde-1523-785feabcd123)
A	09:55:50.578	[DFU] Jump to bootloader sent (Op Code = 1, Upload Mode = 4)
I	09:55:50.579	[DFU] Disconnected by the remote device
D	09:55:50.579	[DFU] gatt.refresh() (hidden)
D	09:55:50.579	[DFU] gatt.close()
V	09:55:50.628	[DFU] DFU service started
I	09:55:50.628	[DFU] Firmware file opened successfully
D	09:55:50.628	[DFU] wait(1000)
D	09:55:50.777	[Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED
D	09:55:50.805	[DFU] [Broadcast] Action received: android.bluetooth.device.action.ACL_DISCONNECTED
D	09:55:51.632	[DFU] wait(1000)
V	09:55:52.625	[DFU] Connecting to DFU target...
D	09:55:52.704	[DFU] gatt = device.connectGatt(autoConnect = false)
I	09:55:53.117	[DFU] Connected to F4:44:F2:00:A4:66
V	09:55:53.117	[DFU] Discovering services...
D	09:55:53.117	[DFU] gatt.discoverServices()
D	09:55:53.117	[Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
D	09:55:53.144	[DFU] [Broadcast] Action received: android.bluetooth.device.action.ACL_CONNECTED
I	09:55:55.826	[DFU] Services discovered
D	09:55:55.929	[DFU] wait(1000)
V	09:55:56.933	[DFU] Reading DFU version number...
D	09:55:56.934	[DFU] gatt.readCharacteristic(00001534-1212-efde-1523-785feabcd123)
I	09:55:56.985	[DFU] Read Response received from 00001534-1212-efde-1523-785feabcd123, value (0x): 01-00
A	09:55:56.985	[DFU] Version number read: 0.1
W	09:55:56.985	[DFU] Application with buttonless update found
V	09:55:56.985	[DFU] Jumping to the DFU Bootloader...
V	09:55:56.985	[DFU] Enabling notifications for 00001531-1212-efde-1523-785feabcd123
D	09:55:56.985	[DFU] gatt.setCharacteristicNotification(00001531-1212-efde-1523-785feabcd123, true)
D	09:55:57.001	[DFU] gatt.writeDescriptor(00002902-0000-1000-8000-00805f9b34fb, value=0x01-00)
I	09:55:57.083	[DFU] Data written to descr.00001531-1212-efde-1523-785feabcd123, value (0x): 01-00
V	09:55:57.083	[DFU] Notifications enabled for 00001531-1212-efde-1523-785feabcd123
A	09:55:57.083	[DFU] Notifications enabled
D	09:55:57.083	[DFU] wait(1000)
V	09:55:58.144	[DFU] Writing to characteristic 00001531-1212-efde-1523-785feabcd123
D	09:55:58.145	[DFU] gatt.writeCharacteristic(00001531-1212-efde-1523-785feabcd123)

Could it be the nrfConnect app? We have checked for app version, so the reason for the device to disconnect is not to do with the bootloader settings being incorrect.

Could you please help us.

Thx.

Parents Reply Children
No Data
Related