I am having trouble turning on bonds for DFU.
First of all, before I describe this pain, can I choose to avoid this battle by just allowing unbonded devices to DFU? e.g. set NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS = 0, and NRF_DFU_BLE_REQUIRES_BONDS = 0 and attr_md.wr_auth = 0;?
This is what I run into when I try to turn on bonding for DFU. Error 8, which I assume is INVALID_STATE, and I don't know what that means. I deleted the bond from my iPhone several times and rebonded again. I enabled Indications on the DFU service. Yet I still get this "error 8". Or sometimes, my application will actually reboot into DFU, but then my DFU app sits there and does nothing, implying the iPhone can't find the nRF Bootloader for some reason, or the bond data was not passed correctly. What is wrong?
<info> app: DFU_OP_ENTER_BOOTLOADER <info> app: Writing peer data to the bootloader <info> app: ---------------system attribute table: 8-------------- <error> app: nrf_dfu_set_peer_data error: 8 <error> app: enter_bootloader error: 8 <error> app: on_ctrl_pt_write error. rsp_code = 4 <error> app: Request to enter bootloader mode failed asynchroneously.
SDK 14.0.0
S132
I set NRF_DFU_BLE_BUTTONLESS_SUPPORTS_BONDS 1 and NRF_DFU_BLE_REQUIRES_BONDS 1 and flashed my bootloader already.