INAV Multirotor navigation: CLI settings
Position hold, altitude hold and RTH behaviour for multirotors: bank and climb limits, braking, hover throttle and the position and velocity PID gains of the navigation controller. The gains sit in the control profile and the hover throttle in the battery profile.
31 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 |
|---|---|---|---|---|---|---|---|
nav_mc_althold_throttle # |
uint8 global |
STICK, MID_STICK, HOVER | STICK |
✓ | ✓ | ✓ | If set to STICK the FC remembers the throttle stick position when enabling ALTHOLD and treats it as the neutral midpoint for holding altitude. If set to MID_STICK or HOVER the neutral midpoint is set to the mid stick position or the hover throttle position respectively. |
nav_mc_auto_climb_rate # |
uint16 global |
10 to 2000 | 500 |
✓ | ✓ | ✓ | Maximum climb/descent rate that UAV is allowed to reach during navigation modes. [cm/s] |
nav_mc_bank_angle # |
uint8 global |
15 to 45 | 35 |
✓ | ✓ | ✓ | Maximum banking angle (deg) that multicopter navigation is allowed to set. Machine must be able to satisfy this angle without loosing altitude |
nav_mc_braking_bank_angle # |
uint8 global |
15 to 60 | 40needs USE_MR_BRAKING_MODE |
✓ | ✓ | ✓ | max angle that MR is allowed to bank in BOOST mode |
nav_mc_braking_boost_disengage_speed # |
uint16 global |
0 to 1000 | 100needs USE_MR_BRAKING_MODE |
✓ | ✓ | ✓ | BOOST will be disabled when speed goes below this value |
nav_mc_braking_boost_factor # |
uint8 global |
0 to 200 | 100needs USE_MR_BRAKING_MODE |
✓ | ✓ | ✓ | acceleration factor for BOOST phase |
nav_mc_braking_boost_speed_threshold # |
uint16 global |
100 to 1000 | 150needs USE_MR_BRAKING_MODE |
✓ | ✓ | ✓ | BOOST can be enabled when speed is above this value |
nav_mc_braking_boost_timeout # |
uint16 global |
0 to 5000 | 750needs USE_MR_BRAKING_MODE |
✓ | ✓ | ✓ | how long in ms BOOST phase can happen |
nav_mc_braking_disengage_speed # |
uint16 global |
0 to 1000 | 75needs USE_MR_BRAKING_MODE |
✓ | ✓ | ✓ | braking is disabled when speed goes below this value |
nav_mc_braking_speed_threshold # |
uint16 global |
0 to 1000 | 100needs USE_MR_BRAKING_MODE |
✓ | ✓ | ✓ | min speed in cm/s above which braking can happen |
nav_mc_braking_timeout # |
uint16 global |
100 to 5000 | 2000needs USE_MR_BRAKING_MODE |
✓ | ✓ | ✓ | timeout in ms for braking |
nav_mc_heading_p # |
uint16 control profile |
0 to 255 | 60 |
✓ | ✓ | ✓ | P gain of Heading Hold controller (Multirotor) |
nav_mc_hover_thr # |
uint16 battery profile |
1000 to 2000 | 1300 |
✓ | ✓ | ✓ | Multicopter hover throttle hint for altitude controller. Should be set to approximate throttle value when drone is hovering. |
nav_mc_inverted_crash_detection # |
uint8 global |
0 to 15 | 0 |
✓ | ✓ | ✓ | Setting a value > 0 enables inverted crash detection for multirotors. It will auto disarm in situations where the multirotor has crashed inverted on the ground and can't be manually disarmed due to loss of control or for some other reason. When enabled this setting defines the additional number of seconds before disarm beyond a minimum fixed time delay of 3s. Requires a barometer to work. |
nav_mc_manual_climb_rate # |
uint16 global |
10 to 2000 | 200 |
✓ | ✓ | ✓ | Maximum climb/descent rate firmware is allowed when processing pilot input for ALTHOLD control mode [cm/s] |
nav_mc_pos_deceleration_time # |
uint8 global |
0 to 255 | 120 |
✓ | ✓ | ✓ | Used for stoping distance calculation. Stop position is computed as _speed_ * _nav_mc_pos_deceleration_time_ from the place where sticks are released. Braking mode overrides this setting |
nav_mc_pos_expo # |
uint8 global |
0 to 255 | 10 |
✓ | ✓ | ✓ | Expo for PosHold control |
nav_mc_pos_xy_p # |
uint16 control profile |
0 to 255 | 65 |
✓ | ✓ | ✓ | Controls how fast the drone will fly towards the target position. This is a multiplier to convert displacement to target velocity |
nav_mc_pos_z_p # |
uint16 control profile |
0 to 255 | 50 |
✓ | ✓ | ✓ | P gain of altitude PID controller (Multirotor) |
nav_mc_vel_xy_d # |
uint16 control profile |
0 to 255 | 100 |
✓ | ✓ | ✓ | D gain of Position-Rate (Velocity to Acceleration) PID controller. It can damp P and I. Increasing D might help when drone overshoots target. |
nav_mc_vel_xy_dterm_attenuation # |
uint8 control profile |
0 to 100 | 90 |
✓ | ✓ | ✓ | Maximum D-term attenution percentage for horizontal velocity PID controller (Multirotor). It allows to smooth the PosHold CRUISE, WP and RTH when Multirotor is traveling at full speed. Dterm is not attenuated at low speeds, breaking and accelerating. |
nav_mc_vel_xy_dterm_attenuation_end # |
uint8 control profile |
0 to 100 | 60 |
✓ | ✓ | ✓ | A point (in percent of both target and current horizontal velocity) where nav_mc_vel_xy_dterm_attenuation reaches maximum |
nav_mc_vel_xy_dterm_attenuation_start # |
uint8 control profile |
0 to 100 | 10 |
✓ | ✓ | ✓ | A point (in percent of both target and current horizontal velocity) where nav_mc_vel_xy_dterm_attenuation begins |
nav_mc_vel_xy_dterm_lpf_hz # |
float control profile |
0 to 100 | 2 |
✓ | ✓ | ✓ | D-term low pass filter cutoff frequency for horizontal velocity PID controller (Multirotor). It allows to smooth the PosHold CRUISE, WP and RTH when Multirotor is traveling at full speed. Dterm is not attenuated at low speeds, breaking and accelerating. |
nav_mc_vel_xy_ff # |
uint16 control profile |
0 to 255 | 40 |
✓ | ✓ | ✓ | FF gain of Position-Rate (Velocity to Acceleration) |
nav_mc_vel_xy_i # |
uint16 control profile |
0 to 255 | 15 |
✓ | ✓ | ✓ | I gain of Position-Rate (Velocity to Acceleration) PID controller. Used for drift compensation (caused by wind for example). Higher I means stronger response to drift. Too much I gain might cause target overshot |
nav_mc_vel_xy_p # |
uint16 control profile |
0 to 255 | 40 |
✓ | ✓ | ✓ | P gain of Position-Rate (Velocity to Acceleration) PID controller. Higher P means stronger response when position error occurs. Too much P might cause "nervous" behavior and oscillations |
nav_mc_vel_z_d # |
uint16 control profile |
0 to 255 | 10 |
✓ | ✓ | ✓ | D gain of velocity PID controller |
nav_mc_vel_z_i # |
uint16 control profile |
0 to 255 | 50 |
✓ | ✓ | ✓ | I gain of velocity PID controller |
nav_mc_vel_z_p # |
uint16 control profile |
0 to 255 | 100 |
✓ | ✓ | ✓ | P gain of velocity PID controller |
nav_mc_wp_slowdown # |
uint8 global |
OFF, ON | ON |
✓ | ✓ | ✓ | When ON, NAV engine will slow down when switching to the next waypoint. This prioritizes turning over forward movement. When OFF, NAV engine will continue to the next waypoint and turn as it goes. |
✓ 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)
- Rates, expo and TPA (32)
- Navigation, RTH and waypoints (53)
- 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.