Saturday, June 27, 2026

How to Flash and Update Betaflight Firmware on a Flight Controller

In this tutorial, I’ll show you how to flash and update Betaflight firmware on your FPV drone’s flight controller. I’ll also cover common issues and troubleshooting tips you might encounter during the process.

sponsor-banner

Some of the links on this page are affiliate links. I receive a commission (at no extra cost to you) if you make a purchase after clicking on one of these affiliate links. This helps support the free content for the community on this website. Please read our Affiliate Link Policy for more information.

Flashing firmware might reset all your settings to default, so you may need to reconfigure your drone from scratch before the first flight. Follow this step-by-step setup guide: https://oscarliang.com/betaflight-firmware-setup/

What Is Flashing Firmware?

Betaflight is the software that runs on your flight controller, just like Windows runs on your PC. Like any software, new versions are released with bug fixes, new features, and performance improvements. Installing a new version of Betaflight onto your flight controller is what we call “flashing” the firmware.

Do You Need to Flash New Firmware?

Think twice before updating, especially if you’re a beginner.

Updating (flashing) firmware can reset all your settings, meaning you’ll have to set up the drone again from scratch. Ask yourself these questions before flashing:

  • Is your quad flying fine? → If yes, you probably don’t need to update.
  • Do you know how to configure Betaflight from scratch? → If not, hold off for now.

Getting Betaflight Configurator

Betaflight Configurator is the tool used to configure and flash your flight controller.

You can now access it directly online in your browser — no installation needed: https://app.betaflight.com/

Betaflight Configurator 2025.12 Web App

If you prefer the traditional desktop version, you can download and install it from GitHub: https://github.com/betaflight/betaflight-configurator/releases/latest

Backup First

Before flashing new firmware, always back up your existing settings. There are a few ways to do this, as explained in my backup tutorial: https://oscarliang.com/backup-restore-betaflight-config/.

The simplest method is to go to the Presets tab in Betaflight Configurator and click “Save Backup” — this will save your current settings in a text file.

Connecting the Flight Controller

Plug in a USB cable to your flight controller.

Stp Hobby Armor 5c Bnf Fpv Drone Rushfpv Usb

Open Betaflight Configurator. Select the COM port that corresponds to your flight controller.

Tip: If you’re unsure which COM port to select, unplug and replug your FC — watch which port disappears and reappears in the list. That’s the correct one.

Betaflight Configurator 2025.12 Select Device Connect Usb Com Port

Firmware Flasher Explained

To flash Betaflight, go to the “Firmware Flasher” tab in the left-hand panel of the Configurator. This is where you’ll select your target board, choose a firmware version, and start the flashing process.

Betaflight Configurator 2025.12 Firmware Flasher

Choosing the Right Target

Betaflight Configurator 2025.12 Firmware Flasher Target List

Every flight controller has a unique firmware target — this ensures compatibility with your board’s hardware and design.

There are two ways to find the right target:

  • Auto-Detect: Click “Detect” to let Betaflight automatically identify your board.
  • Manual Selection: If detection fails, select your board manually from the dropdown menu. You can find your board name by typing version in the CLI tab (follow instructions here: https://oscarliang.com/identify-betaflight-firmware-target/).

Warning: Flashing the wrong target can cause missing sensors, malfunctioning features, or even brick your FC. If this happens, you can usually recover it by following this guide: https://oscarliang.com/cannot-connect-to-naze32-brick-fix/

Choosing the Firmware Version

Next, select the firmware version you want to flash — usually the latest stable release.

Betaflight Configurator 2025.12 Firmware Flasher Release Versions

If you’d like to test cutting-edge updates, enable “Show release candidates” to access any beta versions that might be available. However, proceed with caution: release candidates (RC) are still being tested and may contain bugs. For most users, stick with stable releases for reliability.

Betaflight Configurator 2025.12 Firmware Flasher Release Candidates

Flashing Options Explained

Click “Enable Expert Mode” to unlock all available flashing options. Here’s what each does:

Betaflight Configurator 2025.12 Firmware Flasher Options Expert Mode

  • No Reboot Sequence: Normally leave this disabled. Most flight controllers automatically reboot into DFU mode when flashing. Enable it only if your FC fails to reboot correctly during the flash process.
  • Flash On Connect: Leave this disabled. Enabling it will automatically start flashing as soon as a serial port is detected, but this will bypass the backup reminder.
  • Full Chip Erase: Recommended. It completely wipes existing configurations to avoid potential conflicts or leftover settings from older firmware.
  • Manual Baud Rate: Used for boards that don’t support the default flashing speed or for flashing over Bluetooth. When flashing via USB, just leave it at the default 256000.

Build Configuration

Betaflight Configurator 2025.12 Firmware Flasher Build Options

Build Configuration (also known as Cloud Build System) allows you to customize your Betaflight firmware to include only the features you actually need. This helps minimize firmware size, which is important because the memory on flight controller processors is limited.

It might not be a big deal now, but as Betaflight continues to grow in complexity, this feature will become increasingly useful. . As I mentioned in my FC processor guide, F411 and F722 chips have only 512KB of flash memory. Using Build Configuration helps make the firmware smaller, prolonging their lifespan.

Default settings might work, but I highly recommend going through the list to add/remove features based on your needs.

  • Core Only: Leave this disabled. This option builds firmware that includes only low-level hardware drivers — most Betaflight features will be missing.
  • Radio Protocol: Only one receiver protocol can be installed at a time. For ExpressLRS or Crossfire receivers, select CRSF.
  • Telemetry Protocol: For CRSF, leave it as default (telemetry is built-in).
  • OSD Protocol: Digital for DJI, Walksnail, or HDZero. Analog for analog FPV system.
  • Motor Protocol: Choose DSHOT unless you have a specific reason to use another protocol (e.g., for brushed motors or legacy ESCs).
  • Other Options: Enable the features you use and disable those you don’t. This keeps your firmware lightweight and avoids unnecessary memory usage.

Here are two examples based on my own setups:

Analog Freestyle Quad (No GPS):

  • LED Strip
  • SoftSerial
  • VTX (for VTX Table configuration — only needed for analog FPV system)

DJI O4 Pro Long-Range Quad (With GPS):

  • GPS
  • Magnetometer
  • Altitude Hold
  • Position Hold

Loading Firmware

Once you’re ready to flash, click “Load Firmware [Online]” to download the firmware file directly from Betaflight’s server.

Tip: If you’ve already downloaded the firmware file elsewhere (for example, from your flight controller manufacturer’s website or from a friend), you can use “Load Firmware [Local]” to load that file manually.

Once the firmware is successfully loaded into the Configurator, the “Flash Firmware” button will become available.

Before flashing begins, Betaflight will prompt you to save your CLI text file — this acts as a backup of your current configuration. Save it somewhere safe, then the flashing process will start.

Flashing typically takes one to two minutes.

Problems with Flashing or Driver Issues

If you’re having trouble flashing firmware, you may need to manually put your FC in bootloader mode (also known as DFU mode). Follow this guide: https://oscarliang.com/dfu-mode/. To sum it up:

  • hold down the bootloader button while connecting the USB cable
  • or type bl in CLI

If this is the first time you’ve connected your flight controller to your PC, you might need to install the DFU driver so it’s recognized correctly. The easiest way is to use a free tool called ImpulseRC Driver Fixer (download it here), which automatically detects and installs the correct driver.

Still stuck? Check out my detailed driver troubleshooting guide: https://oscarliang.com/fc-driver-issues-flash-firmware/

After Flashing Firmware

Once flashing completes, you can reconnect to your flight controller by clicking “Connect” in the top-right corner of Betaflight Configurator.
You might see a few warnings — here’s what they mean and how to fix them:

Betaflight Configurator 2025.12 After Flashing Warning

Accelerometer Is Not Calibrated

You may see: “The accelerometer is enabled but not calibrated.”

Fix:

  • Place your drone on a level surface.
  • Go to the Setup tab.
  • Click “Calibrate Accelerometer”.

No Motor Output Protocol Selected

You may see: “There is no motor output protocol selected”.

Fix:

  • Go to the Motors tab.
  • Under ESC/Motor Protocol, choose a protocol such as DShot300 or DShot600, depending on your PID loop rate.
    • DShot300 for 4kHz
    • DShot600 for 8kHz
  • Click “Save and Reboot” in the bottom left corner.

In most modern builds, DShot300 and DShot600 are the go-to choices.

Setup Your Flight Controller

You’ll need to set up your flight controller for the first flight. Follow my detailed step-by-step setup guide here: https://oscarliang.com/betaflight-firmware-setup/

Conclusion

Flashing and updating Betaflight firmware can seem intimidating at first, but once you understand how firmware targets, drivers, and bootloader mode work, it becomes a quick and straightforward process. Always back up before flashing, double-check your firmware target, and take your time — it’s the safest way to keep your drone flying smoothly and up to date.

Edit History

  • Sep 2018 – guide created
  • Oct 2022 – updated for BF4.3
  • Jan 2023 – updated for BF4.4
  • Nov 2023 – updated instructions
  • Nov 2025 – updated for BF2025.12 (BF4.6)

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles