dfu-buddy icon indicating copy to clipboard operation
dfu-buddy copied to clipboard

Question about DFU vs DfuSe

Open iddq opened this issue 9 months ago • 3 comments

Plain DFU is not supported yet, only DfuSe devices like STM32.

Hello,

Can you help me to find some references please what is the difference between DFU and DfuSe?

Thank you.

iddq avatar Nov 29 '23 10:11 iddq

A DFU file is just a raw image that has a 16 byte suffix appended. The format of the suffix is described in Appendix B of https://www.usb.org/sites/default/files/DFU_1.1.pdf. Since the file does not specify any information about memory layout, it can only be transferred as whole, leaving it up to the device to process it.

A DfuSe file is a DFU file with the mentioned suffix, but the image itself has a specific format. This allows to define several sections at different memory addresses. The format is described in document UM0391 from ST, unfortunately there's currently no direct link to it on the ST site. You can try http://rc.fdr.hu/UM0391.pdf as alternative.

sourcebox avatar Nov 29 '23 11:11 sourcebox

I found that I can add a DFU suffix with this tool: https://dfu-util.sourceforge.net/dfu-suffix.1.html Then dfu-buddy will recognize it as a "Plain" DFU file.

JohnAZoidberg avatar Apr 13 '24 16:04 JohnAZoidberg

I found that I can add a DFU suffix with this tool: https://dfu-util.sourceforge.net/dfu-suffix.1.html Then dfu-buddy will recognize it as a "Plain" DFU file.

Yes, DFU buddy will recognize the file correctly. But it can't be flashed because plain files require a different handling on the USB layer - which is currently not implemented.

sourcebox avatar Apr 13 '24 22:04 sourcebox