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

Switching services causes android phones can't connect the BLE device successfully

Hi Noedic,

I triggered the DFU function through APP, the device restarted and the base service UUID changed from 0x0001(nus function) to 0x1530(dfu function), but it is hard for the APP to connect the device whose base service UUID was changed to 0x1530. Why?

Try

  • Which app are you using? When you say it is hard for the app to connect, exactly what do you mean? Does it not see the device? Does it try to connect, but fail? Please also post a bit more information about you system. What device are you using, which Softdevice, which SDK etc... Thanks

  • The app is my own which was transplanted with the dfu function of toolbox. I used APP to trigger device to switch from application to DFU function, the performance is that device restarted and got into dfu. APP could find the device whose name was changed to "DFU" and tried to connect to the device but it was hard for the APP to connect, finally, only repeating several times connections(about 4 times) did the app connect the device successfully. The Softdevice version is V7.0.0, SDK is V6.1.0, SoC is 51822AA.

  • Is the APP on android or iOS? Can you try to add some debug printing to the app to see what error occur when you try to connect?

  • Android. Debug printing shows device is trying to connect, which seems that app has the UUID cache of application, so cannot find the DFU UUID.

  • Try this solution for clearing cached devices on android.