If the BLE_GAP_EVT_CONNECTED event is returned, will the underlying layer definitely send a Connect Indication packet.

During the connection phase, the following situation occasionally occurs: the application layer receives the BLE_GAP_EVT_CONNECTED event returned by the soft device, but the Ellisys packet capture tool fails to capture the Connect Indication packet. Moreover, the master device does not transition its role to sending heartbeat packets; instead, it continues advertising. The slave device also continues broadcasting normally. Subsequently, the BLE_GAP_EVT_DISCONNECTED event is received from the protocol stack, citing error code 0x3E. I am reasonably confident that there are no omissions in the packet capture, as I have tested it many times. What could be the reason for this occurrence?

Parents Reply
  • Hi,

    I checked with the SoftDevice team, and we have not seen any reports of such an issue, so we belive it is quite unlikely that there is a bug in the SoftDevice that cause a BLE_GAP_EVT_CONNECTED event without a CONNECT_IND being sent out.

    Have you tested in an RF chaimber to eliminate external noise/interference leading to a loss of the CONNECT_IND packet?

    Another think you can test is to toggle a GPIO on NRF_RADIO->EVENTS_READY and NRF_RADIO->EVENTS_DISABLED via PPI. That way you will see whenever the radio is in use (and actually transmitting the packet or not).

Children
No Data
Related