# DFU Runtime > **Example source:** `examples/device/dfu_runtime` A minimal device that exposes a DFU runtime interface, advertising to the host that it can be switched into DFU (bootloader) mode. ## What it does - Exposes a single DFU runtime interface alongside normal operation. - On a DFU_DETACH request, it does not actually reboot into a bootloader; instead it speeds up the LED blink as an indicator (this example is intentionally minimal). - Provides a BOS / Microsoft OS 2.0 descriptor so Windows binds the WinUSB driver. - LED blink rate indicates bus state (not mounted / mounted / suspended / DFU detach). ## USB Descriptors | Interface | Class driver | |-----------|--------------| | 0 | DFU Runtime | ## Configuration Notable `tusb_config.h` settings: ```c #define CFG_TUD_DFU_RUNTIME 1 ``` ## Building CMake: ```bash mkdir build && cd build cmake -DBOARD=raspberry_pi_pico .. cmake --build . ``` Make: ```bash make BOARD=raspberry_pi_pico all ``` ## Try it List the device; it appears in Runtime mode: ```bash dfu-util -l ``` Request a switch to DFU mode: ```bash dfu-util -e ``` This sends a DETACH request. Since the example is minimal it does not enter a real bootloader; it instead changes the LED to a fast blink as confirmation.