INAV Receiver and RC input: CLI settings

Receiver type and serial protocol, inversion and half duplex, RSSI source and range, valid pulse limits, the RC smoothing filter, MSP RC override and the logic that combines mode ranges.

21 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
max_check # uint16
global
1000 to 2000 1900 ✓✓✓ These are min/max values (in us) which, when a channel is smaller (min) or larger (max) than the value will activate various RC commands, such as arming, or stick configuration. Normally, every RC channel should be set so that min = 1000us, max = 2000us. On most transmitters this usually means 125% endpoints. Default check values are 100us above/below this value.
min_check # uint16
global
1000 to 2000 1100 ✓✓✓ These are min/max values (in us) which, when a channel is smaller (min) or larger (max) than the value will activate various RC commands, such as arming, or stick configuration. Normally, every RC channel should be set so that min = 1000us, max = 2000us. On most transmitters this usually means 125% endpoints. Default check values are 100us above/below this value.
mode_range_logic_operator # uint8
global
OR, AND OR ✓✓✓ Control how Mode selection works in flight modes. If you example have Angle mode configured on two different Aux channels, this controls if you need both activated ( AND ) or if you only need one activated ( OR ) to active angle mode.
msp_override_channels # uint32
global
0 to 4294967295 0
needs USE_MSP_RC_OVERRIDE
—✓✓ Mask of RX channels that may be overridden by MSP `SET_RAW_RC`. Note that this requires the `MSP RC Override` flight mode.
rc_filter_auto # uint8
global
OFF, ON ON ✓✓✓ When enabled, INAV will set RC filtering based on refresh rate and smoothing factor.
rc_filter_lpf_hz # uint8
global
15 to 250 50 ✓✓✓ RC data biquad filter cutoff frequency. Lower cutoff frequencies result in smoother response at expense of command control delay. Practical values are 20-50. Set to zero to disable entirely and use unsmoothed RC stick values
rc_filter_smoothing_factor # uint8
global
1 to 100 30 ✓✓✓ The RC filter smoothing factor. The higher the value, the more smoothing but also the more delay in response. Value 1 sets the filter at half the refresh rate. Value 100 sets the filter to aprox. 10% of the RC refresh rate
receiver_type # uint8
global
NONE, SERIAL, MSP, SIM (SITL) set by the target ✓✓✓ Selection of receiver (RX) type. Additional configuration of a `serialrx_provider` and a UART will be needed for `SERIAL`
rssi_channel # uint8
global
0 to 34 0 ✓✓✓ RX channel containing the RSSI signal
rssi_max # uint8
global
0 to 100 100 ✓✓✓ The maximum RSSI value sent by the receiver, in %. For example, if your receiver's maximum RSSI value shows as 83% in the configurator/OSD set this parameter to 83. See also rssi_min.
rssi_min # uint8
global
0 to 100 0 ✓✓✓ The minimum RSSI value sent by the receiver, in %. For example, if your receiver's minimum RSSI value shows as 42% in the configurator/OSD set this parameter to 42. See also rssi_max. Note that rssi_min can be set to a value bigger than rssi_max to invert the RSSI calculation (i.e. bigger values mean lower RSSI).
rssi_source # uint8
global
NONE, AUTO, ADC, CHANNEL, PROTOCOL, MSP AUTO ✓✓✓ Source of RSSI input. Possible values: `NONE`, `AUTO`, `ADC`, `CHANNEL`, `PROTOCOL`, `MSP`
rx_max_usec # uint16
global
750 to 2250 2115 ✓✓✓ Defines the longest pulse width value used when ensuring the channel value is valid. If the receiver gives a pulse value higher than this value then the channel will be marked as bad and will default to the value of mid_rc.
rx_min_usec # uint16
global
750 to 2250 885 ✓✓✓ Defines the shortest pulse width value used when ensuring the channel value is valid. If the receiver gives a pulse value lower than this value then the channel will be marked as bad and will default to the value of mid_rc.
sbus_sync_interval # uint16
global
500 to 10000 3000 ✓✓✓ SBUS sync interval in us. Default value is 3000us. Lower values may cause issues with some receivers.
serialrx_halfduplex # uint8
global
AUTO, ON, OFF AUTO ✓✓✓ Allow serial receiver to operate on UART TX pin. With some receivers will allow control and telemetry over a single wire.
serialrx_inverted # uint8
global
OFF, ON OFF
needs USE_SERIAL_RX
✓✓✓ Reverse the serial inversion of the serial RX protocol. When this value is OFF, each protocol will use its default signal (e.g. SBUS will use an inverted signal). Some OpenLRS receivers produce a non-inverted SBUS signal. This setting supports this type of receivers (including modified FrSKY).
serialrx_provider # uint8
global
15 valuesSPEK1024, SPEK2048, SBUS, SUMD, IBUS, JETIEXBUS, CRSF, FPORT, SBUS_FAST, FPORT2, SRXL2, GHST, MAVLINK, FBUS, SBUS2
set by the target
needs USE_SERIAL_RX
✓✓✓ When feature SERIALRX is enabled, this allows connection to several receivers which output data via digital interface resembling serial. See RX section.
spektrum_sat_bind # uint8
global
0 to 10 0
needs USE_SPEKTRUM_BIND
✓✓✓ 0 = disabled. Used to bind the spektrum satellite to RX
srxl2_baud_fast # uint8
global
OFF, ON ON
needs USE_SERIALRX_SRXL2
✓✓✓
srxl2_unit_id # uint8
global
0 to 15 1
needs USE_SERIALRX_SRXL2
✓✓✓

✓ 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.