Commit 757ccb25 authored by Don Gagne's avatar Don Gagne

Remove unused APM code

parent 24486f12
This source diff could not be displayed because it is too large. You can view the blob instead.
[PX4%20Calibration%20Tool]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=COMMANDBUTTON
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_DESCRIPTION=Reboot (only in standby)
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_BUTTONTEXT=REBOOT
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_COMMANDID=246
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAMS_VISIBLE=false
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM1=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM2=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM3=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM4=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM5=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM6=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM7=0
QGC_TOOL_WIDGET_ITEMS\2\TYPE=COMMANDBUTTON
QGC_TOOL_WIDGET_ITEMS\2\QGC_COMMAND_BUTTON_DESCRIPTION=Magnetometer calibration
QGC_TOOL_WIDGET_ITEMS\2\QGC_COMMAND_BUTTON_BUTTONTEXT=MAG
QGC_TOOL_WIDGET_ITEMS\2\QGC_COMMAND_BUTTON_COMMANDID=241
QGC_TOOL_WIDGET_ITEMS\2\QGC_COMMAND_BUTTON_PARAMS_VISIBLE=false
QGC_TOOL_WIDGET_ITEMS\2\QGC_COMMAND_BUTTON_PARAM1=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_COMMAND_BUTTON_PARAM2=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_COMMAND_BUTTON_PARAM3=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_COMMAND_BUTTON_PARAM4=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_COMMAND_BUTTON_PARAM5=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_COMMAND_BUTTON_PARAM6=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_COMMAND_BUTTON_PARAM7=0
QGC_TOOL_WIDGET_ITEMS\3\TYPE=COMMANDBUTTON
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_DESCRIPTION=Accelerometer calibration
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_BUTTONTEXT=ACCEL
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_COMMANDID=241
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAMS_VISIBLE=false
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM1=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM2=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM3=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM4=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM5=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM6=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM7=0
QGC_TOOL_WIDGET_ITEMS\4\TYPE=COMMANDBUTTON
QGC_TOOL_WIDGET_ITEMS\4\QGC_COMMAND_BUTTON_DESCRIPTION=Gyroscope calibration
QGC_TOOL_WIDGET_ITEMS\4\QGC_COMMAND_BUTTON_BUTTONTEXT=GYRO
QGC_TOOL_WIDGET_ITEMS\4\QGC_COMMAND_BUTTON_COMMANDID=241
QGC_TOOL_WIDGET_ITEMS\4\QGC_COMMAND_BUTTON_PARAMS_VISIBLE=false
QGC_TOOL_WIDGET_ITEMS\4\QGC_COMMAND_BUTTON_PARAM1=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_COMMAND_BUTTON_PARAM2=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_COMMAND_BUTTON_PARAM3=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_COMMAND_BUTTON_PARAM4=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_COMMAND_BUTTON_PARAM5=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_COMMAND_BUTTON_PARAM6=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_COMMAND_BUTTON_PARAM7=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_COMMAND_BUTTON_DESCRIPTION=RC Trim calibration
QGC_TOOL_WIDGET_ITEMS\5\QGC_COMMAND_BUTTON_BUTTONTEXT=TRIM
QGC_TOOL_WIDGET_ITEMS\5\QGC_COMMAND_BUTTON_COMMANDID=241
QGC_TOOL_WIDGET_ITEMS\5\QGC_COMMAND_BUTTON_PARAMS_VISIBLE=false
QGC_TOOL_WIDGET_ITEMS\5\QGC_COMMAND_BUTTON_PARAM1=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_COMMAND_BUTTON_PARAM2=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_COMMAND_BUTTON_PARAM3=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_COMMAND_BUTTON_PARAM4=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_COMMAND_BUTTON_PARAM5=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_COMMAND_BUTTON_PARAM6=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_COMMAND_BUTTON_PARAM7=0
QGC_TOOL_WIDGET_ITEMS\size=5
== MAVLink Parameters ==
|| *EEPROM variable name* || *Min* || *Max* || *Default* || *Multiplier* || *Enabled (0 = no, 1 = yes)* || *Comment* ||
||MAH|| || ||1|| || || ||
||CURRENT_ENABLE|| || ||1|| || || ||
||AOA|| || ||1|| || || ||
||MAG_ENABLE|| || ||1|| || || ||
||HDNG2RLL_P||0||5||0.7||1||1||NAV_ROLL_P - Navigation control gains. Tuning values for the navigation control PID loops. The P term is the primary tuning value. This determines how the control deflection varies in proportion to the required correction.||
||HDNG2RLL_I||0||1||0.01||1||1||NAV_ROLL_I - Navigation control gains. Tuning values for the navigation control PID loops. The I term is used to control drift.||
||HDNG2RLL_D||0||1||0.02||1||1||NAV_ROLL_D - Navigation control gains. Tuning values for the navigation control PID loops. The D term is used to control overshoot. Avoid adjusting this term if you are not familiar with tuning PID loops.||
||HDNG2RLL_IMAX||0||3000||500||100||1||NAV_ROLL_INT_MAX_CENTIDEGREE - In Degrees - Maximum control offset due to the integral. This prevents the control output from being overdriven due to a persistent offset (e.g. native flight AoA). If you find this value is insufficient consider adjusting the AOA parameter.||
||RLL2SRV_P||0||5||0.4||1||1||SERVO_ROLL_P - Attitude control gains - Tuning values for the attitude control PID loops. The P term is the primary tuning value. This determines how the control deflection varies in proportion to the required correction.||
||RLL2SRV_I||0||1||0||1||1||SERVO_ROLL_I - Attitude control gains - Tuning values for the attitude control PID loops. The I term is used to help control surfaces settle. This value should normally be kept low.||
||RLL2SRV_D||0||1||0||1||1||SERVO_ROLL_D - Attitude control gains - Tuning values for the attitude control PID loops. The D term is used to control overshoot. Avoid using or adjusting this term if you are not familiar with tuning PID loops. It should normally be zero for most aircraft.||
||RLL2SRV_IMAX||0||3000||500||100||1||SERVO_ROLL_INT_MAX_CENTIDEGREE - In Degrees - Maximum control offset due to the integral. This prevents the control output from being overdriven due to a persistent offset (e.g. crosstracking). Default is 5 degrees.||
||PTCH2SRV_P||0||5||0.6||1||1||SERVO_PITCH_P - Attitude control gains - Tuning values for the attitude control PID loops. The P term is the primary tuning value. This determines how the control deflection varies in proportion to the required correction.||
||PTCH2SRV_I||0||1||0||1||1||SERVO_PITCH_I - Attitude control gains - Tuning values for the attitude control PID loops. The I term is used to help control surfaces settle. This value should normally be kept low.||
||PTCH2SRV_D||0||1||0||1||1||SERVO_PITCH_D - Attitude control gains - Tuning values for the attitude control PID loops. The D term is used to control overshoot. Avoid using or adjusting this term if you are not familiar with tuning PID loops. It should normally be zero for most aircraft.||
||PTCH2SRV_IMAX||0||3000||500||100||1||SERVO_PITCH_INT_MAX_CENTIDEGREE - In Degrees - Maximum control offset due to the integral. This prevents the control output from being overdriven due to a persistent offset (e.g. crosstracking). Default is 5 degrees.||
||ARSPD2PTCH_P||0||5||0.65||1||1||NAV_PITCH_ASP_P - P. I and D terms for pitch adjustments made to maintain airspeed.||
||ARSPD2PTCH_I||0||1||0||1||1||NAV_PITCH_ASP_I - P. I and D terms for pitch adjustments made to maintain airspeed.||
||ARSPD2PTCH_D||0||1||0||1||1||NAV_PITCH_ASP_D - P. I and D terms for pitch adjustments made to maintain airspeed.||
||ARSPD2PTCH_IMA||0||3000||500||100||1||NAV_PITCH_ASP_INT_MAX_CMSEC - In Degrees - Maximum pitch offset due to the integral. This limits the control output from being overdriven due to a persistent offset (eg. inability to maintain the programmed airspeed).||
||YW2SRV_P||0||5||0||1||1||SERVO_YAW_P - P. I and D terms for the YAW control. Note units of this control loop are unusual. PID input is in m/s**2||
||YW2SRV_I||0||1||0||1||1||SERVO_YAW_I - P. I and D terms for the YAW control. Note units of this control loop are unusual. PID input is in m/s**2||
||YW2SRV_D||0||1||0||1||1||SERVO_YAW_D - P. I and D terms for the YAW control. Note units of this control loop are unusual. PID input is in m/s**2||
||YW2SRV_IMAX||0||3000||0||100||1||SERVO_YAW_INT_MAX - Maximum control offset due to the integral. This prevents the control output from being overdriven due to a persistent offset (e.g. crosstracking).||
||ENRGY2THR_P||0||5||0.5||1||1||THROTTLE_TE_P - P. I and D terms for throttle adjustments made to control altitude.||
||ENRGY2THR_I||0||1||0||1||1||THROTTLE_TE_I - P. I and D terms for throttle adjustments made to control altitude.||
||ENRGY2THR_D||0||1||0||1||1||THROTTLE_TE_D - P. I and D terms for throttle adjustments made to control altitude.||
||ENRGY2THR_IMAX||0||100||20||1||1||THROTTLE_TE_INT_MAX - In Percent - Maximum throttle input due to the integral term. This limits the throttle from being overdriven due to a persistent offset (e.g. inability to maintain the programmed altitude).||
||ALT2PTCH_P||0||5||0.65||1||1||NAV_PITCH_ALT_P - P. I and D terms for pitch adjustments made to maintain altitude.||
||ALT2PTCH_I||0||1||0||1||1||NAV_PITCH_ALT_I - P. I and D terms for pitch adjustments made to maintain altitude.||
||ALT2PTCH_D||0||1||0||1||1||NAV_PITCH_ALT_D - P. I and D terms for pitch adjustments made to maintain altitude.||
||ALT2PTCH_IMAX||0||3000||500||100||1||NAV_PITCH_ALT_INT_MAX_CM - In Meters - Maximum pitch offset due to the integral. This limits the control output from being overdriven due to a persistent offset (eg. inability to maintain the programmed altitude).||
||KFF_PTCHCOMP||-3||3||0.2||0.01||1||PITCH_COMP - In Percent - Adds pitch input to compensate for the loss of lift due to roll control.||
||KFF_RDDRMIX||-3||3||0.5||0.01||1||RUDDER_MIX - Roll to yaw mixing. This allows for co-ordinated turns.||
||KFF_PTCH2THR||-3||3||0||1||1||P_TO_T - Pitch to throttle feed-forward gain.||
||KFF_THR2PTCH||-3||3||0||1||1||T_TO_P - Throttle to pitch feed-forward gain.||
||XTRK_GAIN_SC||0||100||100||100||1||XTRACK_GAIN_SCALED - Default value is 1.0 degrees per metre. Values lower than 0.001 will disable crosstrack compensation.||
||ALT_MIX||0||1||1||0.01||1||ALTITUDE_MIX - In Percent - Configures the blend between GPS and pressure altitude. 0 = GPS altitude, 1 = Press alt, 0.5 = half and half, etc.||
||ARSPD_RATIO||0||5||1.9936||1||1||AIRSPEED_RATIO - Adjust AIRSPEED_RATIO in small increments to calibrate the airspeed sensor relative to your GPS. The calculation and default value are optimized for speeds around 12 m/s||
||WP_RADIUS||0||200||30||1||1||WP_RADIUS_DEFAULT - When the user performs a factory reset on the APM, sets the waypoint radius (the radius from a target waypoint within which the APM will consider itself to have arrived at the waypoint) to this value in meters. This is mainly intended to allow users to start using the APM without programming a mission first.||
||WP_LOITER_RAD||0||200||60||1||1||LOITER_RADIUS_DEFAULT - When the user performs a factory reset on the APM, sets the loiter radius (the distance the APM will attempt to maintain from a waypoint while loitering) to this value in meters. This is mainly intended to allow users to start using the APM without programming a mission first.||
||ARSPD_FBW_MIN||5||50||6||1||1||AIRSPEED_FBW_MIN - In m/s - Airspeed corresponding to minimum and maximum throttle in Fly By Wire B mode.||
||ARSPD_FBW_MAX||5||50||22||1||1||AIRSPEED_FBW_MAX - In m/s - Airspeed corresponding to minimum and maximum throttle in Fly By Wire B mode. AIRSPEED_FBW_MAX also sets the maximum airspeed that the cruise airspeed can be ""nudged"" to in AUTO mode when ENABLE_STICK_MIXING is set. In AUTO the cruise airspeed can be increased between AIRSPEED_CRUISE and AIRSPEED_FBW_MAX by positioning the throttle stick in the top 1/2 of its range. Throttle stick in the bottom 1/2 provide regular AUTO control.||
||THR_MIN||0||100||0||1||1||THROTTLE_MIN - The minimum throttle setting to which the autopilot will reduce the throttle while descending. The default is zero, which is suitable for aircraft with a steady power-off glide. Increase this value if your aircraft needs throttle to maintain a stable descent in level flight.||
||THR_MAX||0||100||75||1||1||THROTTLE_MAX - The maximum throttle setting the autopilot will apply. The default is 75%. Reduce this value if your aicraft is overpowered or has complex flight characteristics at high throttle settings.||
||THR_FAILSAFE||0||0||1|| || ||THROTTLE_FAILSAFE - The throttle failsafe allows you to configure a software failsafe activated by a setting on the throttle input channel (channel 3). This can be used to achieve a failsafe override on loss of radio control without having to sacrifice one of your FLIGHT_MODE settings as the throttle failsafe overrides the switch-selected mode. Throttle failsafe is enabled by setting THROTTLE_FAILSAFE to 1.||
||THR_FS_ACTION||0||2||1||1|| ||THROTTLE_FAILSAFE_ACTION - The FAILSAFE_ACTION setting determines what APM will do when throttle failsafe mode is entered while flying in AUTO mode. This is important in order to avoid accidental failsafe behaviour when flying waypoints that take the aircraft temporarily out of radio range. If FAILSAFE_ACTION is 1 when failsafe is entered in AUTO or LOITER modes the aircraft will head for home in RTL mode. If the throttle channel moves back up it will return to AUTO or LOITER mode. The default behavior is to ignore throttle failsafe in AUTO and LOITER modes.||
||TRIM_THROTTLE||0||90||45||1||1||THROTTLE_CRUISE - In Percent - The approximate throttle setting to achieve AIRSPEED_CRUISE in level flight. The default is 45% which is reasonable for a modestly powered aircraft.||
||TRIM_AUTO||0||1||1||1||1||AUTO_TRIM - !ArduPilot Mega can update its trim settings by looking at the radio inputs when switching out of MANUAL mode. This allows you to manually trim your aircraft before switching to an assisted mode but it also means that you should avoid switching out of MANUAL while you have any control stick deflection.||
||FLTMODE_CH||5||8||8||1||1||FLIGHT_MODE_CHANNEL - Flight modes assigned to the control channel, and the input channel that is read for the control mode. Use a servo tester or the !ArduPilotMega_demo test program to check your switch settings. ATTENTION: Some !ArduPilot Mega boards have radio channels marked 0-7 and others have them marked the standard 1-8. The FLIGHT_MODE_CHANNEL option uses channel numbers 1-8 (and defaults to 8). If you only have a three-position switch or just want three modes set your switch to produce 1165, 1425, and 1815 microseconds and configure FLIGHT_MODE 1 & 2, 3 & 4 and 5 & 6 to be the same. This is the default. If you have FLIGHT_MODE_CHANNEL set to 8 (the default) and your control channel connected to input channel 8, the hardware failsafe mode will activate for any control input over 1750ms.||
||FLIGHT_MODE_1||0||14||11||1|| ||FLIGHT_MODE_1 - The following standard flight modes are available: MANUAL = Full manual control via the hardware multiplexer. STABILIZE = Tries to maintain level flight but can be overridden with radio control inputs. FLY_BY_WIRE_A = Autopilot style control via user input with manual throttle. FLY_BY_WIRE_B = Autopilot style control via user input, aispeed controlled with throttle. RTL = Returns to the Home location and then LOITERs at a safe altitude. AUTO = Autonomous flight based on programmed waypoints.||
||FLIGHT_MODE_2||0||14||11||1|| ||FLIGHT_MODE_2||
||FLIGHT_MODE_3||0||14||5||1|| ||FLIGHT_MODE_3||
||FLIGHT_MODE_4||0||14||5||1|| ||FLIGHT_MODE_4||
||FLIGHT_MODE_5||0||14||0||1|| ||FLIGHT_MODE_5||
||FLIGHT_MODE_6||0||14||0||1|| ||FLIGHT_MODE_6||
||RC1_MIN||900||2100||1500||1||1||PWM_RC1_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC1_MAX||900||2100||1500||1||1||PWM_RC1_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC1_TRIM||900||2100||1200||1||1||PWM_RC1_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC2_MIN||900||2100||1500||1||1||PWM_RC2_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC2_MAX||900||2100||1500||1||1||PWM_RC2_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC2_TRIM||900||2100||1200||1||1||PWM_RC2_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC3_MIN||900||2100||1500||1||1||PWM_RC3_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC3_MAX||900||2100||1500||1||1||PWM_RC3_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC3_TRIM||900||2100||1500||1||1||PWM_RC3_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC4_MIN||900||2100||1500||1||1||PWM_RC4_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC4_MAX||900||2100||1500||1||1||PWM_RC4_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC4_TRIM||900||2100||1200||1||1||PWM_RC4_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC5_MIN||900||2100||1500||1||1||PWM_CH5_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC5_MAX||900||2100||1500||1||1||PWM_CH5_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC5_MAX||900||2100||1500||1||1||PWM_CH5_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC5_TRIM||900||2100||1500||1||1||PWM_CH5_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC6_MIN||900||2100||1500||1||1||PWM_CH6_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC6_MAX||900||2100||1500||1||1||PWM_CH6_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC6_TRIM||900||2100||1500||1||1||PWM_CH6_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC7_MIN||900||2100||1500||1||1||PWM_CH7_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC7_MAX||900||2100||1500||1||1||PWM_CH7_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC7_TRIM||900||2100||1500||1||1||PWM_CH7_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC8_MIN||900||2100||1500||1||1||PWM_CH8_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC8_MAX||900||2100||1500||1||1||PWM_CH8_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC8_TRIM||900||2100||1500||1||1||PWM_CH8_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||IMU_OFFSET_0||0||0||0|| || ||IMU_OFFSET_0 - IMU Calibration||
||IMU_OFFSET_1||0||0||0|| || ||IMU_OFFSET_1 - IMU Calibration||
||IMU_OFFSET_2||0||0||0|| || ||IMU_OFFSET_2 - IMU Calibration||
||IMU_OFFSET_3||0||0||0|| || ||IMU_OFFSET_3 - IMU Calibration||
||IMU_OFFSET_4||0||0||0|| || ||IMU_OFFSET_4 - IMU Calibration||
||IMU_OFFSET_5||0||0||0|| || ||IMU_OFFSET_5 - IMU Calibration||
||YAW_MODE|| || ||0|| || ||YAW_MODE||
||WP_MODE|| || ||0|| || ||WP_MODE||
||WP_TOTAL||0||255|| ||0|| ||WP_TOTAL||
||WP_INDEX||0||255|| ||0|| ||WP_INDEX||
||CONFIG|| || ||1|| || ||CONFIG_OPTIONS||
||SWITCH_ENABLE||0||1||1||1||1||REVERS_SWITCH_ENABLE - 0 = Off, 1 = On, Enables/Disables physical reverse switches on APM board||
||FIRMWARE_VER|| || ||0|| || ||FIRMWARE_VER||
||LOG_BITMASK||0||65535||334||1||1||LOG_BITMASK||
||TRIM_ELEVON||900||2100||1500||1||1||TRIM_ELEVON||
||THR_FS_VALUE||850||1000||950||1||1||THROTTLE_FS_VALUE - If the throttle failsafe is enabled, THROTTLE_FS_VALUE sets the channel value below which the failsafe engages. The default is 975ms, which is a very low throttle setting. Most transmitters will let you trim the manual throttle position up so that you cannot engage the failsafe with a regular stick movement. Configure your receiver's failsafe setting for the throttle channel to the absolute minimum, and use the !ArduPilotMega_demo program to check that you cannot reach that value with the throttle control. Leave a margin of at least 50 microseconds between the lowest throttle setting and THROTTLE_FS_VALUE.||
||TRIM_ARSPD_CM||500||5000||1200||100||1||AIRSPEED_CRUISE_CM - The speed in metres per second to maintain during cruise. The default is 10m/s, which is a conservative value suitable for relatively small, light aircraft.||
||GND_TEMP||-10||50||28||1||1||GND_TEMP - Ground Temperature||
||AP_OFFSET|| || ||0|| || ||AP_OFFSET||
||TRIM_PITCH_CD|| || ||0|| || ||TRIM_PITCH_CD||
||ALT_HOLD_RTL||0||20000||10000||100||1||ALT_HOLD_HOME_CM - When the user performs a factory reset on the APM. Sets the flag for weather the current altitude or ALT_HOLD_HOME altitude should be used for Return To Launch. Also sets the value of USE_CURRENT_ALT in meters. This is mainly intended to allow users to start using the APM without programming a mission first.||
||XTRK_ANGLE_CD||0||6000||3000||100||1||XTRACK_ENTRY_ANGLE_CENTIDEGREE - Maximum angle used to correct for track following.||
||ROLL_SRV_MAX||0||100||4500||100||0||ROLL_SERVO_MAX_CENTIDEGREE||
||PITCH_SRV_MAX||0||100||4500||100||0||PITCH_SERVO_MAX_CENTIDEGREE||
||RUDER_SRV_MAX||0||100||4500||100||0||RUDDER_SERVO_MAX_CENTIDEGREE||
||LIM_ROLL_CD||0||6000||4500||100||1||HEAD_MAX_CENTIDEGREE - The maximum commanded bank angle in either direction. The default is 45 degrees. Decrease this value if your aircraft is not stable or has difficulty maintaining altitude in a steep bank.||
||LIM_PITCH_MAX||0||6000||1500||100||1||PITCH_MAX_CENTIDEGREE - The maximum commanded pitch up angle. The default is 15 degrees. Care should be taken not to set this value too large, as the aircraft may stall||
||LIM_PITCH_MIN||-6000||0||-2500||100||1||PITCH_MIN_CENTIDEGREE - The maximum commanded pitch down angle. Note that this value must be negative. The default is -25 degrees. Care should be taken not to set this value too large as it may result in overspeeding the aircraft.||
||GND_ALT_CM||0||500000||0||100||1||GND_ALT_CM||
||GND_ABS_PRESS|| || ||0|| || ||GND_ABS_PRESS||
||COMPASS_DEC||-1.57075||1.57075||0||1|| ||COMPASS_DEC - Compass Declination||
||SR0_EXT_STAT||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable GPS_STATUS, CONTROL_STATUS, AUX_STATUS||
||SR0_EXTRA1||0||50||10||1||1||TELEMETRY_ENABLE Port 0 - Enable MSG_ATTITUDE||
||SR0_EXTRA2||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable MSG_VFR_HUD||
||SR0_EXTRA3||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Not currently used||
||SR0_POSITION||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable LOCAL_POSITION, GLOBAL_POSITION/GLOBAL_POSITION_INT messages||
||SR0_RAW_CTRL||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable ATTITUDE_CONTROLLER_OUTPUT, POSITION_CONTROLLER_OUTPUT, NAV_CONTROLLER_OUTPUT||
||SR0_RAW_SENS||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable IMU_RAW, GPS_RAW, GPS_STATUS packets||
||SR0_RC_CHAN||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable RC_CHANNELS_SCALED, RC_CHANNELS_RAW, SERVO_OUTPUT_RAW||
||SR3_EXT_STAT||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable GPS_STATUS, CONTROL_STATUS, AUX_STATUS||
||SR3_EXTRA1||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable MSG_ATTITUDE||
||SR3_EXTRA2||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable MSG_VFR_HUD||
||SR3_EXTRA3||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Not currently used||
||SR3_POSITION||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable LOCAL_POSITION, GLOBAL_POSITION/GLOBAL_POSITION_INT messages||
||SR3_RAW_CTRL||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable ATTITUDE_CONTROLLER_OUTPUT, POSITION_CONTROLLER_OUTPUT, NAV_CONTROLLER_OUTPUT||
||SR3_RAW_SENS||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable IMU_RAW, GPS_RAW, GPS_STATUS packets||
||SR3_RC_CHAN||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable RC_CHANNELS_SCALED, RC_CHANNELS_RAW, SERVO_OUTPUT_RAW||
||MAG_ENABLE||0||1||0||1||1||MAG_ENABLE - 0 = Off, 1 = On, Magnetometer Enable||
||ARSPD_ENABLE||0||1||0||1||1||AIRSPEED_ENABLE - 0 = Off, 1 = On, Airspeed Sensor Enable||
||BATT_CAPACITY||0||10000||1760||1||1||BATTERY_MAH - Battery capacity in mAh||
||BATT_MONITOR||0||4||0||1||1||BATTERY_MONITOR - The value should be set to 0 to disable battery monitoring, 1 to measure cell voltages for a 3 cell lipo, 2 to measure cell voltages for a 4 cell lipo, 3 to measure the total battery voltage (only) on input 1, or 4 to measure total battery voltage on input 1 and current on input 2. ||
||FS_GCS_ENABL||0||1||0||1||1||FS_GCS_ENABLE - 0 = Off, 1 = On, If the GCS heartbeat is lost for 20 seconds, the plane will Return to Launch||
||FS_LONG_ACTN||0||1||0||1||1||FS_LONG_ACTION - 0 = Off, 1 = On, If heartbeat is lost for 20 srconds, the plane will Return to Launch||
||FS_SHORT_ACTN||0||1||0||1||1||FS_SHORT_ACTION - 0 = Off, 1 = On, If heartbeat is lost for 1.5 seconds, the plane will circle until heartbeat is found again or 20 seconds has passed||
||SYSID_MYGCS||0||255||255||1||1||SYSID_MYGCS - The system ID of the GCS||
||SYSID_THISMAV||0||255||1||1||1||SYSID_THISMAV - The system ID of the MAVlink vehicle||
||AOA|| || ||0|| ||
||ACR_PIT_D|| || ||1|| || ||Description coming soon||
||ACR_PIT_I|| || ||1|| || ||Description coming soon||
||ACR_PIT_IMAX|| || ||1|| || ||Description coming soon||
||ACR_PIT_P|| || ||1|| || ||Description coming soon||
||ACR_RLL_D|| || ||1|| || ||Description coming soon||
||ACR_RLL_I|| || ||1|| || ||Description coming soon||
||ACR_RLL_IMAX|| || ||1|| || ||Description coming soon||
||ACR_RLL_P|| || ||1|| || ||Description coming soon||
||ACR_YAW_D|| || ||1|| || ||Description coming soon||
||ACR_YAW_I|| || ||1|| || ||Description coming soon||
||ACR_YAW_IMAX|| || ||1|| || ||Description coming soon||
||ACR_YAW_P|| || ||1|| || ||Description coming soon||
||ESC|| || ||1|| || ||ESC_CALIBRATE_MODE||
||FRAME|| || ||1|| || ||FRAME_ORIENTATION ||
||LOITER_RADIUS|| || ||1|| || ||Description coming soon||
||NAV_LAT_D|| || ||1|| || ||Description coming soon||
||NAV_LAT_I|| || ||1|| || ||Description coming soon||
||NAV_LAT_IMAX|| || ||1|| || ||Description coming soon||
||NAV_LAT_P|| || ||1|| || ||Description coming soon||
||NAV_LON_D|| || ||1|| || ||Description coming soon||
||NAV_LON_I|| || ||1|| || ||Description coming soon||
||NAV_LON_IMAX|| || ||1|| || ||Description coming soon||
||NAV_LON_P|| || ||1|| || ||Description coming soon||
||NAV_WP_D|| || ||1|| || ||Description coming soon||
||NAV_WP_I|| || ||1|| || ||Description coming soon||
||NAV_WP_IMAX|| || ||1|| || ||Description coming soon||
||NAV_WP_P|| || ||1|| || ||Description coming soon||
||PITCH_MAX|| || ||1|| || ||Description coming soon||
||SONAR_ENABLE||0||1||0||1||1||SONAR_ENABLE - 0 = Off, 1 = On, Sonar Enable||
||STB_PIT_D|| || ||1|| || ||Description coming soon||
||STB_PIT_I|| || ||1|| || ||Description coming soon||
||STB_PIT_IMAX|| || ||1|| || ||Description coming soon||
||STB_PIT_P|| || ||1|| || ||Description coming soon||
||STB_RLL_D|| || ||1|| || ||Description coming soon||
||STB_RLL_I|| || ||1|| || ||Description coming soon||
||STB_RLL_IMAX|| || ||1|| || ||Description coming soon||
||STB_RLL_P|| || ||1|| || ||Description coming soon||
||STB_YAW_D|| || ||1|| || ||Description coming soon||
||STB_YAW_I|| || ||1|| || ||Description coming soon||
||STB_YAW_IMAX|| || ||1|| || ||Description coming soon||
||STB_YAW_P|| || ||1|| || ||Description coming soon||
||THR_BAR_D|| || ||1|| || ||Description coming soon||
||THR_BAR_I|| || ||1|| || ||Description coming soon||
||THR_BAR_IMAX|| || ||1|| || ||Description coming soon||
||THR_BAR_P|| || ||1|| || ||Description coming soo||
||THR_SON_D|| || ||1|| || ||Description coming soon||
||THR_SON_I|| || ||1|| || ||Description coming soon||
||THR_SON_IMAX|| || ||1|| || ||Description coming soon||
||THR_SON_P|| || ||1|| || ||Description coming soon||
||WP_MODE|| || ||1|| || ||Description coming soon||
||WP_MUST_INDEX|| || ||1|| || ||Description coming soon||
||XTRACK_ANGLE|| || ||1|| || ||Description coming soon||
||XTRK_GAIN|| || ||1|| || ||Description coming soon||
||ARSPD_OFFSET|| || ||0|| || ||Description coming soon||
||ELEVON_CH1_REV||0||1||0||1||1||ELEVON_CHANNEL1_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||ELEVON_CH2_REV||0||1||0||1||1||ELEVON_CHANNEL2_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||ELEVON_MIXING||0||1||0||1||1||ELEVON_MIXING - 0 = Disabled, 1 = Enabled||
||ELEVON_REVERSE||0||1||0||1||1||ELEVON_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||INVERTEDFLT_CH||0||8||0||1||1||INVERTED_FLIGHT_CHANNEL - Channel to select inverted flight mode, 0 = Disabled||
||RC1_REV||0||1||1||1||1||RC_CHANNEL1_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC2_REV||0||1||1||1||1||RC_CHANNEL2_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC3_REV||0||1||1||1||1||RC_CHANNEL3_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC4_REV||0||1||1||1||1||RC_CHANNEL4_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC5_REV||0||1||1||1||1||RC_CHANNEL5_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC6_REV||0||1||1||1||1||RC_CHANNEL6_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC7_REV||0||1||1||1||1||RC_CHANNEL7_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC8_REV||0||1||1||1||1||RC_CHANNEL8_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||SYSID_SW_MREV|| || ||0|| || ||Description coming soon||
||SYSID_SW_TYPE|| || ||0|| || ||Description coming soon||
||THR_SLEWRATE||0||100||0||1||1||THROTTLE_SLEW_RATE - 0 = Disabled, otherwise it limits throttle movement rate. Units are % per second. This is a test feature and may go away.||
||FLTMODE1||0||20||1||1|| ||FLIGHT_MODE_1 - Mode switch setting 1 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
||FLTMODE2||0||20||1||1|| ||FLIGHT_MODE_2 - Mode switch setting 2 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
||FLTMODE3||0||20||1||1|| ||FLIGHT_MODE_3 - Mode switch setting 3 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
||FLTMODE4||0||20||1||1|| ||FLIGHT_MODE_4 - Mode switch setting 4 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
||FLTMODE5||0||20||1||1|| ||FLIGHT_MODE_5 - Mode switch setting 5 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
||FLTMODE6||0||20||1||1|| ||FLIGHT_MODE_6 - Mode switch setting 6 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
\ No newline at end of file
[Fixed%20Wing%20Failsafe%20Configuration]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_DESCRIPTION=GCS failsafe enable
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_PARAMID=FS_GCS_ENABL
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\2\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_DESCRIPTION=GCS Short (1 second) Failsafe Enable
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_PARAMID=FS_SHORT_ACTN
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\3\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_DESCRIPTION=GCS Long (20 seconds) Failsafe Enable
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_PARAMID=FS_LONG_ACTN
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\4\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_DESCRIPTION=Throttle Failsafe Enable
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_PARAMID=THR_FAILSAFE
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\5\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_DESCRIPTION=Throttle Failsafe Action
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_PARAMID=THR_FS_ACTION
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\6\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_DESCRIPTION=Throttle Failsafe Value (PWM)
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_PARAMID=THR_FS_VALUE
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MAX=1200
QGC_TOOL_WIDGET_ITEMS\size=6
[Servo%20Pitch%20Calibration]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=P Gain
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=PTCH2SRV_P
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=I Gain
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=PTCH2SRV_I
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=D Gain
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=PTCH2SRV_D
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=I Max
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=PTCH2SRV_IMAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\size=4
[Servo%20Roll%20Calibration]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=P Gain
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=RLL2SRV_P
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=I Gain
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=RLL2SRV_I
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=D Gain
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=RLL2SRV_D
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=I Max
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=RLL2SRV_IMAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\size=4
[Servo%20Yaw]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=P Gain
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=YW2SRV_P
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=I Gain
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=YW2SRV_I
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=D Gain
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=YW2SRV_D
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=I Max
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=YW2SRV_IMAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\size=4
[Calibration%20Tool]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=COMMANDBUTTON
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_DESCRIPTION=Reboot (only in standby)
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_BUTTONTEXT=REBOOT
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_COMMANDID=246
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAMS_VISIBLE=false
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM1=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM2=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM3=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM4=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM5=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM6=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_COMMAND_BUTTON_PARAM7=0
QGC_TOOL_WIDGET_ITEMS\2\TYPE=TEXT
QGC_TOOL_WIDGET_ITEMS\2\QGC_TEXT_SOURCE=NONE
QGC_TOOL_WIDGET_ITEMS\2\QGC_TEXT_ID=ACCEL_LABEL
QGC_TOOL_WIDGET_ITEMS\2\QGC_TEXT_TEXT=
QGC_TOOL_WIDGET_ITEMS\3\TYPE=COMMANDBUTTON
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_DESCRIPTION=Accelerometer calibration
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_BUTTONTEXT=ACCEL
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_COMMANDID=241
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_LABEL=ACCEL_TEXT
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_RESPONSE=6
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAMS_VISIBLE=false
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM1=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM2=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM3=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM4=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM5=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM6=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_COMMAND_BUTTON_PARAM7=0
QGC_TOOL_WIDGET_ITEMS\4\TYPE=TEXT
QGC_TOOL_WIDGET_ITEMS\4\QGC_TEXT_SOURCE=MAV
QGC_TOOL_WIDGET_ITEMS\4\QGC_TEXT_ID=ACCEL_TEXT
QGC_TOOL_WIDGET_ITEMS\4\QGC_TEXT_TEXT=
QGC_TOOL_WIDGET_ITEMS\size=4
<html>
<body>
<h1>Sensor Calibration</h1>
The APM sensors can be calibrated with the buttons on the right. Gyroscope (GYRO) and Magnometer (MAG) calibrations have to be performed with a static, unmoved system. The Accelerometer (ACCEL) calibrations involve rotating the vehicle around. Please ensure all props are removed and motor power is off.
<h2>Magnetometer Calibration</h2>
Ensure the vehicle is clear of any metal, magnetic, or ferrus materials, and sitting on a flat surface. Click the MAG button and wait for the calibration to complete.
<h2>Accelerometer Calibration</h2>
Ensure the vehicle is on a absolutely level surface and click ACCEL. Follow the instructions that will show up below the button. This calibration procedure will require moving the vehicle at 90 degree angles (upright, left, right, front, back, and upside down), then clicking the button to save that position.
<h2>Gyroscope Calibration</h2>
Place the vehicle on an absolutely flat surface, and click the GYRO button. wait for the system to calibrate.
</body>
</html>
\ No newline at end of file
[Battery%20Monitor]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_DESCRIPTION=Battery Monitor
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_PARAMID=BATT_MONITOR
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COUNT=3
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Voltage Only
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_VAL=3
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Voltage And Current
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_VAL=4
QGC_TOOL_WIDGET_ITEMS\2\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_DESCRIPTION=Battery Current sensing pin
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_PARAMID=BATT_CURR_PIN
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COUNT=14
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=A0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=A1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=A2
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=A3
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_3_VAL=3
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=A4
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_4_VAL=4
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=A5
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_5_VAL=5
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=A6
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_6_VAL=6
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=A7
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_7_VAL=7
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=A8
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_8_VAL=8
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_9_TEXT=A9
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_9_VAL=9
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_10_TEXT=A10
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_10_VAL=10
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_11_TEXT=A11
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_11_VAL=11
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_12_TEXT=A12
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_12_VAL=12
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_13_TEXT=A13
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_13_VAL=13
QGC_TOOL_WIDGET_ITEMS\3\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_DESCRIPTION=Battery Voltage sensing pin
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_PARAMID=BATT_VOLT_PIN
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_COUNT=14
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=A0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=A1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=A2
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=A3
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_3_VAL=3
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=A4
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_4_VAL=4
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=A5
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_5_VAL=5
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=A6
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_6_VAL=6
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=A7
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_7_VAL=7
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=A8
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_8_VAL=8
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_9_TEXT=A9
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_9_VAL=9
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_10_TEXT=A10
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_10_VAL=10
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_11_TEXT=A11
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_11_VAL=11
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_12_TEXT=A12
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_12_VAL=12
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_13_TEXT=A3
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_13_VAL=13
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=APM Input Voltage
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=INPUT_VOLTS
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=24
QGC_TOOL_WIDGET_ITEMS\5\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_DESCRIPTION=Battery Capacity
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_PARAMID=BATT_CAPACITY
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MAX=10000
QGC_TOOL_WIDGET_ITEMS\6\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_DESCRIPTION=Voltage Divider
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_PARAMID=VOLT_DIVIDER
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MAX=10
QGC_TOOL_WIDGET_ITEMS\7\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_DESCRIPTION=Amps per Volt
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_PARAMID=AMP_PER_VOLT
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\size=7
[Camera%20Pan]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=RC5 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=RC5_MIN
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=RC5 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=RC5_MAX
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=RC6 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=RC6_MIN
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=RC6 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=RC6_MAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\5\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_DESCRIPTION=RC7 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_PARAMID=RC7_MIN
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\6\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_DESCRIPTION=RC7 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_PARAMID=RC7_MAX
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\7\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_DESCRIPTION=RC8 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_PARAMID=RC8_MIN
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\8\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_DESCRIPTION=RC8 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_PARAMID=RC8_MAX
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\9\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_DESCRIPTION=RC9 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_PARAMID=RC9_MIN
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\10\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_DESCRIPTION=RC9 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_PARAMID=RC9_MAX
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\11\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_DESCRIPTION=RC10 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_PARAMID=RC10_MIN
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\12\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_DESCRIPTION=RC10 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_PARAMID=RC10_MAX
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\13\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_DESCRIPTION=RC11 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_PARAMID=RC11_MIN
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\14\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_DESCRIPTION=RC11 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_PARAMID=RC11_MAX
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\15\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_DESCRIPTION=Tilt Min Angle Limit
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_PARAMID=MNT_ANGMIN_PAN
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_MIN=-90
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_MAX=0
QGC_TOOL_WIDGET_ITEMS\16\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_DESCRIPTION=Tilt Max Angle Limit
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_PARAMID=MNT_ANGMAX_PAN
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_MAX=90
QGC_TOOL_WIDGET_ITEMS\17\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_DESCRIPTION=RC5 Invert
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_PARAMID=RC5_REV
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\18\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_DESCRIPTION=RC6 Invert
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_PARAMID=RC6_REV
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\19\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_DESCRIPTION=RC7 Invert
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_PARAMID=RC7_REV
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\20\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_DESCRIPTION=RC8 Invert
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_PARAMID=RC8_REV
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\21\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_DESCRIPTION=RC9 Invert
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_PARAMID=RC9_REV
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\22\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_DESCRIPTION=RC10 Invert
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_PARAMID=RC10_REV
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\23\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_DESCRIPTION=RC11 Invert
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_PARAMID=RC11_REV
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_VISIBLE_VAL=6
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\24\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_DESCRIPTION=RC Input
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_PARAMID=MNT_RC_IN_PAN
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_COUNT=5
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disable
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=RC5
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_1_VAL=5
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=RC6
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_2_VAL=6
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=RC7
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_3_VAL=7
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=RC8
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_4_VAL=8
QGC_TOOL_WIDGET_ITEMS\size=24
[RC%20Select]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_DESCRIPTION=RC5
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_PARAMID=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COUNT=5
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Unused
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Camera Pan
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_VAL=6
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Camera Tilt
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_VAL=7
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Camera Roll
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_3_VAL=8
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Camera Shutter
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_4_VAL=10
QGC_TOOL_WIDGET_ITEMS\2\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_DESCRIPTION=RC6
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_PARAMID=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COUNT=5
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Unused
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Camera Pan
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_VAL=6
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Camera Tilt
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_2_VAL=7
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Camera Roll
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_3_VAL=8
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Camera Shutter
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_4_VAL=10
QGC_TOOL_WIDGET_ITEMS\3\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_DESCRIPTION=RC7
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_PARAMID=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_COUNT=5
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Unused
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Camera Pan
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_1_VAL=6
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Camera Tilt
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_2_VAL=7
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Camera Roll
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_3_VAL=8
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Camera Shutter
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_4_VAL=10
QGC_TOOL_WIDGET_ITEMS\4\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_DESCRIPTION=RC8
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_PARAMID=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COUNT=5
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Unused
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Camera Pan
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_VAL=6
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Camera Tilt
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_2_VAL=7
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Camera Roll
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_3_VAL=8
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Camera Shutter
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_4_VAL=10
QGC_TOOL_WIDGET_ITEMS\5\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_DESCRIPTION=RC9
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_PARAMID=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_COUNT=5
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Unused
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Camera Pan
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_1_VAL=6
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Camera Tilt
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_2_VAL=7
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Camera Roll
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_3_VAL=8
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Camera Shutter
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_4_VAL=10
QGC_TOOL_WIDGET_ITEMS\6\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_DESCRIPTION=RC10
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_PARAMID=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_COUNT=5
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Unused
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Camera Pan
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_1_VAL=6
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Camera Tilt
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_2_VAL=7
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Camera Roll
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_3_VAL=8
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Camera Shutter
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_4_VAL=10
QGC_TOOL_WIDGET_ITEMS\7\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_DESCRIPTION=RC11
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_PARAMID=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_COUNT=5
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Unused
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Camera Pan
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_1_VAL=6
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Camera Tilt
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_2_VAL=7
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Camera Roll
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_3_VAL=8
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Camera Shutter
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_4_VAL=10
QGC_TOOL_WIDGET_ITEMS\size=7
[Camera%20Roll]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=RC5 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=RC5_MIN
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=RC5 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=RC5_MAX
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=RC6 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=RC6_MIN
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=RC6 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=RC6_MAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\5\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_DESCRIPTION=RC7 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_PARAMID=RC7_MIN
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\6\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_DESCRIPTION=RC7 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_PARAMID=RC7_MAX
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\7\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_DESCRIPTION=RC8 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_PARAMID=RC8_MIN
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\8\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_DESCRIPTION=RC8 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_PARAMID=RC8_MAX
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\9\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_DESCRIPTION=RC9 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_PARAMID=RC9_MIN
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\10\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_DESCRIPTION=RC9 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_PARAMID=RC9_MAX
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\11\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_DESCRIPTION=RC10 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_PARAMID=RC10_MIN
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\12\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_DESCRIPTION=RC10 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_PARAMID=RC10_MAX
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\13\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_DESCRIPTION=RC11 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_PARAMID=RC11_MIN
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\14\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_DESCRIPTION=RC11 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_PARAMID=RC11_MAX
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\15\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_DESCRIPTION=Tilt Min Angle Limit
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_PARAMID=MNT_ANGMIN_ROL
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_MIN=-90
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_MAX=0
QGC_TOOL_WIDGET_ITEMS\16\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_DESCRIPTION=Tilt Max Angle Limit
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_PARAMID=MNT_ANGMAX_ROL
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_MAX=90
QGC_TOOL_WIDGET_ITEMS\17\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_DESCRIPTION=RC5 Invert
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_PARAMID=RC5_REV
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\18\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_DESCRIPTION=RC6 Invert
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_PARAMID=RC6_REV
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\19\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_DESCRIPTION=RC7 Invert
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_PARAMID=RC7_REV
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\20\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_DESCRIPTION=RC8 Invert
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_PARAMID=RC8_REV
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\21\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_DESCRIPTION=RC9 Invert
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_PARAMID=RC9_REV
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\22\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_DESCRIPTION=RC10 Invert
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_PARAMID=RC10_REV
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\23\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_DESCRIPTION=RC11 Invert
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_PARAMID=RC11_REV
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_VISIBLE_VAL=8
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\24\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_DESCRIPTION=RC Input
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_PARAMID=MNT_RC_IN_ROLL
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_COUNT=5
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disable
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=RC5
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_1_VAL=5
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=RC6
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_2_VAL=6
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=RC7
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_3_VAL=7
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=RC8
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_4_VAL=8
QGC_TOOL_WIDGET_ITEMS\size=24
[Camera%20Shutter]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=RC5 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=RC5_MIN
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=RC5 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=RC5_MAX
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=RC6 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=RC6_MIN
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=RC6 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=RC6_MAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\5\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_DESCRIPTION=RC7 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_PARAMID=RC7_MIN
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\6\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_DESCRIPTION=RC7 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_PARAMID=RC7_MAX
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\7\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_DESCRIPTION=RC8 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_PARAMID=RC8_MIN
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\8\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_DESCRIPTION=RC8 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_PARAMID=RC8_MAX
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\9\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_DESCRIPTION=RC9 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_PARAMID=RC9_MIN
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\10\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_DESCRIPTION=RC9 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_PARAMID=RC9_MAX
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\11\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_DESCRIPTION=RC10 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_PARAMID=RC10_MIN
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\12\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_DESCRIPTION=RC10 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_PARAMID=RC10_MAX
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\13\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_DESCRIPTION=RC11 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_PARAMID=RC11_MIN
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\14\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_DESCRIPTION=RC11 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_PARAMID=RC11_MAX
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_VISIBLE_VAL=10
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\15\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_DESCRIPTION=Shutter Pushed
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_PARAMID=CAM_SERVO_ON
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\16\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_DESCRIPTION=Shutter Not Pushed
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_PARAMID=CAM_SERVO_OFF
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\17\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_SLIDER_DESCRIPTION=Duration (1/10th sec)
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_SLIDER_PARAMID=CAM_DURATION
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_SLIDER_MIN=1
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_SLIDER_MAX=200
QGC_TOOL_WIDGET_ITEMS\size=17
[Camera%20Tilt]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=RC5 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=RC5_MIN
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=RC5 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=RC5_MAX
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=RC6 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=RC6_MIN
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=RC6 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=RC6_MAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\5\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_DESCRIPTION=RC7 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_PARAMID=RC7_MIN
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\6\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_DESCRIPTION=RC7 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_PARAMID=RC7_MAX
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\7\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_DESCRIPTION=RC8 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_PARAMID=RC8_MIN
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\8\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_DESCRIPTION=RC8 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_PARAMID=RC8_MAX
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\9\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_DESCRIPTION=RC9 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_PARAMID=RC9_MIN
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\9\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\10\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_DESCRIPTION=RC9 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_PARAMID=RC9_MAX
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\10\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\11\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_DESCRIPTION=RC10 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_PARAMID=RC10_MIN
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\11\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\12\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_DESCRIPTION=RC10 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_PARAMID=RC10_MAX
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\12\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\13\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_DESCRIPTION=RC11 Min Servo Limit
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_PARAMID=RC11_MIN
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\13\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\14\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_DESCRIPTION=RC11 Max Servo Limit
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_PARAMID=RC11_MAX
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_VISIBLE_PARAM=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_MIN=800
QGC_TOOL_WIDGET_ITEMS\14\QGC_PARAM_SLIDER_MAX=2200
QGC_TOOL_WIDGET_ITEMS\15\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_DESCRIPTION=Tilt Min Angle Limit
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_PARAMID=MNT_ANGMIN_TIL
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_MIN=-90
QGC_TOOL_WIDGET_ITEMS\15\QGC_PARAM_SLIDER_MAX=0
QGC_TOOL_WIDGET_ITEMS\16\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_DESCRIPTION=Tilt Max Angle Limit
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_PARAMID=MNT_ANGMAX_TIL
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\16\QGC_PARAM_SLIDER_MAX=90
QGC_TOOL_WIDGET_ITEMS\17\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_DESCRIPTION=RC5 Invert
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_PARAMID=RC5_REV
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC5_FUNCTION
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\17\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\18\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_DESCRIPTION=RC6 Invert
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_PARAMID=RC6_REV
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC6_FUNCTION
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\18\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\19\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_DESCRIPTION=RC7 Invert
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_PARAMID=RC7_REV
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC7_FUNCTION
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\19\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\20\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_DESCRIPTION=RC8 Invert
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_PARAMID=RC8_REV
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC8_FUNCTION
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\20\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\21\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_DESCRIPTION=RC9 Invert
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_PARAMID=RC9_REV
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC9_FUNCTION
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\21\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\22\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_DESCRIPTION=RC10 Invert
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_PARAMID=RC10_REV
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC10_FUNCTION
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\22\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\23\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_DESCRIPTION=RC11 Invert
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_PARAMID=RC11_REV
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_VISIBLE_PARAM=RC11_FUNCTION
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_VISIBLE_VAL=7
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Normal
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Inverted
QGC_TOOL_WIDGET_ITEMS\23\QGC_PARAM_COMBOBOX_ITEM_1_VAL=-1
QGC_TOOL_WIDGET_ITEMS\24\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_DESCRIPTION=RC Input
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_PARAMID=MNT_RC_IN_TILT
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_COUNT=5
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disable
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=RC5
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_1_VAL=5
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=RC6
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_2_VAL=6
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=RC7
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_3_VAL=7
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=RC8
QGC_TOOL_WIDGET_ITEMS\24\QGC_PARAM_COMBOBOX_ITEM_4_VAL=8
QGC_TOOL_WIDGET_ITEMS\size=24
[Extra%20Sensors]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_DESCRIPTION=Compass Enable
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_PARAMID=MAG_ENABLE
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\2\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_DESCRIPTION=Auto Declination
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_PARAMID=COMPASS_AUTODEC
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=Compass Declination
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=COMPASS_DEC
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\4\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_DESCRIPTION=Sonar Enable
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_PARAMID=SONAR_ENABLE
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\5\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_DESCRIPTION=Sonar Type
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_PARAMID=SONAR_TYPE
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_COUNT=4
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=XL-EZ0
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=LV-EZ0
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=XL-EZL0
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=HRLV
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_3_VAL=3
QGC_TOOL_WIDGET_ITEMS\6\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_DESCRIPTION=Air speed Enable
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_PARAMID=ARSPD_ENABLE
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\7\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_DESCRIPTION=Air speed use
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_PARAMID=AIRSPD_USE
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Do Not Use
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Use
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\8\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_COMBOBOX_DESCRIPTION=Optical Flow Enable
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_COMBOBOX_PARAMID=FLOW_ENABLE
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\8\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\size=8
[Heading%20PID%20Tuning]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=Heading D Gain
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=HDNG2RLL_D
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=200
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=1
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=Heading P Gain
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=HDNG2RLL_P
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=200
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=5
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=Heading I Gain
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=HDNG2RLL_I
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=200
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=1
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=Heading I Limit
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=HDNG2RLL_IMAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=200
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=3000
QGC_TOOL_WIDGET_ITEMS\size=4
[General]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_DESCRIPTION=Channel 7 Option
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_PARAMID=CH7_OPTION
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Nothing
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Learn Waypoint
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=Target cruise speed in auto modes
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=CRUISE_SPEED
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=Base throttle percentage in auto
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=CRUISE_THROTTLE
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\4\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_DESCRIPTION=Receiver RSSI sensing pin
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_PARAMID=RSSI_PIN
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COUNT=14
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=A0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=A1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=A2
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=A3
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_3_VAL=3
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=A4
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_4_VAL=4
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=A5
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_5_VAL=5
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=A6
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_6_VAL=6
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=A7
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_7_VAL=7
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=A8
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_8_VAL=8
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_9_TEXT=A9
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_9_VAL=9
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_10_TEXT=A10
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_10_VAL=10
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_11_TEXT=A11
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_11_VAL=11
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_12_TEXT=A12
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_12_VAL=12
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_13_TEXT=A13
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_13_VAL=13
QGC_TOOL_WIDGET_ITEMS\5\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_DESCRIPTION=USB Console Baud Rate
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_PARAMID=SERIAL0_BAUD
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_COUNT=9
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=1200
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=2400
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_1_VAL=2
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=4800
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_2_VAL=4
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=9600
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_3_VAL=9
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=19200
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_4_VAL=19
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=38400
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_5_VAL=38
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=57600
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_6_VAL=57
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=111100
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_7_VAL=111
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=115200
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_8_VAL=115
QGC_TOOL_WIDGET_ITEMS\6\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_DESCRIPTION=Telemetry Baud Rate
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_PARAMID=SERIAL3_BAUD
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_COUNT=9
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=1200
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=2400
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_1_VAL=2
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=4800
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_2_VAL=4
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=9600
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_3_VAL=9
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=19200
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_4_VAL=19
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=38400
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_5_VAL=38
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=57600
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_6_VAL=57
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=111100
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_7_VAL=111
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=115200
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_8_VAL=115
QGC_TOOL_WIDGET_ITEMS\size=6
[Energy%20Alt%20Pid%20Calibration]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=P
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=ENRGY2THR_P
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=I
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=ENRGY2THR_I
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=D
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=ENRGY2THR_D
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=INT_MAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=ENRGY2THR_IMAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\size=4
[Nav%20Roll%20Pid%20Calibration]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=P
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=HDNG2RLL_P
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=I
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=HDNG2RLL_I
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=D
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=HDNG2RLL_D
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=INT_MAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=HDNG2RLL_IMAX
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\size=4
[Nav%20Angles%20Calibration]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=Bank Max
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=LIM_ROLL_CD
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=Pitch Mac
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=LIM_PITCH_MAX
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=Pitch Min
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=LIM_PITCH_MIN
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\size=3
[Rover%20Calibration]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=Auto WP Rad
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=ROV_AWPR_NAV
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=Booster
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=ROV_BOOSTER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=Closed Loop Nav
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=ROV_CL_NAV
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=Turn Gain
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=ROV_GAIN
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\5\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_DESCRIPTION=Sonar Trigger Dist
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_PARAMID=ROV_SONAR_TRIG
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\6\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_DESCRIPTION=Skid Steering Input
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_PARAMID=SKID_STEER_IN
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\7\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_DESCRIPTION=Skid Steering Output
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_PARAMID=SKID_STEER_OUT
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\size=6
\ No newline at end of file
[Speed%20Control%20Calibration]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=Cruise
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=TRIM_ARSPD_CM
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=FBW min
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=ARSPD_FBW_MIN
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=FBW max
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=ARSPD_FBW_MAX
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=Ratio
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=ARSPD_RATIO
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\size=4
[Throttle%20Calibration]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=Cruise
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=TRIM_THROTTLE
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=Min
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=THR_MIN
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=Max
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=THR_MAX
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\4\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_DESCRIPTION=FS Value
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_PARAMID=THR_FS_VALUE
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\size=4
[XTrack%20Pids%20Calibration]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_DESCRIPTION=Gain (cm)
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_PARAMID=XTRK_GAIN_SC
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\2\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_DESCRIPTION=Entry Angle
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_PARAMID=XTRK_ANGLE_CD
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\size=2
[QuadCoptor%20Frame Setup]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_DESCRIPTION=Quadcoptor Frame Type
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_PARAMID=FRAME
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COUNT=3
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Plus
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_IMG=files/images/mavs/frames_plus.png
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=X
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_IMG=files/images/mavs/frames_x.png
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=V
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_IMG=files/images/mavs/frames-05.png
QGC_TOOL_WIDGET_ITEMS\size=1
\ No newline at end of file
== MAVLink Parameters ==
|| *EEPROM variable name* || *Min* || *Max* || *Default* || *Multiplier* || *Enabled (0 = no, 1 = yes)* || *Comment* ||
||MAH|| || ||1|| || || ||
||CURRENT_ENABLE|| || ||1|| || || ||
||AOA|| || ||1|| || || ||
||MAG_ENABLE|| || ||1|| || || ||
||HDNG2RLL_P||0||5||0.7||1||1||NAV_ROLL_P - Navigation control gains. Tuning values for the navigation control PID loops. The P term is the primary tuning value. This determines how the control deflection varies in proportion to the required correction.||
||HDNG2RLL_I||0||1||0.01||1||1||NAV_ROLL_I - Navigation control gains. Tuning values for the navigation control PID loops. The I term is used to control drift.||
||HDNG2RLL_D||0||1||0.02||1||1||NAV_ROLL_D - Navigation control gains. Tuning values for the navigation control PID loops. The D term is used to control overshoot. Avoid adjusting this term if you are not familiar with tuning PID loops.||
||HDNG2RLL_IMAX||0||3000||500||100||1||NAV_ROLL_INT_MAX_CENTIDEGREE - In Degrees - Maximum control offset due to the integral. This prevents the control output from being overdriven due to a persistent offset (e.g. native flight AoA). If you find this value is insufficient consider adjusting the AOA parameter.||
||RLL2SRV_P||0||5||0.4||1||1||SERVO_ROLL_P - Attitude control gains - Tuning values for the attitude control PID loops. The P term is the primary tuning value. This determines how the control deflection varies in proportion to the required correction.||
||RLL2SRV_I||0||1||0||1||1||SERVO_ROLL_I - Attitude control gains - Tuning values for the attitude control PID loops. The I term is used to help control surfaces settle. This value should normally be kept low.||
||RLL2SRV_D||0||1||0||1||1||SERVO_ROLL_D - Attitude control gains - Tuning values for the attitude control PID loops. The D term is used to control overshoot. Avoid using or adjusting this term if you are not familiar with tuning PID loops. It should normally be zero for most aircraft.||
||RLL2SRV_IMAX||0||3000||500||100||1||SERVO_ROLL_INT_MAX_CENTIDEGREE - In Degrees - Maximum control offset due to the integral. This prevents the control output from being overdriven due to a persistent offset (e.g. crosstracking). Default is 5 degrees.||
||PTCH2SRV_P||0||5||0.6||1||1||SERVO_PITCH_P - Attitude control gains - Tuning values for the attitude control PID loops. The P term is the primary tuning value. This determines how the control deflection varies in proportion to the required correction.||
||PTCH2SRV_I||0||1||0||1||1||SERVO_PITCH_I - Attitude control gains - Tuning values for the attitude control PID loops. The I term is used to help control surfaces settle. This value should normally be kept low.||
||PTCH2SRV_D||0||1||0||1||1||SERVO_PITCH_D - Attitude control gains - Tuning values for the attitude control PID loops. The D term is used to control overshoot. Avoid using or adjusting this term if you are not familiar with tuning PID loops. It should normally be zero for most aircraft.||
||PTCH2SRV_IMAX||0||3000||500||100||1||SERVO_PITCH_INT_MAX_CENTIDEGREE - In Degrees - Maximum control offset due to the integral. This prevents the control output from being overdriven due to a persistent offset (e.g. crosstracking). Default is 5 degrees.||
||ARSPD2PTCH_P||0||5||0.65||1||1||NAV_PITCH_ASP_P - P. I and D terms for pitch adjustments made to maintain airspeed.||
||ARSPD2PTCH_I||0||1||0||1||1||NAV_PITCH_ASP_I - P. I and D terms for pitch adjustments made to maintain airspeed.||
||ARSPD2PTCH_D||0||1||0||1||1||NAV_PITCH_ASP_D - P. I and D terms for pitch adjustments made to maintain airspeed.||
||ARSPD2PTCH_IMA||0||3000||500||100||1||NAV_PITCH_ASP_INT_MAX_CMSEC - In Degrees - Maximum pitch offset due to the integral. This limits the control output from being overdriven due to a persistent offset (eg. inability to maintain the programmed airspeed).||
||YW2SRV_P||0||5||0||1||1||SERVO_YAW_P - P. I and D terms for the YAW control. Note units of this control loop are unusual. PID input is in m/s**2||
||YW2SRV_I||0||1||0||1||1||SERVO_YAW_I - P. I and D terms for the YAW control. Note units of this control loop are unusual. PID input is in m/s**2||
||YW2SRV_D||0||1||0||1||1||SERVO_YAW_D - P. I and D terms for the YAW control. Note units of this control loop are unusual. PID input is in m/s**2||
||YW2SRV_IMAX||0||3000||0||100||1||SERVO_YAW_INT_MAX - Maximum control offset due to the integral. This prevents the control output from being overdriven due to a persistent offset (e.g. crosstracking).||
||ENRGY2THR_P||0||5||0.5||1||1||THROTTLE_TE_P - P. I and D terms for throttle adjustments made to control altitude.||
||ENRGY2THR_I||0||1||0||1||1||THROTTLE_TE_I - P. I and D terms for throttle adjustments made to control altitude.||
||ENRGY2THR_D||0||1||0||1||1||THROTTLE_TE_D - P. I and D terms for throttle adjustments made to control altitude.||
||ENRGY2THR_IMAX||0||100||20||1||1||THROTTLE_TE_INT_MAX - In Percent - Maximum throttle input due to the integral term. This limits the throttle from being overdriven due to a persistent offset (e.g. inability to maintain the programmed altitude).||
||ALT2PTCH_P||0||5||0.65||1||1||NAV_PITCH_ALT_P - P. I and D terms for pitch adjustments made to maintain altitude.||
||ALT2PTCH_I||0||1||0||1||1||NAV_PITCH_ALT_I - P. I and D terms for pitch adjustments made to maintain altitude.||
||ALT2PTCH_D||0||1||0||1||1||NAV_PITCH_ALT_D - P. I and D terms for pitch adjustments made to maintain altitude.||
||ALT2PTCH_IMAX||0||3000||500||100||1||NAV_PITCH_ALT_INT_MAX_CM - In Meters - Maximum pitch offset due to the integral. This limits the control output from being overdriven due to a persistent offset (eg. inability to maintain the programmed altitude).||
||KFF_PTCHCOMP||-3||3||0.2||0.01||1||PITCH_COMP - In Percent - Adds pitch input to compensate for the loss of lift due to roll control.||
||KFF_RDDRMIX||-3||3||0.5||0.01||1||RUDDER_MIX - Roll to yaw mixing. This allows for co-ordinated turns.||
||KFF_PTCH2THR||-3||3||0||1||1||P_TO_T - Pitch to throttle feed-forward gain.||
||KFF_THR2PTCH||-3||3||0||1||1||T_TO_P - Throttle to pitch feed-forward gain.||
||XTRK_GAIN_SC||0||100||100||100||1||XTRACK_GAIN_SCALED - Default value is 1.0 degrees per metre. Values lower than 0.001 will disable crosstrack compensation.||
||ALT_MIX||0||1||1||0.01||1||ALTITUDE_MIX - In Percent - Configures the blend between GPS and pressure altitude. 0 = GPS altitude, 1 = Press alt, 0.5 = half and half, etc.||
||ARSPD_RATIO||0||5||1.9936||1||1||AIRSPEED_RATIO - Adjust AIRSPEED_RATIO in small increments to calibrate the airspeed sensor relative to your GPS. The calculation and default value are optimized for speeds around 12 m/s||
||WP_RADIUS||0||200||30||1||1||WP_RADIUS_DEFAULT - When the user performs a factory reset on the APM, sets the waypoint radius (the radius from a target waypoint within which the APM will consider itself to have arrived at the waypoint) to this value in meters. This is mainly intended to allow users to start using the APM without programming a mission first.||
||WP_LOITER_RAD||0||200||60||1||1||LOITER_RADIUS_DEFAULT - When the user performs a factory reset on the APM, sets the loiter radius (the distance the APM will attempt to maintain from a waypoint while loitering) to this value in meters. This is mainly intended to allow users to start using the APM without programming a mission first.||
||ARSPD_FBW_MIN||5||50||6||1||1||AIRSPEED_FBW_MIN - In m/s - Airspeed corresponding to minimum and maximum throttle in Fly By Wire B mode.||
||ARSPD_FBW_MAX||5||50||22||1||1||AIRSPEED_FBW_MAX - In m/s - Airspeed corresponding to minimum and maximum throttle in Fly By Wire B mode. AIRSPEED_FBW_MAX also sets the maximum airspeed that the cruise airspeed can be ""nudged"" to in AUTO mode when ENABLE_STICK_MIXING is set. In AUTO the cruise airspeed can be increased between AIRSPEED_CRUISE and AIRSPEED_FBW_MAX by positioning the throttle stick in the top 1/2 of its range. Throttle stick in the bottom 1/2 provide regular AUTO control.||
||THR_MIN||0||100||0||1||1||THROTTLE_MIN - The minimum throttle setting to which the autopilot will reduce the throttle while descending. The default is zero, which is suitable for aircraft with a steady power-off glide. Increase this value if your aircraft needs throttle to maintain a stable descent in level flight.||
||THR_MAX||0||100||75||1||1||THROTTLE_MAX - The maximum throttle setting the autopilot will apply. The default is 75%. Reduce this value if your aicraft is overpowered or has complex flight characteristics at high throttle settings.||
||THR_FAILSAFE||0||0||1|| || ||THROTTLE_FAILSAFE - The throttle failsafe allows you to configure a software failsafe activated by a setting on the throttle input channel (channel 3). This can be used to achieve a failsafe override on loss of radio control without having to sacrifice one of your FLIGHT_MODE settings as the throttle failsafe overrides the switch-selected mode. Throttle failsafe is enabled by setting THROTTLE_FAILSAFE to 1.||
||THR_FS_ACTION||0||2||1||1|| ||THROTTLE_FAILSAFE_ACTION - The FAILSAFE_ACTION setting determines what APM will do when throttle failsafe mode is entered while flying in AUTO mode. This is important in order to avoid accidental failsafe behaviour when flying waypoints that take the aircraft temporarily out of radio range. If FAILSAFE_ACTION is 1 when failsafe is entered in AUTO or LOITER modes the aircraft will head for home in RTL mode. If the throttle channel moves back up it will return to AUTO or LOITER mode. The default behavior is to ignore throttle failsafe in AUTO and LOITER modes.||
||TRIM_THROTTLE||0||90||45||1||1||THROTTLE_CRUISE - In Percent - The approximate throttle setting to achieve AIRSPEED_CRUISE in level flight. The default is 45% which is reasonable for a modestly powered aircraft.||
||TRIM_AUTO||0||1||1||1||1||AUTO_TRIM - !ArduPilot Mega can update its trim settings by looking at the radio inputs when switching out of MANUAL mode. This allows you to manually trim your aircraft before switching to an assisted mode but it also means that you should avoid switching out of MANUAL while you have any control stick deflection.||
||FLTMODE_CH||5||8||8||1||1||FLIGHT_MODE_CHANNEL - Flight modes assigned to the control channel, and the input channel that is read for the control mode. Use a servo tester or the !ArduPilotMega_demo test program to check your switch settings. ATTENTION: Some !ArduPilot Mega boards have radio channels marked 0-7 and others have them marked the standard 1-8. The FLIGHT_MODE_CHANNEL option uses channel numbers 1-8 (and defaults to 8). If you only have a three-position switch or just want three modes set your switch to produce 1165, 1425, and 1815 microseconds and configure FLIGHT_MODE 1 & 2, 3 & 4 and 5 & 6 to be the same. This is the default. If you have FLIGHT_MODE_CHANNEL set to 8 (the default) and your control channel connected to input channel 8, the hardware failsafe mode will activate for any control input over 1750ms.||
||FLIGHT_MODE_1||0||14||11||1|| ||FLIGHT_MODE_1 - The following standard flight modes are available: MANUAL = Full manual control via the hardware multiplexer. STABILIZE = Tries to maintain level flight but can be overridden with radio control inputs. FLY_BY_WIRE_A = Autopilot style control via user input with manual throttle. FLY_BY_WIRE_B = Autopilot style control via user input, aispeed controlled with throttle. RTL = Returns to the Home location and then LOITERs at a safe altitude. AUTO = Autonomous flight based on programmed waypoints.||
||FLIGHT_MODE_2||0||14||11||1|| ||FLIGHT_MODE_2||
||FLIGHT_MODE_3||0||14||5||1|| ||FLIGHT_MODE_3||
||FLIGHT_MODE_4||0||14||5||1|| ||FLIGHT_MODE_4||
||FLIGHT_MODE_5||0||14||0||1|| ||FLIGHT_MODE_5||
||FLIGHT_MODE_6||0||14||0||1|| ||FLIGHT_MODE_6||
||RC1_MIN||900||2100||1500||1||1||PWM_RC1_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC1_MAX||900||2100||1500||1||1||PWM_RC1_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC1_TRIM||900||2100||1200||1||1||PWM_RC1_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC2_MIN||900||2100||1500||1||1||PWM_RC2_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC2_MAX||900||2100||1500||1||1||PWM_RC2_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC2_TRIM||900||2100||1200||1||1||PWM_RC2_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC3_MIN||900||2100||1500||1||1||PWM_RC3_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit||
||RC3_MAX||900||2100||1500||1||1||PWM_RC3_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC3_TRIM||900||2100||1500||1||1||PWM_RC3_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC4_MIN||900||2100||1500||1||1||PWM_RC4_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC4_MAX||900||2100||1500||1||1||PWM_RC4_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC4_TRIM||900||2100||1200||1||1||PWM_RC4_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC5_MIN||900||2100||1500||1||1||PWM_CH5_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC5_MAX||900||2100||1500||1||1||PWM_CH5_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC5_MAX||900||2100||1500||1||1||PWM_CH5_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC5_TRIM||900||2100||1500||1||1||PWM_CH5_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC6_MIN||900||2100||1500||1||1||PWM_CH6_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC6_MAX||900||2100||1500||1||1||PWM_CH6_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC6_TRIM||900||2100||1500||1||1||PWM_CH6_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC7_MIN||900||2100||1500||1||1||PWM_CH7_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC7_MAX||900||2100||1500||1||1||PWM_CH7_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC7_TRIM||900||2100||1500||1||1||PWM_CH7_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC8_MIN||900||2100||1500||1||1||PWM_CH8_MIN - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC8_MAX||900||2100||1500||1||1||PWM_CH8_MAX - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||RC8_TRIM||900||2100||1500||1||1||PWM_CH8_TRIM - Radio Settings - all radio settings represent the period of the pulse width modulated signal. Typically 1000 ms is the lower limit, 1500 is neutral, and 2000 is the upper limit ||
||IMU_OFFSET_0||0||0||0|| || ||IMU_OFFSET_0 - IMU Calibration||
||IMU_OFFSET_1||0||0||0|| || ||IMU_OFFSET_1 - IMU Calibration||
||IMU_OFFSET_2||0||0||0|| || ||IMU_OFFSET_2 - IMU Calibration||
||IMU_OFFSET_3||0||0||0|| || ||IMU_OFFSET_3 - IMU Calibration||
||IMU_OFFSET_4||0||0||0|| || ||IMU_OFFSET_4 - IMU Calibration||
||IMU_OFFSET_5||0||0||0|| || ||IMU_OFFSET_5 - IMU Calibration||
||YAW_MODE|| || ||0|| || ||YAW_MODE||
||WP_MODE|| || ||0|| || ||WP_MODE||
||WP_TOTAL||0||255|| ||0|| ||WP_TOTAL||
||WP_INDEX||0||255|| ||0|| ||WP_INDEX||
||CONFIG|| || ||1|| || ||CONFIG_OPTIONS||
||SWITCH_ENABLE||0||1||1||1||1||REVERS_SWITCH_ENABLE - 0 = Off, 1 = On, Enables/Disables physical reverse switches on APM board||
||FIRMWARE_VER|| || ||0|| || ||FIRMWARE_VER||
||LOG_BITMASK||0||65535||334||1||1||LOG_BITMASK||
||TRIM_ELEVON||900||2100||1500||1||1||TRIM_ELEVON||
||THR_FS_VALUE||850||1000||950||1||1||THROTTLE_FS_VALUE - If the throttle failsafe is enabled, THROTTLE_FS_VALUE sets the channel value below which the failsafe engages. The default is 975ms, which is a very low throttle setting. Most transmitters will let you trim the manual throttle position up so that you cannot engage the failsafe with a regular stick movement. Configure your receiver's failsafe setting for the throttle channel to the absolute minimum, and use the !ArduPilotMega_demo program to check that you cannot reach that value with the throttle control. Leave a margin of at least 50 microseconds between the lowest throttle setting and THROTTLE_FS_VALUE.||
||TRIM_ARSPD_CM||500||5000||1200||100||1||AIRSPEED_CRUISE_CM - The speed in metres per second to maintain during cruise. The default is 10m/s, which is a conservative value suitable for relatively small, light aircraft.||
||GND_TEMP||-10||50||28||1||1||GND_TEMP - Ground Temperature||
||AP_OFFSET|| || ||0|| || ||AP_OFFSET||
||TRIM_PITCH_CD|| || ||0|| || ||TRIM_PITCH_CD||
||ALT_HOLD_RTL||0||20000||10000||100||1||ALT_HOLD_HOME_CM - When the user performs a factory reset on the APM. Sets the flag for weather the current altitude or ALT_HOLD_HOME altitude should be used for Return To Launch. Also sets the value of USE_CURRENT_ALT in meters. This is mainly intended to allow users to start using the APM without programming a mission first.||
||XTRK_ANGLE_CD||0||6000||3000||100||1||XTRACK_ENTRY_ANGLE_CENTIDEGREE - Maximum angle used to correct for track following.||
||ROLL_SRV_MAX||0||100||4500||100||0||ROLL_SERVO_MAX_CENTIDEGREE||
||PITCH_SRV_MAX||0||100||4500||100||0||PITCH_SERVO_MAX_CENTIDEGREE||
||RUDER_SRV_MAX||0||100||4500||100||0||RUDDER_SERVO_MAX_CENTIDEGREE||
||LIM_ROLL_CD||0||6000||4500||100||1||HEAD_MAX_CENTIDEGREE - The maximum commanded bank angle in either direction. The default is 45 degrees. Decrease this value if your aircraft is not stable or has difficulty maintaining altitude in a steep bank.||
||LIM_PITCH_MAX||0||6000||1500||100||1||PITCH_MAX_CENTIDEGREE - The maximum commanded pitch up angle. The default is 15 degrees. Care should be taken not to set this value too large, as the aircraft may stall||
||LIM_PITCH_MIN||-6000||0||-2500||100||1||PITCH_MIN_CENTIDEGREE - The maximum commanded pitch down angle. Note that this value must be negative. The default is -25 degrees. Care should be taken not to set this value too large as it may result in overspeeding the aircraft.||
||GND_ALT_CM||0||500000||0||100||1||GND_ALT_CM||
||GND_ABS_PRESS|| || ||0|| || ||GND_ABS_PRESS||
||COMPASS_DEC||-1.57075||1.57075||0||1|| ||COMPASS_DEC - Compass Declination||
||SR0_EXT_STAT||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable GPS_STATUS, CONTROL_STATUS, AUX_STATUS||
||SR0_EXTRA1||0||50||10||1||1||TELEMETRY_ENABLE Port 0 - Enable MSG_ATTITUDE||
||SR0_EXTRA2||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable MSG_VFR_HUD||
||SR0_EXTRA3||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Not currently used||
||SR0_POSITION||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable LOCAL_POSITION, GLOBAL_POSITION/GLOBAL_POSITION_INT messages||
||SR0_RAW_CTRL||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable ATTITUDE_CONTROLLER_OUTPUT, POSITION_CONTROLLER_OUTPUT, NAV_CONTROLLER_OUTPUT||
||SR0_RAW_SENS||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable IMU_RAW, GPS_RAW, GPS_STATUS packets||
||SR0_RC_CHAN||0||50||3||1||1||TELEMETRY_ENABLE Port 0 - Enable RC_CHANNELS_SCALED, RC_CHANNELS_RAW, SERVO_OUTPUT_RAW||
||SR3_EXT_STAT||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable GPS_STATUS, CONTROL_STATUS, AUX_STATUS||
||SR3_EXTRA1||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable MSG_ATTITUDE||
||SR3_EXTRA2||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable MSG_VFR_HUD||
||SR3_EXTRA3||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Not currently used||
||SR3_POSITION||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable LOCAL_POSITION, GLOBAL_POSITION/GLOBAL_POSITION_INT messages||
||SR3_RAW_CTRL||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable ATTITUDE_CONTROLLER_OUTPUT, POSITION_CONTROLLER_OUTPUT, NAV_CONTROLLER_OUTPUT||
||SR3_RAW_SENS||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable IMU_RAW, GPS_RAW, GPS_STATUS packets||
||SR3_RC_CHAN||0||50||0||1||1||TELEMETRY_ENABLE Port 3 - Enable RC_CHANNELS_SCALED, RC_CHANNELS_RAW, SERVO_OUTPUT_RAW||
||MAG_ENABLE||0||1||0||1||1||MAG_ENABLE - 0 = Off, 1 = On, Magnetometer Enable||
||ARSPD_ENABLE||0||1||0||1||1||AIRSPEED_ENABLE - 0 = Off, 1 = On, Airspeed Sensor Enable||
||BATT_CAPACITY||0||10000||1760||1||1||BATTERY_MAH - Battery capacity in mAh||
||BATT_MONITOR||0||4||0||1||1||BATTERY_MONITOR - The value should be set to 0 to disable battery monitoring, 1 to measure cell voltages for a 3 cell lipo, 2 to measure cell voltages for a 4 cell lipo, 3 to measure the total battery voltage (only) on input 1, or 4 to measure total battery voltage on input 1 and current on input 2. ||
||FS_GCS_ENABL||0||1||0||1||1||FS_GCS_ENABLE - 0 = Off, 1 = On, If the GCS heartbeat is lost for 20 seconds, the plane will Return to Launch||
||FS_LONG_ACTN||0||1||0||1||1||FS_LONG_ACTION - 0 = Off, 1 = On, If heartbeat is lost for 20 srconds, the plane will Return to Launch||
||FS_SHORT_ACTN||0||1||0||1||1||FS_SHORT_ACTION - 0 = Off, 1 = On, If heartbeat is lost for 1.5 seconds, the plane will circle until heartbeat is found again or 20 seconds has passed||
||SYSID_MYGCS||0||255||255||1||1||SYSID_MYGCS - The system ID of the GCS||
||SYSID_THISMAV||0||255||1||1||1||SYSID_THISMAV - The system ID of the MAVlink vehicle||
||AOA|| || ||0|| ||
||ACR_PIT_D|| || ||1|| || ||Description coming soon||
||ACR_PIT_I|| || ||1|| || ||Description coming soon||
||ACR_PIT_IMAX|| || ||1|| || ||Description coming soon||
||ACR_PIT_P|| || ||1|| || ||Description coming soon||
||ACR_RLL_D|| || ||1|| || ||Description coming soon||
||ACR_RLL_I|| || ||1|| || ||Description coming soon||
||ACR_RLL_IMAX|| || ||1|| || ||Description coming soon||
||ACR_RLL_P|| || ||1|| || ||Description coming soon||
||ACR_YAW_D|| || ||1|| || ||Description coming soon||
||ACR_YAW_I|| || ||1|| || ||Description coming soon||
||ACR_YAW_IMAX|| || ||1|| || ||Description coming soon||
||ACR_YAW_P|| || ||1|| || ||Description coming soon||
||ESC|| || ||1|| || ||ESC_CALIBRATE_MODE||
||FRAME|| || ||1|| || ||FRAME_ORIENTATION ||
||LOITER_RADIUS|| || ||1|| || ||Description coming soon||
||NAV_LAT_D|| || ||1|| || ||Description coming soon||
||NAV_LAT_I|| || ||1|| || ||Description coming soon||
||NAV_LAT_IMAX|| || ||1|| || ||Description coming soon||
||NAV_LAT_P|| || ||1|| || ||Description coming soon||
||NAV_LON_D|| || ||1|| || ||Description coming soon||
||NAV_LON_I|| || ||1|| || ||Description coming soon||
||NAV_LON_IMAX|| || ||1|| || ||Description coming soon||
||NAV_LON_P|| || ||1|| || ||Description coming soon||
||NAV_WP_D|| || ||1|| || ||Description coming soon||
||NAV_WP_I|| || ||1|| || ||Description coming soon||
||NAV_WP_IMAX|| || ||1|| || ||Description coming soon||
||NAV_WP_P|| || ||1|| || ||Description coming soon||
||PITCH_MAX|| || ||1|| || ||Description coming soon||
||SONAR_ENABLE||0||1||0||1||1||SONAR_ENABLE - 0 = Off, 1 = On, Sonar Enable||
||STB_PIT_D|| || ||1|| || ||Description coming soon||
||STB_PIT_I|| || ||1|| || ||Description coming soon||
||STB_PIT_IMAX|| || ||1|| || ||Description coming soon||
||STB_PIT_P|| || ||1|| || ||Description coming soon||
||STB_RLL_D|| || ||1|| || ||Description coming soon||
||STB_RLL_I|| || ||1|| || ||Description coming soon||
||STB_RLL_IMAX|| || ||1|| || ||Description coming soon||
||STB_RLL_P|| || ||1|| || ||Description coming soon||
||STB_YAW_D|| || ||1|| || ||Description coming soon||
||STB_YAW_I|| || ||1|| || ||Description coming soon||
||STB_YAW_IMAX|| || ||1|| || ||Description coming soon||
||STB_YAW_P|| || ||1|| || ||Description coming soon||
||THR_BAR_D|| || ||1|| || ||Description coming soon||
||THR_BAR_I|| || ||1|| || ||Description coming soon||
||THR_BAR_IMAX|| || ||1|| || ||Description coming soon||
||THR_BAR_P|| || ||1|| || ||Description coming soo||
||THR_SON_D|| || ||1|| || ||Description coming soon||
||THR_SON_I|| || ||1|| || ||Description coming soon||
||THR_SON_IMAX|| || ||1|| || ||Description coming soon||
||THR_SON_P|| || ||1|| || ||Description coming soon||
||WP_MODE|| || ||1|| || ||Description coming soon||
||WP_MUST_INDEX|| || ||1|| || ||Description coming soon||
||XTRACK_ANGLE|| || ||1|| || ||Description coming soon||
||XTRK_GAIN|| || ||1|| || ||Description coming soon||
||ARSPD_OFFSET|| || ||0|| || ||Description coming soon||
||ELEVON_CH1_REV||0||1||0||1||1||ELEVON_CHANNEL1_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||ELEVON_CH2_REV||0||1||0||1||1||ELEVON_CHANNEL2_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||ELEVON_MIXING||0||1||0||1||1||ELEVON_MIXING - 0 = Disabled, 1 = Enabled||
||ELEVON_REVERSE||0||1||0||1||1||ELEVON_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||INVERTEDFLT_CH||0||8||0||1||1||INVERTED_FLIGHT_CHANNEL - Channel to select inverted flight mode, 0 = Disabled||
||RC1_REV||0||1||1||1||1||RC_CHANNEL1_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC2_REV||0||1||1||1||1||RC_CHANNEL2_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC3_REV||0||1||1||1||1||RC_CHANNEL3_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC4_REV||0||1||1||1||1||RC_CHANNEL4_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC5_REV||0||1||1||1||1||RC_CHANNEL5_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC6_REV||0||1||1||1||1||RC_CHANNEL6_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC7_REV||0||1||1||1||1||RC_CHANNEL7_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||RC8_REV||0||1||1||1||1||RC_CHANNEL8_REVERSE - Channel Reversing (Future use on APM board 2.0) - Does not override dip switches||
||SYSID_SW_MREV|| || ||0|| || ||Description coming soon||
||SYSID_SW_TYPE|| || ||0|| || ||Description coming soon||
||THR_SLEWRATE||0||100||0||1||1||THROTTLE_SLEW_RATE - 0 = Disabled, otherwise it limits throttle movement rate. Units are % per second. This is a test feature and may go away.||
||FLTMODE1||0||20||1||1|| ||FLIGHT_MODE_1 - Mode switch setting 1 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
||FLTMODE2||0||20||1||1|| ||FLIGHT_MODE_2 - Mode switch setting 2 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
||FLTMODE3||0||20||1||1|| ||FLIGHT_MODE_3 - Mode switch setting 3 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
||FLTMODE4||0||20||1||1|| ||FLIGHT_MODE_4 - Mode switch setting 4 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
||FLTMODE5||0||20||1||1|| ||FLIGHT_MODE_5 - Mode switch setting 5 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
||FLTMODE6||0||20||1||1|| ||FLIGHT_MODE_6 - Mode switch setting 6 - APM: 0 = Manual, 2 = Stabilize, 5 - Fly-By-Wire-A, 6 = Fly-By-Wire-B, 7 = Fly-By-Wire-C, 10 = Auto - Mission, 11 = RTL, 12 = Loiter, 13 = Take-off, 14 = Land, 15= Guided; ACM2: 0 = Stabilize, 2 = Acro, 3 = Simple, 4 = Auto, 5 = Guided, 6 = Loiter, 7 = RTL||
\ No newline at end of file
[Failsafe%20Configuration]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_DESCRIPTION=Failsafe Action
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_PARAMID=FS_ACTION
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COUNT=3
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=RTL
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Hold
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\2\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_DESCRIPTION=GCS failsafe enable
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_PARAMID=FS_GCS_ENABLE
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\3\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_DESCRIPTION=Failsafe timeout (In Seconds)
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_PARAMID=FS_TIMEOUT
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_SLIDER_MAX=100
QGC_TOOL_WIDGET_ITEMS\4\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_DESCRIPTION=Throttle Failsafe Enable
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_PARAMID=FS_THR_ENABLE
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COUNT=2
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Disabled
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Enabled
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\5\TYPE=SLIDER
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_DESCRIPTION=Throttle Failsafe Value (PWM)
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_PARAMID=FS_THR_VALUE
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MIN=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_SLIDER_MAX=1000
QGC_TOOL_WIDGET_ITEMS\size=5
[Flight%20Modes]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_DESCRIPTION=Mode Channel
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_PARAMID=FLTMODE_CH
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COUNT=12
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=RC 1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_VAL=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=RC 2
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_VAL=2
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=RC 3
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_VAL=3
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=RC 4
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_3_VAL=4
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=RC 5
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_4_VAL=5
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=RC 6
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_5_VAL=6
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=RC 7
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_6_VAL=7
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=RC 8
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_7_VAL=8
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=RC 9
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_8_VAL=9
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_9_TEXT=RC 10
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_9_VAL=10
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_10_TEXT=RC 11
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_10_VAL=11
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_11_TEXT=RC 12
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_11_VAL=12
QGC_TOOL_WIDGET_ITEMS\2\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_DESCRIPTION=Mode 1 (PWM 0-1230)
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_PARAMID=FLTMODE1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_COUNT=11
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Stablilize
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Acro
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Alt Hold
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Auto
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_3_VAL=3
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Guided
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_4_VAL=4
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=Loiter
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_5_VAL=6
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=RTL
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_6_VAL=6
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=Circle
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_7_VAL=7
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=Pos Hold
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_8_VAL=8
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_9_TEXT=Land
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_9_VAL=9
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_10_TEXT=Toy
QGC_TOOL_WIDGET_ITEMS\2\QGC_PARAM_COMBOBOX_ITEM_10_VAL=11
QGC_TOOL_WIDGET_ITEMS\3\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_DESCRIPTION=Mode 2 (PWM 1231-1360)
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_PARAMID=FLTMODE2
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_COUNT=11
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Stablilize
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Acro
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Alt Hold
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Auto
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_3_VAL=3
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Guided
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_4_VAL=4
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=Loiter
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_5_VAL=6
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=RTL
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_6_VAL=6
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=Circle
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_7_VAL=7
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=Pos Hold
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_8_VAL=8
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_9_TEXT=Land
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_9_VAL=9
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_10_TEXT=Toy
QGC_TOOL_WIDGET_ITEMS\3\QGC_PARAM_COMBOBOX_ITEM_10_VAL=1
1QGC_TOOL_WIDGET_ITEMS\4\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_DESCRIPTION=Mode 3 (PWM 1361-1490)
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_PARAMID=FLTMODE3
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_COUNT=11
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Stablilize
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Acro
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Alt Hold
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Auto
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_3_VAL=3
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Guided
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_4_VAL=4
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=Loiter
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_5_VAL=6
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=RTL
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_6_VAL=6
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=Circle
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_7_VAL=7
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=Pos Hold
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_8_VAL=8
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_9_TEXT=Land
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_9_VAL=9
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_10_TEXT=Toy
QGC_TOOL_WIDGET_ITEMS\4\QGC_PARAM_COMBOBOX_ITEM_10_VAL=11
QGC_TOOL_WIDGET_ITEMS\5\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_DESCRIPTION=Mode 4 (PWM 1491-1620)
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_PARAMID=FLTMODE4
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_COUNT=11
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Stablilize
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Acro
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Alt Hold
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Auto
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_3_VAL=3
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Guided
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_4_VAL=4
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=Loiter
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_5_VAL=6
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=RTL
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_6_VAL=6
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=Circle
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_7_VAL=7
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=Pos Hold
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_8_VAL=8
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_9_TEXT=Land
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_9_VAL=9
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_10_TEXT=Toy
QGC_TOOL_WIDGET_ITEMS\5\QGC_PARAM_COMBOBOX_ITEM_10_VAL=11
QGC_TOOL_WIDGET_ITEMS\6\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_DESCRIPTION=Mode 5 (PWM 1621-1749)
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_PARAMID=FLTMODE5
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_COUNT=11
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Stablilize
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Acro
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Alt Hold
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Auto
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_3_VAL=3
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Guided
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_4_VAL=4
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=Loiter
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_5_VAL=6
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=RTL
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_6_VAL=6
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=Circle
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_7_VAL=7
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=Pos Hold
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_8_VAL=8
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_9_TEXT=Land
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_9_VAL=9
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_10_TEXT=Toy
QGC_TOOL_WIDGET_ITEMS\6\QGC_PARAM_COMBOBOX_ITEM_10_VAL=11
QGC_TOOL_WIDGET_ITEMS\7\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_DESCRIPTION=Mode 6 (PWM 1750+)
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_PARAMID=FLTMODE6
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_COUNT=11
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Stablilize
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=Acro
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=Alt Hold
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_3_TEXT=Auto
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_3_VAL=3
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_4_TEXT=Guided
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_4_VAL=4
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_5_TEXT=Loiter
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_5_VAL=6
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_6_TEXT=RTL
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_6_VAL=6
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_7_TEXT=Circle
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_7_VAL=7
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_8_TEXT=Pos Hold
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_8_VAL=8
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_9_TEXT=Land
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_9_VAL=9
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_10_TEXT=Toy
QGC_TOOL_WIDGET_ITEMS\7\QGC_PARAM_COMBOBOX_ITEM_10_VAL=11
QGC_TOOL_WIDGET_ITEMS\size=7
[Airframe%20Config]
QGC_TOOL_WIDGET_ITEMS\1\TYPE=COMBO
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_DESCRIPTION=Quadcoptor Configuration
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_PARAMID=FRAME
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COMPONENTID=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_COUNT=3
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_TEXT=Plus
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_0_VAL=0
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_TEXT=X
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_1_VAL=1
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_TEXT=V
QGC_TOOL_WIDGET_ITEMS\1\QGC_PARAM_COMBOBOX_ITEM_2_VAL=2
QGC_TOOL_WIDGET_ITEMS\size=1
......@@ -310,7 +310,6 @@ FORMS += \
src/ui/mission/QGCMissionNavSweep.ui \
src/ui/mission/QGCMissionDoStartSearch.ui \
src/ui/mission/QGCMissionDoFinishSearch.ui \
src/ui/QGCVehicleConfig.ui \
src/ui/QGCPX4VehicleConfig.ui \
src/ui/QGCHilConfiguration.ui \
src/ui/QGCHilFlightGearConfiguration.ui \
......@@ -453,7 +452,6 @@ HEADERS += \
src/ui/mission/QGCMissionNavSweep.h \
src/ui/mission/QGCMissionDoStartSearch.h \
src/ui/mission/QGCMissionDoFinishSearch.h \
src/ui/QGCVehicleConfig.h \
src/ui/QGCPX4VehicleConfig.h \
src/comm/QGCHilLink.h \
src/ui/QGCHilConfiguration.h \
......@@ -612,7 +610,6 @@ SOURCES += \
src/ui/mission/QGCMissionNavSweep.cc \
src/ui/mission/QGCMissionDoStartSearch.cc \
src/ui/mission/QGCMissionDoFinishSearch.cc \
src/ui/QGCVehicleConfig.cc \
src/ui/QGCPX4VehicleConfig.cc \
src/ui/QGCHilConfiguration.cc \
src/ui/QGCHilFlightGearConfiguration.cc \
......
......@@ -70,7 +70,6 @@ This file is part of the QGROUNDCONTROL project
#include "UASControlParameters.h"
#include "QGCMAVLinkInspector.h"
#include "QGCMAVLinkLogPlayer.h"
#include "QGCVehicleConfig.h"
#include "MAVLinkDecoder.h"
#include "QGCUASFileViewMulti.h"
......
// On Windows (for VS2010) stdint.h contains the limits normally contained in limits.h
// It also needs the __STDC_LIMIT_MACROS macro defined in order to include them (done
// in qgroundcontrol.pri).
#ifdef WIN32
#include <stdint.h>
#else
#include <limits.h>
#endif
#include <QTimer>
#include <QDir>
#include <QXmlStreamReader>
#include <QMessageBox>
#include "QGCVehicleConfig.h"
#include "QGC.h"
#include "QGCToolWidget.h"
#include "UASManager.h"
#include "UASParameterCommsMgr.h"
#include "ui_QGCVehicleConfig.h"
QGCVehicleConfig::QGCVehicleConfig(QWidget *parent) :
QWidget(parent),
mav(NULL),
chanCount(0),
rcRoll(0.0f),
rcPitch(0.0f),
rcYaw(0.0f),
rcThrottle(0.0f),
rcMode(0.0f),
rcAux1(0.0f),
rcAux2(0.0f),
rcAux3(0.0f),
changed(true),
rc_mode(RC_MODE_NONE),
calibrationEnabled(false),
ui(new Ui::QGCVehicleConfig)
{
doneLoadingConfig = false;
setObjectName("QGC_VEHICLECONFIG");
ui->setupUi(this);
ui->rollWidget->setOrientation(Qt::Horizontal);
ui->rollWidget->setName("Roll");
ui->yawWidget->setOrientation(Qt::Horizontal);
ui->yawWidget->setName("Yaw");
ui->pitchWidget->setName("Pitch");
ui->throttleWidget->setName("Throttle");
ui->radio5Widget->setOrientation(Qt::Horizontal);
ui->radio5Widget->setName("Radio 5");
ui->radio6Widget->setOrientation(Qt::Horizontal);
ui->radio6Widget->setName("Radio 6");
ui->radio7Widget->setOrientation(Qt::Horizontal);
ui->radio7Widget->setName("Radio 7");
ui->radio8Widget->setOrientation(Qt::Horizontal);
ui->radio8Widget->setName("Radio 8");
connect(ui->rcMenuButton,SIGNAL(clicked()),this,SLOT(rcMenuButtonClicked()));
connect(ui->sensorMenuButton,SIGNAL(clicked()),this,SLOT(sensorMenuButtonClicked()));
connect(ui->generalMenuButton,SIGNAL(clicked()),this,SLOT(generalMenuButtonClicked()));
connect(ui->advancedMenuButton,SIGNAL(clicked()),this,SLOT(advancedMenuButtonClicked()));
ui->rcModeComboBox->setCurrentIndex((int)rc_mode - 1);
ui->rcCalibrationButton->setCheckable(true);
connect(ui->rcCalibrationButton, SIGNAL(clicked(bool)), this, SLOT(toggleCalibrationRC(bool)));
connect(ui->setButton, SIGNAL(clicked()), this, SLOT(writeParameters()));
connect(ui->rcModeComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(setRCModeIndex(int)));
//connect(ui->setTrimButton, SIGNAL(clicked()), this, SLOT(setTrimPositions()));
/* Connect RC mapping assignments */
connect(ui->rollSpinBox, SIGNAL(valueChanged(int)), this, SLOT(setRollChan(int)));
connect(ui->pitchSpinBox, SIGNAL(valueChanged(int)), this, SLOT(setPitchChan(int)));
connect(ui->yawSpinBox, SIGNAL(valueChanged(int)), this, SLOT(setYawChan(int)));
connect(ui->throttleSpinBox, SIGNAL(valueChanged(int)), this, SLOT(setThrottleChan(int)));
connect(ui->modeSpinBox, SIGNAL(valueChanged(int)), this, SLOT(setModeChan(int)));
connect(ui->aux1SpinBox, SIGNAL(valueChanged(int)), this, SLOT(setAux1Chan(int)));
connect(ui->aux2SpinBox, SIGNAL(valueChanged(int)), this, SLOT(setAux2Chan(int)));
connect(ui->aux3SpinBox, SIGNAL(valueChanged(int)), this, SLOT(setAux3Chan(int)));
// Connect RC reverse assignments
connect(ui->invertCheckBox, SIGNAL(clicked(bool)), this, SLOT(setRollInverted(bool)));
connect(ui->invertCheckBox_2, SIGNAL(clicked(bool)), this, SLOT(setPitchInverted(bool)));
connect(ui->invertCheckBox_3, SIGNAL(clicked(bool)), this, SLOT(setYawInverted(bool)));
connect(ui->invertCheckBox_4, SIGNAL(clicked(bool)), this, SLOT(setThrottleInverted(bool)));
connect(ui->invertCheckBox_5, SIGNAL(clicked(bool)), this, SLOT(setModeInverted(bool)));
connect(ui->invertCheckBox_6, SIGNAL(clicked(bool)), this, SLOT(setAux1Inverted(bool)));
connect(ui->invertCheckBox_7, SIGNAL(clicked(bool)), this, SLOT(setAux2Inverted(bool)));
connect(ui->invertCheckBox_8, SIGNAL(clicked(bool)), this, SLOT(setAux3Inverted(bool)));
connect(UASManager::instance(), SIGNAL(activeUASSet(UASInterface*)), this, SLOT(setActiveUAS(UASInterface*)));
setActiveUAS(UASManager::instance()->getActiveUAS());
for (unsigned int i = 0; i < chanMax; i++)
{
rcValue[i] = UINT16_MAX;
rcMapping[i] = i;
}
updateTimer.setInterval(150);
connect(&updateTimer, SIGNAL(timeout()), this, SLOT(updateView()));
updateTimer.start();
// Make sure the advanced features match what the checkbox indicates on startup and listen for
// future changes.
if (!ui->advancedCheckBox->isChecked())
{
ui->advancedGroupBox->hide();
}
connect(ui->advancedCheckBox, SIGNAL(toggled(bool)), ui->advancedGroupBox,SLOT(setVisible(bool)));
}
void QGCVehicleConfig::rcMenuButtonClicked()
{
ui->stackedWidget->setCurrentIndex(0);
}
void QGCVehicleConfig::sensorMenuButtonClicked()
{
ui->stackedWidget->setCurrentIndex(1);
}
void QGCVehicleConfig::generalMenuButtonClicked()
{
ui->stackedWidget->setCurrentIndex(ui->stackedWidget->count()-2);
}
void QGCVehicleConfig::advancedMenuButtonClicked()
{
ui->stackedWidget->setCurrentIndex(ui->stackedWidget->count()-1);
}
QGCVehicleConfig::~QGCVehicleConfig()
{
delete ui;
}
void QGCVehicleConfig::setRCModeIndex(int newRcMode)
{
if (newRcMode > 0 && newRcMode < 6)
{
//rc_mode = (enum RC_MODE) (newRcMode+1);
changed = true;
}
}
void QGCVehicleConfig::toggleCalibrationRC(bool enabled)
{
if (enabled)
{
startCalibrationRC();
}
else
{
stopCalibrationRC();
}
}
void QGCVehicleConfig::setTrimPositions()
{
// Set trim to min if stick is close to min
if (abs(rcValue[rcMapping[3]] - rcMin[rcMapping[3]]) < 100)
{
rcTrim[rcMapping[3]] = rcMin[rcMapping[3]]; // throttle
}
// Set trim to max if stick is close to max
else if (abs(rcValue[rcMapping[3]] - rcMax[rcMapping[3]]) < 100)
{
rcTrim[rcMapping[3]] = rcMax[rcMapping[3]]; // throttle
}
else
{
// Reject
QMessageBox msgBox;
msgBox.setText(tr("Throttle Stick Trim Position Invalid"));
msgBox.setInformativeText(tr("The throttle stick is not in the min position. Please set it to the minimum value"));
msgBox.setStandardButtons(QMessageBox::Ok);
msgBox.setDefaultButton(QMessageBox::Ok);
(void)msgBox.exec();
}
// Set trim for roll, pitch, yaw, throttle
rcTrim[rcMapping[0]] = rcValue[rcMapping[0]]; // roll
rcTrim[rcMapping[1]] = rcValue[rcMapping[1]]; // pitch
rcTrim[rcMapping[2]] = rcValue[rcMapping[2]]; // yaw
rcTrim[rcMapping[4]] = ((rcMax[rcMapping[4]] - rcMin[rcMapping[4]]) / 2.0f) + rcMin[rcMapping[4]]; // mode sw
rcTrim[rcMapping[5]] = ((rcMax[rcMapping[5]] - rcMin[rcMapping[5]]) / 2.0f) + rcMin[rcMapping[5]]; // aux 1
rcTrim[rcMapping[6]] = ((rcMax[rcMapping[6]] - rcMin[rcMapping[6]]) / 2.0f) + rcMin[rcMapping[6]]; // aux 2
rcTrim[rcMapping[7]] = ((rcMax[rcMapping[7]] - rcMin[rcMapping[7]]) / 2.0f) + rcMin[rcMapping[7]]; // aux 3
}
void QGCVehicleConfig::detectChannelInversion()
{
}
void QGCVehicleConfig::startCalibrationRC()
{
QMessageBox::information(0,"Warning!","You are about to start radio calibration.\nPlease ensure all motor power is disconnected AND all props are removed from the vehicle.\nAlso ensure transmitter and reciever are powered and connected\n\nClick OK to confirm");
QMessageBox::information(0,"Information","Click OK, then move all sticks to their extreme positions, watching the min/max values to ensure you get the most range from your controller. This includes all switches");
ui->rcTypeComboBox->setEnabled(false);
ui->rcCalibrationButton->setText(tr("Stop RC Calibration"));
resetCalibrationRC();
calibrationEnabled = true;
ui->rollWidget->showMinMax(true);
ui->pitchWidget->showMinMax(true);
ui->yawWidget->showMinMax(true);
ui->throttleWidget->showMinMax(true);
ui->radio5Widget->showMinMax(true);
ui->radio6Widget->showMinMax(true);
ui->radio7Widget->showMinMax(true);
ui->radio8Widget->showMinMax(true);
}
void QGCVehicleConfig::stopCalibrationRC()
{
QMessageBox::information(0,"Trims","Ensure all sticks are centeres and throttle is in the downmost position, click OK to continue");
calibrationEnabled = false;
ui->rcTypeComboBox->setEnabled(true);
ui->rcCalibrationButton->setText(tr("Start RC Calibration"));
ui->rollWidget->showMinMax(false);
ui->pitchWidget->showMinMax(false);
ui->yawWidget->showMinMax(false);
ui->throttleWidget->showMinMax(false);
ui->radio5Widget->showMinMax(false);
ui->radio6Widget->showMinMax(false);
ui->radio7Widget->showMinMax(false);
ui->radio8Widget->showMinMax(false);
QString statusstr;
statusstr = "Below you will find the detected radio calibration information that will be sent to the autopilot\n";
statusstr += "Normal values are around 1100 to 1900, with disconnected channels reading very close to 1500\n\n";
statusstr += "Channel\tMin\tCenter\tMax\n";
statusstr += "--------------------\n";
for (int i=0;i<8;i++)
{
statusstr += QString::number(i) + "\t" + QString::number(rcMin[i]) + "\t" + QString::number(rcValue[i]) + "\t" + QString::number(rcMax[i]) + "\n";
}
QMessageBox::information(0,"Status",statusstr);
}
void QGCVehicleConfig::loadQgcConfig(bool primary)
{
Q_UNUSED(primary);
QDir autopilotdir(qApp->applicationDirPath() + "/files/" + mav->getAutopilotTypeName().toLower());
QDir generaldir = QDir(autopilotdir.absolutePath() + "/general/widgets");
QDir vehicledir = QDir(autopilotdir.absolutePath() + "/" + mav->getSystemTypeName().toLower() + "/widgets");
if (!autopilotdir.exists("general"))
{
//TODO: Throw some kind of error here. There is no general configuration directory
qDebug() << "Invalid general dir. no general configuration will be loaded.";
}
if (!autopilotdir.exists(mav->getAutopilotTypeName().toLower()))
{
//TODO: Throw an error here too, no autopilot specific configuration
qDebug() << "Invalid vehicle dir, no vehicle specific configuration will be loaded.";
}
// Generate widgets for the General tab.
QGCToolWidget *tool;
bool left = true;
foreach (QString file,generaldir.entryList(QDir::Files | QDir::NoDotAndDotDot))
{
if (file.toLower().endsWith(".qgw")) {
QWidget* parent = left?ui->generalLeftContents:ui->generalRightContents;
tool = new QGCToolWidget("", "", parent);
if (tool->loadSettings(generaldir.absoluteFilePath(file), false))
{
toolWidgets.append(tool);
QGroupBox *box = new QGroupBox(parent);
box->setTitle(tool->objectName());
box->setLayout(new QVBoxLayout(box));
box->layout()->addWidget(tool);
if (left)
{
left = false;
ui->generalLeftLayout->addWidget(box);
}
else
{
left = true;
ui->generalRightLayout->addWidget(box);
}
} else {
delete tool;
}
}
}
// Generate widgets for the Advanced tab.
left = true;
foreach (QString file,vehicledir.entryList(QDir::Files | QDir::NoDotAndDotDot))
{
if (file.toLower().endsWith(".qgw")) {
QWidget* parent = left?ui->advancedLeftContents:ui->advancedRightContents;
tool = new QGCToolWidget("", "", parent);
if (tool->loadSettings(vehicledir.absoluteFilePath(file), false))
{
toolWidgets.append(tool);
QGroupBox *box = new QGroupBox(parent);
box->setTitle(tool->objectName());
box->setLayout(new QVBoxLayout(box));
box->layout()->addWidget(tool);
if (left)
{
left = false;
ui->advancedLeftLayout->addWidget(box);
}
else
{
left = true;
ui->advancedRightLayout->addWidget(box);
}
} else {
delete tool;
}
}
}
// Load tabs for general configuration
foreach (QString dir,generaldir.entryList(QDir::Dirs | QDir::NoDotAndDotDot))
{
QPushButton *button = new QPushButton(ui->scrollAreaWidgetContents_3);
connect(button,SIGNAL(clicked()),this,SLOT(menuButtonClicked()));
ui->navBarLayout->insertWidget(2,button);
button->setMinimumHeight(75);
button->setMinimumWidth(100);
button->show();
button->setText(dir);
QWidget *tab = new QWidget(ui->stackedWidget);
ui->stackedWidget->insertWidget(2,tab);
buttonToWidgetMap[button] = tab;
tab->setLayout(new QVBoxLayout());
tab->show();
QScrollArea *area = new QScrollArea(tab);
tab->layout()->addWidget(area);
QWidget *scrollArea = new QWidget(tab);
scrollArea->setLayout(new QVBoxLayout(tab));
area->setWidget(scrollArea);
area->setWidgetResizable(true);
area->show();
scrollArea->show();
QDir newdir = QDir(generaldir.absoluteFilePath(dir));
foreach (QString file,newdir.entryList(QDir::Files| QDir::NoDotAndDotDot))
{
if (file.toLower().endsWith(".qgw")) {
tool = new QGCToolWidget("", "", tab);
if (tool->loadSettings(newdir.absoluteFilePath(file), false))
{
toolWidgets.append(tool);
//ui->sensorLayout->addWidget(tool);
QGroupBox *box = new QGroupBox(tab);
box->setTitle(tool->objectName());
box->setLayout(new QVBoxLayout(tab));
box->layout()->addWidget(tool);
scrollArea->layout()->addWidget(box);
} else {
delete tool;
}
}
}
}
// Load additional tabs for vehicle specific configuration
foreach (QString dir,vehicledir.entryList(QDir::Dirs | QDir::NoDotAndDotDot))
{
QPushButton *button = new QPushButton(ui->scrollAreaWidgetContents_3);
connect(button,SIGNAL(clicked()),this,SLOT(menuButtonClicked()));
ui->navBarLayout->insertWidget(2,button);
QWidget *tab = new QWidget(ui->stackedWidget);
ui->stackedWidget->insertWidget(2,tab);
buttonToWidgetMap[button] = tab;
button->setMinimumHeight(75);
button->setMinimumWidth(100);
button->show();
button->setText(dir);
tab->setLayout(new QVBoxLayout());
tab->show();
QScrollArea *area = new QScrollArea(tab);
tab->layout()->addWidget(area);
QWidget *scrollArea = new QWidget(tab);
scrollArea->setLayout(new QVBoxLayout(tab));
area->setWidget(scrollArea);
area->setWidgetResizable(true);
area->show();
scrollArea->show();
QDir newdir = QDir(vehicledir.absoluteFilePath(dir));
foreach (QString file,newdir.entryList(QDir::Files| QDir::NoDotAndDotDot))
{
if (file.toLower().endsWith(".qgw")) {
tool = new QGCToolWidget("","", tab);
tool->addUAS(mav);
if (tool->loadSettings(newdir.absoluteFilePath(file), false))
{
toolWidgets.append(tool);
//ui->sensorLayout->addWidget(tool);
QGroupBox *box = new QGroupBox(tab);
box->setTitle(tool->objectName());
box->setLayout(new QVBoxLayout(box));
box->layout()->addWidget(tool);
scrollArea->layout()->addWidget(box);
box->show();
//gbox->layout()->addWidget(box);
} else {
delete tool;
}
}
}
}
// Load general calibration for autopilot
//TODO: Handle this more gracefully, maybe have it scan the directory for multiple calibration entries?
tool = new QGCToolWidget("", "", ui->sensorContents);
tool->addUAS(mav);
if (tool->loadSettings(autopilotdir.absolutePath() + "/general/calibration/calibration.qgw", false))
{
toolWidgets.append(tool);
QGroupBox *box = new QGroupBox(ui->sensorContents);
box->setTitle(tool->objectName());
box->setLayout(new QVBoxLayout(box));
box->layout()->addWidget(tool);
ui->sensorLayout->addWidget(box);
} else {
delete tool;
}
// Load vehicle-specific autopilot configuration
tool = new QGCToolWidget("", "", ui->sensorContents);
tool->addUAS(mav);
if (tool->loadSettings(autopilotdir.absolutePath() + "/" + mav->getSystemTypeName().toLower() + "/calibration/calibration.qgw", false))
{
toolWidgets.append(tool);
QGroupBox *box = new QGroupBox(ui->sensorContents);
box->setTitle(tool->objectName());
box->setLayout(new QVBoxLayout(box));
box->layout()->addWidget(tool);
ui->sensorLayout->addWidget(box);
} else {
delete tool;
}
//description.txt
QFile sensortipsfile(autopilotdir.absolutePath() + "/general/calibration/description.txt");
sensortipsfile.open(QIODevice::ReadOnly);
ui->sensorTips->setHtml(sensortipsfile.readAll());
sensortipsfile.close();
}
void QGCVehicleConfig::menuButtonClicked()
{
QPushButton *button = qobject_cast<QPushButton*>(sender());
if (!button)
{
return;
}
if (buttonToWidgetMap.contains(button))
{
ui->stackedWidget->setCurrentWidget(buttonToWidgetMap[button]);
}
}
void QGCVehicleConfig::loadConfig()
{
QGCToolWidget* tool;
QDir autopilotdir(qApp->applicationDirPath() + "/files/" + mav->getAutopilotTypeName().toLower());
QDir generaldir = QDir(autopilotdir.absolutePath() + "/general/widgets");
QDir vehicledir = QDir(autopilotdir.absolutePath() + "/" + mav->getSystemTypeName().toLower() + "/widgets");
if (!autopilotdir.exists("general"))
{
//TODO: Throw some kind of error here. There is no general configuration directory
qDebug() << "Invalid general dir. no general configuration will be loaded.";
}
if (!autopilotdir.exists(mav->getAutopilotTypeName().toLower()))
{
//TODO: Throw an error here too, no autopilot specific configuration
qDebug() << "Invalid vehicle dir, no vehicle specific configuration will be loaded.";
}
qDebug() << autopilotdir.absolutePath();
qDebug() << generaldir.absolutePath();
qDebug() << vehicledir.absolutePath();
QFile xmlfile(autopilotdir.absolutePath() + "/arduplane.pdef.xml");
if (xmlfile.exists() && !xmlfile.open(QIODevice::ReadOnly))
{
loadQgcConfig(false);
doneLoadingConfig = true;
return;
}
loadQgcConfig(true);
QXmlStreamReader xml(xmlfile.readAll());
xmlfile.close();
//TODO: Testing to ensure that incorrectly formatted XML won't break this.
while (!xml.atEnd())
{
if (xml.isStartElement() && xml.name() == "paramfile")
{
xml.readNext();
while ((xml.name() != "paramfile") && !xml.atEnd())
{
QString valuetype = "";
if (xml.isStartElement() && (xml.name() == "vehicles" || xml.name() == "libraries")) //Enter into the vehicles loop
{
valuetype = xml.name().toString();
xml.readNext();
while ((xml.name() != valuetype) && !xml.atEnd())
{
if (xml.isStartElement() && xml.name() == "parameters") //This is a parameter block
{
QString parametersname = "";
if (xml.attributes().hasAttribute("name"))
{
parametersname = xml.attributes().value("name").toString();
}
QVariantMap genset;
QVariantMap advset;
QString setname = parametersname;
xml.readNext();
int genarraycount = 0;
int advarraycount = 0;
while ((xml.name() != "parameters") && !xml.atEnd())
{
if (xml.isStartElement() && xml.name() == "param")
{
QString humanname = xml.attributes().value("humanName").toString();
QString name = xml.attributes().value("name").toString();
QString tab= xml.attributes().value("user").toString();
if (tab == "Advanced")
{
advset["title"] = parametersname;
}
else
{
genset["title"] = parametersname;
}
if (name.contains(":"))
{
name = name.split(":")[1];
}
QString docs = xml.attributes().value("documentation").toString();
paramTooltips[name] = name + " - " + docs;
int type = -1; //Type of item
QMap<QString,QString> fieldmap;
xml.readNext();
while ((xml.name() != "param") && !xml.atEnd())
{
if (xml.isStartElement() && xml.name() == "values")
{
type = 1; //1 is a combobox
if (tab == "Advanced")
{
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "TYPE"] = "COMBO";
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "QGC_PARAM_COMBOBOX_DESCRIPTION"] = humanname;
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "QGC_PARAM_COMBOBOX_PARAMID"] = name;
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "QGC_PARAM_COMBOBOX_COMPONENTID"] = 1;
}
else
{
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "TYPE"] = "COMBO";
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "QGC_PARAM_COMBOBOX_DESCRIPTION"] = humanname;
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "QGC_PARAM_COMBOBOX_PARAMID"] = name;
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "QGC_PARAM_COMBOBOX_COMPONENTID"] = 1;
}
int paramcount = 0;
xml.readNext();
while ((xml.name() != "values") && !xml.atEnd())
{
if (xml.isStartElement() && xml.name() == "value")
{
QString code = xml.attributes().value("code").toString();
QString arg = xml.readElementText();
if (tab == "Advanced")
{
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "QGC_PARAM_COMBOBOX_ITEM_" + QString::number(paramcount) + "_TEXT"] = arg;
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "QGC_PARAM_COMBOBOX_ITEM_" + QString::number(paramcount) + "_VAL"] = code.toInt();
}
else
{
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "QGC_PARAM_COMBOBOX_ITEM_" + QString::number(paramcount) + "_TEXT"] = arg;
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "QGC_PARAM_COMBOBOX_ITEM_" + QString::number(paramcount) + "_VAL"] = code.toInt();
}
paramcount++;
}
xml.readNext();
}
if (tab == "Advanced")
{
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "QGC_PARAM_COMBOBOX_COUNT"] = paramcount;
}
else
{
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "QGC_PARAM_COMBOBOX_COUNT"] = paramcount;
}
}
if (xml.isStartElement() && xml.name() == "field")
{
type = 2; //2 is a slider
QString fieldtype = xml.attributes().value("name").toString();
QString text = xml.readElementText();
fieldmap[fieldtype] = text;
}
xml.readNext();
}
if (type == -1)
{
//Nothing inside! Assume it's a value, give it a default range.
type = 2;
QString fieldtype = "Range";
QString text = "0 100"; //TODO: Determine a better way of figuring out default ranges.
fieldmap[fieldtype] = text;
}
if (type == 2)
{
if (tab == "Advanced")
{
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "TYPE"] = "SLIDER";
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "QGC_PARAM_SLIDER_DESCRIPTION"] = humanname;
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "QGC_PARAM_SLIDER_PARAMID"] = name;
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "QGC_PARAM_SLIDER_COMPONENTID"] = 1;
}
else
{
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "TYPE"] = "SLIDER";
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "QGC_PARAM_SLIDER_DESCRIPTION"] = humanname;
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "QGC_PARAM_SLIDER_PARAMID"] = name;
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "QGC_PARAM_SLIDER_COMPONENTID"] = 1;
}
if (fieldmap.contains("Range"))
{
float min = 0;
float max = 0;
//Some range fields list "0-10" and some list "0 10". Handle both.
if (fieldmap["Range"].split(" ").size() > 1)
{
min = fieldmap["Range"].split(" ")[0].trimmed().toFloat();
max = fieldmap["Range"].split(" ")[1].trimmed().toFloat();
}
else if (fieldmap["Range"].split("-").size() > 1)
{
min = fieldmap["Range"].split("-")[0].trimmed().toFloat();
max = fieldmap["Range"].split("-")[1].trimmed().toFloat();
}
if (tab == "Advanced")
{
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "QGC_PARAM_SLIDER_MIN"] = min;
advset[setname + "\\" + QString::number(advarraycount) + "\\" + "QGC_PARAM_SLIDER_MAX"] = max;
}
else
{
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "QGC_PARAM_SLIDER_MIN"] = min;
genset[setname + "\\" + QString::number(genarraycount) + "\\" + "QGC_PARAM_SLIDER_MAX"] = max;
}
}
}
if (tab == "Advanced")
{
advarraycount++;
advset["count"] = advarraycount;
}
else
{
genarraycount++;
genset["count"] = genarraycount;
}
}
xml.readNext();
}
if (genarraycount > 0)
{
QWidget* parent = this;
if (valuetype == "vehicles")
{
parent = ui->generalLeftContents;
}
else if (valuetype == "libraries")
{
parent = ui->generalRightContents;
}
tool = new QGCToolWidget(parametersname, parametersname, parent);
tool->addUAS(mav);
tool->setSettings(genset);
QList<QString> paramlist = tool->getParamList();
for (int i=0;i<paramlist.size();i++)
{
//Based on the airframe, we add the parameter to different categories.
if (parametersname == "ArduPlane") //MAV_TYPE_FIXED_WING FIXED_WING
{
systemTypeToParamMap["FIXED_WING"].insert(paramlist[i],tool);
}
else if (parametersname == "ArduCopter") //MAV_TYPE_QUADROTOR "QUADROTOR
{
systemTypeToParamMap["QUADROTOR"].insert(paramlist[i],tool);
}
else if (parametersname == "APMrover2") //MAV_TYPE_GROUND_ROVER GROUND_ROVER
{
systemTypeToParamMap["GROUND_ROVER"].insert(paramlist[i],tool);
}
else
{
libParamToWidgetMap.insert(paramlist[i],tool);
}
}
toolWidgets.append(tool);
QGroupBox *box = new QGroupBox(parent);
box->setTitle(tool->objectName());
box->setLayout(new QVBoxLayout(box));
box->layout()->addWidget(tool);
if (valuetype == "vehicles")
{
ui->generalLeftLayout->addWidget(box);
}
else if (valuetype == "libraries")
{
ui->generalRightLayout->addWidget(box);
}
box->hide();
toolToBoxMap[tool] = box;
}
if (advarraycount > 0)
{
QWidget* parent = this;
if (valuetype == "vehicles")
{
parent = ui->generalLeftContents;
}
else if (valuetype == "libraries")
{
parent = ui->generalRightContents;
}
tool = new QGCToolWidget(parametersname, parametersname, parent);
tool->addUAS(mav);
tool->setSettings(advset);
QList<QString> paramlist = tool->getParamList();
for (int i=0;i<paramlist.size();i++)
{
//Based on the airframe, we add the parameter to different categories.
if (parametersname == "ArduPlane") //MAV_TYPE_FIXED_WING FIXED_WING
{
systemTypeToParamMap["FIXED_WING"].insert(paramlist[i],tool);
}
else if (parametersname == "ArduCopter") //MAV_TYPE_QUADROTOR "QUADROTOR
{
systemTypeToParamMap["QUADROTOR"].insert(paramlist[i],tool);
}
else if (parametersname == "APMrover2") //MAV_TYPE_GROUND_ROVER GROUND_ROVER
{
systemTypeToParamMap["GROUND_ROVER"].insert(paramlist[i],tool);
}
else
{
libParamToWidgetMap.insert(paramlist[i],tool);
}
}
toolWidgets.append(tool);
QGroupBox *box = new QGroupBox(parent);
box->setTitle(tool->objectName());
box->setLayout(new QVBoxLayout(box));
box->layout()->addWidget(tool);
if (valuetype == "vehicles")
{
ui->generalLeftLayout->addWidget(box);
}
else if (valuetype == "libraries")
{
ui->generalRightLayout->addWidget(box);
}
box->hide();
toolToBoxMap[tool] = box;
}
}
xml.readNext();
}
}
xml.readNext();
}
}
xml.readNext();
}
if (!paramTooltips.isEmpty()) {
paramMgr->setParamDescriptions(paramTooltips);
}
doneLoadingConfig = true;
//Config is finished, lets do a parameter request to ensure none are missed if someone else started requesting before we were finished.
paramMgr->requestParameterListIfEmpty();
}
void QGCVehicleConfig::setActiveUAS(UASInterface* active)
{
// Hide items if NULL and abort
if (!active) {
ui->setButton->setEnabled(false);
ui->refreshButton->setEnabled(false);
ui->readButton->show();
ui->readButton->setEnabled(false);
ui->writeButton->show();
ui->writeButton->setEnabled(false);
ui->loadFileButton->setEnabled(false);
ui->saveFileButton->setEnabled(false);
return;
}
// Do nothing if system is the same
if (mav == active) return;
if (mav)
{
// Disconnect old system
disconnect(mav, SIGNAL(remoteControlChannelRawChanged(int,float)), this,
SLOT(remoteControlChannelRawChanged(int,float)));
disconnect(mav, SIGNAL(parameterChanged(int,int,QString,QVariant)), this,
SLOT(parameterChanged(int,int,QString,QVariant)));
disconnect(ui->refreshButton,SIGNAL(clicked()),mav,SLOT(requestParameters()));
// Delete all children from all fixed tabs.
foreach(QWidget* child, ui->generalLeftContents->findChildren<QWidget*>())
{
child->deleteLater();
}
foreach(QWidget* child, ui->generalRightContents->findChildren<QWidget*>())
{
child->deleteLater();
}
foreach(QWidget* child, ui->advancedLeftContents->findChildren<QWidget*>())
{
child->deleteLater();
}
foreach(QWidget* child, ui->advancedRightContents->findChildren<QWidget*>())
{
child->deleteLater();
}
foreach(QWidget* child, ui->sensorContents->findChildren<QWidget*>())
{
child->deleteLater();
}
// And then delete any custom tabs
foreach(QWidget* child, additionalTabs)
{
child->deleteLater();
}
additionalTabs.clear();
toolWidgets.clear();
paramToWidgetMap.clear();
libParamToWidgetMap.clear();
systemTypeToParamMap.clear();
toolToBoxMap.clear();
paramTooltips.clear();
}
// Connect new system
mav = active;
paramMgr = mav->getParamManager();
// Reset current state
resetCalibrationRC();
requestCalibrationRC();
mav->requestParameter(0, "RC_TYPE");
chanCount = 0;
// Connect new system
connect(active, SIGNAL(remoteControlChannelRawChanged(int,float)), this,
SLOT(remoteControlChannelRawChanged(int,float)));
connect(active, SIGNAL(parameterChanged(int,int,QString,QVariant)), this,
SLOT(parameterChanged(int,int,QString,QVariant)));
connect(ui->refreshButton, SIGNAL(clicked()), active, SLOT(requestParameters()));
if (systemTypeToParamMap.contains(mav->getSystemTypeName()))
{
paramToWidgetMap = systemTypeToParamMap[mav->getSystemTypeName()];
}
else
{
//Indication that we have no meta data for this system type.
qDebug() << "No parameters defined for system type:" << mav->getSystemTypeName();
paramToWidgetMap = systemTypeToParamMap[mav->getSystemTypeName()];
}
if (!paramTooltips.isEmpty())
{
mav->getParamManager()->setParamDescriptions(paramTooltips);
}
qDebug() << "CALIBRATION!! System Type Name:" << mav->getSystemTypeName();
//Load configuration after 1ms. This allows it to go into the event loop, and prevents application hangups due to the
//amount of time it actually takes to load the configuration windows.
QTimer::singleShot(1,this,SLOT(loadConfig()));
updateStatus(QString("Reading from system %1").arg(mav->getUASName()));
// Since a system is now connected, enable the VehicleConfig UI.
ui->setButton->setEnabled(true);
ui->refreshButton->setEnabled(true);
ui->readButton->setEnabled(true);
ui->writeButton->setEnabled(true);
ui->loadFileButton->setEnabled(true);
ui->saveFileButton->setEnabled(true);
if (mav->getAutopilotTypeName() == "ARDUPILOTMEGA")
{
ui->readButton->hide();
ui->writeButton->hide();
}
}
void QGCVehicleConfig::resetCalibrationRC()
{
for (unsigned int i = 0; i < chanMax; ++i)
{
rcMin[i] = 1500;
rcMax[i] = 1500;
}
}
/**
* Sends the RC calibration to the vehicle and stores it in EEPROM
*/
void QGCVehicleConfig::writeCalibrationRC()
{
if (!mav) return;
setTrimPositions();
QString minTpl("RC%1_MIN");
QString maxTpl("RC%1_MAX");
QString trimTpl("RC%1_TRIM");
QString revTpl("RC%1_REV");
// Do not write the RC type, as these values depend on this
// active onboard parameter
//TODO consolidate RC param sending in the UAS comms mgr
for (unsigned int i = 0; i < chanCount; ++i)
{
//qDebug() << "SENDING" << minTpl.arg(i+1) << rcMin[i];
mav->setParameter(0, minTpl.arg(i+1), rcMin[i]);
QGC::SLEEP::usleep(50000);
mav->setParameter(0, trimTpl.arg(i+1), rcTrim[i]);
QGC::SLEEP::usleep(50000);
mav->setParameter(0, maxTpl.arg(i+1), rcMax[i]);
QGC::SLEEP::usleep(50000);
mav->setParameter(0, revTpl.arg(i+1), (rcRev[i]) ? -1.0f : 1.0f);
QGC::SLEEP::usleep(50000);
}
// Write mappings
mav->setParameter(0, "RC_MAP_ROLL", (int32_t)(rcMapping[0]+1));
QGC::SLEEP::usleep(50000);
mav->setParameter(0, "RC_MAP_PITCH", (int32_t)(rcMapping[1]+1));
QGC::SLEEP::usleep(50000);
mav->setParameter(0, "RC_MAP_YAW", (int32_t)(rcMapping[2]+1));
QGC::SLEEP::usleep(50000);
mav->setParameter(0, "RC_MAP_THROTTLE", (int32_t)(rcMapping[3]+1));
QGC::SLEEP::usleep(50000);
mav->setParameter(0, "RC_MAP_MODE_SW", (int32_t)(rcMapping[4]+1));
QGC::SLEEP::usleep(50000);
mav->setParameter(0, "RC_MAP_AUX1", (int32_t)(rcMapping[5]+1));
QGC::SLEEP::usleep(50000);
mav->setParameter(0, "RC_MAP_AUX2", (int32_t)(rcMapping[6]+1));
QGC::SLEEP::usleep(50000);
mav->setParameter(0, "RC_MAP_AUX3", (int32_t)(rcMapping[7]+1));
QGC::SLEEP::usleep(50000);
}
void QGCVehicleConfig::requestCalibrationRC()
{
paramMgr->requestRcCalibrationParamsUpdate();
}
void QGCVehicleConfig::writeParameters()
{
updateStatus(tr("Writing all onboard parameters."));
writeCalibrationRC();
mav->writeParametersToStorage();
}
void QGCVehicleConfig::remoteControlChannelRawChanged(int chan, float val)
{
// Check if index and values are sane
if (chan < 0 || static_cast<unsigned int>(chan) >= chanMax || val < 500 || val > 2500)
return;
if (chan + 1 > (int)chanCount) {
chanCount = chan+1;
}
// Update calibration data
if (calibrationEnabled) {
if (val < rcMin[chan])
{
rcMin[chan] = val;
}
if (val > rcMax[chan])
{
rcMax[chan] = val;
}
}
// Raw value
rcValue[chan] = val;
// Normalized value
float normalized;
if (val >= rcTrim[chan]) {
normalized = (val - rcTrim[chan])/(rcMax[chan] - rcTrim[chan]);
}
else {
normalized = -(rcTrim[chan] - val)/(rcTrim[chan] - rcMin[chan]);
}
// Bound
normalized = qBound(-1.0f, normalized, 1.0f);
// Invert
normalized = (rcRev[chan]) ? -1.0f*normalized : normalized;
if (chan == rcMapping[0]) {
// ROLL
rcRoll = normalized;
}
if (chan == rcMapping[1]) {
// PITCH
rcPitch = normalized;
}
if (chan == rcMapping[2]) {
rcYaw = normalized;
}
if (chan == rcMapping[3]) {
// THROTTLE
if (rcRev[chan]) {
rcThrottle = 1.0f + normalized;
} else {
rcThrottle = normalized;
}
rcThrottle = qBound(0.0f, rcThrottle, 1.0f);
}
if (chan == rcMapping[4]) {
// MODE SWITCH
rcMode = normalized;
}
if (chan == rcMapping[5]) {
// AUX1
rcAux1 = normalized;
}
if (chan == rcMapping[6]) {
// AUX2
rcAux2 = normalized;
}
if (chan == rcMapping[7]) {
// AUX3
rcAux3 = normalized;
}
changed = true;
//qDebug() << "RC CHAN:" << chan << "PPM:" << val << "NORMALIZED:" << normalized;
}
void QGCVehicleConfig::updateInvertedCheckboxes(int index)
{
unsigned int mapindex = rcMapping[index];
switch (mapindex)
{
case 0:
ui->invertCheckBox->setChecked(rcRev[index]);
break;
case 1:
ui->invertCheckBox_2->setChecked(rcRev[index]);
break;
case 2:
ui->invertCheckBox_3->setChecked(rcRev[index]);
break;
case 3:
ui->invertCheckBox_4->setChecked(rcRev[index]);
break;
case 4:
ui->invertCheckBox_5->setChecked(rcRev[index]);
break;
case 5:
ui->invertCheckBox_6->setChecked(rcRev[index]);
break;
case 6:
ui->invertCheckBox_7->setChecked(rcRev[index]);
break;
case 7:
ui->invertCheckBox_8->setChecked(rcRev[index]);
break;
}
}
void QGCVehicleConfig::parameterChanged(int uas, int component, QString parameterName, QVariant value)
{
Q_UNUSED(uas);
Q_UNUSED(component);
if (!doneLoadingConfig)
{
//We do not want to attempt to generate any UI elements until loading of the config file is complete.
//We should re-request params later if needed, that is not implemented yet.
return;
}
if (paramToWidgetMap.contains(parameterName))
{
//Main group of parameters of the selected airframe
paramToWidgetMap.value(parameterName)->setParameterValue(uas,component,parameterName,value);
if (toolToBoxMap.contains(paramToWidgetMap.value(parameterName)))
{
toolToBoxMap[paramToWidgetMap.value(parameterName)]->show();
}
else
{
qCritical() << "Widget with no box, possible memory corruption for param:" << parameterName;
}
}
else if (libParamToWidgetMap.contains(parameterName))
{
//All the library parameters
libParamToWidgetMap.value(parameterName)->setParameterValue(uas,component,parameterName,value);
if (toolToBoxMap.contains(libParamToWidgetMap.value(parameterName)))
{
toolToBoxMap[libParamToWidgetMap.value(parameterName)]->show();
}
else
{
qCritical() << "Widget with no box, possible memory corruption for param:" << parameterName;
}
}
else
{
//Param recieved that we have no metadata for. Search to see if it belongs in a
//group with some other params
bool found = false;
for (int i=0;i<toolWidgets.size();i++)
{
if (parameterName.startsWith(toolWidgets[i]->objectName()))
{
//It should be grouped with this one, add it.
toolWidgets[i]->addParam(uas,component,parameterName,value);
libParamToWidgetMap.insert(parameterName,toolWidgets[i]);
found = true;
break;
}
}
if (!found)
{
//New param type, create a QGroupBox for it.
QWidget* parent;
if (ui->advancedLeftLayout->count() > ui->advancedRightLayout->count())
{
parent = ui->advancedRightContents;
}
else
{
parent = ui->advancedLeftContents;
}
// Create the tool, attaching it to the QGroupBox
QString tooltitle = parameterName;
if (parameterName.split("_").size() > 1)
{
tooltitle = parameterName.split("_")[0] + "_";
}
QGCToolWidget *tool = new QGCToolWidget(tooltitle, tooltitle, parent);
//tool->setSettings(set);
libParamToWidgetMap.insert(parameterName,tool);
toolWidgets.append(tool);
tool->addParam(uas, component, parameterName, value);
QGroupBox *box = new QGroupBox(parent);
box->setTitle(tool->objectName());
box->setLayout(new QVBoxLayout(box));
box->layout()->addWidget(tool);
libParamToWidgetMap.insert(parameterName,tool);
toolWidgets.append(tool);
// Make sure we have similar number of widgets on each side.
if (ui->advancedLeftLayout->count() > ui->advancedRightLayout->count())
{
ui->advancedRightLayout->addWidget(box);
}
else
{
ui->advancedLeftLayout->addWidget(box);
}
toolToBoxMap[tool] = box;
}
}
// Channel calibration values
QRegExp minTpl("RC?_MIN");
minTpl.setPatternSyntax(QRegExp::Wildcard);
QRegExp maxTpl("RC?_MAX");
maxTpl.setPatternSyntax(QRegExp::Wildcard);
QRegExp trimTpl("RC?_TRIM");
trimTpl.setPatternSyntax(QRegExp::Wildcard);
QRegExp revTpl("RC?_REV");
revTpl.setPatternSyntax(QRegExp::Wildcard);
// Do not write the RC type, as these values depend on this
// active onboard parameter
if (minTpl.exactMatch(parameterName)) {
bool ok;
unsigned int index = parameterName.mid(2, 1).toInt(&ok) - 1;
//qDebug() << "PARAM:" << parameterName << "index:" << index;
if (ok && index < chanMax)
{
rcMin[index] = value.toInt();
updateMinMax();
}
}
if (maxTpl.exactMatch(parameterName)) {
bool ok;
unsigned int index = parameterName.mid(2, 1).toInt(&ok) - 1;
if (ok && index < chanMax)
{
rcMax[index] = value.toInt();
updateMinMax();
}
}
if (trimTpl.exactMatch(parameterName)) {
bool ok;
unsigned int index = parameterName.mid(2, 1).toInt(&ok) - 1;
if (ok && index < chanMax)
{
rcTrim[index] = value.toInt();
}
}
if (revTpl.exactMatch(parameterName)) {
bool ok;
unsigned int index = parameterName.mid(2, 1).toInt(&ok) - 1;
if (ok && index < chanMax)
{
rcRev[index] = (value.toInt() == -1) ? true : false;
updateInvertedCheckboxes(index);
}
}
// mav->setParameter(0, trimTpl.arg(i), rcTrim[i]);
// mav->setParameter(0, maxTpl.arg(i), rcMax[i]);
// mav->setParameter(0, revTpl.arg(i), (rcRev[i]) ? -1 : 1);
// }
if (rcTypeUpdateRequested > 0 && parameterName == QString("RC_TYPE"))
{
rcTypeUpdateRequested = 0;
updateStatus(tr("Received RC type update, setting parameters based on model."));
rcType = value.toInt();
// Request all other parameters as well
requestCalibrationRC();
}
// Order is: roll, pitch, yaw, throttle, mode sw, aux 1-3
if (parameterName.contains("RC_MAP_ROLL")) {
rcMapping[0] = value.toInt() - 1;
ui->rollSpinBox->setValue(rcMapping[0]+1);
ui->rollSpinBox->setEnabled(true);
}
if (parameterName.contains("RC_MAP_PITCH")) {
rcMapping[1] = value.toInt() - 1;
ui->pitchSpinBox->setValue(rcMapping[1]+1);
ui->pitchSpinBox->setEnabled(true);
}
if (parameterName.contains("RC_MAP_YAW")) {
rcMapping[2] = value.toInt() - 1;
ui->yawSpinBox->setValue(rcMapping[2]+1);
ui->yawSpinBox->setEnabled(true);
}
if (parameterName.contains("RC_MAP_THROTTLE")) {
rcMapping[3] = value.toInt() - 1;
ui->throttleSpinBox->setValue(rcMapping[3]+1);
ui->throttleSpinBox->setEnabled(true);
}
if (parameterName.contains("RC_MAP_MODE_SW")) {
rcMapping[4] = value.toInt() - 1;
ui->modeSpinBox->setValue(rcMapping[4]+1);
ui->modeSpinBox->setEnabled(true);
}
if (parameterName.contains("RC_MAP_AUX1")) {
rcMapping[5] = value.toInt() - 1;
ui->aux1SpinBox->setValue(rcMapping[5]+1);
ui->aux1SpinBox->setEnabled(true);
}
if (parameterName.contains("RC_MAP_AUX2")) {
rcMapping[6] = value.toInt() - 1;
ui->aux2SpinBox->setValue(rcMapping[6]+1);
ui->aux2SpinBox->setEnabled(true);
}
if (parameterName.contains("RC_MAP_AUX3")) {
rcMapping[7] = value.toInt() - 1;
ui->aux3SpinBox->setValue(rcMapping[7]+1);
ui->aux3SpinBox->setEnabled(true);
}
// Scaling
if (parameterName.contains("RC_SCALE_ROLL")) {
rcScaling[0] = value.toFloat();
}
if (parameterName.contains("RC_SCALE_PITCH")) {
rcScaling[1] = value.toFloat();
}
if (parameterName.contains("RC_SCALE_YAW")) {
rcScaling[2] = value.toFloat();
}
if (parameterName.contains("RC_SCALE_THROTTLE")) {
rcScaling[3] = value.toFloat();
}
if (parameterName.contains("RC_SCALE_MODE_SW")) {
rcScaling[4] = value.toFloat();
}
if (parameterName.contains("RC_SCALE_AUX1")) {
rcScaling[5] = value.toFloat();
}
if (parameterName.contains("RC_SCALE_AUX2")) {
rcScaling[6] = value.toFloat();
}
if (parameterName.contains("RC_SCALE_AUX3")) {
rcScaling[7] = value.toFloat();
}
}
void QGCVehicleConfig::updateStatus(const QString& str)
{
ui->statusLabel->setText(str);
ui->statusLabel->setStyleSheet("");
}
void QGCVehicleConfig::updateError(const QString& str)
{
ui->statusLabel->setText(str);
ui->statusLabel->setStyleSheet(QString("QLabel { margin: 0px 2px; font: 14px; color: %1; background-color: %2; }").arg(QGC::colorDarkWhite.name()).arg(QGC::colorMagenta.name()));
}
void QGCVehicleConfig::updateMinMax()
{
// Order is: roll, pitch, yaw, throttle, mode sw, aux 1-3
/*ui->rollWidget->setMin(rcMin[0]);
ui->rollWidget->setMax(rcMax[0]);
ui->pitchWidget->setMin(rcMin[1]);
ui->pitchWidget->setMax(rcMax[1]);
ui->yawWidget->setMin(rcMin[2]);
ui->yawWidget->setMax(rcMax[2]);
ui->throttleWidget->setMin(rcMin[3]);
ui->throttleWidget->setMax(rcMax[3]);
ui->radio5Widget->setMin(rcMin[4]);
ui->radio5Widget->setMax(rcMax[4]);
ui->radio6Widget->setMin(rcMin[5]);
ui->radio6Widget->setMax(rcMax[5]);
ui->radio7Widget->setMin(rcMin[6]);
ui->radio7Widget->setMax(rcMax[6]);
ui->radio8Widget->setMin(rcMin[7]);
ui->radio8Widget->setMax(rcMax[7]);*/
}
void QGCVehicleConfig::setRCType(int type)
{
if (!mav) return;
// XXX TODO Add handling of RC_TYPE vs non-RC_TYPE here
mav->setParameter(0, "RC_TYPE", type);
rcTypeUpdateRequested = QGC::groundTimeMilliseconds();
QTimer::singleShot(rcTypeTimeout+100, this, SLOT(checktimeOuts()));
}
void QGCVehicleConfig::checktimeOuts()
{
if (rcTypeUpdateRequested > 0)
{
if (QGC::groundTimeMilliseconds() - rcTypeUpdateRequested > rcTypeTimeout)
{
updateError(tr("Setting remote control timed out - is the system connected?"));
}
}
}
void QGCVehicleConfig::updateView()
{
if (changed)
{
if (rc_mode == RC_MODE_1)
{
//ui->rollSlider->setValue(rcRoll * 50 + 50);
//ui->pitchSlider->setValue(rcThrottle * 100);
//ui->yawSlider->setValue(rcYaw * 50 + 50);
//ui->throttleSlider->setValue(rcPitch * 50 + 50);
ui->rollWidget->setValue(rcValue[0]);
ui->throttleWidget->setValue(rcValue[1]);
ui->yawWidget->setValue(rcValue[2]);
ui->pitchWidget->setValue(rcValue[3]);
ui->rollWidget->setMin(rcMin[0]);
ui->rollWidget->setMax(rcMax[0]);
ui->throttleWidget->setMin(rcMin[1]);
ui->throttleWidget->setMax(rcMax[1]);
ui->yawWidget->setMin(rcMin[2]);
ui->yawWidget->setMax(rcMax[2]);
ui->pitchWidget->setMin(rcMin[3]);
ui->pitchWidget->setMax(rcMax[3]);
}
else if (rc_mode == RC_MODE_2)
{
//ui->rollSlider->setValue(rcRoll * 50 + 50);
//ui->pitchSlider->setValue(rcPitch * 50 + 50);
//ui->yawSlider->setValue(rcYaw * 50 + 50);
//ui->throttleSlider->setValue(rcThrottle * 100);
ui->rollWidget->setValue(rcValue[0]);
ui->pitchWidget->setValue(rcValue[1]);
ui->yawWidget->setValue(rcValue[2]);
ui->throttleWidget->setValue(rcValue[3]);
ui->rollWidget->setMin(rcMin[0]);
ui->rollWidget->setMax(rcMax[0]);
ui->pitchWidget->setMin(rcMin[1]);
ui->pitchWidget->setMax(rcMax[1]);
ui->yawWidget->setMin(rcMin[2]);
ui->yawWidget->setMax(rcMax[2]);
ui->throttleWidget->setMin(rcMin[3]);
ui->throttleWidget->setMax(rcMax[3]);
}
else if (rc_mode == RC_MODE_3)
{
//ui->rollSlider->setValue(rcYaw * 50 + 50);
//ui->pitchSlider->setValue(rcThrottle * 100);
//ui->yawSlider->setValue(rcRoll * 50 + 50);
//ui->throttleSlider->setValue(rcPitch * 50 + 50);
ui->yawWidget->setValue(rcValue[0]);
ui->throttleWidget->setValue(rcValue[1]);
ui->rollWidget->setValue(rcValue[2]);
ui->pitchWidget->setValue(rcValue[3]);
ui->yawWidget->setMin(rcMin[0]);
ui->yawWidget->setMax(rcMax[0]);
ui->throttleWidget->setMin(rcMin[1]);
ui->throttleWidget->setMax(rcMax[1]);
ui->rollWidget->setMin(rcMin[2]);
ui->rollWidget->setMax(rcMax[2]);
ui->pitchWidget->setMin(rcMin[3]);
ui->pitchWidget->setMax(rcMax[3]);
}
else if (rc_mode == RC_MODE_4)
{
//ui->rollSlider->setValue(rcYaw * 50 + 50);
//ui->pitchSlider->setValue(rcPitch * 50 + 50);
//ui->yawSlider->setValue(rcRoll * 50 + 50);
//ui->throttleSlider->setValue(rcThrottle * 100);
ui->yawWidget->setValue(rcValue[0]);
ui->pitchWidget->setValue(rcValue[1]);
ui->rollWidget->setValue(rcValue[2]);
ui->throttleWidget->setValue(rcValue[3]);
ui->yawWidget->setMin(rcMin[0]);
ui->yawWidget->setMax(rcMax[0]);
ui->pitchWidget->setMin(rcMin[1]);
ui->pitchWidget->setMax(rcMax[1]);
ui->rollWidget->setMin(rcMin[2]);
ui->rollWidget->setMax(rcMax[2]);
ui->throttleWidget->setMin(rcMin[3]);
ui->throttleWidget->setMax(rcMax[3]);
}
else if (rc_mode == RC_MODE_NONE)
{
ui->rollWidget->setValue(rcValue[0]);
ui->pitchWidget->setValue(rcValue[1]);
ui->throttleWidget->setValue(rcValue[2]);
ui->yawWidget->setValue(rcValue[3]);
ui->rollWidget->setMin(800);
ui->rollWidget->setMax(2200);
ui->pitchWidget->setMin(800);
ui->pitchWidget->setMax(2200);
ui->throttleWidget->setMin(800);
ui->throttleWidget->setMax(2200);
ui->yawWidget->setMin(800);
ui->yawWidget->setMax(2200);
}
ui->chanLabel->setText(QString("%1/%2").arg(rcValue[rcMapping[0]]).arg(rcRoll, 5, 'f', 2, QChar(' ')));
ui->chanLabel_2->setText(QString("%1/%2").arg(rcValue[rcMapping[1]]).arg(rcPitch, 5, 'f', 2, QChar(' ')));
ui->chanLabel_3->setText(QString("%1/%2").arg(rcValue[rcMapping[2]]).arg(rcYaw, 5, 'f', 2, QChar(' ')));
ui->chanLabel_4->setText(QString("%1/%2").arg(rcValue[rcMapping[3]]).arg(rcThrottle, 5, 'f', 2, QChar(' ')));
//ui->modeSwitchSlider->setValue(rcMode * 50 + 50);
ui->chanLabel_5->setText(QString("%1/%2").arg(rcValue[rcMapping[4]]).arg(rcMode, 5, 'f', 2, QChar(' ')));
if (rcValue[rcMapping[4] != UINT16_MAX]) {
ui->radio5Widget->setValue(rcValue[4]);
ui->chanLabel_5->setText(QString("%1/%2").arg(rcValue[rcMapping[5]]).arg(rcAux1, 5, 'f', 2, QChar(' ')));
} else {
ui->chanLabel_5->setText(tr("---"));
}
if (rcValue[rcMapping[5]] != UINT16_MAX) {
//ui->aux1Slider->setValue(rcAux1 * 50 + 50);
ui->radio6Widget->setValue(rcValue[5]);
ui->chanLabel_6->setText(QString("%1/%2").arg(rcValue[rcMapping[5]]).arg(rcAux1, 5, 'f', 2, QChar(' ')));
} else {
ui->chanLabel_6->setText(tr("---"));
}
if (rcValue[rcMapping[6]] != UINT16_MAX) {
//ui->aux2Slider->setValue(rcAux2 * 50 + 50);
ui->radio7Widget->setValue(rcValue[6]);
ui->chanLabel_7->setText(QString("%1/%2").arg(rcValue[rcMapping[6]]).arg(rcAux2, 5, 'f', 2, QChar(' ')));
} else {
ui->chanLabel_7->setText(tr("---"));
}
if (rcValue[rcMapping[7]] != UINT16_MAX) {
//ui->aux3Slider->setValue(rcAux3 * 50 + 50);
ui->radio8Widget->setValue(rcValue[7]);
ui->chanLabel_8->setText(QString("%1/%2").arg(rcValue[rcMapping[7]]).arg(rcAux3, 5, 'f', 2, QChar(' ')));
} else {
ui->chanLabel_8->setText(tr("---"));
}
changed = false;
}
}
#ifndef QGCVEHICLECONFIG_H
#define QGCVEHICLECONFIG_H
#include <QWidget>
#include <QTimer>
#include <QList>
#include <QGroupBox>
#include <QPushButton>
#include "QGCToolWidget.h"
#include "UASInterface.h"
namespace Ui {
class QGCVehicleConfig;
}
class QGCVehicleConfig : public QWidget
{
Q_OBJECT
public:
explicit QGCVehicleConfig(QWidget *parent = 0);
~QGCVehicleConfig();
enum RC_MODE {
RC_MODE_1 = 1,
RC_MODE_2 = 2,
RC_MODE_3 = 3,
RC_MODE_4 = 4,
RC_MODE_NONE = 5
};
public slots:
void rcMenuButtonClicked();
void sensorMenuButtonClicked();
void generalMenuButtonClicked();
void advancedMenuButtonClicked();
/** Set the MAV currently being calibrated */
void setActiveUAS(UASInterface* active);
/** Fallback function, automatically called by loadConfig() upon failure to find and xml file*/
void loadQgcConfig(bool primary);
/** Load configuration from xml file */
void loadConfig();
/** Start the RC calibration routine */
void startCalibrationRC();
/** Stop the RC calibration routine */
void stopCalibrationRC();
/** Start/stop the RC calibration routine */
void toggleCalibrationRC(bool enabled);
/** Set trim positions */
void setTrimPositions();
/** Detect which channels need to be inverted */
void detectChannelInversion();
/** Change the mode setting of the control inputs */
void setRCModeIndex(int newRcMode);
/** Render the data updated */
void updateView();
void updateMinMax();
/** Set the RC channel */
void setRollChan(int channel) {
rcMapping[0] = channel - 1;
updateInvertedCheckboxes(channel - 1);
}
/** Set the RC channel */
void setPitchChan(int channel) {
rcMapping[1] = channel - 1;
updateInvertedCheckboxes(channel - 1);
}
/** Set the RC channel */
void setYawChan(int channel) {
rcMapping[2] = channel - 1;
updateInvertedCheckboxes(channel - 1);
}
/** Set the RC channel */
void setThrottleChan(int channel) {
rcMapping[3] = channel - 1;
updateInvertedCheckboxes(channel - 1);
}
/** Set the RC channel */
void setModeChan(int channel) {
rcMapping[4] = channel - 1;
updateInvertedCheckboxes(channel - 1);
}
/** Set the RC channel */
void setAux1Chan(int channel) {
rcMapping[5] = channel - 1;
updateInvertedCheckboxes(channel - 1);
}
/** Set the RC channel */
void setAux2Chan(int channel) {
rcMapping[6] = channel - 1;
updateInvertedCheckboxes(channel - 1);
}
/** Set the RC channel */
void setAux3Chan(int channel) {
rcMapping[7] = channel - 1;
updateInvertedCheckboxes(channel - 1);
}
/** Set channel inversion status */
void setRollInverted(bool inverted) {
rcRev[rcMapping[0]] = inverted;
}
/** Set channel inversion status */
void setPitchInverted(bool inverted) {
rcRev[rcMapping[1]] = inverted;
}
/** Set channel inversion status */
void setYawInverted(bool inverted) {
rcRev[rcMapping[2]] = inverted;
}
/** Set channel inversion status */
void setThrottleInverted(bool inverted) {
rcRev[rcMapping[3]] = inverted;
}
/** Set channel inversion status */
void setModeInverted(bool inverted) {
rcRev[rcMapping[4]] = inverted;
}
/** Set channel inversion status */
void setAux1Inverted(bool inverted) {
rcRev[rcMapping[5]] = inverted;
}
/** Set channel inversion status */
void setAux2Inverted(bool inverted) {
rcRev[rcMapping[6]] = inverted;
}
/** Set channel inversion status */
void setAux3Inverted(bool inverted) {
rcRev[rcMapping[7]] = inverted;
}
protected slots:
void menuButtonClicked();
/** Reset the RC calibration */
void resetCalibrationRC();
/** Write the RC calibration */
void writeCalibrationRC();
/** Request the RC calibration */
void requestCalibrationRC();
/** Store all parameters in onboard EEPROM */
void writeParameters();
/** Receive remote control updates from MAV */
void remoteControlChannelRawChanged(int chan, float val);
/** Parameter changed onboard */
void parameterChanged(int uas, int component, QString parameterName, QVariant value);
void updateStatus(const QString& str);
void updateError(const QString& str);
void setRCType(int type);
/** Check timeouts */
void checktimeOuts();
/** Update checkbox status */
void updateInvertedCheckboxes(int index);
protected:
bool doneLoadingConfig;
UASInterface* mav; ///< The current MAV
QGCUASParamManagerInterface* paramMgr; ///< params mgr for the mav
static const unsigned int chanMax = 8; ///< Maximum number of channels
unsigned int chanCount; ///< Actual channels
int rcType; ///< Type of the remote control
quint64 rcTypeUpdateRequested; ///< Zero if not requested, non-zero if requested
static const unsigned int rcTypeTimeout = 5000; ///< 5 seconds timeout, in milliseconds
float rcMin[chanMax]; ///< Minimum values
float rcMax[chanMax]; ///< Maximum values
float rcTrim[chanMax]; ///< Zero-position (center for roll/pitch/yaw, 0 throttle for throttle)
int rcMapping[chanMax]; ///< PWM to function mappings
float rcScaling[chanMax]; ///< Scaling of channel input to control commands
bool rcRev[chanMax]; ///< Channel reverse
int rcValue[chanMax]; ///< Last values
float rcRoll; ///< PPM input channel used as roll control input
float rcPitch; ///< PPM input channel used as pitch control input
float rcYaw; ///< PPM input channel used as yaw control input
float rcThrottle; ///< PPM input channel used as throttle control input
float rcMode; ///< PPM input channel used as mode switch control input
float rcAux1; ///< PPM input channel used as aux 1 input
float rcAux2; ///< PPM input channel used as aux 1 input
float rcAux3; ///< PPM input channel used as aux 1 input
bool rcCalChanged; ///< Set if the calibration changes (and needs to be written)
bool changed; ///< Set if any of the input data changed
QTimer updateTimer; ///< Controls update intervals
enum RC_MODE rc_mode; ///< Mode of the remote control, according to usual convention
QList<QGCToolWidget*> toolWidgets; ///< Configurable widgets
bool calibrationEnabled; ///< calibration mode on / off
QMap<QString,QGCToolWidget*> paramToWidgetMap; ///< Holds the current active MAV's parameter widgets.
QList<QWidget*> additionalTabs; ///< Stores additional tabs loaded for this vehicle/autopilot configuration. Used for cleaning up.
QMap<QString,QGCToolWidget*> libParamToWidgetMap; ///< Holds the library parameter widgets
QMap<QString,QMap<QString,QGCToolWidget*> > systemTypeToParamMap; ///< Holds all loaded MAV specific parameter widgets, for every MAV.
QMap<QGCToolWidget*,QGroupBox*> toolToBoxMap; ///< Easy method of figuring out which QGroupBox is tied to which ToolWidget.
QMap<QString,QString> paramTooltips; ///< Tooltips for the ? button next to a parameter.
private:
Ui::QGCVehicleConfig *ui;
QMap<QPushButton*,QWidget*> buttonToWidgetMap;
signals:
void visibilityChanged(bool visible);
};
#endif // QGCVEHICLECONFIG_H
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>QGCVehicleConfig</class>
<widget class="QWidget" name="QGCVehicleConfig">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>1256</width>
<height>711</height>
</rect>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Expanding" vsizetype="Expanding">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_11">
<item>
<widget class="QScrollArea" name="scrollArea_6">
<property name="minimumSize">
<size>
<width>135</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>135</width>
<height>16777215</height>
</size>
</property>
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="scrollAreaWidgetContents_3">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>133</width>
<height>691</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_12">
<item>
<layout class="QVBoxLayout" name="navBarLayout">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<widget class="QPushButton" name="rcMenuButton">
<property name="minimumSize">
<size>
<width>100</width>
<height>75</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>RC
Calibration</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="sensorMenuButton">
<property name="minimumSize">
<size>
<width>100</width>
<height>75</height>
</size>
</property>
<property name="text">
<string>Sensor
Calibration</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="generalMenuButton">
<property name="minimumSize">
<size>
<width>100</width>
<height>75</height>
</size>
</property>
<property name="text">
<string>General
Config</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="advancedMenuButton">
<property name="minimumSize">
<size>
<width>100</width>
<height>75</height>
</size>
</property>
<property name="text">
<string>Advanced
Config</string>
</property>
</widget>
</item>
<item>
<spacer name="verticalSpacer_2">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
</layout>
</widget>
</widget>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QStackedWidget" name="stackedWidget">
<property name="currentIndex">
<number>3</number>
</property>
<widget class="QWidget" name="rcTab">
<layout class="QVBoxLayout" name="verticalLayout_17">
<item>
<widget class="QLabel" name="label_4">
<property name="text">
<string>RC Calibration</string>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_17">
<item>
<widget class="QCheckBox" name="advancedCheckBox">
<property name="text">
<string>Advanced</string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_18">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_16">
<item>
<widget class="QGroupBox" name="advancedGroupBox">
<property name="title">
<string>Advanced</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_16">
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QComboBox" name="rcTypeComboBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="editable">
<bool>false</bool>
</property>
<item>
<property name="text">
<string>Select transmitter model</string>
</property>
</item>
</widget>
</item>
<item>
<widget class="QComboBox" name="rcModeComboBox">
<property name="enabled">
<bool>true</bool>
</property>
<item>
<property name="text">
<string>Mode 1</string>
</property>
</item>
<item>
<property name="text">
<string>Mode 2</string>
</property>
</item>
<item>
<property name="text">
<string>Mode 3</string>
</property>
</item>
<item>
<property name="text">
<string>Mode 4</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QGridLayout" name="gridLayout_2">
<item row="2" column="1">
<widget class="QLabel" name="chanLabel_3">
<property name="text">
<string>0000</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="3" column="7">
<widget class="QCheckBox" name="invertCheckBox_8">
<property name="text">
<string>Invert</string>
</property>
</widget>
</item>
<item row="1" column="4">
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="2" column="0">
<widget class="QLabel" name="chanName_3">
<property name="text">
<string>Yaw / Rudder</string>
</property>
</widget>
</item>
<item row="0" column="6">
<widget class="QLabel" name="chanLabel_5">
<property name="text">
<string>0000</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="0" column="4">
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="7">
<widget class="QCheckBox" name="invertCheckBox_5">
<property name="text">
<string>Invert</string>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QCheckBox" name="invertCheckBox">
<property name="text">
<string>Invert</string>
</property>
</widget>
</item>
<item row="2" column="8">
<widget class="QSpinBox" name="aux2SpinBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>8</number>
</property>
</widget>
</item>
<item row="2" column="6">
<widget class="QLabel" name="chanLabel_7">
<property name="text">
<string>0000</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLabel" name="chanLabel_2">
<property name="text">
<string>0000</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="chanName_2">
<property name="text">
<string>Pitch / Elevator</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLabel" name="chanLabel">
<property name="text">
<string>0000</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="2" column="5">
<widget class="QLabel" name="chanName_7">
<property name="text">
<string>Aux 2</string>
</property>
</widget>
</item>
<item row="2" column="4">
<spacer name="horizontalSpacer_3">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="3" column="6">
<widget class="QLabel" name="chanLabel_8">
<property name="text">
<string>0000</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="2" column="2">
<widget class="QCheckBox" name="invertCheckBox_3">
<property name="text">
<string>Invert</string>
</property>
</widget>
</item>
<item row="3" column="8">
<widget class="QSpinBox" name="aux3SpinBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>8</number>
</property>
</widget>
</item>
<item row="3" column="4">
<spacer name="horizontalSpacer_4">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="3" column="0">
<widget class="QLabel" name="chanName_4">
<property name="text">
<string>Throttle</string>
</property>
</widget>
</item>
<item row="2" column="7">
<widget class="QCheckBox" name="invertCheckBox_7">
<property name="text">
<string>Invert</string>
</property>
</widget>
</item>
<item row="2" column="3">
<widget class="QSpinBox" name="yawSpinBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>8</number>
</property>
</widget>
</item>
<item row="3" column="3">
<widget class="QSpinBox" name="throttleSpinBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>8</number>
</property>
</widget>
</item>
<item row="0" column="5">
<widget class="QLabel" name="chanName_5">
<property name="text">
<string>Mode Switch</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLabel" name="chanLabel_4">
<property name="text">
<string>0000</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="QSpinBox" name="pitchSpinBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>8</number>
</property>
</widget>
</item>
<item row="1" column="8">
<widget class="QSpinBox" name="aux1SpinBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>8</number>
</property>
</widget>
</item>
<item row="1" column="5">
<widget class="QLabel" name="chanName_6">
<property name="text">
<string>Aux 1</string>
</property>
</widget>
</item>
<item row="0" column="3">
<widget class="QSpinBox" name="rollSpinBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>8</number>
</property>
</widget>
</item>
<item row="1" column="6">
<widget class="QLabel" name="chanLabel_6">
<property name="text">
<string>0000</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="3" column="5">
<widget class="QLabel" name="chanName_8">
<property name="text">
<string>Aux 3</string>
</property>
</widget>
</item>
<item row="1" column="7">
<widget class="QCheckBox" name="invertCheckBox_6">
<property name="text">
<string>Invert</string>
</property>
</widget>
</item>
<item row="0" column="8">
<widget class="QSpinBox" name="modeSpinBox">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>8</number>
</property>
</widget>
</item>
<item row="3" column="2">
<widget class="QCheckBox" name="invertCheckBox_4">
<property name="text">
<string>Invert</string>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QCheckBox" name="invertCheckBox_2">
<property name="text">
<string>Invert</string>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="chanName">
<property name="text">
<string>Roll / Ailerons</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_17">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_14" stretch="0,1">
<item>
<layout class="QVBoxLayout" name="verticalLayout_15">
<property name="sizeConstraint">
<enum>QLayout::SetMinAndMaxSize</enum>
</property>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_10">
<item>
<widget class="QGCRadioChannelDisplay" name="rollWidget" native="true">
<property name="minimumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_6">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_13" stretch="2,1,2,2,2,0">
<item>
<spacer name="horizontalSpacer_12">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QGCRadioChannelDisplay" name="pitchWidget" native="true">
<property name="minimumSize">
<size>
<width>50</width>
<height>200</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>50</width>
<height>200</height>
</size>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_11">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>250</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QGCRadioChannelDisplay" name="throttleWidget" native="true">
<property name="minimumSize">
<size>
<width>50</width>
<height>200</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>50</width>
<height>200</height>
</size>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_10">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_6">
<item>
<widget class="QGCRadioChannelDisplay" name="radio5Widget" native="true">
<property name="minimumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QGCRadioChannelDisplay" name="radio6Widget" native="true">
<property name="minimumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QGCRadioChannelDisplay" name="radio7Widget" native="true">
<property name="minimumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
</widget>
</item>
<item>
<widget class="QGCRadioChannelDisplay" name="radio8Widget" native="true">
<property name="minimumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_12">
<item>
<widget class="QGCRadioChannelDisplay" name="yawWidget" native="true">
<property name="minimumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>250</width>
<height>40</height>
</size>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_7">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
</layout>
</item>
<item>
<spacer name="horizontalSpacer_15">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Preferred</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_15">
<item>
<widget class="QPushButton" name="rcCalibrationButton">
<property name="text">
<string>Start Calibration</string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_16">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class="QWidget" name="sensorTab">
<layout class="QVBoxLayout" name="verticalLayout_14">
<item>
<widget class="QLabel" name="label_3">
<property name="text">
<string>Sensor Calibration</string>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_8">
<item>
<widget class="QTextBrowser" name="sensorTips">
<property name="html">
<string>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot; &quot;http://www.w3.org/TR/REC-html40/strict.dtd&quot;&gt;
&lt;html&gt;&lt;head&gt;&lt;meta name=&quot;qrichtext&quot; content=&quot;1&quot; /&gt;&lt;style type=&quot;text/css&quot;&gt;
p, li { white-space: pre-wrap; }
&lt;/style&gt;&lt;/head&gt;&lt;body style=&quot; font-family:'Ubuntu'; font-size:11pt; font-weight:400; font-style:normal;&quot;&gt;
&lt;p style=&quot;-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'MS Shell Dlg 2'; font-size:8pt;&quot;&gt;&lt;br /&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
</widget>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout_9" stretch="0">
<item>
<widget class="QScrollArea" name="scrollArea_3">
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="sensorContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>530</width>
<height>574</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_10">
<item>
<layout class="QVBoxLayout" name="sensorLayout"/>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</item>
</layout>
</item>
</layout>
</widget>
<widget class="QWidget" name="generalTab">
<layout class="QVBoxLayout" name="verticalLayout_11">
<item>
<widget class="QLabel" name="label_2">
<property name="text">
<string>General Config</string>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_7">
<item>
<spacer name="horizontalSpacer_8">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QComboBox" name="multiRotorComboBox"/>
</item>
<item>
<widget class="QPushButton" name="loadMultiRotorDefaultsButton">
<property name="text">
<string>Load Platform Defaults</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_6">
<item>
<widget class="QGroupBox" name="multiRotorControlAttitudeGroupBox">
<property name="title">
<string>Configuration</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_3">
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QScrollArea" name="scrollArea">
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="generalLeftContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>525</width>
<height>523</height>
</rect>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_4">
<property name="margin">
<number>0</number>
</property>
<item>
<layout class="QVBoxLayout" name="generalLeftLayout"/>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="multiRotorControlAttitudeGroupBox_2">
<property name="title">
<string>Configuration</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_5">
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QScrollArea" name="scrollArea_2">
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="generalRightContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>524</width>
<height>523</height>
</rect>
</property>
<layout class="QHBoxLayout" name="horizontalLayout_5">
<property name="margin">
<number>0</number>
</property>
<item>
<layout class="QVBoxLayout" name="generalRightLayout"/>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<widget class="QWidget" name="advancedTab">
<layout class="QVBoxLayout" name="verticalLayout_13">
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>Advanced Config</string>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<spacer name="horizontalSpacer_9">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QComboBox" name="fixedWingComboBox"/>
</item>
<item>
<widget class="QPushButton" name="loadFixedWingDefaultsButton">
<property name="text">
<string>Load Platform Defaults</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_3">
<item>
<widget class="QGroupBox" name="fixedWingControlAttitudeGroupBox">
<property name="title">
<string>Configuration</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QScrollArea" name="scrollArea_4">
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="advancedLeftContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>525</width>
<height>523</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_7">
<property name="margin">
<number>0</number>
</property>
<item>
<layout class="QVBoxLayout" name="advancedLeftLayout"/>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="fixedWingControlAttitudeGroupBox_2">
<property name="title">
<string>Configuration</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_4">
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QScrollArea" name="scrollArea_5">
<property name="widgetResizable">
<bool>true</bool>
</property>
<widget class="QWidget" name="advancedRightContents">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>524</width>
<height>523</height>
</rect>
</property>
<layout class="QVBoxLayout" name="verticalLayout_8">
<property name="margin">
<number>0</number>
</property>
<item>
<layout class="QVBoxLayout" name="advancedRightLayout"/>
</item>
</layout>
</widget>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_9">
<item>
<widget class="QLabel" name="statusLabel">
<property name="text">
<string>No pending changes</string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_5">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<layout class="QGridLayout" name="gridLayout">
<item row="1" column="1">
<widget class="QPushButton" name="writeButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Copy current parameters in non-permanent memory of the aircraft to permanent memory. Transmit your parameters first to write these.</string>
</property>
<property name="statusTip">
<string/>
</property>
<property name="text">
<string>Write (ROM)</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QPushButton" name="setButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Set current parameters in non-permanent onboard memory.</string>
</property>
<property name="statusTip">
<string/>
</property>
<property name="text">
<string>Set (UAS)</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QPushButton" name="readButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Copy parameters from permanent memory to non-permanent current memory of aircraft. DOES NOT update the parameters in this view, click refresh after copying them to get them.</string>
</property>
<property name="statusTip">
<string/>
</property>
<property name="whatsThis">
<string/>
</property>
<property name="text">
<string>Read (ROM)</string>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QPushButton" name="refreshButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Load parameters currently in non-permanent memory of aircraft.</string>
</property>
<property name="statusTip">
<string/>
</property>
<property name="text">
<string>Get (UAS)</string>
</property>
</widget>
</item>
<item row="0" column="2">
<widget class="QPushButton" name="loadFileButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Load parameters from a file on this computer in the view. To write them to the aircraft, use transmit after loading them.</string>
</property>
<property name="statusTip">
<string/>
</property>
<property name="text">
<string>Load (File)</string>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QPushButton" name="saveFileButton">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>Save parameters in this view to a file on this computer.</string>
</property>
<property name="statusTip">
<string/>
</property>
<property name="text">
<string>Save (File)</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</item>
</layout>
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>QGCRadioChannelDisplay</class>
<extends>QWidget</extends>
<header>ui/designer/QGCRadioChannelDisplay.h</header>
<container>1</container>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment