IPhoneX sometimes goes into the ble_evt_handler auth_status event, and then p_ble_evt->evt.gap_evt.params. Auth_status.auth_status!= BLE_GAP_SEC_STATUS_SUCCESS, other iPhone no issue. I don't know why like this. Thanks!
p_ble_evt->evt.gap_evt.params. Auth_status.auth_status value is BLE_GAP_SEC_STATUS_TIMEOUT
p_ble_evt->evt.gap_evt.params.auth_status.error_src value is 0
if (p_ble_evt->evt.gap_evt.params.auth_status.auth_status == BLE_GAP_SEC_STATUS_SUCCESS)
{
NRF_LOG_INFO("\r\nBonding success on device side!\n\r");
}
else
{
sd_ble_gap_disconnect(p_ble_evt->evt.gap_evt.conn_handle,BLE_HCI_REMOTE_USER_TERMINATED_CONNECTION);
NRF_LOG_INFO("\r\nBonding fail on device side due to: 0x%02x and %d \n\r",p_ble_evt->evt.gap_evt.params.auth_status.auth_status,p_ble_evt->evt.gap_evt.params.auth_status.error_src)
}