Beware that this post is related to an SDK in maintenance mode
More Info: Consider nRF Connect SDK for new designs

BLE DFU boot loader and device information

We are using the DFU workflow available with nRF5 SDK 16.0.0 and nRF5 SDK 17.1.0 on our BLE devices.
We have two different products, one using the nRF52832 and the other using the nRF52810.
We are able to distinguish between these two boards by querying the application for various characteristics.

We can get the application to boot into the DFU+Bootloader mode (device name 'DfuTarg') and execute the DFU successfully.

However, we have one major operational concern.

Frequently, our devices fail to complete the DFU and are therefore left in the DFU+Bootloader state where they advertise with the name 'DfuTarg'.
Our issue pops up if we have both the nRF52832 and nRF52810 devices operating in this state.

We are unable to figure out what BLE query, if any, to execute (either via the nRF Toolbox, or a custom application) that will tell us the MCU on a specific device (nRF52810 or nRF52832).

Cheers
RMV

Parents
  • What happens if you upload the wrong update package, will it be rejected?

    These devices are going to be in the field and have different behaviors i.e. different product verticals and feature sets, different workflows for subsequent DFU OTA updates, etc.

    The product firmware that runs on a nRF52832 platform is very different from the version that runs on the nRF52810. We do not have the luxury of mismatching the firmware and the hardware.

    Also, are they both programmed with the same NRF_DFU_HW_VERSION?

    How can the BLE application that manages the DFU workflow retrieve this information from the target that it is to be updated.

Reply
  • What happens if you upload the wrong update package, will it be rejected?

    These devices are going to be in the field and have different behaviors i.e. different product verticals and feature sets, different workflows for subsequent DFU OTA updates, etc.

    The product firmware that runs on a nRF52832 platform is very different from the version that runs on the nRF52810. We do not have the luxury of mismatching the firmware and the hardware.

    Also, are they both programmed with the same NRF_DFU_HW_VERSION?

    How can the BLE application that manages the DFU workflow retrieve this information from the target that it is to be updated.

Children
Related