I am developing a project for nRF52833 using nRF5 SDK. In this project I am trying to update firmware via BLE DFU. I got some of the project codes from the ble_app_buttonless_dfu example. I used the S140 in the project and I aim the device to work both as BLE Central and Peripheral.
For BLE DFU, I am using the BLE application in nRF Connect for Desktop, with nRF52 DK is connected to the PC. I am trying to update the nRF52833 through this device. First I connect to the device, then I become a pair with bonding. After this step, I upload the .zip file I prepared from the "Start Secure DFU" button, but I get an error in the nRF Connect application.
Error Text: DFU failed with error: Unable to find characteristic 8EC90001F3154F609FB8838830DAEA50 for service FE59 on device E8:C9:A3:16:0E:81.0.
What can i do to fix this problem?
Below are RTT logs and nRF Connect logs.
10:02:48.630 Scan started 10:03:01.470 Connecting to device 10:03:01.644 Connected to device E8:C9:A3:16:0E:81: interval: 7.5ms, timeout: 4000ms, latency: 0 10:03:01.694 ATT MTU updated for device E8:C9:A3:16:0E:81, new value is 247 10:03:01.701 Data length updated for device E8:C9:A3:16:0E:81, new value is 251 10:03:01.937 Attribute value read, handle: 0x03, value (0x): 57-69-70-65-6C-6F-74-5F-44-46-55-5F-44-45-56 10:03:06.691 Connection parameters updated for device E8:C9:A3:16:0E:81: interval 100ms, timeout 4000ms, latency: 0 10:03:21.593 Security updated, mode:1, level:2 10:03:21.899 Storing bond info for device E8:C9:A3:16:0E:81 10:03:29.270 Disconnected from device E8:C9:A3:16:0E:81 10:03:29.271 Performing DFU with file: D:\SDK\nRF5\DeviceDownload\nRF5_SDK_17.1.0_ddde560\examples\ble_central\ble_project\pca10100\s140\armgcc\Other_Files\FW.zip 10:03:32.293 Attribute value changed, handle: 0x11, value (0x): 02-00 10:03:32.492 Attribute value changed, handle: 0x10, value (0x): 01 10:03:32.494 Attribute value changed, handle: 0x10, value (0x): 20-01-01 10:03:38.580 DFU failed with error: Unable to find characteristic 8EC90001F3154F609FB8838830DAEA50 for service FE59 on device E8:C9:A3:16:0E:81.0.
00> <info> app_timer: RTC: initialized. 00> 00> <info> app: Initializing nrf_fstorage_sd implementation... 00> 00> <info> app: Setting vector table to bootloader: 0x00072000 00> 00> <info> app: Setting vector table to main app: 0x00027000 00> 00> <info> app: ATT MTU exchange completed. 00> 00> <info> app: Ble NUS max data length set to 0xF4(244) 00> 00> <info> peer_manager_handler: Connection secured: role: Peripheral, conn_handle: 1, procedure: Bonding 00> 00> <info> peer_manager_handler: Peer data updated in flash: peer_id: 0, data_id: Bonding data, action: Update 00> 00> <info> peer_manager_handler: Peer data updated in flash: peer_id: 0, data_id: Peer rank, action: Update 00> 00> <info> peer_manager_handler: Peer data updated in flash: peer_id: 0, data_id: Local database, action: Update 00> 00> <info> peer_manager_handler: Peer data updated in flash: peer_id: 0, data_id: Central address resolution, action: Update 00> 00> <info> peer_manager_handler: Peer data updated in flash: peer_id: 0, data_id: Local database, action: Update 00> 00> <info> app: Writing peer data to the bootloader... 00> 00> <info> app: Device is preparing to enter bootloader mode. 00> 00> <info> app: Disconne<info> app_timer: RTC: initialized. 00> 00> <info> app: Initializing nrf_fstorage_sd implementation... 00> 00> <info> app: Setting vector table to bootloader: 0x00072000 00> 00> <info> app: Setting vector table to main app: 0x00027000 00> 00> <info> peer_manager_handler: Peer data updated in flash: peer_id: 0, data_id: Peer rank, action: Update, no change 00> 00> <info> peer_manager_handler: Peer data updated in flash: peer_id: 0, data_id: Service changed pending flag, action: Update 00> 00> <info> peer_manager_handler: Connection secured: role: Peripheral, conn_handle: 1, procedure: Encryption 00> 00> <info> peer_manager_handler: Peer data updated in flash: peer_id: 0, data_id: Peer rank, action: Update, no change 00>