Hi,
i have some issue regarding DFU-ing the bootloader.
Here is my command to generate zip file: nrfutil pkg generate --hw-version 52 --bootloader-version 1 --bootloader output.hex --sd-req 0x9D --key-file private.key bootloader.zip
Now when i try to make the DFU on mobile phone i get NRF_DFU_EXT_ERROR_FW_VERSION_FAILURE.
I have extended bootloader logs and it says:
<error> dfu_req_handling: BL FW version too low, 01 <= 01
<error> dfu_req_handling: Prevalidate failed!
here is code part:
case DFU_FW_TYPE_BOOTLOADER: // fall through
case DFU_FW_TYPE_SOFTDEVICE_BOOTLOADER:
// updating the bootloader is stricter. There must be an increase in version number
if (p_init->fw_version <= fw_version)
{
NRF_LOG_ERROR("BL FW version too low, %02x <= %02x", p_init->fw_version, fw_version);
return ext_error_set(NRF_DFU_EXT_ERROR_FW_VERSION_FAILURE);
}
break;
But the documentation says:
"The firmware version is too low. For an application, the version must be greater than the current application. For a bootloader, it must be greater than or equal to the current version. This requirement prevents downgrade attacks."
Is this a BUG? Can i keep the bootloader version?