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

ble_gap_privacy_params_t and DFU

I'm upgrading a project from SDK 15 to SDK 16. Previously in my gap parameters init I had this code

  ble_gap_privacy_params_t ble_gap_privacy_params = {0};
  ble_gap_privacy_params.privacy_mode = BLE_GAP_PRIVACY_MODE_DEVICE_PRIVACY;
  ble_gap_privacy_params.private_addr_type = BLE_GAP_ADDR_TYPE_RANDOM_PRIVATE_RESOLVABLE;
  ble_gap_privacy_params.private_addr_cycle_s = BLE_GAP_DEFAULT_PRIVATE_ADDR_CYCLE_INTERVAL_S;
  ble_gap_privacy_params.p_device_irk = NULL;
  err_code = sd_ble_gap_privacy_set(&ble_gap_privacy_params);
  APP_ERROR_CHECK(err_code);

This works fine for seeing the peripheral and operating it as a UART peripheral. But, having this code in place doesn't allow DFU to work (I'm using the default secure bootloader) under Android, although for whatever reason DFU works fine under ios (Both using the NRF Toolbox).

If I comment out this code then DFU works fine but for some reason then I can't see the peripheral anymore.

Parents Reply Children
Related