I'm working on an Android app that connects to a Nordic nRF52833 BLE peripheral (Zephyr 3.7.99 / NCS 2.9.0). I'm encountering a consistent issue where:
The app connects to the peripheral and bonds successfully on the first connection.
I can disconnect and reconnect and the second connection works perfectly and remains stable.
However, if I voluntarily disconnect and then reconnect a third time, the device disconnects after ~30 seconds, and the onConnectionStateChange() callback reports: status = 8 (GATT_INSUFFICIENT_AUTHORIZATION)
After this involuntary disconnection, I can successfully reconnect but I will always be disconnected again after about 30 seconds.
I have tested this numerous times, introducing different events like rebooting my app and turning my the tablet's Bluetooth on and off but it will always disconnect after the third disconnection.
I have also used the nrf connect app to connect to my nordic board and repeat the same process but this problem does not occur.
Any advice would be invaluable and deeply appreciated.