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

Windows Swift pairing

Hi,

Recently, I was trying to pair the nRF51822 development board by windows swift pairing.

While I turn on the swift pairing function, I still cannot use this feature to connect with the device.

Besides, I just get some information from microsoft's website:

Could you explain for me about what exactly the temrs mean and the relationship with the sample code?

What should I modified in hids_keyboard to get the function?

Thanks.

  • Hi,

     

    Swift pair was added to the ble_app_hids_mouse example in SDK v15.1.

    This implementation is shown in the main.c file for this example. Search for the define "SWIFT_PAIR_SUPPORTED" to see how it is handled in the application itself.

     

    Kind regards,

    Håkon

  • Hi Hakon, 

    Thank you for your kindly reply.

    I was trying to use the SDK but I just found that only support the nRF52832 (up to S132).

    If I am using the nRF51822 PCA10028 (S130) is it possible to do the application by using SDKv11?

    Actually, I have changed the main in my project by adding below item, but it could not work. It seems it need to do lots of change in advata,advertising, ble_gap.

    BTW, I just found the information below that I could realize the reason for adding Microsoft information.

    But why it need to add below functions?

    #if SWIFT_PAIR_SUPPORTED == 1
    init.advdata.p_manuf_specific_data = &m_sp_manuf_advdata;
    sp_advdata_prepare(&init.advdata, &m_sp_advdata_buf);
    #endif

    ble_advertising_advdata_update(&m_advertising, &m_sp_advdata_buf, false) 

  • Hi,

      

    CY said:
    Actually, I have changed the main in my project by adding below item, but it could not work. It seems it need to do lots of change in advata,advertising, ble_gap.

    Yes, some backporting is required in order to implement this on an older SDK, for instance the ble_advertising_advdata_update function. 

    CY said:

    But why it need to add below functions?

    #if SWIFT_PAIR_SUPPORTED == 1
    init.advdata.p_manuf_specific_data = &m_sp_manuf_advdata;
    sp_advdata_prepare(&init.advdata, &m_sp_advdata_buf);
    #endif

    This is to add the manufacturer specific data to the advertising payload per Microsoft's specification, so that you can later update the payload to enable swift pair (in BLE_ADV_EVT_FAST).

    Kind regards,

    Håkon

Related