Issue with BLE pairing, Gatt server on Android OS
I am trying to implement BLE pairing with the peripheral that's using Gatt server running on android 12 OS. After I read encrypted characteristic, it trigger pairing popup, allow me to pair with device( can confirm from bluetooth settings), however it drops the connection just after that (typically within a minute), on the Gatt server side, the Android native bluetooth process crashes with a timeout error (bt_hci_thread >>> com.android.bluetooth <<<)
This case only happens at the very first pairing attempt, meaning after the crash, if the iOS try to pair, it will work as expected.
Moreover, although I am using BLE framework, the bonded device list on the Android side shows 2 entry, one for LE, the other one for CLASSIC.
Does anyone know why it is happening and how to fix it? if you have face similar kind of issue please help me!
iPhone 7 Plus, iOS 13