Quick Answer
To flash Betaflight firmware, back up your current settings with a CLI dump, pick the exact firmware target that matches your flight controller, put the board into DFU mode, select full chip erase, flash the firmware, then restore your settings from the backup. Most errors come from picking the wrong target or a driver issue on Windows.
Why You Might Need to Flash Firmware
You flash firmware when you set up a brand-new flight controller, when you want to update to a newer Betaflight version, or when you need to fix a board that is behaving strangely and a fresh flash may solve it. If you have never set up a board before, read our Betaflight setup guide alongside this one, since flashing usually comes right before that setup process.
Step 1: Back Up Your Settings With a CLI Dump
Before you flash anything, save your current configuration. Open the CLI tab in the Betaflight Configurator and type:
`` dump ``
Copy the full output and save it as a text file. This backup lets you restore your PID tune, modes and rates after flashing, instead of starting from scratch. Skipping this step is the single most common regret pilots have after a flash.
Step 2: Choose the Right Firmware Target
Every flight controller model has a specific firmware target that matches its exact hardware layout. Flashing the wrong target can leave features not working correctly, even if the flash appears to succeed.
Find your target by checking:
- The exact board name printed on the flight controller or its packaging
- The board's manual or product page, which usually lists the correct target name
- The current target already shown in your Betaflight Configurator, if you are just updating an existing board
If you are unsure which board you have, our guide on choosing a flight controller explains how boards are typically named and labeled.
Step 3: Put the Board Into DFU Mode
DFU mode is a special mode that lets your computer flash firmware directly to the chip. Most boards enter DFU mode automatically when you plug in USB while holding a boot button, or through a software command in the Configurator's Firmware Flasher tab.
Once in DFU mode, the Configurator should show the board connected as "DFU" rather than showing a normal COM port. If it does not, check your USB cable and try a different USB port on your computer.
Step 4: Choose Full Chip Erase
In the Firmware Flasher tab, after selecting your target, check the box for full chip erase before flashing. This clears old firmware and settings completely, which avoids leftover data causing strange behavior on the new firmware version.
Skipping full chip erase when moving between very different firmware versions is a common cause of odd, hard-to-diagnose problems after flashing.
Step 5: Flash and Wait
Click flash and wait for the process to finish completely. Do not unplug the board or close the Configurator during this step. A successful flash usually shows a progress bar reaching completion and a confirmation message.
If the flash fails partway through, do not panic. In most cases you can simply put the board back into DFU mode and try again.
Step 6: Restore Your Settings
Once the new firmware is flashed, the board will reconnect as a normal flight controller. Open the CLI tab again, paste your saved dump from Step 1, and run it. This restores your previous PID tune, modes and rates in one go, rather than reconfiguring everything by hand.
Always check your motor direction and failsafe again after restoring, since firmware updates can occasionally change default behavior even with a restored dump.
Common Errors and How to Fix Them
| Problem | Likely cause | Fix |
|---|---|---|
| Board not detected in DFU mode | Bad USB cable or wrong drivers on Windows | Try a data-capable USB cable and reinstall the driver using Zadig or the Betaflight driver installer |
| Flash fails partway through | USB interruption or a slow computer port | Use a different USB port, ideally directly on the motherboard rather than a hub |
| Board flashes but will not arm afterward | Settings not restored, or wrong target flashed | Restore your CLI dump, and confirm the target matches your exact board model |
| Configurator shows the wrong or no COM port | Driver conflict on Windows | Reinstall the correct driver, and check Windows Device Manager for unknown devices |
If your board still will not arm after a fresh flash and restored settings, our guide on why a drone won't arm covers the most common causes beyond firmware issues.
Driver Problems on Windows
Windows sometimes struggles to recognize a flight controller in DFU mode without the correct driver installed. If your board is not appearing, open Device Manager and look for an unrecognized device. Installing the correct USB driver, often through a tool like Zadig, usually solves this. Mac and Linux users rarely run into this specific problem.
After a Successful Flash
Once your firmware is flashed and your settings restored, go through your usual pre-flight checks again: motor direction, modes, OSD display and failsafe. A fresh flash is a good moment to also review your gyro settings, since new Betaflight versions sometimes change default filtering behavior.