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

What is Connection bonding ?

Hi,

Can you please explain to me what bonding consists of ?

Because i want to use it in DFU from an app. I see an app where we can from the it do DFU . in Fact, the DFU button is activated, then when you click on it and select the hex , all is done automatically : the app disconnect , jump to bootloader, this latter do a connection again and updating starts directly. this what i undersatood . 1- Can you tell me how it works ? 2-and is there any example of apps that do that that i can satrt with it ?

Parents
  • Hi Toto,

    After you've connected to a device you may pair with it in order to encrypt the connection. Pairing is essentially the exchange of temporary encryption keys, referred to as Short Term Keys(STKs).

    After you have paired, you have the optional choice of bonding with the device, which is the exchange of Long Term Keys (LTKs) which can be used to re-encrypt the connection. The bonding information( the LTK and the device address) is stored in flash, so if you disconnect from the device and reconnect after some time, the device will use the LTK to re-encrypt the link so that you do not have to go through the paring and bonding process again.

    The application will share the bonding information with the bootloader (saves in RAM), resets into bootloader and then the bootloader uses this to automatically reconnect using whitelist advertising. However, the device will reconnect even though you do not bond, then only the device address will be shared and it will reconnect using directed advertisment. This is described on this Infocenter page.

    I recommend taking a look at our Glucose Application example if you want to see how bonding is done.

    Bjørn

  • If you want the MCP app to reconnect automatically, then you have to modify the MAC address in the bootloader as well.

Reply Children
No Data
Related