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.