The Betaflight Settings I Paste Into All My FPV Drones

| Comments

I’ve been replacing the Helio Spring flight controllers in my 5” freestyle quads, and I’ve been building and repairing a couple of HD micros over the last few months. I had to configure Betaflight on all these quadcopters when I set up the new hardware, then I had to configure them all again after Betaflight 4.0 was released.

I don’t manually reconfigure each quad by hand. I always save a diff before upgrading a quad. If I’m upgrading from Betaflight 3.5.1 to 3.5.3, or from one nightly build to another, I’ll just paste that entire diff in after flashing. It’ll be back up and running in seconds.

My 4-inch Kestrel Build

You can’t just paste you diff back in when upgrading from 3.5.3 to 4.0. The new version just doesn’t fly the same. Settings that may have flown well before may fly poorly in 4.0, or they may even smoke your motors!

What about setting up a fresh quad? Can you just paste a diff of one of your other quads in and call it a day? Sometimes you can, but I have a special diff file set aside. I’ve pruned out all the PID, filtering, and serial settings. All that’s left are the settings that should work on all my quads: rates, switches, Crossfire settings, and OSD settings.

I’m going to walk through which settings I keep, why they’re important, and why they work well on every quad in my bag, from my TinyHawk to my 5” Flowrides!


I used to paste in settings related to PID loop timing, ESC protocol, and minimum throttle. Those settings vary too much between my various builds. My blheli_s builds may use DSHOT600 or Multishot, while my blheli32 builds always use DSHOT1200. I usually have to fix it anyway, so why bother pasting it in?

feature -AIRMODE

I disable air mode because I have air mode on a switch. It is nice to be able to drop back to rate mode when I want to skid under a car!

The only quad I own that doesn’t support telemetry is my TinyHawk, so I enable it here as well.

beacon RX_SET

I don’t use buzzers on any of my builds, so I enable the DSHOT beacon.

set small_angle = 180

Before Betaflight 4.0, I usually left the accelerometer disabled, but I do enable it on some quads, like my TinyHawk. In the event that I do enable it, I want to make sure my quad allows me to arm while it is upside down.

Betaflight 4.0 can show G-force on the OSD, and it can show you maximum G-force reading on the summary screen. This has encouraged me to enable the accelerometer, so I’m glad I’ve been pasting the small_angle into all my builds!

Radio settings

Most of my builds use TBS Crossfire, so I don’t mind pasting that in.

set serialrx_provider = CRSF

My TinyHawk is my only quad using SBUS.

rxrange 0 988 2011
rxrange 1 988 2011
rxrange 2 988 2011
rxrange 3 988 2011

The goal is to have the ends of your stick travel reading 1000 and 2000 in Betaflight. I tweaked the settings in my Taranis, but it was impossible to get them spot-on. They would either read a bit high, or a little low. For a long time, I flew with them overshooting the 1000 and 2000 marks by 11 or 12 nanoseconds.

The rxrange command lets you set those limits correctly. My receiver tab now reads exactly 1000 to 2000 nanoseconds for my sticks.

rxfail 4 s 1000

I fly with my RSSI or Link Quality on channel 5. This lets me display my control link’s quality on my OSD. When you failsafe, your RSSI or Link Quality will just get stuck, so it might not be obvious to you that your signal is gone.

This command sets channel 5 to the minimum value. That way, when you do failsafe, your OSD will start blinking at you!

set vtx_band = 5
set vtx_power = 3
set vtx_low_power_disarm = ON
set vtx_freq = 5658
set vcd_video_system = NTSC

I fly with the same people most of the time, and we each have a designated channel. These settings put me on Raceband 1 with power level 3.

The vtx_low_power_disarm settings puts my VTX at 25 mW when I’m not armed. This helps keep me from knocking my friends out of the air when I plug in or land near us.

OSD settings

OSD settings and positions are safe to paste from one version of Betaflight to another. Sometimes the names change, but that won’t hurt anything. You’ll just end up with something missing from your HUD!

set osd_units = IMPERIAL
set osd_warn_batt_not_full = OFF
set osd_warn_batt_warning = OFF
set osd_warn_batt_critical = OFF
set osd_warn_visual_beeper = OFF
set osd_warn_core_temp = OFF
set osd_cap_alarm = 950
set osd_vbat_pos = 44
set osd_rssi_pos = 2448
set osd_tim_1_pos = 407
set osd_tim_2_pos = 2422
set osd_remaining_time_estimate_pos = 343
set osd_flymode_pos = 333
set osd_throttle_pos = 2409
set osd_vtx_channel_pos = 2415
set osd_ah_pos = 200
set osd_current_pos = 2433
set osd_mah_drawn_pos = 2441
set osd_craft_name_pos = 2453
set osd_gps_speed_pos = 2369
set osd_gps_lon_pos = 82
set osd_gps_lat_pos = 65
set osd_gps_sats_pos = 2390
set osd_home_dir_pos = 2395
set osd_home_dist_pos = 35
set osd_compass_bar_pos = 266
set osd_altitude_pos = 341
set osd_pid_roll_pos = 423
set osd_pid_pitch_pos = 455
set osd_pid_yaw_pos = 487
set osd_debug_pos = 1
set osd_power_pos = 321
set osd_pidrate_profile_pos = 345
set osd_avg_cell_voltage_pos = 2402
set osd_pit_ang_pos = 257
set osd_rol_ang_pos = 289
set osd_battery_usage_pos = 392
set osd_disarmed_pos = 138
set osd_nheading_pos = 311
set osd_nvario_pos = 279
set osd_esc_tmp_pos = 82
set osd_esc_rpm_pos = 2
set osd_stat_tim_2 = OFF
set osd_stat_max_dist = ON
set osd_stat_used_mah = OFF
set osd_stat_bbox = OFF
set osd_stat_bb_no = OFF

I’ve always tried to keep my OSD somewhat minimal. I feel that cell voltage, RSSI, and flight time are quite necessary.

I like to have my quad’s name listed. That makes reviewing DVR footage easier, and it helps my friends know who they’re tuned in to. At this point, fitting all my data on one line would be a tight fit.

Most of the time, I don’t need to see my VTX channel and power info, but sometimes it comes in handy. If I’m getting poor signal, it is nice to see if I’m running at 200 mW or 800 mW. On the rare occasions when I change channel, it is nice to have something to refer to when a friend asks what channel I’m on, too.

There’s still room left on the second line, so I squeezed in amp draw and mAh consumed.

Then I added GPS to all my 5” quads, and I had to expand to a third line! I’m disappointed that my OSD is getting so crowded, but I tried to keep that new line spread out towards the edges!

OSD settings for Betaflight 4.0

Betaflight 4.0 now has support for up to three OSD profiles. You can have different elements active in each profile.

I haven’t decided how I’m going to make use of this. Currently, I paste in OSD settings to enable the GPS data that I like to see. My micro quads don’t have GPS, so I wind up manually disabling those options during setup.

I might move the GPS data to a separate profile. That way, I can just change profiles on my quads without GPS!


In my opinion, rates are the most important thing to customize on your miniquad. Everyone prefers a different feel, and you need to find yours.

rateprofile 0

set roll_rc_rate = 192
set pitch_rc_rate = 192
set yaw_rc_rate = 165
set roll_expo = 15
set pitch_expo = 15
set roll_srate = 60
set pitch_srate = 60
set yaw_srate = 40

These are my rates. I keep my yaw linear and quite a bit more gentle than the other axes.

These rates feel right to me on my 5” miniquads, but they’re a little aggressive on my micros. In any case, it is a good starting point for any quad I might fly!


These are my modes. Don’t use my modes. In fact, you should probably be getting all these settings from your a diff from one of your own quads!

aux 0 0 3 1550 2100 0 0
aux 1 46 1 1925 2100 0 0
aux 2 13 2 1550 1700 0 0
aux 3 26 1 1550 1700 0 0
aux 4 28 3 1750 2100 0 0
aux 5 30 3 900 2100 0 0
aux 6 35 2 1925 2100 0 0

I use a single three-position switch, switch SG, on my Taranis X9D+ for arming and choosing rate or air mode. The first position is disarm. The middle position is rate mode. The final position is air mode. Most of the time, I just flip the switch all the way to one end or the other.

Switch SD activates either my beeper in the center position and turtle mode in the final position.

Switch SA enabled blackbox logging in the center position and GPS return to home in the final position.

That’s it!

I’m surprised there’s not more. This looks like everything I paste into a brand-new build.

I don’t paste out of this file all that often. Only when I build a completely new quad or a new major release of Betaflight shows up.

My Hyperlite Flowride quads

I have three identical 5” Hyperlite Flowride quads. I don’t paste this file into each of those. I set one up, and get it flying the way I like. Then I paste that good config into the other two!


When you have a bunch of quadcopters to configure, don’t rely on your memory. Get in the habit of saving diffs before making major changes to your quads. It is easier to paste in your old config than it is to make sure you don’t miss an important checkbox in the Betaflight configurator.

Even just cherry-picking lines from your Betaflight 3.5 diff when upgrading to 4.0 is easier than hunting around the configurator trying to make sure you didn’t miss an important setting!

Did I miss anything? Do you have a similar diff that you paste into all your new quadcopters? Do you have any questions? Let me know in the comments, or stop by our Discord server to chat about it!