Link keys request event immediately after call to wiced_bt_gatt_le_connect()

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
RoHe_4370821
Level 4
Level 4
25 replies posted 25 sign-ins 10 replies posted

Hi,

I'm using 4343W with WICED Studio SDK Version: Wiced_006.004.000.0061

I am writing a custom application to run a BLE Client. I can see the Server advertisements in the scan callback. Then, I stop the scan and try to make the intial connection as follows:

wiced_result_t status;

status = wiced_bt_ble_scan(BTM_BLE_SCAN_TYPE_NONE,

                               WICED_TRUE,

                               ble_scan_result_cback);

if (WICED_BT_SUCCESS != status)

{

    LOG_ERROR("Scan error: %u", (uint16_t)status);

}

if (false == wiced_bt_gatt_le_connect( p_scan_result->remote_bd_addr, p_scan_result->ble_addr_type, BLE_CONN_MODE_HIGH_DUTY, TRUE ) )

{

    LOG_DEBUG("GAP Conn fail!");

}

This results in the scan callback being called with a NULL scan result pointer, as expected.
This is immediately followed by a call to the management callback with the BTM_PAIRED_DEVICE_LINK_KEYS_REQUEST_EVT event.

There is no GATT_CONNECTION_STATUS_EVT event happening. I would expect this to come first, but this event does not occur.

Is the above a valid scenario? If so, how should I handle the link keys request? There has been no prior connection or pairing and no calls to any security functions such as wiced_bt_dev_sec_bond() at this stage.

0 Likes
1 Solution
RoHe_4370821
Level 4
Level 4
25 replies posted 25 sign-ins 10 replies posted

Sorry, I found that the GATT callback had not been registered correctly. The BTM_PAIRED_DEVICE_LINK_KEYS_REQUEST_EVT is still happening, but at least I have the GATT_CONNECTION_STATUS_EVT happening now.

View solution in original post

0 Likes
1 Reply
RoHe_4370821
Level 4
Level 4
25 replies posted 25 sign-ins 10 replies posted

Sorry, I found that the GATT callback had not been registered correctly. The BTM_PAIRED_DEVICE_LINK_KEYS_REQUEST_EVT is still happening, but at least I have the GATT_CONNECTION_STATUS_EVT happening now.

0 Likes