Using SDK 17.0.2 I wrote a function to modify advertising interval on the run. The function doesn't return any error but the interval isn't changed. What am I doing wrong?
ret_code_t set_advertisement_interval(uint16_t adv_interval)
{
ret_code_t ret_c;
sd_ble_gap_adv_stop(m_advertising.adv_handle);
NRF_LOG_INFO("Adv interval: %d", adv_interval);
m_advertising.adv_params.interval = MSEC_TO_UNITS(adv_interval, UNIT_0_625_MS);
ret_c = sd_ble_gap_adv_set_configure(&m_advertising.adv_handle, &m_advertising.adv_data, &m_advertising.adv_params);
if(ret_c != NRF_SUCCESS) {
NRF_LOG_INFO("sd_ble_gap_adv_set_configure error code %d", ret_c);
return ret_c;
}
ret_c = sd_ble_gap_adv_start(m_advertising.adv_handle, APP_BLE_CONN_CFG_TAG);
if(ret_c != NRF_SUCCESS) {
NRF_LOG_INFO("sd_ble_gap_adv_stop error code %d", ret_c);
return ret_c;
}
return NRF_SUCCESS;
}