1 Reply Latest reply on Dec 18, 2017 5:42 PM by ShengY_96

    BR/EDR pairing for CYW20706

    LJYe_2922526

      Hi forum BT experts,

       

      I have several questions regarding BR/EDR pairing:

      1) What library call/calls triggers pairing? In the “hci_audio_gateway” demo the HCI_CONTROL_COMMAND_BOND command is not used to pair with a peer, and yet somehow after the HCI_CONTROL_AG_COMMAND_CONNECT command the app is bonded with the peer. Is pairing done in the background by the stack (on RFCOMM connection)? I was expecting library calls to wiced_bt_dev_sec_bond().

      2) Is it correct that bonding/pairing means exchanging and storing the (BD_addr, key) pair? I see that the address/key pair is stored in the “NVRAM” and it is synchronized with the host. 

      3) Extension to the previous question, if I don’t want the app to auto-connect to a paired device, all I have to do is delete the addr/key pairs from the app, correct?

      4) Auto-reconnection with a bonded device is not working with the “hci_audio_gateway” demo project. If I shut down the paired headset and restart it the app was not able to re-establish the rfcomm link, and I can see periodic L2CAP traffic in the logs attempting to reconnect and fails. Any ideas why?

       

      Thanks!

        • 1. Re: BR/EDR pairing for CYW20706
          ShengY_96

          Hi LJ Ye

           

          Pairing is to exchange the keys. Bonding store the keys/peer_addr to the nvram.

          Not suggest to delete the bonding info as if the peer side still store the bonding data, the next time connection will failed.

          Per my understand, auto connect is depend on application's function. App or firmware need to implement. Bonding only store the keys/peer_addr. If connection has happened, no need to do the pair progress(like input fixed pair key) for people, the key exchange can be handled by stack auto.

           

          Regards

          Jenson

          2 of 2 people found this helpful