KretFPV
Betaflight

The open-source firmware that powers almost every FPV drone.

Betaflight is the brain behind your build. This guide walks you through flashing firmware, binding the receiver, safety configuration, and tuning PIDs and rates — written so you can read it in 20 minutes and actually fly tonight.

The 6 topics that matter

From flash to first flight

Go through these in order on your first build. After that, you'll mostly just live in Modes, Receiver, and Motors.

Step 1

What Is Betaflight?

Open-source flight firmware that runs on almost every FPV drone made today.

Betaflight is the open-source firmware that turns a flight controller chip into a quadcopter brain. It started as a fork of Cleanflight and is now the reference firmware for freestyle and racing.

You configure Betaflight using the Betaflight Configurator — a Chrome/Brave app or standalone GUI that connects to your FC over USB and exposes every setting: ports, modes, motors, OSD, filters, PIDs, and rates.

Modern Betaflight (4.4+) ships with sensible defaults. For most beginner builds, the only required configuration is: ports, receiver, motor direction, modes, and battery thresholds.

Step 2

Firmware Flashing

Always flash the latest Betaflight before your first flight — factory builds are usually old.

Plug the FC into USB while holding the boot button (or with no battery connected). Open Configurator → Firmware Flasher.

Pick your target (e.g., SPEEDYBEEF405V4), the latest stable release, enable 'Full chip erase' and 'Manual baud rate 256000', then click Flash.

After flashing, the FC reboots. Reconnect, and you should see the green CLI light. Time to configure.

  • Backup your current diff before flashing if upgrading: CLI → 'diff all' → save to a text file.
  • Choose 'Full chip erase' on major version upgrades to avoid migration bugs.
  • After flashing, run 'defaults nosave' in CLI if anything is misbehaving.
Step 3

Receiver Binding

Bind your RX to your radio so the FC sees your stick inputs.

For ELRS, the recommended method is the bind phrase: flash both TX module and RX with the same bind phrase in ExpressLRS Configurator. They auto-pair on first power-up — no button-mashing required.

In Betaflight → Ports tab, set the UART connected to your RX to 'Serial RX'. Save.

In Receiver tab, choose Serial CRSF, set 420000 baud, and you should see channels move when you wiggle the sticks.

  • Set arming mode to a 3-position switch — never an automatic toggle.
  • Confirm channel mapping (AETR is Betaflight default).
  • Run a range test before the first real flight (walk out, watch LQ).
Step 4

Safety Setup

Failsafe, arming, motor stop, and crash-flip protections that keep fingers attached.

In Failsafe tab: set Stage 2 to 'Drop' for default safety — motors cut on signal loss. Use 'Land' or 'GPS Rescue' only after you've configured and tested them.

In Configuration tab: enable 'Motor Stop' so motors don't idle when disarmed, and 'Disarm motors regardless of throttle value'.

Set runaway takeoff prevention on. Set arming disable flags so the quad refuses to arm if any of MSP, BARO, GPS, MOTOR_PROTOCOL etc. are misconfigured.

  • Test failsafe by powering off your radio with props off — motors must stop.
  • Always props-off the first time you arm a new quad — confirm motor direction and RPM telemetry.
  • Keep an emergency disarm switch on a momentary toggle.
Step 5

Basic Configuration

The 5 tabs you must visit before flying a freshly flashed quad.

Ports — assign UARTs for Serial RX, SmartAudio (VTX), and any peripherals.

Configuration — set DShot300/600, enable Bidirectional DShot for RPM filtering, set min/max cell voltage, motor stop, and craft name.

Receiver — Serial CRSF, channel map AETR, verify channels move.

Motors — props off, check direction; reverse motors that spin the wrong way using BLHeli/AM32 GUI.

Modes — set Arm to AUX1, Angle/Acro toggle to AUX2, Beeper to a momentary switch.

Step 6

PIDs and Rates

How the quad reacts to your sticks (rates) and how hard it corrects errors (PIDs).

Don't tune PIDs until filters are right. Modern Betaflight RPM filtering, when correctly configured, makes most stock tunes feel great.

Rates: 'Actual' rates are the modern recommendation. Center sensitivity ~50–70 deg/s, max around 900 deg/s for freestyle.

PIDs: start with the preset for your size class. Raise P until it oscillates, back off 20%. Raise D for crispness, back off if hot motors. I gain handles trim.

  • Verify motors run cool (under 60°C / 140°F) after a 3-minute flight before increasing gains.
  • Use blackbox logs in PID Toolbox to read what's happening, not your gut.
  • Tune one axis at a time and confirm with throttle-test maneuvers.

Props off, always.

Every time you connect to Betaflight, remove the propellers first. Motors can spin unexpectedly when calibrating, testing channels, or playing with modes. Props cost a few dollars; fingers and goggles cost more.