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.

White List and HCI_RANDOM_DEVICE_ADDRESS in CC2540 Keyfob

Other Parts Discussed in Thread: CC2540

Hello,

I am using the White List and GAPROLE_ADV_FILTER_POLICY of GAP_FILTER_POLICY_WHITE in the CC2540 Keyfob.

It works fine with the peer device using the HCI_PUBLIC_DEVICE_ADDRESS like CC2540 USB dongle with BTool.

But it does not work with the device using the HCI_RANDOM_DEVICE_ADDRESS of ADDRTYPE_PRIVATE_RESOLVE .

Can I add a HCI_RANDOM_DEVICE_ADDRESS of peer device in the white list of Keyfob and works with GAPROLE_ADV_FILTER_POLICY of GAP_FILTER_POLICY_WHITE?


Thanks for the help.

  • We do not support whitelisting of private resolvable addresses. The reason for this is because devices that use private resolvable addresses will change their address after a pre-determined period of time (for example, once every 15 minutes). Therefore, even if we did support this it would not work since the central device changes addresses.

    One new feature that we will have in the BLEv1.2 release is that the bond manager will support bonding with central device which use the private resolvable address type. Upon connection with a central device, the bond manager will resolve the peer device's address to determine if it matches a previously bonded device public address. This will allow the two device to properly bond and re-initiate security whenever needed.

    With this update, it may be possible for you to implement functionality in the bond manager for the peripheral to behave in a way similar to a whitelist. Upon connection with a central device, you would need to resolve the peer device's address, and then if it does not match the device that you want to connect to, you would simply terminate the connection.