INAV OSD: CLI settings

On-screen display settings: units, alarms (RSSI, battery, altitude, distance, flight time), the artificial horizon, crosshair and HUD, statistics pages, the DJI OSD bridge, joystick menu control and the speed source.

114 settings in INAV 9.1. Each range and value list is read from the release's src/main/fc/settings.yaml, each default from the release's settings.yaml, with each constant and C type resolved by INAV's own settings.rb against the SITL and flight-controller target headers, so a board's own config can still change it. Set one with set name = value, then save. Paste a diff all into the CLI checker to test it against any release.

SettingTypeRange or valuesDefault 8.09.09.1Notes
dji_cn_alternating_duration # uint8
global
1 to 150 30
needs USE_DJI_HD_OSD
✓✓✓ Alternating duration of craft name elements, in tenths of a second
dji_esc_temp_source # uint8
global
ESC, IMU, BARO ESC
needs USE_DJI_HD_OSD
✓✓✓ Re-purpose the ESC temperature field for IMU/BARO temperature
dji_message_speed_source # uint8
global
GROUND, 3D, AIR 3D
needs USE_DJI_HD_OSD
✓✓✓ Sets the speed type displayed by the DJI OSD in craft name: GROUND, 3D, AIR
dji_rssi_source # uint8
global
RSSI, CRSF_LQ RSSI
needs USE_DJI_HD_OSD
✓✓✓ Source of the DJI RSSI field: RSSI, CRSF_LQ
dji_use_adjustments # uint8
global
OFF, ON OFF
needs USE_DJI_HD_OSD
✓✓✓ Show inflight adjustments in craft name field
dji_use_name_for_messages # uint8
global
OFF, ON ON
needs USE_DJI_HD_OSD
✓✓✓ Re-purpose the craft name field for messages.
enable_broken_o4_workaround # uint8
global
OFF, ON OFF
needs USE_OSD, USE_DJI_HD_OSD
✓✓✓ DJI O4 release firmware has a broken MSP DisplayPort implementation. This enables a workaround to restore ARM detection.
osd_adsb_distance_alert # uint16
global
1 to 64000 3000
needs USE_OSD, USE_ADSB
✓✓✓ Distance inside which ADSB data flashes for proximity warning
osd_adsb_distance_warning # uint16
global
1 to 64000 20000
needs USE_OSD, USE_ADSB
✓✓✓ Distance in meters of ADSB aircraft that is displayed
osd_adsb_ignore_plane_above_me_limit # uint16
global
0 to 64000 0
needs USE_OSD, USE_ADSB
✓✓✓ Ignore adsb planes above, limit, 0 disabled (meters)
osd_adsb_warning_style # uint8
global
COMPACT, EXTENDED COMPACT
needs USE_OSD, USE_ADSB
—✓✓ ADSB warning element style, how rich information on scree will be, Possible values are `COMPACT` and `EXTENDED`
osd_ahi_bordered # uint8
global
OFF, ON OFF
needs USE_OSD
✓✓✓ Shows a border/corners around the AHI region (pixel OSD only)
osd_ahi_camera_uptilt_comp # uint8
global
OFF, ON OFF
needs USE_OSD
✓✓✓ When set to `ON`, the AHI position is adjusted by `osd_camera_uptilt`. For example, with a cammera uptilt of 30 degrees, the AHI will appear in the middle of the OSD when the aircraft is pitched forward 30 degrees. When set to `OFF`, the AHI will appear in the center of the OSD regardless of camera angle, but can still be shifted up and down using `osd_horizon_offset` (`osd_ahi_vertical_offset` for pixel-OSD).
osd_ahi_height # uint8
global
0 to 255 162
needs USE_OSD
✓✓✓ AHI height in pixels (pixel OSD only)
osd_ahi_max_pitch # uint8
global
10 to 90 20
needs USE_OSD
✓✓✓ Max pitch, in degrees, for OSD artificial horizon
osd_ahi_pitch_interval # uint8
global
0 to 30 0
needs USE_OSD
✓✓✓ Draws AHI at increments of the set pitch interval over the full pitch range. AHI line is drawn with ends offset when pitch first exceeds interval with offset increasing with increasing pitch. Offset direction changes between climb and dive. Set to 0 to disable (Not for pixel OSD)
osd_ahi_reverse_roll # uint8
global
OFF, ON OFF
needs USE_OSD
✓✓✓ Switches the artificial horizon in the OSD to instead be a bank indicator, by reversing the direction of its movement.
osd_ahi_style # uint8
global
DEFAULT, LINE DEFAULT
needs USE_OSD
✓✓✓ Sets OSD Artificial Horizon style "DEFAULT" or "LINE" for the FrSky Graphical OSD.
osd_ahi_vertical_offset # int8
global
-128 to 127 -18
needs USE_OSD
✓✓✓ AHI vertical offset from center (pixel OSD only)
osd_ahi_width # uint8
global
0 to 255 132
needs USE_OSD
✓✓✓ AHI width in pixels (pixel OSD only)
osd_airspeed_alarm_max # float
global
0 to 27000 0
needs USE_OSD, USE_PITOT
✓✓✓ Airspeed above which the airspeed OSD element will start blinking (cm/s)
osd_airspeed_alarm_min # float
global
0 to 27000 0
needs USE_OSD, USE_PITOT
✓✓✓ Airspeed under which the airspeed OSD element will start blinking (cm/s)
osd_alt_alarm # uint16
global
0 to 10000 100
needs USE_OSD
✓✓✓ Value above which to make the OSD relative altitude indicator blink (meters)
osd_arm_screen_display_time # uint16
global
1000 to 5000 1500
needs USE_OSD
✓✓✓ Amount of time to display the arm screen [ms]
osd_baro_temp_alarm_max # int16
global
-550 to 1250 600
needs USE_OSD, USE_BARO
✓✓✓ Temperature above which the baro temperature OSD element will start blinking (decidegrees centigrade)
osd_baro_temp_alarm_min # int16
global
-550 to 1250 -200
needs USE_OSD, USE_BARO
✓✓✓ Temperature under which the baro temperature OSD element will start blinking (decidegrees centigrade)
osd_camera_fov_h # uint8
global
60 to 150 135
needs USE_OSD
✓✓✓ Horizontal field of view for the camera in degres
osd_camera_fov_v # uint8
global
30 to 120 85
needs USE_OSD
✓✓✓ Vertical field of view for the camera in degres
osd_camera_uptilt # int8
global
-40 to 80 0
needs USE_OSD
✓✓✓ Set the camera uptilt for the FPV camera in degres, positive is up, negative is down, relative to the horizontal. Used for correct display of HUD items and AHI (when enabled).
osd_coordinate_digits # uint8
global
8 to 11 9
needs USE_OSD
✓✓✓ Number of digits for the coordinates displayed in the OSD [8-11].
osd_crosshairs_style # uint8
global
DEFAULT, AIRCRAFT, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8 DEFAULT
needs USE_OSD
✓✓✓ To set the visual type for the crosshair
osd_crsf_lq_format # uint8
global
TYPE1, TYPE2, TYPE3 TYPE1
needs USE_OSD
✓✓✓ To select LQ format
osd_current_alarm # uint8
global
0 to 255 0
needs USE_OSD
✓✓✓ Value above which the OSD current consumption element will start blinking. Measured in full Amperes.
osd_decimals_altitude # uint8
global
3 to 5 3
needs USE_OSD
✓✓✓ Number of decimals for the altitude displayed in the OSD [3-5].
osd_decimals_distance # uint8
global
3 to 5 3
needs USE_OSD
✓✓✓ Number of decimals for distance displayed in the OSD [3-5]. This includes distance from home, total distance, and distance remaining.
osd_dist_alarm # uint16
global
0 to 50000 1000
needs USE_OSD
✓✓✓ Value above which to make the OSD distance from home indicator blink (meters)
osd_esc_rpm_precision # uint8
global
3 to 6 3
needs USE_OSD
✓✓✓ Number of characters used to display the RPM value.
osd_esc_temp_alarm_max # int16
global
-550 to 1500 900
needs USE_OSD
✓✓✓ Temperature above which the IMU temperature OSD element will start blinking (decidegrees centigrade)
osd_esc_temp_alarm_min # int16
global
-550 to 1500 -200
needs USE_OSD
✓✓✓ Temperature under which the IMU temperature OSD element will start blinking (decidegrees centigrade)
osd_estimations_wind_compensation # uint8
global
OFF, ON ON
needs USE_OSD, USE_WIND_ESTIMATOR
✓✓✓ Use wind estimation for remaining flight time/distance estimation
osd_estimations_wind_mps # uint8
global
OFF, ON OFF
needs USE_OSD, USE_WIND_ESTIMATOR
✓✓✓ Wind speed estimation in m/s
osd_failsafe_switch_layout # uint8
global
OFF, ON OFF
needs USE_OSD
✓✓✓ If enabled the OSD automatically switches to the first layout during failsafe
osd_force_grid # uint8
global
OFF, ON OFF
needs USE_OSD
✓✓✓ Force OSD to work in grid mode even if the OSD device supports pixel level access (mainly used for development)
osd_gforce_alarm # float
global
0 to 20 5
needs USE_OSD
✓✓✓ Value above which the OSD g force indicator will blink (g)
osd_gforce_axis_alarm_max # float
global
-20 to 20 5
needs USE_OSD
✓✓✓ Value above which the OSD axis g force indicators will blink (g)
osd_gforce_axis_alarm_min # float
global
-20 to 20 -5
needs USE_OSD
✓✓✓ Value under which the OSD axis g force indicators will blink (g)
osd_highlight_djis_missing_font_symbols # uint8
global
OFF, ON ON
needs USE_OSD
✓✓✓ Show question marks where there is no symbol in the DJI font to represent the INAV OSD element's symbol. When off, blank spaces will be used. Only relevent for DJICOMPAT modes.
osd_home_position_arm_screen # uint8
global
OFF, ON ON
needs USE_OSD
✓✓✓ Should home position coordinates be displayed on the arming screen.
osd_horizon_offset # int8
global
-2 to 2 0
needs USE_OSD
✓✓✓ To vertically adjust the whole OSD and AHI and scrolling bars
osd_hud_homepoint # uint8
global
OFF, ON OFF
needs USE_OSD
✓✓✓ To 3D-display the home point location in the hud
osd_hud_homing # uint8
global
OFF, ON OFF
needs USE_OSD
✓✓✓ To display little arrows around the crossair showing where the home point is in the hud
osd_hud_margin_h # uint8
global
0 to 4 3
needs USE_OSD
✓✓✓ Left and right margins for the hud area
osd_hud_margin_v # uint8
global
1 to 3 3
needs USE_OSD
✓✓✓ Top and bottom margins for the hud area
osd_hud_radar_alt_difference_display_time # uint8
global
0 to 10 3
needs USE_OSD
✓✓✓ Time in seconds to display the altitude difference in radar
osd_hud_radar_disp # uint8
global
0 to 4 0
needs USE_OSD
✓✓✓ Maximum count of nearby aircrafts or points of interest to display in the hud, as sent from an ESP32 LoRa module. Set to 0 to disable (show nothing). The nearby aircrafts will appear as markers A, B, C, etc
osd_hud_radar_distance_display_time # uint8
global
1 to 10 3
needs USE_OSD
✓✓✓ Time in seconds to display the distance in radar
osd_hud_radar_range_max # uint16
global
100 to 9990 4000
needs USE_OSD
✓✓✓ In meters, radar aircrafts further away than this will not be displayed in the hud
osd_hud_radar_range_min # uint16
global
1 to 30 3
needs USE_OSD
✓✓✓ In meters, radar aircrafts closer than this will not be displayed in the hud
osd_hud_wp_disp # uint8
global
0 to 3 0
needs USE_OSD
✓✓✓ How many navigation waypoints are displayed, set to 0 (zero) to disable. As sample, if set to 2, and you just passed the 3rd waypoint of the mission, you'll see markers for the 4th waypoint (marked 1) and the 5th waypoint (marked 2)
osd_imu_temp_alarm_max # int16
global
-550 to 1250 600
needs USE_OSD
✓✓✓ Temperature above which the IMU temperature OSD element will start blinking (decidegrees centigrade)
osd_imu_temp_alarm_min # int16
global
-550 to 1250 -200
needs USE_OSD
✓✓✓ Temperature under which the IMU temperature OSD element will start blinking (decidegrees centigrade)
osd_inav_to_pilot_logo_spacing # uint8
global
0 to 20 8
needs USE_OSD
✓✓✓ The space between the INAV and pilot logos, if `osd_use_pilot_logo` is `ON`. This number may be adjusted so that it fits the odd/even col width displays. For example, if using an odd column width display, such as Walksnail, and this is set to 4. 1 will be added so that the logos are equally spaced from the centre of the screen.
osd_joystick_down # uint8
global
0 to 100 0
needs USE_RCDEVICE && USE_LED_STRIP
✓✓✓ PWM value for DOWN key
osd_joystick_enabled # uint8
global
OFF, ON OFF
needs USE_RCDEVICE && USE_LED_STRIP
✓✓✓ Enable OSD Joystick emulation
osd_joystick_enter # uint8
global
0 to 100 75
needs USE_RCDEVICE && USE_LED_STRIP
✓✓✓ PWM value for ENTER key
osd_joystick_left # uint8
global
0 to 100 63
needs USE_RCDEVICE && USE_LED_STRIP
✓✓✓ PWM value for LEFT key
osd_joystick_right # uint8
global
0 to 100 28
needs USE_RCDEVICE && USE_LED_STRIP
✓✓✓ PWM value for RIGHT key
osd_joystick_up # uint8
global
0 to 100 48
needs USE_RCDEVICE && USE_LED_STRIP
✓✓✓ PWM value for UP key
osd_left_sidebar_scroll # uint8
global
NONE, ALTITUDE, SPEED, HOME_DISTANCE NONE
needs USE_OSD
✓✓✓ Scroll type for the left sidebar
osd_left_sidebar_scroll_step # uint8
global
0 to 255 0
needs USE_OSD
✓✓✓ How many units each sidebar step represents. 0 means the default value for the scroll type.
osd_mah_precision # uint8
global
3 to 6 4
needs USE_OSD
✓✓✓ Number of digits used for mAh precision. Currently used by mAh Used and Battery Remaining Capacity
osd_main_voltage_decimals # uint8
global
1 to 2 1
needs USE_OSD
✓✓✓ Number of decimals for the battery voltages displayed in the OSD [1-2].
osd_msp_displayport_fullframe_interval # int16
global
-1 to 600 10
needs USE_OSD
✓✓✓ Full Frame redraw interval for MSP DisplayPort [deciseconds]. This is how often a full frame update is sent to the DisplayPort, to cut down on OSD artifacting. The default value should be fine for most pilots. Though long range pilots may benefit from increasing the refresh time, especially near the edge of range. -1 = disabled (legacy mode) | 0 = every frame (not recommended) | default = 10 (1 second)
osd_neg_alt_alarm # uint16
global
0 to 10000 5
needs USE_OSD
✓✓✓ Value below which (negative altitude) to make the OSD relative altitude indicator blink (meters)
osd_pan_servo_index # uint8
global
0 to 16 0
needs USE_OSD
✓✓✓ Index of the pan servo, used to adjust osd home heading direction based on camera pan. Note that this feature does not work with continiously rotating servos.
osd_pan_servo_indicator_show_degrees # uint8
global
OFF, ON OFF
needs USE_OSD
✓✓✓ Show the degress of offset from centre on the pan servo OSD display element.
osd_pan_servo_offcentre_warning # uint8
global
0 to 45 10
needs USE_OSD
✓✓✓ Degrees either side of the pan servo centre; where it is assumed camera is wanted to be facing forwards, but isn't at 0. If in this range and not 0 for longer than 10 seconds, the pan servo offset OSD element will blink. 0 means the warning is disabled.
osd_pan_servo_range_decadegrees #
was osd_pan_servo_pwm2centideg
int8
global
-36 to 36 0
needs USE_OSD
✓Δ✓ Decadegrees of pan servo rotation. A servo with 180 degrees of rotation typically needs `18` for this setting. Using a negative value will reverse the direction.
Renamed from osd_pan_servo_pwm2centideg in 9.0. Same range -36 to 36 and the same typical value (18 for a 180-degree servo); the new name describes it as the servo's rotation in decadegrees. source
osd_plus_code_digits # uint8
global
10 to 13 11
needs USE_OSD
✓✓✓ Numer of plus code digits before shortening with `osd_plus_code_short`. Precision at the equator: 10=13.9x13.9m; 11=2.8x3.5m; 12=56x87cm; 13=11x22cm.
osd_plus_code_short # uint8
global
0, 2, 4, 6 0
needs USE_OSD
✓✓✓ Number of leading digits removed from plus code. Removing 2, 4 and 6 digits requires a reference location within, respectively, ~800km, ~40 km and ~2km to recover the original coordinates.
osd_radar_peers_display_time # uint8
global
1 to 10 3
needs USE_OSD
✓✓✓ Time in seconds to display next peer
osd_right_sidebar_scroll # uint8
global
NONE, ALTITUDE, SPEED, HOME_DISTANCE NONE
needs USE_OSD
✓✓✓ Scroll type for the right sidebar
osd_right_sidebar_scroll_step # uint8
global
0 to 255 0
needs USE_OSD
✓✓✓ Same as left_sidebar_scroll_step, but for the right sidebar
osd_row_shiftdown # uint8
global
0 to 1 0
needs USE_OSD
✓✓✓ Number of rows to shift the OSD display (increase if top rows are cut off)
osd_rssi_alarm # uint8
global
0 to 100 20
needs USE_OSD
✓✓✓ Value below which to make the OSD RSSI indicator blink
osd_rssi_dbm_alarm # int16
global
-130 to 0 0
needs USE_OSD, USE_SERIALRX_CRSF || USE_RX_MSP
✓✓✓ RSSI dBm indicator blinks below this value [dBm]. 0 disables this alarm
osd_rssi_dbm_max # int16
global
-50 to 0 -30
needs USE_OSD, USE_SERIALRX_CRSF || USE_RX_MSP
✓✓✓ RSSI dBm upper end of curve. Perfect rssi (max) = 100%
osd_rssi_dbm_min # int16
global
-130 to 0 -120
needs USE_OSD, USE_SERIALRX_CRSF || USE_RX_MSP
✓✓✓ RSSI dBm lower end of curve or RX sensitivity level. Worst rssi (min) = 0%
osd_sidebar_height # uint8
global
0 to 5 3
needs USE_OSD
✓✓✓ Height of sidebars in rows. 0 leaves only the level indicator arrows (Not for pixel OSD)
osd_sidebar_horizontal_offset # int8
global
-128 to 127 0
needs USE_OSD
✓✓✓ Sidebar horizontal offset from default position. Positive values move the sidebars closer to the edges.
osd_sidebar_scroll_arrows # uint8
global
OFF, ON OFF
needs USE_OSD
✓✓✓ Show arrows for scrolling the sidebars
osd_snr_alarm # int8
global
-20 to 30 4
needs USE_OSD, USE_SERIALRX_CRSF || USE_RX_MSP
✓Δ✓ Value below which Crossfire SNR Alarm pops-up. (dB)
9.0: max 99 → 30
osd_speed_source # uint8
global
GROUND, 3D, AIR GROUND
needs USE_OSD || USE_DJI_HD_OSD
✓✓✓ Sets the speed type displayed by the DJI OSD and OSD canvas (FrSky Pixel): GROUND, 3D, AIR
osd_stats_energy_unit # uint8
global
MAH, WH MAH
needs USE_OSD
✓✓✓ Unit used for the drawn energy in the OSD stats [MAH/WH] (milliAmpere hour/ Watt hour)
osd_stats_page_auto_swap_time # uint8
global
0 to 10 3
needs USE_OSD
✓✓✓ Auto swap display time interval between disarm stats pages (seconds). Reverts to manual control when Roll stick used to change pages. Disabled when set to 0.
osd_stats_show_metric_efficiency # uint8
global
OFF, ON OFF
needs USE_OSD
✓✓✓ Enabling this option will show metric efficiency statistics on the post flight stats screen. In addition to the efficiency statistics in your chosen units.
osd_switch_indicator_one_channel # uint8
global
5 to 34 5
needs USE_OSD
✓✓✓ RC Channel to use for OSD switch indicator 1.
osd_switch_indicator_one_name # uint8
global
text, 0 to 5 characters GEAR
needs USE_OSD
✓✓✓ Character to use for OSD switch incicator 1.
osd_switch_indicator_three_channel # uint8
global
5 to 34 5
needs USE_OSD
✓✓✓ RC Channel to use for OSD switch indicator 3.
osd_switch_indicator_three_name # uint8
global
text, 0 to 5 characters LIGT
needs USE_OSD
✓✓✓ Character to use for OSD switch incicator 3.
osd_switch_indicator_two_channel # uint8
global
5 to 34 5
needs USE_OSD
✓✓✓ RC Channel to use for OSD switch indicator 2.
osd_switch_indicator_two_name # uint8
global
text, 0 to 5 characters CAM
needs USE_OSD
✓✓✓ Character to use for OSD switch incicator 2.
osd_switch_indicator_zero_channel # uint8
global
5 to 34 5
needs USE_OSD
✓✓✓ RC Channel to use for OSD switch indicator 0.
osd_switch_indicator_zero_name # uint8
global
text, 0 to 5 characters FLAP
needs USE_OSD
✓✓✓ Character to use for OSD switch incicator 0.
osd_switch_indicators_align_left # uint8
global
OFF, ON ON
needs USE_OSD
✓✓✓ Align text to left of switch indicators
osd_system_msg_display_time # uint16
global
500 to 5000 1000
needs USE_OSD
✓✓✓ System message display cycle time for multiple messages (milliseconds).
osd_telemetry # uint8
global
OFF, ON, TEST OFF
needs USE_OSD
✓✓✓ To enable OSD telemetry for antenna tracker. Possible values are `OFF`, `ON` and `TEST`
osd_temp_label_align # uint8
global
LEFT, RIGHT LEFT
needs USE_OSD, USE_TEMPERATURE_SENSOR
✓✓✓ Allows to chose between left and right alignment for the OSD temperature sensor labels. Valid values are `LEFT` and `RIGHT`
osd_time_alarm # uint16
global
0 to 600 10
needs USE_OSD
✓✓✓ Value above which to make the OSD flight time indicator blink (minutes)
osd_units # uint8
global
IMPERIAL, METRIC, METRIC_MPH, UK, GA METRIC
needs USE_OSD
✓✓✓ IMPERIAL, METRIC, UK
osd_video_system # uint8
global
9 valuesAUTO, PAL, NTSC, HDZERO, DJIWTF, AVATAR, BF43COMPAT, BFHDCOMPAT, DJI_NATIVE
AUTO
needs USE_OSD
✓✓✓ Video system used. Possible values are `AUTO`, `PAL`, `NTSC`, `HDZERO`, 'DJIWTF', 'AVATAR', `BF43COMPAT`, `BFHDCOMPAT` and `DJI_NATIVE`

✓ present, Δ changed in that release (hover for what changed), — not in that release. “needs USE_…” is the build option the setting is compiled with: a target that does not define it has no such setting.Descriptions are INAV's own, from settings.yaml.

Other sections

What changed between releases: 8.0 → 9.0 · 9.0 → 9.1. Machine-readable: params.json (9.1.0), GPL-3.0 like the firmware it comes from.