What is DFU leave mode?

hi @kennethlimcp,

There is a simple question, :smile: in my mind that what is dfu leave mode ?

following three binary data will be placed same address ? then , does the core still run ?

dfu-util -d 1d50:607f -a 0 -s 0x08005000:leave -D core-firmware.bin
dfu-util -d 1d50:607f -a 0 -s 0x08005000:leave -D cc3000_patch.bin
dfu-util -d 1d50:607f -a 0 -s 0x08005000:leave -D deep_update.bin

thx, hope your answser,

The command :leave simply tells the core to reset after the firmware flashing is completed.

You will see the core reboot and run user firmware as per normal after DFU transfer is done.

Hope this helps :slight_smile:


@kennethlimcp, what i am also confusing is the core-firmware.bin will be replaced by cc3000_patch.bin on the upon command line execution, the same, cc3000_patch.bin will aslo be replaced by deep_update.bin… then , the Spark core will not work without core-firmware.bin,

When you flash the CC3000 firmware, the user firmware is replaced with this. Same goes to deep_update.

Therefore, after patching the core, you will need to restore the original user firmware into it. Which explains why flashing core-firmware (actually any other user firmware is fine too) is a required step. :wink:

What are you stuck at?

oh, i got it , I now for it, nothing stuck, just confuse the flow.now clear for it .

but, on the other hand , i am really stucking for a whole day, can you check for it ? haha :smile:

The :leave is not valid on older versions of dfu-util such as that in the Ubuntu repositories. If you find you are having a problem you might omit :leave in which case you will need to press the reset button yourself on the Core (or perhaps use the -e option).

1 Like

Thx, @psb777, i got you. maybe i will face this problem in Ubuntu in someday…