This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Hight rate of disconnect reason 0x3E / BLE_HCI_CONN_FAILED_TO_BE_ESTABLISHED)

I am  having a high rate of connection reason 0x3E when connecting two nrf52832 devices together both with only one active connection at a time.

Most of the information I have found on this issue suggest changing the conn_intervals, but this diddnt do much to alleviate the problem. I have tried changing both the values in the ble_gap_scan_params_t and ble_gap_conn_params_t structs with many different configurations when connecting.

I am using custom hardware for the peripheral device, and a development board for the central device. I have tried different hardware when testing with both the central and peripheral.

I have used the ble sniffer and I can see that on a failed connection, the central device sends many 'Empty PDU' commands that have the wrong/same sequence number (retransmission?)

Here is what the snffer snows fully on good and bad connections:

Bad connections:

Good connection

  • It seems that the CONNECT_REQ is not received by the peripheral device. Typically this is either due to interference (for instance other 2.4GHz devices such as Wifi may interfer with the packet reception on the peripheral device), this is typically the case in a real environment for about <2-3% of the cases. However if you experience it more frequently than that, then it is more likely due to noise on the board (e.g. that you have serial interfaces active on the peripheral board close to the antenna) or (more likely) that the peripheral device have a whitelist active at the time it is advertising (and this whitelist does not include the central device).

    Best regards,
    Kenneth

Related