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

About the device name when pairing

(1) I connected Nordic nRF52810 device to ipad (version: 13.5.1) (ipad uses app for connection).
 At this time, a pop-up window appears asking if I want to pair the devices. When I press "Yes", the name of the nRF52810 device is left in the device name in the settings-Bluetooth of the ipad.

(2) Connected another device and ipad (version: 13.5.1) (ipad uses app for connection).
 At this time, a pop-up window appeared asking if I wanted to pair the devices, and when I pressed "Yes", the device name was displayed in the Settings-Bluetooth device name of the ipad, but when I quit the app, the device name also disappeared from the settings screen.

I want to make the same behavior as in (2) with nRF52810, is there a way?

I have set the following settings for nRF52810.

    /* Manufacture Specific Data */
    ble_advdata_manuf_data_t manuf_data = 
    {
        .company_identifier = ADV_COMPANY_ID,
        .data = 
        {
            .p_data = &m_data[ 0 ],
            .size = sizeof( m_data ),
        }
    };

    ble_advertising_init_t init = 
    {
        /* Advertising data */
        .advdata = 
        {
            .include_appearance         = false,
            .flags                      = BLE_GAP_ADV_FLAGS_LE_ONLY_GENERAL_DISC_MODE,
            .name_type                  = BLE_ADVDATA_NO_NAME,
            .p_manuf_specific_data      = &manuf_data,
        },
        /* Advertising modes and intervals */
        .adv_mode                       = BLE_ADV_MODE_FAST,
        .config = 
        {
            .ble_adv_whitelist_enabled  = false,
            .ble_adv_fast_enabled       = true,
            .ble_adv_fast_interval      = MSEC_TO_UNITS(  100, UNIT_0_625_MS ),
            .ble_adv_fast_timeout       = 0,
        },
    };

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

Parents
  • Hi,

    What you describe in case 1 is what happens if the devices bond. What you describe in case 2 is what happens if only pairing, but not bonding. Looking at your ble_gap_sec_params_t I see you have set .bond to 0, so that should be good. However, you should also set kdist_* to 0. This makes me wonder a bit, as you should get an error with your combination having kdist_* set to 1 and .bond set to 0.

Reply
  • Hi,

    What you describe in case 1 is what happens if the devices bond. What you describe in case 2 is what happens if only pairing, but not bonding. Looking at your ble_gap_sec_params_t I see you have set .bond to 0, so that should be good. However, you should also set kdist_* to 0. This makes me wonder a bit, as you should get an error with your combination having kdist_* set to 1 and .bond set to 0.

Children
No Data
Related