Month: December 2015

Firmware update using DFU to STM32F407

This is the way I did the firmware update using DFU on my board:

$ sudo apt-get install dfu-util

$ sudo dfu-util -d 0483:df11 -a 0 -s 0x08000000 -D nuttx.bin
dfu-util 0.8

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2014 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util@lists.gnumonks.org

dfu-util: Invalid DFU suffix signature
dfu-util: A valid DFU suffix will be required in a future dfu-util release!!!
Opening DFU capable USB device...
ID 0483:df11
Run-time device DFU version 011a
Claiming USB DFU Interface...
Setting Alternate Setting #0 ...
Determining device status: state = dfuERROR, status = 10
dfuERROR, clearing status
Determining device status: state = dfuIDLE, status = 0
dfuIDLE, continuing
DFU mode device DFU version 011a
Device returned transfer size 2048
DfuSe interface name: "Internal Flash  "
Downloading to address = 0x08000000, size = 131916
Download	[=========================] 100%       131916 bytes
Download done.
File downloaded successfully

The STM32 needs BOOT0 at logic level 1 and BOOT1 logic level 0 to enter in DFU mode during Reset/Power-ON.