This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2642R: OAD and bonding

Part Number: CC2642R

Hi All

My app is based on multi role app, using bonding.
After a OAD upgrade, bonding information are lost and upon the next connection to the central, it fails because bonding is no longer present in the device.
Connection can be re-established after deleting the known device in MacOs or iOS, so pairing / bonding occurs again.

According to the BLE user guide : https://dev.ti.com/tirex/explore/node?a=BSEc4rl__6.41.00.17&node=A__AORV2P9xKyaQCr.Dunw8Rg__com.ti.SIMPLELINK_CC13XX_CC26XX_SDK__BSEc4rl__6.41.00.17

Privacy section :

A BLE5-Stack device can only change its address modes using GAP_DeviceInit. If the address mode is changed, or if a different Random Static address is used, the BLE5-Stack will erase all existing bonds and local identification information.  

In my case, OAD app uses public address mode, while my app uses Random static address mode.

1) Does this mean my bonding informations are lost due to the above reason ?

2) If I switch to public address mode in my app, to match OAD address mode, should I init the device address with the same OAD device address ?
If doing this, I'm afraid that will cause some cache issues in the central side

3) I'm using encryption in my app, can it still be used if I switch to public address mode ?

Thanks for your help
Jerome

  • Responding to myself, I found the issue, my app was setting a BLE address different than the BLE address used by OAD.
    After switching to Public address mode in the app, and no longer changing the address, bonding is kept after the OAD.
    Also, using public address mode does not seem to affect encryption.