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

Reconnecting with bonded device without the advertising process

Hi everyone,

We are making a BLE peripheral that measures some data and keeps it ready for the mobile phone to connect & poll the data. The data should be private and available only to the bonded phone. Upon powering on for the first time, device will be advertising and visible to anyone. The Master control panel then connects & bonds with the device. After this, the device is whitelisted only for the bonded master control panel. Problem is, when the connection breaks, in order to reconnect with the device again through the master control panel, we have to start advertising from the device which will eat up a lot of battery.

Is there any way for the master control panel to connect with a bonded device without the need for the device to advertise?

Or is there any other technique which will enable the master to try & connect to the device without any knowledge of whether the device is within range or out of range?

  • If you do not want your device to advertise, then you must change the radio roles. I.e the peer i.e the phone should advertise and your device must be a master/central to scan and connect.

  • A central cannot connect to peripheral if it isn't advertising. The central wouldn't know when to send the connection request, and the peripheral wouldn't know when to listen for the connection request.

    If you want to reconnect because of an unintended disconnection, it shouldn't be necessary to advertise for very long, as long as the central is scanning at the same time.

    If you are talking about the general case when the peripheral doesn't know when the central will scan, you will need to make a choice between fast connection (shorter advertising interval, draining more current), slow connection (bigger advertising interval, draining less current), or something inbetween.

    As David mentions, if you want to connect without advertising you need to change the roles, become a central where you are scanning instead of advertising, but scanning usually drains more power, so...

  • Thanks for the suggestion Petter Myhre, my main profile is to save the power ( should consume less than 30u amps during advertising), I tried increasing the advertisement interval to 1 second , in this case the phone experiences a delay in discovering the device (takes about 5-10 seconds) , is there any way to reduce the time consumption in detecting the device, I use Nordic's Master Control Panel app ( Version 3.2.0, android Version 4.4.4 ) to scan and view the services.

  • Thanks David, But I use Master Control Panel to scan and communicate, where making Master Control Panel to advertise is not possible, As Petter Myhre mentioned that scanning would eat more power where it is not desirable for our application. Is there any other way to achieve Reconnecting to the peripheral?

  • Depends on what setting you have set in the app. Go to Settings->Scanner. Then you should have continous scanning enabled and the scanning mode should be Low Latency. Other than that, it is little you can do, unfortunately.

Related