DfuSe
This file was uploaded by the user Droid Mirror on 29-Sep-2019. The file weighs 123.86kb in size and so far, it has been downloaded 71 times! You can get this file.
DFU (Drainage Fixture Unit Values) is defined by the the Uniform Plumbing Code (UPC) and can be used to determine required drainage capacities from fixtures and their service systems. A Fixture Unit is not a flow rate unit but a design factor based on the rate of discharge, time of operation and frequency of use of a fixture. DfuSe (DFU with ST Microsystems extensions) is a protocol based on DFU 1.1. However, in expanding the functionality of the DFU protocol, ST Microsystems broke all compatibility with the DFU 1.1 standard. DfuSe devices report the DFU version as '1.1a'. This manual page documents briefly the dfu-tool command. Dfu-tool allows a user to write various kinds of firmware onto devices supporting the USB Device Firmware Upgrade protocol. This tool can be used to switch the device from the normal runtime mode to `DFU mode' which allows the user to read and write firmware. Download dfu-util for free. Multiplatform USB DFU host utility. 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.
Dfu Tool Download
DfuSe (DFU with ST Microsystems extensions) is a protocol based on DFU 1.1. However, in expanding the functionality of the DFU protocol, ST Microsystems broke all compatibility with the DFU 1.1 standard. DfuSe devices report the DFU version as '1.1a'.
DfuSe can be used to download firmware and other data from a host computer to a conforming device (or upload in the opposite direction) over USB similar to standard DFU.
The main difference from standard DFU is that the target address in the device (flash) memory is specified by the host, so that a download can be performed to parts of the device memory. The host program is also responsible for erasing flash pages before they are written to.
.dfu files
A special file format is defined by ST Microsystems to carry firmware for DfuSe devices. The file contains target information such as address and alternate interface information in addition to the binary data. Several blocks of binary data can be combined in one .dfu file. The companion Python script dfuse-pack.py can be used to create, check or unpack such files.
Alternate interfaces
Different memory locations of the device may have different characteristics that the host program (dfu-util) has to take into considerations, such as flash memory page size, read-only versus read-write segments, the need to erase, and so on. These parameters are reported by the device in the string descriptors meant for describing the USB interfaces. The host program decodes these strings to build a memory map of the device. Different memory units or address spaces are listed in separate alternate interface settings that must be selected according to the memory unit to access.
Note that dfu-util leaves it to the user to select alternate interface. When parsing a .dfu file it will skip file segments not matching the selected alternate interface. Also, some DfuSe device firmware implementations ignore the setting of alternate interface and deduct the memory unit from the address, since they have no address space overlap.
DfuSe special commands
DfuSe special commands are used by the host program during normal downloads or uploads, such as SET_ADDRESS and ERASE_PAGE. Also the normal DFU_DNLOAD and DFU_UPLOAD commands have special implementations in DfuSe. Many DfuSe devices also support commands to leave DFU mode, read unprotect the flash memory or mass erase the flash memory. dfu-util (from version 0.7) supports adding 'leave', 'unprotect', or 'mass-erase' to the -s option argument to send such requests in combination with a download request. These modifiers are separated with a colon.
Some DfuSe devices have their DfuSe bootloader running from flash memory. Erasing the whole flash memory would therefore destroy the DfuSe bootloader itself and practically brick the device for most users. Any use of modifiers such as 'unprotect' and 'mass-erase' therefore needs to be combined with the 'force' modifer. This is not included in the examples, to not encourage ignorant users to copy and paste such instructions and shoot themselves in the foot.
Devices based on for instance STM32F103 all run the bootloader from flash, since there is no USB bootloader in ROM.
For instance STM32F107, STM32F2xx and STM32F4xx devices have a DfuSe bootloader in ROM, so the flash can be erased while keeping the device available for USB DFU transfers as long as the device designers use this built-in bootloader and have not implemented another DfuSe bootloader in flash that the user is dependent upon.
Well-written bootloaders running from flash will report their own memory region as read-only and not eraseable, but this does not prevent dfu-util from sending a 'unprotect' or 'mass-erase' request which overrides this, if the user insists.
Example usage
Flashing a .dfu (special DfuSe format) file to the device:
Reading out 1 KB of flash starting at address 0x8000000:
Flashing a binary file to address 0x8004000 of device memory and ask the device to leave DFU mode:
[Back to dfu-util main page]
Dfu Tool Download
Essential utilities, firmware and models for use with ImpulseRC products.
ImpulseOSD Software Download
Windows - Full featured, drag and drop screen designer, configuration of all settings.
Dfu-tool Convert
Mac - Simple tool for backup/restore and firmware update.
Full documentation will be maintained as a Wiki on Github - https://github.com/ImpulseRC/OSD
Driver Fixer
This application will attempt to install the correct serial port and DFU drivers for using STM32 F3, F4 and F7 based flight controllers on Windows. If you have trouble running the Driver Fixer you may need to install the Microsoft .NET Framework v4.5
Apex Frame Accessory 3D Printable Files
STL files for the injection moulded pieces as well as various antenna mounts, plus a DXF file for a HD camera mount base, are available for free download under the Creative Commons license.
Download from the ImpulseRC Thingiverse Page
Micro Apex Frame Accessory 3D Printable Files
STL files for the injection moulded pieces as well as antenna mounts, plus a DXF file for a HD camera mount base, are available for free download under the Creative Commons license.
Download from the ImpulseRC Thingiverse Page
Helix / Mercury Video Transmitter
Since the custom VTX/OSD firmware changes certain defaults you must use this version of the MWOSD GUI to configure!
Australian firmware locked to legal frequencies and 25mW output power. If you ordered your Helix in Australia you already have this flashed.
Fully unlocked international firmware, gives all supported channels and selectable 25/200/500mW output power. If you ordered your Helix from outside of Australia you already have this flashed.
Reverb 3D Printable GoPro Couch Mount
These files are provided solely for personal use. The design remains the property of Brain3D and most not be offered for sale as a printed part.