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

The Bluetooth connection is made and immediately disconnected.

Hello,

I am creating a project through the MultiLink example.

One problem occurred. If the device is attached to NRF52DK, the connection will be disconnected immediately after the DICONNECTED event occurs.

-----------------log----------------------

<info> app: Start scanning for device name Nordic_Blinky.
<info> app: LBS central link 0x0 disconnected (reason: 0x3E)
<info> ble_lbs_c: BLE_GAP_EVT_DISCONNECTED Type [59]
<info> ble_lbs_c: BLE_GAP_EVT_DISCONNECTED Type [59]
<info> ble_lbs_c: BLE_GAP_EVT_DISCONNECTED Type [59]
<info> ble_lbs_c: BLE_GAP_EVT_DISCONNECTED Type [59]
<info> app: Start scanning for device name Nordic_Blinky.
<info> app: Connection 0x0 established, starting DB discovery.
<debug> ble_db_disc: Starting discovery of service with UUID 0x19F1 on connection handle 0x0.
<debug> ble_gatt: Requesting to update ATT MTU to 127 bytes on connection 0x0.
<debug> ble_gatt: sd_ble_gattc_exchange_mtu_request() on connection 0x0 returned busy, will retry.
<debug> ble_gatt: Requesting to update data length to 131 on connection 0x0.

-----------------------------------

Logging occurs as above.

What part am I missing? Help.

For reference, I use SDK14.1, S140, NRF52840, and SD 5.0.0-2.

Parents Reply
  • Thank you. It doesn't seem like the peripheral responds at all. May I ask what kind of device the peripheral is? Is it something you are developing, or is it a product already on the marked?

    If it is something that you are developing, are you able to debug that device and see if you get a connection event?

     

    From the sniffer log, it looks like the connection is never established (as is confirmed by the 0x3E disconnect reason). But the peripheral has a break in the advertisements after the CONNECT_REQ packet, so something is happening, but the peripheral goes silent for a few seconds, then it continues to advertise.

     

    Out of curiosity, can you try to change to the following (in sdk_config.h)

    #define NRF_SDH_BLE_PERIPHERAL_LINK_COUNT 0
    #define NRF_SDH_BLE_CENTRAL_LINK_COUNT 1
    #define NRF_SDH_BLE_TOTAL_LINK_COUNT 1

    And see if anything changes in the sniffer log?

     

    Best regards,

    Edvin

Children
Related