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

why does iOS show/read 'DFUTarg' after successfully performing a DFU?

Hello, I am using Nordic's iOS library to perform DFU in our app to upgrade firmware on some BLE devices. Before the DFU, the app scans it as "Paradevice", but reads it as "DFUTarg" after the DFU is complete. Now if we perform the DFU again via NRFConnect, it comes back to "Paradevice" normally. There was also one instance where AFTER the DFU, we waited a minute or so, and it came back to "Paradevice".

Is there a way to clear the BLE name cache or do I need to Implement any change at firmware end to get rid of BLE name cache issue.

**Note: The same thing happens even when using NRF Connect, so we know it can't be the app

Thanks In advance.

Parents
  • I don't think there is much you can do about that. If you look at the documentation you can see they prioritize to use the gap device name. So for a known device it looks like iOS uses the gap device name even though the advertisement has another name. So you need to wait for the gap device name to be updated. I think they would normally do that after a service discovery procedure.

  • Hey, thank you for the timely response; however, we do see the same issue using NRF Connect. We sampled 10 beacons ; 4 of which displayed the issue post-DFU where the units failed to start application Do you have any tips in this case?

    Thanks in advance

  • I do have same issue with SDK14.  DFU the first time stays in DFU mode even after power cycle.  Had to DFU a second time for it to work.  Don't know why. Doing DFU twice consecutively works all the time but not with one time. 

  • You wouldn't happen to have dfu debug logs you could share?

Reply Children
No Data