dfu-util is a host side implementation of the DFU 1.0 and DFU 1.1 specifications of the USB forum. DFU is intended to download and upload firmware to/from devices connected over USB. It ranges from small devices like micro-controller boards to mobile phones. Using dfu-util you can download firmware to your DFU-enabled device or upload firmware from it. dfu-util has been tested with the Openmoko Neo1973 and Freerunner and many other devices.
See the manual page for examples of use.
The program dfu-suffix can be used to add, check or remove a DFU firmware file suffix, recommended for safely matching a firmware file and device. The program dfu-prefix can be used with TI LMDFU/Stellaris or NXP LPC file formats.
Releases of the dfu-util software can be found in the releases folder. The current release is 0.11.
We offer binaries for Microsoft Windows and some other platforms. dfu-util uses libusb 1.0 to access your device, so on Windows you have to register the device with the WinUSB driver (alternatively libusb-win32 or libusbK), please see the libusb wiki for more details.
Mac OS X users can also get dfu-util from Homebrew with "brew install dfu-util" or from MacPorts.
Most Linux distributions ship dfu-util in binary packages for those who do not want to compile dfu-util from source. On Debian, Ubuntu, Fedora and Gentoo you can install it through the normal software package tools. For other distributions (namely OpenSuSe, Mandriva, and CentOS) Holger Freyther was kind enough to provide binary packages through the Open Build Service.
Development happens in a GIT repository. Browse it via the web interface or clone it with:
git clone git://git.code.sf.net/p/dfu-util/dfu-util
See our build instructions for how to build the source on different platforms.
This software is licensed under the GPL version 2.
If you have questions about the development or use of dfu-util please subscribe and post to the dfu-util mailing list. Bug reports can be filed directly in the bug tracker.
dfu-util was originally written by Harald Welte partially based on code from dfu-programmer 0.4 and is maintained by Tormod Volden.