We are working on a Home Automation consumer device using CC2540 in the Peripheral Role.
Code is complete and during testing we stumbled across the following behavior while pairing/bonding with IOS:
The first pairing bonding attempt works just fine.
But when we delete the paired device in IOS Settings and try to reestablish the connection, no more pairing process is kicked off and the application fails.
It assume the BLE Stack retains the old Bond in NVRAM and does not realize the phone lost its LTKs. I would expect the Stack to start a new Bonding procedure for this device.
I realize I can brute force erase all the bonds in NVRAM, but as multiple enduser devices use the peripheral this is not a workable option.
Do we have an issue with our code or is this a problem with the TI BLE stack ?
Any workaround or suggestions are greatly appreciated as we are under pressure to go to manufacturing asap and this problem presents a show-stopper for us.
best regards,
Oliver.