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

Disconnection 0x3b in Master Control Panel APP

I am using NRF52 S132, and using UART service , but my phone is getting disconnected automatically after 1 or two minutes. I have seen this question asked in Forum but that does not solved my issue. I could see that issue was related to connection parameters . In the wireshark capture I could see disconnect is due to unacceptable connection parameters also in the Master COntrol Panel logs , I see unknown error 0x3B . These are the connection parameters I use

#define MIN_CONN_INTERVAL               MSEC_TO_UNITS(20, UNIT_1_25_MS)             /**< Minimum acceptable connection interval (20 ms), Connection interval uses 1.25 ms units. */
#define MAX_CONN_INTERVAL               MSEC_TO_UNITS(75, UNIT_1_25_MS)             /**< Maximum acceptable connection interval (75 ms), Connection interval uses 1.25 ms units. */
#define SLAVE_LATENCY                   0                                           /**< Slave latency. */
#define CONN_SUP_TIMEOUT                MSEC_TO_UNITS(4000, UNIT_10_MS)             /**< Connection supervisory timeout (4 seconds), Supervision Timeout uses 10 ms units. */
#define FIRST_CONN_PARAMS_UPDATE_DELAY  APP_TIMER_TICKS(5000, APP_TIMER_PRESCALER)  /**< Time from initiating event (connect or start of notification) to first time sd_ble_gap_conn_param_update is called (5 seconds). */
#define NEXT_CONN_PARAMS_UPDATE_DELAY   APP_TIMER_TICKS(30000, APP_TIMER_PRESCALER) /**< Time between each call to sd_ble_gap_conn_param_update after the first call (30 seconds). */
#define MAX_CONN_PARAMS_UPDATE_COUNT    3                                           /**< Number of attempts before giving up the connection parameter negotiation. */

Let me know How I can fix this. what value I should set ?

Parents
  • Hi

    These connection parameter settings seem to be pretty normal. Letting the central device choose connection parameters between 20ms and 75ms should be fine.

    In the sniffer trace, what is the connection interval that the central device (phone) is proposing? If it is not between 20ms and 75ms, the default procedure of the nRF51 (the ble_conn_params library in the nRF5 SDK) is to reject the proposed parameters from the central and disconnect (see conn_params_negotiation function). See also here how to see the actual connection interval proposed by the central (1) (2)

    Update 20.4.2016 There are apparently also a few Android phones behaving badly, see this thread

Reply
  • Hi

    These connection parameter settings seem to be pretty normal. Letting the central device choose connection parameters between 20ms and 75ms should be fine.

    In the sniffer trace, what is the connection interval that the central device (phone) is proposing? If it is not between 20ms and 75ms, the default procedure of the nRF51 (the ble_conn_params library in the nRF5 SDK) is to reject the proposed parameters from the central and disconnect (see conn_params_negotiation function). See also here how to see the actual connection interval proposed by the central (1) (2)

    Update 20.4.2016 There are apparently also a few Android phones behaving badly, see this thread

Children
Related