Inconsistencies on the documentation of the parameters of the DFU orders.

Hello!

We are on the process of implementing our own desktop program to run DFU over BLE, similar to how the nRF Connect application does it. We are using SDK 17.1.0 in the device to be updated, and are basing our design on the documentation from the infocenter, on these links:

https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.1.0/lib_dfu_transport.html

https://infocenter.nordicsemi.com/topic/sdk_nrf5_v17.1.0/lib_dfu_transport_ble.html

While the documentation details the parameters and response parameters of each request, we are having trouble finding the correct order and size of each parameter.

For example, according to the first link, the Select request has an Object type as parameter, and returns 3 parameters: OffsetCRC, and Maximum object size. All of them are listed as uint32_t, and the return parameters are listed in that order.

However, when reading the message sequence charts of the second link, and by reading the bootloader code where the parameters are parsed, we noticed that the Object type parameter is actually 1 byte, not 4, and the actual order of the response parameters is max_size, offset, and CRC.

The message sequence charts only detail some of the orders, and while we can read the code for the rest, we were wondering if we were missing some documentation where each request is detailed in a more byte-by-byte manner.

Where can we find this information?

Thank you!

Andrés

Related