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

sd_ble_gap_connect: NRF_ERROR_INVALID_PARAM

Hello,

I'm trying to use `sd_ble_gap_connect` to connect to a peer I discovered using `nrf_ble_scan`.

nrf_ble_scan_init_t scan_init{};
scan_init.p_scan_param = &m_scan_param;
scan_init.conn_cfg_tag = 1;

nrf_ble_scan_init(&m_scan, &scan_init, scan_handler);

nrf_ble_scan_start(&m_scan);
Once I find a suitable peer, I do the following to connect to it:
nrf_ble_scan_stop();

res = sd_ble_gap_connect(&buf[last_seen].peer_addr,
&m_scan.scan_params,
&m_scan.conn_params,
m_scan.conn_cfg_tag);

if (res != NRF_SUCCESS) {
printf("sd_ble_gap_connect failed %s", nrf_strerror_get(res));
}
However, I always get 0x7 (invalid param) as my result. I checked my config and I have 5 central links configured. I tried passing NULL as the scan_params and conn_params to scan_init to use the default ones, but that did not help either.
Is there anything obvious that I'm missing?
Parents
  • What are the values of the NRF_BLE_SCAN_SCAN_INTERVAL, NRF_BLE_SCAN_SCAN_WINDOW, and NRF_BLE_SCAN_SCAN_DURATION here?

    Also, I'm interested in why you seem to be using your own custom version of the scan and connect functions. I would strongly recommend using something similar to the ble_app_hrs_c for instance where the nrf_ble_scan_connect_with_target() functions takes care of all these steps for you. Identity lists should not be necessary to use for BLE, so I don't think you should focus on that.

    Best regards,

    Simon

Reply
  • What are the values of the NRF_BLE_SCAN_SCAN_INTERVAL, NRF_BLE_SCAN_SCAN_WINDOW, and NRF_BLE_SCAN_SCAN_DURATION here?

    Also, I'm interested in why you seem to be using your own custom version of the scan and connect functions. I would strongly recommend using something similar to the ble_app_hrs_c for instance where the nrf_ble_scan_connect_with_target() functions takes care of all these steps for you. Identity lists should not be necessary to use for BLE, so I don't think you should focus on that.

    Best regards,

    Simon

Children
Related