Dfu-util

Introduction

Updating firmware with dfu-util

You will need dfu-util 0.5 or newer to download dfu files to the DSO Nano. Older dfu-util versions will not work. The DSO Nano, and many other devices based on ST Micro’s microcontrollers, uses ST Micro’s own DFU extensions (DfuSe) which are not compatible with the DFU standard.

You can find a dfu-util 0.8 package for Ubuntu 10.04 in Tormod’s PPA. Just download and install the right .deb package. The same package should install fine in any later Ubuntu version or Debian unstable as well. For other operating systems you may have to build dfu-util yourself as described at the dfu-util home page.

To download a .dfu firmware file from your computer to your Nano, run this command

dfu-util -a 0 -D your-firmware-file.dfu

You might have to rerun it a couple of times until it succeeds. If you get “permission denied” errors, prefix the command line with “sudo “. Do not forget to repeat the command with all needed firmware files (APP and LIB).

Downloading a non-dfuse file to a dfuse device (advanced)

A standard DFU device will accept a raw binary file from the computer and load it into the right place in flash memory. On the other hand, with DfuSe, the addresses are given by the .dfu file and the computer has to tell the device where to load it.

So to download a raw binary file to a DfuSe device you have to know the target address.

Example, to download a raw binary file (in case you are developing):

dfu-util -a 0 --dfuse-address 0x08004000 -D your-lib.bin
dfu-util -a 0 --dfuse-address 0x0800C000 -D your-app.bin

How to build dfu-util from source

See the build instructions at the dfu-util home page.

Original forum posts and discussion:

Official home page

Help us make it better

Thank you for choosing Seeed. A couple of months ago we initiated a project to improve our documentation system. What you are looking at now is the first edition of the new documentation system. Comparing to the old one, here is the progresses that we made:

  • Replaced the old documentation system with a new one that was developed from Mkdocs, a more widely used and cooler tool to develop documentation system.
  • Integrated the documentation system with our official website, now you can go to Bazaar and other section like Forum and Community more conveniently.
  • Reviewed and rewrote documents for hundreds of products for the system’s first edition, and will continue migrate documents from old wiki to the new one.

An easy-to-use instruction is as important as the product itself. We are expecting this new system will improve your experience when using Seeed’s products. However since this is the first edition, there are still many things need to improve, if you have any suggestions or findings, you are most welcome to submit the amended version as our contributor or give us suggestions in the survey below, Please don’t forget to leave your email address so that we can reply.

Happy hacking