Betaflight OSD is an integrated component and feature in Betaflight flight controllers. It overlays important flight data on your FPV video feed, such as battery voltage, current draw and much more.
You can even use it as a menu to change your quad’s PID, rates, filters, VTX channel and many other settings. This article will go into what Betaflight OSD can do, and how to setup it up.
If you are using DJI FPV System, you need to check instructions here instead, this tutorial only applies to analog FPV system.
OSD Compatible Flight Controllers
Almost all Betaflight flight controllers support OSD these days, apart from very few FC that are designed specifically for the DJI digital FPV system.
OSD compatible FC should have this OSD chip onboard (AT7456E).
Connect your FPV camera and video transmitter to the flight controller. Camera signal goes to the pad “Vin” on the FC, while VTX signal connects to “Vout”.
Setup Betaflight OSD
In Betaflight Configurator, Configuration tab, turn on feature “OSD”.
Then click on the OSD tab on the left hand menu, where you can configure OSD settings.
On the left, you have OSD elements, simply turn on/off the flight data you want to display on the screen.
There are 3 columns for each element, labelled 1, 2 and 3. These numbers correspond to the different OSD profiles that you can switch between from your radio during flight. It helps you look at different flight info on the screen without getting the screen filled with numbers, but normally I just use one profile for all of my flights so I only check the boxes in column 1.
I always pick these OSD elements for my freestyle quads:
- Battery voltage – MUST HAVE so you know when to land and avoid over-discharging your LiPo. Optimally you can also have “Battery average cell voltage” enabled, it makes it easier as it automatically calculates the voltage per cell for you (for example, instead of 16.0V for a 4S, it will report 4.0V on the screen)
- Timer2 – flight time, the time since arming (Timer 1 is powered on time)
- Warning – MUST HAVE, if anything is wrong with the quad, a message will be displayed on screen to help you troubleshoot
There is a preview of the OSD elements, and you can simply drag them around to your desired location.
On the right side you have a list of OSD related options, though most of these can be left at default. Here’re a couple of important ones that need explaining.
Video Format – choose PAL or NTSC depending on your camera. Usually you can just leave it at “Auto” and it will detect the correct video format for you. But if you find OSD elements disappear down at the bottom, it’s probably due to the video format of your camera. NTSC has a shorter screen, and you need to move your elements up.
Under “Alarms“, you can set the limits for RSSI, Capacity (battery), Minutes (fly time/on time), and Altitude). When these limits are reached the data will start flashing on and off on the screen. It’s useful to set voltage alarm to remind yourself to land.
Let’s walk though the Betaflight OSD menu
Betaflight OSD has a menu that allows you to change Betaflight settings, which is really cool. There are a lot of things you can change, such as PID, rates, filter frequencies, VTX channels etc.
To activate OSD menu in your Goggles, do this stick combination:
- Throttle center
- Yaw left
- Pitch forward
Your throttle should remain at around center during menu navigation.
From here you can scroll through the menu with the pitch stick, use roll stick to select options. Values can be changed with your roll stick.
- To save and exit, simply YAW RIGHT.
- To go back to the last menu, YAW LEFT.
After you have finished editing the options, make sure to save it by going back to the main menu, and select the second last option “Save * Reboot”.
Note that not all the options in Betaflight Configurator are available in the OSD, so you might still need your computer or Android App to have access to full configuration.
Changing Betaflight OSD Font
You can change OSD font by clicking at the “Font Manager” button located at the bottom right. Select a font preset (My favourite is “Bold”), then click “Upload Font”.
In this window you can also upload a custom logo which will show up as you plug in the LiPo.
Be aware that once you’ve uploaded a new font, it wont’ show it in the preview window. It will continue to show the default one. Don’t worry your OSD will show the most recently uploaded font.
I am not getting OSD text on the screen, why?
Make sure you have chosen the correct video format, try PAL or NTSC see which one works. If not sure just choose auto. Another thing is to check your camera and VTX wiring.
Where to change Craft Name in OSD?
Craft name text field is located in the Configuration tab.
I am getting lots of “V” letters on the screen
This is a sign of missing font file. To fix that, simply upload font again.
OSD Doesn’t Save Font and other settings
The easy fix is to plug in your battery when you are making changes to OSD.
Betaflight OSD has its own chip, and sometimes power from the USB just isn’t enough for the memory writing to work properly. By connecting the LiPo, ensures the OSD chip is fully powered. If you are doing this, make sure you remove your props first just in case.
“Upload Font” not responding
Try plug in the battery to your drone first, before connecting the USB to Betaflight configurator. Now try again.
My OSD Presets
Non-HD (with GPS)
set osd_vbat_pos = 2371
set osd_link_quality_pos = 2179
set osd_rssi_dbm_pos = 2147
set osd_tim_2_pos = 2467
set osd_flymode_pos = 2456
set osd_throttle_pos = 2391
set osd_current_pos = 2421
set osd_mah_drawn_pos = 2404
set osd_gps_speed_pos = 2359
set osd_gps_lon_pos = 2065
set osd_gps_lat_pos = 2048
set osd_gps_sats_pos = 2115
set osd_home_dir_pos = 2190
set osd_home_dist_pos = 2156
set osd_flight_dist_pos = 2435
set osd_altitude_pos = 18508
set osd_warnings_pos = 14601
set osd_avg_cell_voltage_pos = 2339
HD (with GPS)
set osd_vbat_pos = 2529
set osd_link_quality_pos = 2337
set osd_rssi_dbm_pos = 2305
set osd_tim_2_pos = 2625
set osd_flymode_pos = 3670
set osd_throttle_pos = 3606
set osd_current_pos = 3636
set osd_mah_drawn_pos = 2561
set osd_craft_name_pos = 2049
set osd_pilot_name_pos = 2081
set osd_gps_speed_pos = 3382
set osd_gps_lon_pos = 3119
set osd_gps_lat_pos = 3087
set osd_gps_sats_pos = 2369
set osd_home_dir_pos = 2269
set osd_home_dist_pos = 2235
set osd_flight_dist_pos = 2593
set osd_altitude_pos = 18587
set osd_warnings_pos = 14712
set osd_avg_cell_voltage_pos = 2587
set osd_log_status_pos = 1616
set osd_sys_lq_pos = 225
set osd_displayport_device = MSP
set osd_canvas_width = 60
set osd_canvas_height = 22
HD (without GPS)
set osd_vbat_pos = 2499
set osd_link_quality_pos = 2237
set osd_rssi_dbm_pos = 2229
set osd_tim_2_pos = 2563
set osd_flymode_pos = 3596
set osd_throttle_pos = 3532
set osd_current_pos = 3563
set osd_mah_drawn_pos = 2531
set osd_craft_name_pos = 2083
set osd_pilot_name_pos = 2115
set osd_warnings_pos = 14677
set osd_avg_cell_voltage_pos = 2520
- Jul 2017 – article created
- Apr 2021 – removed info regarding MinimOSD, no longer applicable; updated article with latest info and screenshots