2 Replies Latest reply on Aug 30, 2020 11:26 PM by TrDo_2870581

    Issue in establishing connection with CYW43012 (standard HCI mode)




      I'm using CYW43012, which is controlled by another MCU through UART flow-control with standard HCI protocol (not Wiced).

      Currently, I'm able to make it advertise normally. However, when I'm using a phone to connect to it, it always fail.


      When I look into the HCI data, here is the result when phone is trying to connect to Cypress:



      BLE_GAP_EVT_ADV_START --------------------------> Start advertising normally

      hciEvtProcessMsg: evt=3E, data=0A00400001010FBA4B90174200000000000000000000000018000000480001

      DM_CONN_OPEN_IND, r=0, cid=1 -------------------> Phone is trying to connect

      hciEvtProcessMsg: evt=3E, data=14400000 --------> Channel selection Algorithm event

      hciEvtProcessMsg: evt=FF, data=5500004000 ------> Vendor HCI event code 0x55, I don't know what the meaning of this event.

      hciEvtProcessMsg: evt=05, data=00400008 --------> Disconnect event with reason 0x08 (Supervision timeout)

      DM_CONN_CLOSE_IND, r=0, cid=1 ------------------> Connection close

      hciEvtProcessMsg: evt=0E, data=01082000

      hciEvtProcessCmdCmpl: 2008

      hciEvtProcessMsg: evt=0E, data=01092000

      hciEvtProcessCmdCmpl: 2009

      hciEvtProcessMsg: evt=0E, data=01062000

      hciEvtProcessCmdCmpl: 2006

      hciEvtProcessMsg: evt=0E, data=010A2000

      hciEvtProcessCmdCmpl: 200A

      BLE_GAP_EVT_ADV_START --------------------------> Start advertising again



      As you can see, when phone is trying to connect to Cypress, the Cypress sent back a vendor HCI event code 0x55 (marked as RED above).

      I've tried finding on google if there is any document about this event code but no luck.

      I doubt that this is the reason why the disconnection happens, as the MCU does not handle this event correctly, thus, there is no communication between host and the Cypress board, that leads to disconnect with supervision timeout.


      Could you please help explain what is the meaning of this event and what steps do I need to make it connect successfully?


      Thank you very much.