1 # Command Line Interface (CLI)
3 INAV has a command line interface (CLI) that can be used to change settings and configure the FC.
7 The CLI can be accessed via the GUI tool or via a terminal emulator connected to the CLI serial port.
9 1. Connect your terminal emulator to the CLI serial port (which, by default, is the same as the MSP serial port)
10 2. Use the baudrate specified by msp_baudrate (115200 by default).
11 3. Send a `#` character.
13 To save your settings type in 'save', saving will reboot the flight controller.
15 To exit the CLI without saving power off the flight controller or type in 'exit'.
17 To see a list of other commands type in 'help' and press return.
19 To dump your configuration (including the current profile), use the 'dump' command.
21 See the other documentation sections for details of the cli commands and settings that are available.
25 Disconnect main power, connect to cli via USB/FTDI.
35 dump profiles using cli if you use them
44 dump rate profiles using cli if you use them
52 copy screen output to a file and save it.
56 Use the cli `defaults` command first.
58 When restoring from a backup it is a good idea to do a dump of the latest defaults so you know what has changed - if you do this each time a firmware release is created youwill be able to see the cli changes between firmware versions. For instance, in December 2014 the default GPS navigation PIDs changed. If you blindly restore your backup you would not benefit from these new defaults.
60 Use the CLI and send all the output from the saved backup commands.
62 Do not send the file too fast, if you do the FC might not be able to keep up when using USART adapters (including built in ones) since there is no hardware serial flow control.
64 You may find you have to copy/paste a few lines at a time.
66 Repeat the backup process again!
68 Compare the two backups to make sure you are happy with your restored settings.
70 Re-apply any new defaults as desired.
72 ## CLI Command Reference
74 | `Command` | Description |
75 |------------------|------------------------------------------------|
76 | `1wire <esc>` | passthrough 1wire to the specified esc |
77 | `adjrange` | show/set adjustment ranges settings |
78 | `aux` | show/set aux settings |
79 | `mmix` | design custom motor mixer |
80 | `smix` | design custom servo mixer |
81 | `color` | configure colors |
82 | `defaults` | reset to defaults and reboot |
83 | `dump` | print configurable settings in a pastable form |
85 | `feature` | list or -val or val |
86 | `get` | get variable value |
87 | `gpspassthrough` | passthrough gps to serial |
89 | `led` | configure leds |
90 | `map` | mapping of rc channel order |
91 | `mixer` | mixer name or list |
92 | `motor` | get/set motor output value |
93 | `play_sound` | index, or none for next |
94 | `profile` | index (0 to 2) |
95 | `rateprofile` | index (0 to 2) |
96 | `rxrange` | configure rx channel ranges (end-points) |
97 | `save` | save and reboot |
98 | `set` | name=value or blank or * for list |
99 | `status` | show system status |
102 ## CLI Variable Reference
104 | `Variable` | Description/Units | Min | Max | Default | Type | Datatype |
105 |---------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|--------|---------------|--------------|----------|
106 | `looptime` | This is the main loop time (in us). Changing this affects PID effect with some PID controllers (see PID section for details). Default of 3500us/285Hz should work for everyone. Setting it to zero does not limit loop time, so it will go as fast as possible. | 0 | 9000 | 3500 | Master | UINT16 |
107 | `emf_avoidance` | Default value is 0 for 72MHz processor speed. Setting this to 1 increases the processor speed, to move the 6th harmonic away from 432MHz. | OFF | ON | OFF | Master | UINT8 |
108 | `i2c_overclock` | Default value is 0 for disabled. Enabling this feature speeds up IMU speed significantly and faster looptimes are possible. | OFF | ON | OFF | Master | UINT8 |
109 | `gyro_sync` | Default value is Off. This option enables gyro_sync feature. In this case the loop will be synced to gyro refresh rate. Loop will always wait for the newest gyro measurement. Use gyro_lpf and gyro_sync_denom determine the gyro refresh rate. Note that different targets have different limits. Setting too high refresh rate can mean that FC cannot keep up with the gyro and higher gyro_sync_denom is needed, | OFF | ON | OFF | Master | UINT8 |
110 | `gyro_sync_denom` | This option determines the sampling ratio. Denominator of 1 means full gyro sampling rate. Denominator 2 would mean 1/2 samples will be collected. Denominator and gyro_lpf will together determine the control loop speed. | 0 | 1 | 1 | Master | UINT8 |
111 | `mid_rc` | This is an important number to set in order to avoid trimming receiver/transmitter. Most standard receivers will have this at 1500, however Futaba transmitters will need this set to 1520. A way to find out if this needs to be changed, is to clear all trim/subtrim on transmitter, and connect to GUI. Note the value most channels idle at - this should be the number to choose. Once midrc is set, use subtrim on transmitter to make sure all channels (except throttle of course) are centered at midrc value. | 1200 | 1700 | 1500 | Master | UINT16 |
112 | `min_check` | 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. | 0 | 2000 | 1100 | Master | UINT16 |
113 | `max_check` | 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. | 0 | 2000 | 1900 | Master | UINT16 |
114 | `rssi_channel` | | 0 | 18 | 0 | Master | INT8 |
115 | `rssi_scale` | | 1 | 255 | 30 | Master | UINT8 |
116 | `rssi_ppm_invert` | | 0 | 1 | 0 | Master | UINT8 |
117 | `input_filtering_mode` | | 0 | 1 | 0 | Master | INT8 |
118 | `rc_smoothing ` | Interpolation of Rc data during looptimes when there are no new updates. This gives smoother RC input to PID controller and cleaner PIDsum | OFF | ON | ON | Master | INT8 |
119 | `min_throttle` | These are min/max values (in us) that are sent to esc when armed. Defaults of 1150/1850 are OK for everyone, for use with AfroESC, they could be set to 1064/1864. | 0 | 2000 | 1150 | Master | UINT16 |
120 | `max_throttle` | These are min/max values (in us) that are sent to esc when armed. Defaults of 1150/1850 are OK for everyone, for use with AfroESC, they could be set to 1064/1864. If you have brushed motors, the value should be set to 2000. | 0 | 2000 | 1850 | Master | UINT16 |
121 | `min_command` | This is the PWM value sent to ESCs when they are not armed. If ESCs beep slowly when powered up, try decreasing this value. It can also be used for calibrating all ESCs at once. | 0 | 2000 | 1000 | Master | UINT16 |
122 | `servo_center_pulse` | | 0 | 2000 | 1500 | Master | UINT16 |
123 | `3d_deadband_low` | | 0 | 2000 | 1406 | Master | UINT16 |
124 | `3d_deadband_high` | | 0 | 2000 | 1514 | Master | UINT16 |
125 | `3d_neutral` | | 0 | 2000 | 1460 | Master | UINT16 |
126 | `3d_deadband_throttle` | | 0 | 2000 | 50 | Master | UINT16 |
127 | `motor_pwm_rate` | Output frequency (in Hz) for motor pins. Defaults are 400Hz for motor. If setting above 500Hz, will switch to brushed (direct drive) motors mode. For example, setting to 8000 will use brushed mode at 8kHz switching frequency. Up to 32kHz is supported. Default is 16000 for boards with brushed motors. Note, that in brushed mode, minthrottle is offset to zero. For brushed mode, set ```max_throttle``` to 2000. | 50 | 32000 | 400 | Master | UINT16 |
128 | `servo_pwm_rate` | Output frequency (in Hz) servo pins. Default is 50Hz. When using tricopters or gimbal with digital servo, this rate can be increased. Max of 498Hz (for 500Hz pwm period), and min of 50Hz. Most digital servos will support for example 330Hz. | 50 | 498 | 50 | Master | UINT16 |
129 | `servo_lowpass_freq` | Selects the servo PWM output cutoff frequency. Valid values range from 10 to 400. This is a fraction of the loop frequency in 1/1000ths. For example, `40` means `0.040`. The cutoff frequency can be determined by the following formula: `Frequency = 1000 * servo_lowpass_freq / looptime` | 10 | 400 | 400 | Master | INT16 |
130 | `servo_lowpass_enable` | Disabled by default. | OFF | ON | OFF | Master | INT8 |
131 | `retarded_arm` | Disabled by default, enabling (setting to 1) allows disarming by throttle low + roll. This could be useful for mode-1 users and non-acro tricopters, where default arming by yaw could move tail servo too much. | OFF | ON | OFF | Master | UINT8 |
132 | `disarm_kill_switch` | Enabled by default. Disarms the motors independently of throttle value. Setting to 0 reverts to the old behaviour of disarming only when the throttle is low. Only applies when arming and disarming with an AUX channel. | OFF | ON | ON | Master | UINT8 |
133 | `auto_disarm_delay` | | 0 | 60 | 5 | Master | UINT8 |
134 | `small_angle` | If the copter tilt angle exceed this value the copter will refuse to arm. default is 25°. | 0 | 180 | 25 | Master | UINT8 |
135 | `pid_at_min_throttle` | If enabled, the copter will process the pid algorithm at minimum throttle. Cannot be used when `retarded_arm` is enabled. | OFF | ON | ON | Master | UINT8 |
136 | `flaps_speed` | | 0 | 100 | 0 | Master | UINT8 |
137 | `reboot_character` | | 48 | 126 | 82 | Master | UINT8 |
138 | `gps_provider` | NMEA, UBLOX | | | NMEA | Master | UINT8 |
139 | `gps_sbas_mode` | EGNOS, WAAS, MSAS, GAGAN | | | AUTO | Master | UINT8 |
140 | `gps_auto_config` | | OFF | ON | ON | Master | UINT8 |
141 | `gps_auto_baud` | | OFF | ON | OFF | Master | UINT8 |
142 | `gps_pos_p` | | 0 | 200 | 15 | Profile | UINT8 |
143 | `gps_pos_i` | | 0 | 200 | 0 | Profile | UINT8 |
144 | `gps_pos_d` | | 0 | 200 | 0 | Profile | UINT8 |
145 | `gps_posr_p` | | 0 | 200 | 34 | Profile | UINT8 |
146 | `gps_posr_i` | | 0 | 200 | 14 | Profile | UINT8 |
147 | `gps_posr_d` | | 0 | 200 | 53 | Profile | UINT8 |
148 | `gps_nav_p` | | 0 | 200 | 25 | Profile | UINT8 |
149 | `gps_nav_i` | | 0 | 200 | 33 | Profile | UINT8 |
150 | `gps_nav_d` | | 0 | 200 | 83 | Profile | UINT8 |
151 | `gps_wp_radius` | | 0 | 2000 | 200 | Profile | UINT16 |
152 | `nav_speed_min` | | 10 | 2000 | 100 | Profile | UINT16 |
153 | `nav_speed_max` | | 10 | 2000 | 300 | Profile | UINT16 |
154 | `serialrx_provider` | When feature SERIALRX is enabled, this allows connection to several receivers which output data via digital interface resembling serial. See RX section. | 0 | 6 | 0 | Master | UINT8 |
155 | `spektrum_sat_bind` | | 0 | 10 | 0 | Master | UINT8 |
156 | `telemetry_switch` | Which aux channel to use to change serial output & baud rate (MSP / Telemetry). It disables automatic switching to Telemetry when armed. | OFF | ON | OFF | Master | UINT8 |
157 | `telemetry_inversion` | | OFF | ON | OFF | Master | UINT8 |
158 | `frsky_default_lattitude` | | -90 | 90 | 0 | Master | FLOAT |
159 | `frsky_default_longitude` | | -180 | 180 | 0 | Master | FLOAT |
160 | `frsky_coordinates_format` | | 0 | 1 | 0 | Master | UINT8 |
161 | `frsky_unit` | | | | * | Master | UINT8 |
162 | `battery_capacity` | | 0 | 20000 | 0 | Master | UINT16 |
163 | `vbat_scale` | Result is Vbatt in 0.1V steps. 3.3V = ADC Vref, 4095 = 12bit adc, 110 = 11:1 voltage divider (10k:1k) x 10 for 0.1V. Adjust this slightly if reported pack voltage is different from multimeter reading. You can get current voltage by typing "status"" in cli." | 0 | 255 | 110 | Master | UINT8 |
164 | `vbat_max_cell_voltage` | Maximum voltage per cell, used for auto-detecting battery voltage in 0.1V units, default is 43 (4.3V) | 10 | 50 | 43 | Master | UINT8 |
165 | `vbat_min_cell_voltage` | Minimum voltage per cell, this triggers battery out alarms, in 0.1V units, default is 33 (3.3V) | 10 | 50 | 33 | Master | UINT8 |
166 | `vbat_warning_cell_voltage` | | 10 | 50 | 35 | Master | UINT8 |
167 | `current_meter_scale` | This sets the output voltage to current scaling for the current sensor in 0.1 mV/A steps. 400 is 40mV/A such as the ACS756 sensor outputs. 183 is the setting for the uberdistro with a 0.25mOhm shunt. | -10000 | 10000 | 400 | Master | INT16 |
168 | `current_meter_offset` | This sets the output offset voltage of the current sensor in millivolts. | 0 | 3300 | 0 | Master | UINT16 |
169 | `multiwii_current_meter_output` | Default current output via MSP is in 0.01A steps. Setting this to 1 causes output in default multiwii scaling (1mA steps). | OFF | ON | OFF | Master | UINT8 |
170 | `current_meter_type` | | 0 | 2 | 1 | Master | UINT8 |
171 | `align_gyro` | When running on non-default hardware or adding support for new sensors/sensor boards, these values are used for sensor orientation. When carefully understood, these values can also be used to rotate (in 90deg steps) or flip the board. Possible values are: DEFAULT, CW0_DEG, CW90_DEG, CW180_DEG, CW270_DEG, CW0_DEG_FLIP, CW90_DEG_FLIP, CW180_DEG_FLIP, CW270_DEG_FLIP. | | | DEFAULT | Master | UINT8 |
172 | `align_acc` | When running on non-default hardware or adding support for new sensors/sensor boards, these values are used for sensor orientation. When carefully understood, these values can also be used to rotate (in 90deg steps) or flip the board. Possible values are: DEFAULT, CW0_DEG, CW90_DEG, CW180_DEG, CW270_DEG, CW0_DEG_FLIP, CW90_DEG_FLIP, CW180_DEG_FLIP, CW270_DEG_FLIP. | | | DEFAULT | Master | UINT8 |
173 | `align_mag` | When running on non-default hardware or adding support for new sensors/sensor boards, these values are used for sensor orientation. When carefully understood, these values can also be used to rotate (in 90deg steps) or flip the board. Possible values are: DEFAULT, CW0_DEG, CW90_DEG, CW180_DEG, CW270_DEG, CW0_DEG_FLIP, CW90_DEG_FLIP, CW180_DEG_FLIP, CW270_DEG_FLIP. | | | DEFAULT | Master | UINT8 |
174 | `align_board_roll` | Arbitrary board rotation in degrees, to allow mounting it sideways / upside down / rotated etc | -180 | 360 | 0 | Master | INT16 |
175 | `align_board_pitch` | Arbitrary board rotation in degrees, to allow mounting it sideways / upside down / rotated etc | -180 | 360 | 0 | Master | INT16 |
176 | `align_board_yaw` | Arbitrary board rotation in degrees, to allow mounting it sideways / upside down / rotated etc | -180 | 360 | 0 | Master | INT16 |
177 | `max_angle_inclination` | This setting controls max inclination (tilt) allowed in angle (level) mode. default 500 (50 degrees). | 100 | 900 | 500 | Master | UINT16 |
178 | `gyro_lpf` | Hardware lowpass filter for gyro. Allowed values depend on the driver - For example MPU6050 allows 10HZ,20HZ,42HZ,98HZ,188HZ,256Hz (8khz mode). If you have to set gyro lpf below 42Hz generally means the frame is vibrating too much, and that should be fixed first. | 10HZ | 256HZ | 42HZ | Master | UINT16 |
179 | `moron_threshold` | When powering up, gyro bias is calculated. If the model is shaking/moving during this initial calibration, offsets are calculated incorrectly, and could lead to poor flying performance. This threshold (default of 32) means how much average gyro reading could differ before re-calibration is triggered. | 0 | 128 | 32 | Master | UINT8 |
180 | `gyro_cmpf_factor` | This setting controls the Gyro Weight for the Gyro/Acc complementary filter. Increasing this value reduces and delays Acc influence on the output of the filter. | 100 | 1000 | 600 | Master | UINT16 |
181 | `gyro_cmpfm_factor` | This setting controls the Gyro Weight for the Gyro/Magnetometer complementary filter. Increasing this value reduces and delays the Magnetometer influence on the output of the filter. | 100 | 1000 | 250 | Master | UINT16 |
182 | `alt_hold_deadband` | | 1 | 250 | 40 | Profile | UINT8 |
183 | `deadband` | 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. | 0 | 32 | 0 | Profile | UINT8 |
184 | `yaw_deadband` | 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. | 0 | 100 | 0 | Profile | UINT8 |
185 | `throttle_correction_value` | The throttle_correction_value will be added to the throttle input. It will be maximal at the throttle_correction_angle and over, null when the copter is leveled and proportional in bewteen. The angle is set with 0.1 deg steps from 1 to 900, ie : 300 = 30.0 deg, 225 = 22.5 deg. | 0 | 150 | 0 | Profile | UINT8 |
186 | `throttle_correction_angle` | The throttle_correction_value will be added to the throttle input. It will be maximal at the throttle_correction_angle and over, null when the copter is leveled and proportional in bewteen. The angle is set with 0.1 deg steps from 1 to 900, ie : 300 = 30.0 deg, 225 = 22.5 deg. | 1 | 900 | 800 | Profile | UINT16 |
187 | `yaw_motor_direction` | | -1 | 1 | 1 | Profile | INT8 |
188 | `tri_unarmed_servo` | On tricopter mix only, if this is set to 1, servo will always be correcting regardless of armed state. to disable this, set it to 0. | OFF | ON | ON | Profile | INT8 |
189 | `default_rate_profile` | Default = profile number | 0 | 2 | | Profile | UINT8 |
190 | `rc_expo` | | 0 | 100 | 65 | Rate Profile | UINT8 |
191 | `rc_yaw_expo` | | 0 | 100 | 0 | Rate Profile | UINT8 |
192 | `thr_mid` | | 0 | 100 | 50 | Rate Profile | UINT8 |
193 | `thr_expo` | | 0 | 100 | 0 | Rate Profile | UINT8 |
194 | `roll_rate` | Defines rotation rate on ROLL axis that UAV will try to archive on max. stick deflection. Rates are defined in tenths of degrees per second [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.
195 | `pitch_rate` | Defines rotation rate on PITCH axis that UAV will try to archive on max. stick deflection. Rates are defined in tenths of degrees per second [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. | 6 | 180 | 20 | Rate Profile | UINT8 |
196 | `yaw_rate` | Defines rotation rate on YAW axis that UAV will try to archive on max. stick deflection. Rates are defined in tenths of degrees per second [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. | 2 | 180 | 20 | Rate Profile | UINT8 |
197 | `tpa_rate` | Throttle PID attenuation reduces influence of P on ROLL and PITCH as throttle increases. For every 1% throttle after the TPA breakpoint, P is reduced by the TPA rate. | 0 | 100 | 0 | Rate Profile | UINT8 |
198 | `tpa_breakpoint` | See tpa_rate. | 1000 | 2000 | 1500 | Rate Profile | UINT16 |
199 | `failsafe_delay` | Time in deciseconds to wait before activating failsafe when signal is lost. See [Failsafe documentation](Failsafe.md#failsafe_delay). | 0 | 200 | 10 | Profile | UINT8 |
200 | `failsafe_off_delay` | Time in deciseconds to wait before turning off motors when failsafe is activated. See [Failsafe documentation](Failsafe.md#failsafe_off_delay). | 0 | 200 | 200 | Profile | UINT8 |
201 | `failsafe_throttle` | Throttle level used for landing when failsafe is enabled. See [Failsafe documentation](Failsafe.md#failsafe_throttle). | 1000 | 2000 | 1000 | Profile | UINT16 |
202 | `rx_min_usec` | 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`. | 100 | 2000 | 885 | Profile | UINT16 |
203 | `rx_max_usec` | 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`. | 100 | 3000 | 2115 | Profile | UINT16 |
204 | `gimbal_mode` | When feature SERVO_TILT is enabled, this can be either NORMAL or MIXTILT | | | NORMAL | Profile | UINT8 |
205 | `acc_hardware` | This is used to suggest which accelerometer driver should load, or to force no accelerometer in case gyro-only flight is needed. Default (0) will attempt to auto-detect among enabled drivers. Otherwise, to force a particular device, set it to 2 for ADXL345, 3 for MPU6050 integrated accelerometer, 4 for MMA8452, 5 for BMA280, 6 for LSM303DLHC, 7 for MPU6000, 8 for MPU6500 or 1 to disable accelerometer alltogether - resulting in gyro-only operation. | 0 | 9 | 0 | Master | UINT8 |
206 | `acc_lpf_factor` | This setting controls the Low Pass Filter factor for ACC. Increasing this value reduces ACC noise (visible in GUI), but would increase ACC lag time. Zero = no filter | 0 | 250 | 4 | Profile | UINT8 |
207 | `acc_unarmedcal` | | 0 | 1 | 1 | Profile | UINT8 |
208 | `acc_trim_pitch` | | -300 | 300 | 0 | Profile | INT16 |
209 | `acc_trim_roll` | | -300 | 300 | 0 | Profile | INT16 |
210 | `baro_tab_size` | | 0 | 48 | 21 | Profile | UINT8 |
211 | `baro_noise_lpf` | | 0 | 1 | 0.6 | Profile | FLOAT |
212 | `baro_cf_vel` | | 0 | 1 | 0.985 | Profile | FLOAT |
213 | `baro_cf_alt` | | 0 | 1 | 0.965 | Profile | FLOAT |
214 | `mag_hardware` | 0 = Default, use whatever mag hardware is defined for your board type ; 1 = None, disable mag ; 2 = HMC5883 ; 3 = AK8975 (for versions <= 1.7.1: 1 = HMC5883 ; 2 = AK8975 ; 3 = None, disable mag) | 0 | 3 | 0 | Master | UINT8 |
215 | `mag_declination` | Current location magnetic declination in format. For example, -6deg 37min, = for Japan. Leading zero in ddd not required. Get your local magnetic declination here: http://magnetic-declination.com/ | -18000 | 18000 | 0 | Profile | INT16 |
216 | `pid_controller` | MW23, MWREWRITE, LUX | | | MWREWRITE | Profile | UINT8 |
217 | `p_pitch` | | 0 | 200 | 40 | Profile | UINT8 |
218 | `i_pitch` | | 0 | 200 | 30 | Profile | UINT8 |
219 | `d_pitch` | | 0 | 200 | 23 | Profile | UINT8 |
220 | `p_roll` | | 0 | 200 | 40 | Profile | UINT8 |
221 | `i_roll` | | 0 | 200 | 30 | Profile | UINT8 |
222 | `d_roll` | | 0 | 200 | 23 | Profile | UINT8 |
223 | `p_yaw` | | 0 | 200 | 85 | Profile | UINT8 |
224 | `i_yaw` | | 0 | 200 | 45 | Profile | UINT8 |
225 | `d_yaw` | | 0 | 200 | 0 | Profile | UINT8 |
226 | `p_pitchf` | | 0 | 100 | 1.5 | Profile | FLOAT |
227 | `i_pitchf` | | 0 | 100 | 0.4 | Profile | FLOAT |
228 | `d_pitchf` | | 0 | 100 | 0.03 | Profile | FLOAT |
229 | `p_rollf` | | 0 | 100 | 1.5 | Profile | FLOAT |
230 | `i_rollf` | | 0 | 100 | 0.4 | Profile | FLOAT |
231 | `d_rollf` | | 0 | 100 | 0.03 | Profile | FLOAT |
232 | `p_yawf` | | 0 | 100 | 2.5 | Profile | FLOAT |
233 | `i_yawf` | | 0 | 100 | 1.0 | Profile | FLOAT |
234 | `d_yawf` | | 0 | 100 | 0.00 | Profile | FLOAT |
235 | `level_horizon` | | 0 | 10 | 3 | Profile | FLOAT |
236 | `level_angle` | | 0 | 10 | 5 | Profile | FLOAT |
237 | `sensitivity_horizon` | | 0 | 250 | 75 | Profile | UINT8 |
238 | `p_alt` | | 0 | 200 | 50 | Profile | UINT8 |
239 | `i_alt` | | 0 | 200 | 0 | Profile | UINT8 |
240 | `d_alt` | | 0 | 200 | 0 | Profile | UINT8 |
241 | `p_level` | | 0 | 200 | 90 | Profile | UINT8 |
242 | `i_level` | | 0 | 200 | 10 | Profile | UINT8 |
243 | `d_level` | | 0 | 200 | 100 | Profile | UINT8 |
244 | `p_vel` | | 0 | 200 | 120 | Profile | UINT8 |
245 | `i_vel` | | 0 | 200 | 45 | Profile | UINT8 |
246 | `d_vel` | | 0 | 200 | 1 | Profile | UINT8 |
247 | `dterm_cut_hz` | Lowpass cutoff filter for Dterm for all PID controllers | 0 | 200 | 0 | Profile | UINT8 |
248 | `pterm_cut_hz` | Lowpass cutoff filter for Pterm for all PID controllers | 0 | 200 | 0 | Profile | UINT8 |
249 | `gyro_cut_hz` | Lowpass cutoff filter for gyro input | 0 | 200 | 0 | Profile | UINT8 |
250 | `yaw_jump_prevention_limit` | Prevent yaw jumps during yaw stops and rapid YAW input. To disable set to 500. Adjust this if your aircraft 'skids out'. Higher values increases YAW authority but can cause roll/pitch instability in case of underpowered UAVs. Lower values makes yaw adjustments more gentle but can cause UAV unable to keep heading | 80 | 500 | 200 | Master | UINT16 |
251 | `yaw_p_limit` | Limiter for yaw P term. This parameter is only affecting PID controller MW23. To disable set to 500 (actual default). | 100 | 500 | 500 | Profile | UINT16 |
252 | `blackbox_rate_num` | | 1 | 32 | 1 | Master | UINT8 |
253 | `blackbox_rate_denom` | | 1 | 32 | 1 | Master | UINT8 |
254 | `mag_hold_rate_limit` | This setting limits yaw rotation rate that MAG_HOLD controller can request from PID inner loop controller. It is independent from manual yaw rate and used only when MAG_HOLD flight mode is enabled by pilot, RTH or WAYPOINT modes.
255 | 10 | 255 | 40 | Profile | UINT8 |