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

sd_ble_gap_connect modifying the whitelist

Using S130, Central device, Manual whitelist, custom hardware.

Manual connection to 1 or 2 peripherals depending on a switch position.

This device is a central that makes a connection, sends a message and then immediately disconnects. I'm passing a white list into sd_ble_gap_connect() that changes depending on a switch position, Left, Right or Both. The WL can have 1 or 2 entries and the first peripheral can be either peripheral 1 or peripheral 2.

When I need to make a connection I check the switch position, create the Whitelist and then call sd_ble_gap_connect().

The problem is the Whilelist doesn't change once set, it always connects the same way the switch was set the first time, and I don't see a way to clear it or reset the white list.

I do set the addr_count appropriately and clear the unused address.

It works correctly if I reset the processor when I change the switch position, so the code logic is correct.

Is there a way to convince the stack to use the new whitelist?

Thanks Keith

Related