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

nRF UART v2.0 will not disconnect on Android 7.0

I am using a PCA10040 board and the UART example from another question.

Now, having tried some different phones I suspect that my Sony E6553 with Android 7.0 has a bug that automatically connects to my board. The debug output looks like this after I have pressed the disconnect button in the nRF UART v2.0 app:

APP:INFO:Connected                                           
APP:INFO:Disconnected
APP:INFO:Connected                                           
APP:INFO:Disconnected
APP:INFO:Connected                                           
APP:INFO:Disconnected
[...]

The LED on the board stays lit which means that it is connected and will not advertise, which is a problem when I try to connect using another phone. I have found some ways to make it disconnect:

  • Reset the board
  • Turn off Bluetooth on my phone
  • Move the phone (or the board!) out of range. When moving the phone back close to the board, it will not automatically connect again.

Closing the nRF UART app with the back button is not sufficient to make it disconnect, neither is to forcibly close the app, or even uninstalling it. This leads me to think that the problem is somewhere deeper in the Android system.

Below is a pdml-file of the following use case:

  • Scan for device
  • Connect
  • Disconnect (which hangs in a connect/disconnect-cycle)

Sniffer.zip

Parents
  • Yes, I wrote that other report too...

    Now, I have tested the following: ble_app_hrs on both SDK v12 and v13: Works. The phone disconnects when the disconnect button is pressed. I have also tested the UART example with SDK v13, and it works too!

    This seems to have something to do with my phone. Since the last test I know I have put my phone into flight mode, and I have also turned off the location service. Maybe that caused some kind of reset in the phone.

Reply
  • Yes, I wrote that other report too...

    Now, I have tested the following: ble_app_hrs on both SDK v12 and v13: Works. The phone disconnects when the disconnect button is pressed. I have also tested the UART example with SDK v13, and it works too!

    This seems to have something to do with my phone. Since the last test I know I have put my phone into flight mode, and I have also turned off the location service. Maybe that caused some kind of reset in the phone.

Children
No Data
Related