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

how did my central accumulate all these keys?

I'm putting out this scenario I don't understand, yet, to see if anyone else might have experienced the same thing.

I have a demo with a central and peripheral that bond. Once they are bonded, they stay that way unless one of them de-powers or a button is pressed that erases stored keys.

I left them this way one night, having erased the keys before re-bonding them. Each side should have had exactly one stored key. When I came back the next day, the central had 7 keys stored and had asserted after the call to dm_security_setup_req due to the device table being full (DM_DEVICE_CONTEXT_FULL - 0x8043).

Does anyone have an idea how the central could have accumulated 7 keys when it was running overnight in a connection with a peripheral it was bonded with? It only bonds with this particular peripheral that is using a custom base UUID and there's only one of them within range. The peripheral was found to only have a single key stored, as expected.

Related