INAV Rates, expo and TPA: CLI settings
Stick rates and expo for roll, pitch and yaw (and for MANUAL mode on fixed wing), rate dynamics, throttle mid and expo, TPA, and the stick deadbands and airmode threshold. Rates sit in the control profile; the deadbands are global.
32 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.
| Setting | Type | Range or values | Default | 8.0 | 9.0 | 9.1 | Notes |
|---|---|---|---|---|---|---|---|
3d_deadband_throttle # |
uint16 global |
0 to 200 | 50 |
✓ | ✓ | ✓ | Throttle signal will be held to a fixed value when throttle is centered with an error margin defined in this parameter. |
airmode_throttle_threshold # |
uint16 global |
1000 to 2000 | 1150 |
✓ | ✓ | ✓ | Defines airmode THROTTLE activation threshold when `airmode_type` **THROTTLE_THRESHOLD** is used |
airmode_type # |
uint8 global |
STICK_CENTER, THROTTLE_THRESHOLD, STICK_CENTER_ONCE | STICK_CENTER |
✓ | ✓ | ✓ | Defines the Airmode state handling type. Default **STICK_CENTER** is the classical approach in which Airmode is always active if enabled, but when the throttle is low and ROLL/PITCH/YAW sticks are centered, Iterms is not allowed to grow (ANTI_WINDUP). **THROTTLE_THRESHOLD** is the Airmode behavior known from Betaflight. In this mode, Airmode is active as soon THROTTLE position is above `airmode_throttle_threshold` and stays active until disarm. ANTI_WINDUP is never triggered. For small Multirotors (up to 7-inch propellers) it is suggested to switch to **THROTTLE_THRESHOLD** since it keeps full stabilization no matter what pilot does with the sticks. Fixed Wings always use **STICK_CENTER_ONCE** or **STICK_CENTER** modes. |
alt_hold_deadband # |
uint8 global |
10 to 250 | 50 |
✓ | ✓ | ✓ | Defines the deadband of throttle during alt_hold [r/c points] |
apa_pow # |
uint16 control profile |
0 to 200 | 0 |
— | ✓ | ✓ | Use airspeed instead of throttle position for PID attenuation if airspeed is available on fixedwing. Scales P/D/FF with airspeed (I-term scaled less aggressively). Gains range from 30% (high speed) to 150% (low speed). Set to 0 to disable and use throttle-based attenuation. Recommended: 120 for aircraft with validated pitot sensor. |
deadband # |
uint8 global |
0 to 32 | 2 |
✓ | ✓ | ✓ | These are values (in us) by how much RC input can be different before it's considered valid. For transmitters with jitter on outputs, this value can be increased. Defaults are zero, but can be increased up to 10 or so if rc inputs twitch while idle. |
fpv_mix_degrees # |
uint8 control profile |
0 to 50 | 0 |
✓ | ✓ | ✓ | The tilt angle of the FPV camera in degrees, used by the FPV ANGLE MIX mode |
fw_tpa_time_constant # |
uint16 control profile |
0 to 5000 | 2000 |
✓ | Δ | ✓ | TPA smoothing and delay time constant to reflect non-instant speed/throttle response of the plane. See **PID Attenuation and scaling** Wiki for full details. 9.0: default 1500 → 2000 |
manual_pitch_rate # |
uint8 control profile |
0 to 100 | 100 |
✓ | ✓ | ✓ | Servo travel multiplier for the PITCH axis in `MANUAL` flight mode [0-100]% |
manual_rc_expo # |
uint8 control profile |
0 to 100 | 35 |
✓ | ✓ | ✓ | Exponential value used for the PITCH/ROLL axes by the `MANUAL` flight mode [0-100] |
manual_rc_yaw_expo # |
uint8 control profile |
0 to 100 | 20 |
✓ | ✓ | ✓ | Exponential value used for the YAW axis by the `MANUAL` flight mode [0-100] |
manual_roll_rate # |
uint8 control profile |
0 to 100 | 100 |
✓ | ✓ | ✓ | Servo travel multiplier for the ROLL axis in `MANUAL` flight mode [0-100]% |
manual_yaw_rate # |
uint8 control profile |
0 to 100 | 100 |
✓ | ✓ | ✓ | Servo travel multiplier for the YAW axis in `MANUAL` flight mode [0-100]% |
pitch_rate # |
uint8 control profile |
4 to 180 | 20 |
✓ | ✓ | ✓ | Defines rotation rate on PITCH axis that UAV will try to archive on max. stick deflection. Rates are defined in tens of degrees (deca-degrees) per second [rate = dps/10]. That means, rate 20 represents 200dps rotation speed. Default 20 (200dps) is more less equivalent of old Cleanflight/Baseflight rate 0. Max. 180 (1800dps) is what gyro can measure. |
pos_hold_deadband # |
uint8 global |
2 to 250 | 10 |
✓ | ✓ | ✓ | Stick deadband in [r/c points], applied after r/c deadband and expo. Used for adjustments in navigation modes. |
rate_dynamics_center_correction # |
uint8 control profile |
10 to 95 | 10needs USE_RATE_DYNAMICS |
✓ | ✓ | ✓ | The center stick correction for Rate Dynamics |
rate_dynamics_center_sensitivity # |
uint8 control profile |
25 to 175 | 100needs USE_RATE_DYNAMICS |
✓ | ✓ | ✓ | The center stick sensitivity for Rate Dynamics |
rate_dynamics_center_weight # |
uint8 control profile |
0 to 95 | 0needs USE_RATE_DYNAMICS |
✓ | ✓ | ✓ | The center stick weight for Rate Dynamics |
rate_dynamics_end_correction # |
uint8 control profile |
10 to 95 | 10needs USE_RATE_DYNAMICS |
✓ | ✓ | ✓ | The end stick correction for Rate Dynamics |
rate_dynamics_end_sensitivity # |
uint8 control profile |
25 to 175 | 100needs USE_RATE_DYNAMICS |
✓ | ✓ | ✓ | The end stick sensitivity for Rate Dynamics |
rate_dynamics_end_weight # |
uint8 control profile |
0 to 95 | 0needs USE_RATE_DYNAMICS |
✓ | ✓ | ✓ | The end stick weight for Rate Dynamics |
rc_expo # |
uint8 control profile |
0 to 100 | 70 |
✓ | ✓ | ✓ | Exponential value used for the PITCH/ROLL axes by all the stabilized flights modes (all but `MANUAL`) |
rc_yaw_expo # |
uint8 control profile |
0 to 100 | 20 |
✓ | ✓ | ✓ | Exponential value used for the YAW axis by all the stabilized flights modes (all but `MANUAL`) |
roll_rate # |
uint8 control profile |
4 to 180 | 20 |
✓ | ✓ | ✓ | Defines rotation rate on ROLL axis that UAV will try to archive on max. stick deflection. Rates are defined in tens of degrees (deca-degrees) per second [rate = dps/10]. That means, rate 20 represents 200dps rotation speed. Default 20 (200dps) is more less equivalent of old Cleanflight/Baseflight rate 0. Max. 180 (1800dps) is what gyro can measure. |
thr_expo # |
uint8 control profile |
0 to 100 | 0 |
✓ | ✓ | ✓ | Throttle exponential value |
thr_mid # |
uint8 control profile |
0 to 100 | 50 |
✓ | ✓ | ✓ | Throttle value when the stick is set to mid-position. Used in the throttle curve calculation. |
tpa_breakpoint # |
uint16 control profile |
1000 to 2000 | 1500 |
✓ | ✓ | ✓ | See tpa_rate. |
tpa_on_yaw # |
uint8 control profile |
OFF, ON | OFF |
✓ | ✓ | ✓ | Throttle PID attenuation also reduces influence on YAW for multi-rotor, Should be set to ON for tilting rotors. |
tpa_pitch_compensation # |
uint8 control profile |
0 to 20 | 8 |
— | ✓ | ✓ | Pitch angle based throttle compensation for fixed wing. Positive values will increase throttle when pitching up, and decrease throttle when pitching down. |
tpa_rate # |
uint8 control profile |
0 to 200 | 0 |
✓ | Δ | ✓ | Throttle based PID attenuation(TPA) reduces influence of PDFF on ROLL and PITCH of multi-rotor, PIDFF on ROLL,PITCH,YAW OF fixed_wing as throttle increases. On multirotor, For every 1% throttle after the TPA breakpoint, P is reduced by the TPA rate. for fixedwing modifies PIDFF. See **PID Attenuation and scaling** Wiki for full details. 9.0: max 100 → 200 |
yaw_deadband # |
uint8 global |
0 to 100 | 2 |
✓ | ✓ | ✓ | These are values (in us) by how much RC input can be different before it's considered valid. For transmitters with jitter on outputs, this value can be increased. Defaults are zero, but can be increased up to 10 or so if rc inputs twitch while idle. |
yaw_rate # |
uint8 control profile |
1 to 180 | 20 |
✓ | ✓ | ✓ | Defines rotation rate on YAW axis that UAV will try to archive on max. stick deflection. Rates are defined in tens of degrees (deca-degrees) per second [rate = dps/10]. That means, rate 20 represents 200dps rotation speed. Default 20 (200dps) is more less equivalent of old Cleanflight/Baseflight rate 0. Max. 180 (1800dps) is what gyro can measure. |
✓ 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
- Gyro and D-term filters (28)
- PID tuning (74)
- Navigation, RTH and waypoints (53)
- Multirotor navigation (31)
- Fixed-wing navigation and launch (63)
- Position estimator (23)
- GPS (11)
- Accelerometer, compass and other sensors (56)
- Receiver and RC input (21)
- Failsafe and arming (18)
- Motors, ESC and beeper (15)
- Mixer profiles (12)
- Servos, gimbal and head tracker (19)
- Battery, current sensor and power limits (35)
- OSD (114)
- Video transmitter (12)
- Telemetry (31)
- Blackbox, logging and stats (12)
- System (13)
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.