cancel
Showing results for 
Search instead for 
Did you mean: 

BlueNRG-2 Configuring Static Random Address issues with White-List Reconnection

mdmottola
Associate II

Using the SDK's BLE_Privacy project as a base, I changed the Master & Slave programs to function with the static random address stored in NVM by commenting out the aci_hal_write_config_data function that was setting a public address and changing the address type to a Resolvable Private Address (0x02) in the following functions:

  • master.c aci_gap_start_general_connection_establish_proc
  • master.c aci_gap_create_connection
  • slave.c - aci_gap_set_undirected_connectable

This functioned as expected with no issues.

I then attempted to set a static random address and not use the one in NVM by using the aci_hal_write_config_data with the offset set to CONFIG_DATA_STATIC_RANDOM_ADDRESS on both the master & slave in-place of where the CONFIG_DATA_PUBADDR_OFFSET write was occurring. The devices were unable to reconnect using the whitelist after the initial connection, pairing, bonding, & disconnect. I verified the bonded addresses of the master & slave matched the associated configured static random address of the slave & master respectively, and the address stored and then entered into the resolving list & whitelist.

  • bonded_device_entry_53
  • whitelist_identity_entry_62

The following sequence would occur following initial connection, pairing, bonding, & disconnection.

  1. Slave aci_gap_set_undirected_connectable(WHITE_LIST_FOR_ALL)
  2. Master aci_gap_create_connection() called with whitelist_identity_entry_62 from the aci_gap_get_bonded_devices()
  3. Master report hci_le_enhanced_connection_complete_event() event reporting the proper resolved slave address matching that of whitelist_identity_entry_62
  4. Immediately following that master would report hci_disconnection_complete_event() with the reason set to BLE_ERROR_CONNECTION_FAILED_TO_ESTABLISH (0x3E)
  5. 3 & 4 would repeat indefinitely

Any solution for this or something I am overlooking?

0 REPLIES 0