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

High power when connected and Sleeping

When Going into Sleep, I see peaks of 12mA every 30ms (see image)
I'm assuming I can adjust that changing the connection interval settings.
I have my Connection intervals set as:

#define CONN_INTERVAL_DEFAULT (uint16_t)(MSEC_TO_UNITS(500, UNIT_1_25_MS))
#define CONN_INTERVAL_MIN (uint16_t)(MSEC_TO_UNITS(500, UNIT_1_25_MS))
#define CONN_INTERVAL_MAX (uint16_t)(MSEC_TO_UNITS(600, UNIT_1_25_MS)) 

And I think I looked at all issues in the Devzone about it without any luck.

Could you help me please?

Parents
  • Hi,

    It is difficult to recognize the power profile as the time resolution is not good, but it looks like the device is advertising and not in a connected state. Can you verify that? If so, you have to adjust the advertising interval instead. You can increase the advertising interval by increasing the value of APP_ADV_INTERVAL in most BLE peripheral examples.

  • Here is what I tried inside on_ble_gap_evt_connected:

    ble_gap_conn_params_t ConnParams;

    ConnParams.min_conn_interval = 0xF0;
    ConnParams.max_conn_interval = 0xF0;
    ConnParams.conn_sup_timeout = 0x200;

    if (p_gap_evt->conn_handle != 0)
    {
    err_code = sd_ble_gap_conn_param_update(p_gap_evt->conn_handle, &ConnParams);
    APP_ERROR_CHECK(err_code);
    }

    But p_gap_evt->conn_handle is always 0. 
    How is that even possible?

Reply
  • Here is what I tried inside on_ble_gap_evt_connected:

    ble_gap_conn_params_t ConnParams;

    ConnParams.min_conn_interval = 0xF0;
    ConnParams.max_conn_interval = 0xF0;
    ConnParams.conn_sup_timeout = 0x200;

    if (p_gap_evt->conn_handle != 0)
    {
    err_code = sd_ble_gap_conn_param_update(p_gap_evt->conn_handle, &ConnParams);
    APP_ERROR_CHECK(err_code);
    }

    But p_gap_evt->conn_handle is always 0. 
    How is that even possible?

Children
Related