Issue:
We're using Bluedroid stack. We've been facing bonding failed issue while device using Legacy pairing with classic BT.
Whenever phone wants to connect, It has to enter 4 digit pin and I could get request from phone. Based on that device gives 4 digit pin which stored in the device. But after that, I am not getting any request or response from phone while bonding. After some seconds, bonding failure happens. In device side, pairing state goes from Wait to Idle.
bt_debug_enable logs:
12-31 16:01:38.816 2786 2831 I bt_btif : bta_sys_event: Event 0x11b
12-31 16:01:38.816 2786 2831 I bt_btif : bta_dm_sm_execute event:0x1b
12-31 16:01:38.816 2786 2831 I bt_btm : BTM_BleConfigPrivacy
12-31 16:01:38.822 2786 2831 D bt_hci : command complete for: pc:0xf6f28917
12-31 16:01:38.825 2786 2831 D bt_hci : command complete for: pc:0xf6f283f5
12-31 16:01:38.827 2786 2831 D bt_hci : command complete for: pc:0xf6f28801
12-31 16:01:38.830 2786 2831 D bt_hci : command complete for: pc:0xf6f28589
12-31 16:01:38.834 2786 2831 D bt_hci : command complete for: pc:0xf6f286d1
12-31 16:01:38.836 2786 2831 D bt_hci : command complete for: pc:0xf6f28917
12-31 16:01:51.600 2786 2831 D bt_btm : btm_acl_resubmit_page
12-31 16:01:51.600 2786 2831 D bt_btm : security_required:0
12-31 16:01:51.600 2786 2831 I bt_btm : btm_sec_change_pairing_state() Old: WAIT_AUTH_COMPLETE
12-31 16:01:51.600 2786 2831 I bt_btm : btm_sec_change_pairing_state() New: IDLE pairing_flags:0xa
12-31 16:01:51.600 2786 2831 D bt_btm : btm_find_dev_type - device_type = 1 addr_type = 0
12-31 16:01:51.600 2786 2831 D bt_btif : btif_transfer_context event 3, len 280
12-31 16:01:51.601 2786 2831 D bt_btm : BTM_BLI_PAGE_DONE_EVT
12-31 16:01:51.601 2786 2831 D bt_btm : btm_acl_removed
12-31 16:01:51.601 2786 2819 D bt_btif : btif task fetched event a001
12-31 16:01:51.601 2786 2819 D bt_btif : btif_context_switched
12-31 16:01:51.601 2786 2819 I bt_btif : btif_dm_upstreams_evt: ev: BTA_DM_AUTH_CMPL_EVT
12-31 16:01:51.601 2786 2819 D bt_btif : btif_dm_auth_cmpl_evt: bond state=1
12-31 16:01:51.601 2786 2819 D bt_btif : in, bd addr:04:b1:a1:4e:f2:7d, prop type:4, len:4
12-31 16:01:51.601 2786 2819 I bt_btif_dm: get_cod remote_cod = 0x005a020c
12-31 16:01:51.601 2786 2819 D bt_btif : in, bd addr:04:b1:a1:4e:f2:7d, prop type:4, len:4
12-31 16:01:51.601 2786 2819 I bt_btif_dm: get_cod remote_cod = 0x005a020c
12-31 16:01:51.601 2786 2819 D bt_btif : bond_state_changed: state=0, prev_state=1, sdp_attempts = 0
12-31 16:01:51.601 2786 2819 I bt_btif : HAL bt_hal_cbacks->bond_state_changed_cb
HCI event: LMP/LL Response Timeout
Based on the snoop log, I came to know, Pinkey replay has sent successfully. But it was failed because of some response timeout. What could be the reason here ? Can you help me ?