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

iOS refuses peripheral disconnection

On my peripheral I filter the devices connected and refuses them when not bonded. When a device not bonded tries to connect to the peripheral, it forces the disconnection and waits some seconds. It seems to work as spected, but on iOS, there are two different behavior:

Case 1, iOS device not bonded. Bonding has never occurred: -the iPhone connects -the peripheral closes the connection -the iPhone does not try to reconnect. This is the expected behavior.

Case 2, Bonding has done. Bonding is deleted only on the peripheral, not on the iPhone. -the iPhone connects -the peripheral closes the connection -the iPhone tryes to reconnect permanently, even if the app is completely closed (Nordic nRF Connect or Lightblue)

How can I avoid the iOS reconnection, if I can't remove the bond on the phone?

Parents
  • Hi Jemajuca!

    If you remove the bonding information on the peripheral only, the bonding keys will be deleted.
    When iOS tries to reconnect, it will try to set up an encrypted connection using the previously established keys.
    If the peripheral no longes have those keys, you need to manually remove the bonding information on the iOS side as well.
    You can do that in the bluetooth settings on your iOS device.

    Let me know if you still have any questions.
    Best regards,
    Joakim.

  • Hi Jemajuca!
    I'm afraid this is related to iOS behavior, and it's not much to do about this from our side.
    You could try to post a bug-report with apple about this problem.
    The best way to solve this would be to find a way to delete the bonding information on the iPhone.

    An alternative solution to help solve the problem might be to use whitelisting.
    Best regards.

Reply Children
No Data
Related