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

How can peripheral advertise for unbonded centrals only?

Hello,

I have a peripheral that manages several bonds to known centrals. Assume I want to pair with some fresh central, yet I need to do that within physical reach of another central which is already bonded. When peripheral starts to advertise its presence to give chance for fresh central to pair, all already bonded centrals nearby will try and "steal" the connections within fractions of second, effectively not giving fresh central a chance to pair.

So the question is, is in BLE any mechanism to avoid "stealing" of connections by known centrals?

Up to my knowledge there are two possible solutions, both painful:

  1. force user to always pair with new centrals out of reach of all already bonded centrals - hugely impractical
  2. force peripheral to disconnect from any already bonded centrals immediately after connection, when in "fresh central seeking" mode - unfortunately this usually leads to bonded central losing interest in connecting "rejective" peripheral for good, after few unsuccessfull trials (tested with Android 4.X and Linux/BlueZ centrals so far)

Thank you.

Parents Reply Children
No Data
Related