cancel
Showing results for 
Search instead for 
Did you mean: 

DfuSe DFU File Manager Bug?

Balázs VARGA
Associate II

I have found a possible bug in DfuSe DFU File Manager. I extracted a HEX file from a DFU file, but the addresses in the resulting HEX file seem to be mangled. The HEX file looks like this:

:020000040800F2
:203000005071002069E9030895DE030897DE030899DE03089BDE03089DDE030800000000E8
:203020000000000000000000000000009FDE0308A1DE030800000000A3DE0308A5DE030864
[... lots of other data ...]
:20FFE000A1FD6B7ACDF8008002465946FFF73EFEFFF7A6FFB8B2801D484512DA14F8010BED
:200000003070BF1D14F8010B70706820B0709DF80600F0709AF80100307168207071B61D59
[... more data ...]

The first line sets the base address to 0x08000000. Subsequent lines specify data starting from 0x08003000. When it reaches 0x0800FFE0, the next 32 bytes of data are written to 0x08000000. I suspect that this is not intentional, but rather a simple address overflow bug.

I tried inserting an Extended Segment Address record between the two problematic lines:

:20FFE000A1FD6B7ACDF8008002465946FFF73EFEFFF7A6FFB8B2801D484512DA14F8010BED
:020000021000EC
:200000003070BF1D14F8010B70706820B0709DF80600F0709AF80100307168207071B61D59

I think it fixed the issue, the contents of the HEX file now match the contents of the BIN file generated from the DFU.

0 REPLIES 0