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

Bonding after pairing for "ble_app_multirole_lesc"

I have a question about the sample project "ble_app_multirole_lesc (SDK V15.3.0)".

I set the following parameters to perform pairing without bonding.


////////////////////////////////////////////////////////////////////////////////////////
// Security parameters to be used for all security procedures.
sec_params.bond = 0;
sec_params.mitm = 0;
sec_params.lesc = 1;
sec_params.keypress = 0;
sec_params.io_caps = BLE_GAP_IO_CAPS_NONE;
sec_params.oob = 0;
sec_params.min_key_size = 7;
sec_params.max_key_size = 16;
sec_params.kdist_own.enc = 0;
sec_params.kdist_own.id = 0;
sec_params.kdist_peer.enc = 0;
sec_params.kdist_peer.id = 0;

err_code = pm_sec_params_set(&sec_params);
APP_ERROR_CHECK(err_code);
////////////////////////////////////////////////////////////////////////////////////////


Is it possible to manually bond after pairing is confirmed?
Also, please let me know how.

Parents Reply
  • The log is shown below.
    I tried calling pm_conn_sec_status_get, but encryption seems to be established.

    <info> app: LE Secure Connections example started.
    <info> app: Scanning
    <info> app: Advertising
    <info> app: PERIPHERAL: Connected, handle 1.
    <info> app: PERIPHERAL: BLE_GAP_EVT_SEC_PARAMS_REQUEST
    <info> app: PERIPHERAL: BLE_GAP_EVT_LESC_DHKEY_REQUEST
    <info> nrf_ble_lesc: Calling sd_ble_gap_lesc_dhkey_reply on conn_handle: 1
    <info> peer_manager_handler: Connection secured: role: Peripheral, conn_handle: 1, procedure: Pairing
    <info> app: PERIPHERAL: BLE_GAP_EVT_AUTH_STATUS: status = 0x0 bond = 0x0 lv4: 0 kdist_own: 0x0 kdist_peer: 0x0
    <info> app: Peer param to bond
    <info> app: [pm_conn_sec_status_get] connected = 1, encrypted = 1, mitm_protected = 0, bonded = 0
    <info> peer_manager_handler: Connection security failed: role: Peripheral, conn_handle: 0x1, procedure: Encryption, error: 4102
    <warning> peer_manager_handler: Disconnecting conn_handle 1.
    <info> app: PERIPHERAL: Disconnected, handle 1, reason 0x16.

Children
Related