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

About the "BLE_GAP_EVT_DISCONNECTED" event nRF52832

Hello.

After pairing with a tablet or computer, if you leave it for a few seconds without operating it

I wrote out the cause of the disconnection by debugging.

"Error 34 (0x22): GATT CONN LMP TIMEOUT"

What are the possible causes and countermeasures?

Parents
  • Hi,

    Which SoftDevice version are you using?

    BLE_HCI_STATUS_CODE_LMP_RESPONSE_TIMEOUT (0x22) means that a link layer procedure has timed out (data length negotiation for instance). The timeout is 40 seconds, so the easiest way to find out which procedure it was that timed is to get a sniffer trace and see what happened 40 seconds prior to the disconnect.

    It may be caused by several reasons, for instance if the application does not not respond to certain SoftDevice events.

  • Hello.
    Thank you very much for your answer which will be right away.

    ≫Which SoftDevice version are you using?

    S132 is being used.

    ≫get a sniffer trace and see what happened 40 seconds prior to the disconnect.

    After a packet was captured.
    "LL_TERMINATE_IND" but a slave showed that he's sent and cuts.

    "LL_TERMINATE_IND" but sent timing.
    "The one of the ble_conn_params_init_t" "I found out that it's dependent on next_conn_params_update_delay".

    Therefore a cut thing died to change "next_conn_params_update_delay" for 24 hours from 5 seconds as a temporary measure.

    "Can't the reason that LL_TERMINATE_IND" is sent and the above measure have a proper basket view?

    I'll give you trouble and I'm sorry, but please take care.

Reply
  • Hello.
    Thank you very much for your answer which will be right away.

    ≫Which SoftDevice version are you using?

    S132 is being used.

    ≫get a sniffer trace and see what happened 40 seconds prior to the disconnect.

    After a packet was captured.
    "LL_TERMINATE_IND" but a slave showed that he's sent and cuts.

    "LL_TERMINATE_IND" but sent timing.
    "The one of the ble_conn_params_init_t" "I found out that it's dependent on next_conn_params_update_delay".

    Therefore a cut thing died to change "next_conn_params_update_delay" for 24 hours from 5 seconds as a temporary measure.

    "Can't the reason that LL_TERMINATE_IND" is sent and the above measure have a proper basket view?

    I'll give you trouble and I'm sorry, but please take care.

Children
Related