<?xml version="1.0" encoding="utf-8"?>
<!-- Generated from git tag Plane-4.7.0 (1511f27194f1dcc3728270883047bdf022b3fd53) -->
<!-- Dynamically generated list of documented parameters (generated by param_parse.py) -->
<paramfile>
  <vehicles>
    <parameters name="ArduPlane">
      <param humanName="Eeprom format version number" name="ArduPlane:FORMAT_VERSION" documentation="This value is incremented when changes are made to the eeprom format" user="Advanced">
</param>
      <param humanName="Autotune level" name="ArduPlane:AUTOTUNE_LEVEL" documentation="Level of aggressiveness of pitch and roll PID gains. Lower values result in a 'softer' tune. Level 6 recommended for most planes. A value of 0 means to keep the current values of RMAX and TCONST for the controllers, tuning only the PID values" user="Standard">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Autotune options bitmask" name="ArduPlane:AUTOTUNE_OPTIONS" documentation="Fixed Wing Autotune specific options. Useful on QuadPlanes with higher INS_GYRO_FILTER settings to prevent these filter values from being set too aggressively during Fixed Wing Autotune." user="Advanced">
        <bitmask>
          <bit code="0">Disable FLTD update by Autotune</bit>
          <bit code="1">Disable FLTT update by Autotune</bit>
        </bitmask>
        <field name="Bitmask">0: Disable FLTD update by Autotune, 1: Disable FLTT update by Autotune</field>
      </param>
      <param humanName="GCS PID tuning mask" name="ArduPlane:GCS_PID_MASK" documentation="bitmask of PIDs to send MAVLink PID_TUNING messages for" user="Advanced">
        <bitmask>
          <bit code="0">Roll</bit>
          <bit code="1">Pitch</bit>
          <bit code="2">Yaw</bit>
          <bit code="3">Steering</bit>
          <bit code="4">Landing</bit>
          <bit code="5">AccZ</bit>
        </bitmask>
        <field name="Bitmask">0:Roll,1:Pitch,2:Yaw,3:Steering,4:Landing,5:AccZ</field>
      </param>
      <param humanName="Rudder Mix" name="ArduPlane:KFF_RDDRMIX" documentation="Amount of rudder to add during aileron movement. Increase if nose initially yaws away from roll. Reduces adverse yaw." user="Standard">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Throttle to Pitch Mix" name="ArduPlane:KFF_THR2PTCH" documentation="Pitch up to add in proportion to throttle. 100% throttle will add this number of degrees to the pitch target." user="Advanced">
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Low throttle pitch down trim" name="ArduPlane:STAB_PITCH_DOWN" documentation="Degrees of down pitch added when throttle is below TRIM_THROTTLE in FBWA and AUTOTUNE modes. Scales linearly so full value is added when THR_MIN is reached. Helps to keep airspeed higher in glides or landing approaches and prevents accidental stalls. 2 degrees recommended for most planes." user="Advanced">
        <field name="Range">0 15</field>
        <field name="Increment">0.1</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Altitude slope minimum" name="ArduPlane:ALT_SLOPE_MIN" documentation="This controls the minimum altitude change for a waypoint before an altitude slope will be used instead of an immediate altitude change. The default value is 15 meters, which helps to smooth out waypoint missions where small altitude changes happen near waypoints. If you don't want altitude slopes to be used in missions then you can set this to zero, which will disable altitude slope calculations. Otherwise you can set it to a minimum number of meters of altitude error to the destination waypoint before an altitude slope will be used to change altitude." user="Advanced">
        <field name="Range">0 1000</field>
        <field name="Increment">1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Altitude slope maximum height" name="ArduPlane:ALT_SLOPE_MAXHGT" documentation="This controls the height above the altitude slope the plane may be before rebuilding it. This is useful for smoothing out an auto-takeoff." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Stick Mixing" name="ArduPlane:STICK_MIXING" documentation="When enabled, this adds user stick input to the control surfaces in auto modes, allowing the user to have some degree of flight control without changing modes. There are 3 types of stick mixing available. If you set STICK_MIXING to 1 or 4 then it will use &quot;fly by wire&quot; mixing. 4 will provide roll and yaw control, while 1 also provides FBW-A style pitch control. If you set STICK_MIXING to 3 then it will apply to the yaw while in quadplane modes only, such as while doing an automatic VTOL takeoff or landing. WARNING: FBW-A pitch control does not offer flight envelope protections. Prolonged pitch inputs in mode 1 can result in a stall or overspeed condition, and should be avoided." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">FBW style</value>
          <value code="3">VTOL Yaw only</value>
          <value code="4">FBW style (no pitch)</value>
        </values>
      </param>
      <param humanName="Takeoff throttle min speed" name="ArduPlane:TKOFF_THR_MINSPD" documentation="Minimum GPS ground speed in m/s used by the speed check that un-suppresses throttle in auto-takeoff. This can be be used for catapult launches where you want the motor to engage only after the plane leaves the catapult, but it is preferable to use the TKOFF_THR_MINACC and TKOFF_THR_DELAY parameters for catapult launches due to the errors associated with GPS measurements. For hand launches with a pusher prop it is strongly advised that this parameter be set to a value no less than 4 m/s to provide additional protection against premature motor start. Note that the GPS velocity will lag the real velocity by about 0.5 seconds. The ground speed check is delayed by the TKOFF_THR_DELAY parameter." user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0 30</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Takeoff throttle min acceleration" name="ArduPlane:TKOFF_THR_MINACC" documentation="Minimum forward acceleration in m/s/s before arming the ground speed check in auto-takeoff. This is meant to be used for hand launches. Setting this value to 0 disables the acceleration test which means the ground speed check will always be armed which could allow GPS velocity jumps to start the engine. For hand launches and bungee launches this should be set to around 15. Also see TKOFF_ACCEL_CNT parameter for control of full &quot;shake to arm&quot;." user="Standard">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">0 30</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Takeoff throttle delay" name="ArduPlane:TKOFF_THR_DELAY" documentation="This parameter sets the time delay (in 1/10ths of a second) that the ground speed check is delayed after the forward acceleration check controlled by TKOFF_THR_MINACC has passed. For hand launches with pusher propellers it is essential that this is set to a value of no less than 2 (0.2 seconds) to ensure that the aircraft is safely clear of the throwers arm before the motor can start. For bungee launches a larger value can be used (such as 30) to give time for the bungee to release from the aircraft before the motor is started." user="Standard">
        <field name="Units">ds</field>
        <field name="UnitText">deciseconds</field>
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Takeoff throttle maximum time" name="ArduPlane:TKOFF_THR_MAX_T" documentation="This sets the time that maximum throttle will be forced during a fixed wing takeoff." user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 10</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Takeoff minimum throttle" name="ArduPlane:TKOFF_THR_MIN" documentation="The minimum throttle to use in takeoffs in AUTO and TAKEOFF flight modes, when TKOFF_OPTIONS bit 0 is set. Also, the minimum throttle to use in a quadpane forward transition. This can be useful to ensure faster takeoffs or transitions on aircraft where the normal throttle control leads to a slow takeoff or transition. It is used when it is larger than THR_MIN, otherwise THR_MIN is used instead." user="Standard">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Takeoff idle throttle" name="ArduPlane:TKOFF_THR_IDLE" documentation="The idle throttle to hold after arming and before a takeoff. Applicable in TAKEOFF and AUTO modes." user="Standard">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Takeoff options" name="ArduPlane:TKOFF_OPTIONS" documentation="This selects the mode of the takeoff in AUTO and TAKEOFF flight modes." user="Advanced">
        <bitmask>
          <bit code="0">When unset the maximum allowed throttle is always used (THR_MAX or TKOFF_THR_MAX) during takeoff. When set TECS is allowed to operate between a minimum (THR_MIN or TKOFF_THR_MIN) and a maximum (THR_MAX or TKOFF_THR_MAX) limit. Applicable only when using an airspeed sensor.</bit>
        </bitmask>
        <field name="Bitmask">0: When unset the maximum allowed throttle is always used (THR_MAX or TKOFF_THR_MAX) during takeoff. When set TECS is allowed to operate between a minimum (THR_MIN or TKOFF_THR_MIN) and a maximum (THR_MAX or TKOFF_THR_MAX) limit. Applicable only when using an airspeed sensor.</field>
      </param>
      <param humanName="Takeoff tail dragger elevator" name="ArduPlane:TKOFF_TDRAG_ELEV" documentation="This parameter sets the amount of elevator to apply during the initial stage of a takeoff. It is used to hold the tail wheel of a taildragger on the ground during the initial takeoff stage to give maximum steering. This option should be combined with the TKOFF_TDRAG_SPD1 option and the GROUND_STEER_ALT option along with tuning of the ground steering controller. A value of zero means to bypass the initial &quot;tail hold&quot; stage of takeoff. Set to zero for hand and catapult launch. For tail-draggers you should normally set this to 100, meaning full up elevator during the initial stage of takeoff. For most tricycle undercarriage aircraft a value of zero will work well, but for some tricycle aircraft a small negative value (say around -20 to -30) will apply down elevator which will hold the nose wheel firmly on the ground during initial acceleration. Only use a negative value if you find that the nosewheel doesn't grip well during takeoff. Too much down elevator on a tricycle undercarriage may cause instability in steering as the plane pivots around the nosewheel. Add down elevator 10 percent at a time." user="Standard">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">-100 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Takeoff tail dragger speed1" name="ArduPlane:TKOFF_TDRAG_SPD1" documentation="This parameter sets the airspeed at which to stop holding the tail down and transition to rudder control of steering on the ground. When TKOFF_TDRAG_SPD1 is reached the pitch of the aircraft will be held level until TKOFF_ROTATE_SPD is reached, at which point the takeoff pitch specified in the mission will be used to &quot;rotate&quot; the pitch for takeoff climb. Set TKOFF_TDRAG_SPD1 to zero to go straight to rotation. This should be set to zero for hand launch and catapult launch. It should also be set to zero for tricycle undercarriages unless you are using the method above to gently hold the nose wheel down. For tail dragger aircraft it should be set just below the stall speed." user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0 30</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Takeoff rotate speed" name="ArduPlane:TKOFF_ROTATE_SPD" documentation="This parameter sets the airspeed at which the aircraft will &quot;rotate&quot;, setting climb pitch specified in the mission. If TKOFF_ROTATE_SPD is zero then the climb pitch will be used as soon as takeoff is started. For hand launch and catapult launches a TKOFF_ROTATE_SPD of zero should be set. For all ground launches TKOFF_ROTATE_SPD should be set above the stall speed, usually by about 10 to 30 percent. During the run, use TKOFF_GND_PITCH to keep the aircraft on the runway while below this airspeed." user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0 30</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Takeoff throttle slew rate" name="ArduPlane:TKOFF_THR_SLEW" documentation="This parameter sets the slew rate for the throttle during auto takeoff. When this is zero the THR_SLEWRATE parameter is used during takeoff. For rolling takeoffs it can be a good idea to set a lower slewrate for takeoff to give a slower acceleration which can improve ground steering control. The value is a percentage throttle change per second, so a value of 20 means to advance the throttle over 5 seconds on takeoff. Values below 20 are not recommended as they may cause the plane to try to climb out with too little throttle. A value of -1 means no limit on slew rate in takeoff." user="Standard">
        <field name="Units">%/s</field>
        <field name="UnitText">percent per second</field>
        <field name="Range">-1 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Takeoff pitch limit reduction" name="ArduPlane:TKOFF_PLIM_SEC" documentation="This parameter reduces the pitch minimum limit of an auto-takeoff just a few seconds before it reaches the target altitude. This reduces overshoot by allowing the flight controller to start leveling off a few seconds before reaching the target height. When set to zero, the mission pitch min is enforced all the way to and through the target altitude, otherwise the pitch min slowly reduces to zero in the final segment. This is the pitch_min, not the demand. The flight controller should still be commanding to gain altitude to finish the takeoff but with this param it is not forcing it higher than it wants to be." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 10</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Takeoff flap percentage" name="ArduPlane:TKOFF_FLAP_PCNT" documentation="The amount of flaps (as a percentage) to apply in automatic takeoff" user="Advanced">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Level flight roll limit" name="ArduPlane:LEVEL_ROLL_LIMIT" documentation="This controls the maximum bank angle in degrees during flight modes where level flight is desired, such as in the final stages of landing, and during auto takeoff. This should be a small angle (such as 5 degrees) to prevent a wing hitting the runway during takeoff or landing. Setting this to zero will completely disable heading hold on auto takeoff while below 5 meters and during the flare portion of a final landing approach." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 45</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Bitmask for when to allow negative reverse thrust" name="ArduPlane:USE_REV_THRUST" documentation="This controls when to use reverse thrust. If set to a non-zero value then the bits correspond to flight stages where reverse thrust may be used. The most commonly used value for USE_REV_THRUST is 2, which means AUTO_LAND only. That enables reverse thrust in the landing stage of AUTO mode. Another common choice is 1, which means to use reverse thrust in all auto flight stages. Reverse thrust is always used in MANUAL mode if enabled with THR_MIN &lt; 0. In non-autothrottle controlled modes, if reverse thrust is not used, then THR_MIN is effectively set to 0 for that mode." user="Advanced">
        <bitmask>
          <bit code="0">AUTO_ALWAYS</bit>
          <bit code="1">AUTO_LAND</bit>
          <bit code="2">AUTO_LOITER_TO_ALT</bit>
          <bit code="3">AUTO_LOITER_ALL</bit>
          <bit code="4">AUTO_WAYPOINTS</bit>
          <bit code="5">LOITER</bit>
          <bit code="6">RTL</bit>
          <bit code="7">CIRCLE</bit>
          <bit code="8">CRUISE</bit>
          <bit code="9">FBWB</bit>
          <bit code="10">GUIDED</bit>
          <bit code="11">AUTO_LANDING_PATTERN</bit>
          <bit code="12">FBWA</bit>
          <bit code="13">ACRO</bit>
          <bit code="14">STABILIZE</bit>
          <bit code="15">THERMAL</bit>
        </bitmask>
        <field name="Bitmask">0:AUTO_ALWAYS,1:AUTO_LAND,2:AUTO_LOITER_TO_ALT,3:AUTO_LOITER_ALL,4:AUTO_WAYPOINTS,5:LOITER,6:RTL,7:CIRCLE,8:CRUISE,9:FBWB,10:GUIDED,11:AUTO_LANDING_PATTERN,12:FBWA,13:ACRO,14:STABILIZE,15:THERMAL</field>
      </param>
      <param humanName="Altitude offset" name="ArduPlane:ALT_OFFSET" documentation="This is added to the target altitude in automatic flight. It can be used to add a global altitude offset to a mission" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-32767 32767</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Waypoint Radius" name="ArduPlane:WP_RADIUS" documentation="Defines the maximum distance from a waypoint that when crossed indicates the waypoint may be complete. To avoid the aircraft looping around the waypoint in case it misses by more than the WP_RADIUS an additional check is made to see if the aircraft has crossed a &quot;finish line&quot; passing through the waypoint and perpendicular to the flight path from the previous waypoint. If that finish line is crossed then the waypoint is considered complete. Note that the navigation controller may decide to turn later than WP_RADIUS before a waypoint, based on how sharp the turn is and the speed of the aircraft. It is safe to set WP_RADIUS much larger than the usual turn radius of your aircraft and the navigation controller will work out when to turn. If you set WP_RADIUS too small then you will tend to overshoot the turns." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">1 32767</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Waypoint Maximum Radius" name="ArduPlane:WP_MAX_RADIUS" documentation="Sets the maximum distance to a waypoint for the waypoint to be considered complete. This overrides the &quot;cross the finish line&quot; logic that is normally used to consider a waypoint complete. For normal AUTO behaviour this parameter should be set to zero. Using a non-zero value is only recommended when it is critical that the aircraft does approach within the given radius, and should loop around until it has done so. This can cause the aircraft to loop forever if its turn radius is greater than the maximum radius set." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Waypoint Loiter Radius" name="ArduPlane:WP_LOITER_RAD" documentation="Defines the distance from the waypoint center, the plane will maintain during a loiter. If you set this value to a negative number then the default loiter direction will be counter-clockwise instead of clockwise. If this value is too close to zero, the achieved loiter radius will be determined by ROLL_LIMIT_DEG." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-32767 32767</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RTL loiter radius" name="ArduPlane:RTL_RADIUS" documentation="Defines the radius of the loiter circle when in RTL mode. If this is zero then WP_LOITER_RAD is used. If the radius is negative then a counter-clockwise is used. If positive then a clockwise loiter is used. For quadplanes with Q_RTL_MODE set to 1 (Enabled), this value is used to set the minimum radius at which the plane will transition from fixed-wing to VTOL mode for landing." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-32767 32767</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Enable stall prevention" name="ArduPlane:STALL_PREVENTION" documentation="Enables roll limits at low airspeed in roll limiting flight modes. Roll limits based on aerodynamic load factor in turns and scale on AIRSPEED_MIN that must be set correctly. Without airspeed sensor, uses synthetic airspeed from wind speed estimate that may both be inaccurate." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Target cruise airspeed" name="ArduPlane:AIRSPEED_CRUISE" documentation="Target cruise airspeed in m/s in automatic throttle modes. Value is as an indicated (calibrated/apparent) airspeed." user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Minimum Airspeed" name="ArduPlane:AIRSPEED_MIN" documentation="Minimum airspeed demanded in automatic throttle modes. Should be set to 20% higher than level flight stall speed." user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">5 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum Airspeed" name="ArduPlane:AIRSPEED_MAX" documentation="Maximum airspeed demanded in automatic throttle modes. Should be set slightly less than level flight speed at THR_MAX and also at least 50% above AIRSPEED_MIN to allow for accurate TECS altitude control." user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">5 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Stall airspeed" name="ArduPlane:AIRSPEED_STALL" documentation="If stall prevention is enabled this speed is used to calculate the minimum airspeed while banking. It is also used during landing final as the minimum airspeed that can be demanded by the TECS, which allows using TECS_LAND_ARSPD or LAND_PF_ARSPD to achieve landings slower than AIRSPEED_MIN. If this is set to 0 then the stall speed is assumed to be the minimum airspeed speed. Typically set slightly higher then true stall speed." user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">5 75</field>
      </param>
      <param humanName="Fly By Wire elevator reverse" name="ArduPlane:FBWB_ELEV_REV" documentation="Reverse sense of elevator in FBWB and CRUISE modes. When set to 0 up elevator (pulling back on the stick) means to raise altitude. When set to 1, up elevator means to lower altitude." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Use terrain following" name="ArduPlane:TERRAIN_FOLLOW" documentation="This enables terrain following for CRUISE mode, FBWB mode, RTL and for rally points. To use this option you also need to set TERRAIN_ENABLE to 1, which enables terrain data fetching from the GCS, and you need to have a GCS that supports sending terrain data to the aircraft. When terrain following is enabled then CRUISE and FBWB mode will hold height above terrain rather than height above home. In RTL the return to launch altitude will be considered to be a height above the terrain. Rally point altitudes will be taken as height above the terrain. This option does not affect mission items, which have a per-waypoint flag for whether they are height above home or height above the terrain. To use terrain following missions you need a ground station which can set the waypoint type to be a terrain height waypoint when creating the mission." user="Standard">
        <bitmask>
          <bit code="0">Enable all modes</bit>
          <bit code="1">FBWB</bit>
          <bit code="2">Cruise</bit>
          <bit code="3">Auto</bit>
          <bit code="4">RTL</bit>
          <bit code="5">Avoid_ADSB</bit>
          <bit code="6">Guided</bit>
          <bit code="7">Loiter</bit>
          <bit code="8">Circle</bit>
          <bit code="9">QRTL</bit>
          <bit code="10">QLand</bit>
          <bit code="11">Qloiter</bit>
          <bit code="12">AUTOLAND</bit>
        </bitmask>
        <field name="Bitmask">0: Enable all modes, 1:FBWB, 2:Cruise, 3:Auto, 4:RTL, 5:Avoid_ADSB, 6:Guided, 7:Loiter, 8:Circle, 9:QRTL, 10:QLand, 11:Qloiter, 12:AUTOLAND</field>
      </param>
      <param humanName="Terrain lookahead" name="ArduPlane:TERRAIN_LOOKAHD" documentation="This controls how far ahead the terrain following code looks to ensure it stays above upcoming terrain. A value of zero means no lookahead, so the controller will track only the terrain directly below the aircraft. The lookahead will never extend beyond the next waypoint when in AUTO mode." user="Standard">
        <field name="Range">0 10000</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Fly By Wire B altitude change rate" name="ArduPlane:FBWB_CLIMB_RATE" documentation="This sets the rate in m/s at which FBWB and CRUISE modes will change its target altitude for full elevator deflection. Note that the actual climb rate of the aircraft can be lower than this, depending on your airspeed and throttle control settings. If you have this parameter set to the default value of 2.0, then holding the elevator at maximum deflection for 10 seconds would change the target altitude by 20 meters." user="Standard">
        <field name="Range">1 10</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Minimum Throttle" name="ArduPlane:THR_MIN" documentation="Minimum throttle percentage used in all modes except manual, provided THR_PASS_STAB is not set. Negative values allow reverse thrust if hardware supports it." user="Standard">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">-100 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum Throttle" name="ArduPlane:THR_MAX" documentation="Maximum throttle percentage used in all modes except manual, provided THR_PASS_STAB is not set." user="Standard">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum Throttle for takeoff" name="ArduPlane:TKOFF_THR_MAX" documentation="The maximum throttle setting during automatic takeoff. If this is zero then THR_MAX is used for takeoff as well." user="Advanced">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Throttle slew rate" name="ArduPlane:THR_SLEWRATE" documentation="Maximum change in throttle percentage per second. Lower limit  based on 1 microsend of servo increase per loop. Divide SCHED_LOOP_RATE by approximately 10 to determine minimum achievable value." user="Standard">
        <field name="Units">%/s</field>
        <field name="UnitText">percent per second</field>
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Flap slew rate" name="ArduPlane:FLAP_SLEWRATE" documentation="maximum percentage change in flap output per second. A setting of 25 means to not change the flap by more than 25% of the full flap range in one second. A value of 0 means no rate limiting." user="Advanced">
        <field name="Units">%/s</field>
        <field name="UnitText">percent per second</field>
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Throttle suppress manual passthru" name="ArduPlane:THR_SUPP_MAN" documentation="When throttle is suppressed in auto mode it is normally forced to zero. If you enable this option, then while suppressed it will be manual throttle. This is useful on petrol engines to hold the idle throttle manually while waiting for takeoff" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Throttle passthru in stabilize" name="ArduPlane:THR_PASS_STAB" documentation="If this is set then when in STABILIZE, FBWA or ACRO modes the throttle is a direct passthru from the transmitter. This means the THR_MIN and THR_MAX settings are not used in these modes. This is useful for petrol engines where you setup a throttle cut switch that suppresses the throttle below the normal minimum." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Throttle and RC Failsafe Enable" name="ArduPlane:THR_FAILSAFE" documentation="0 disables the failsafe. 1 enables failsafe on loss of RC input. This is detected either by throttle values below THR_FS_VALUE, loss of receiver valid pulses/data, or by the FS bit in receivers that provide it, like SBUS. A programmable failsafe action will occur and RC inputs, if present, will be ignored. A value of 2 means that the RC inputs won't be used when RC failsafe is detected by any of the above methods, but it won't trigger an RC failsafe action." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">EnabledNoFailsafe</value>
        </values>
      </param>
      <param humanName="Throttle Failsafe Value" name="ArduPlane:THR_FS_VALUE" documentation="The PWM level on the throttle input channel below which throttle failsafe triggers. Note that this should be well below the normal minimum for your throttle channel." user="Standard">
        <field name="Range">925 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Throttle cruise percentage" name="ArduPlane:TRIM_THROTTLE" documentation="Target percentage of throttle to apply for flight in automatic throttle modes and throttle percentage that maintains AIRSPEED_CRUISE. Caution: low battery voltages at the end of flights may require higher throttle to maintain airspeed." user="Standard">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Throttle nudge enable" name="ArduPlane:THROTTLE_NUDGE" documentation="When enabled, this uses the throttle input in auto-throttle modes to 'nudge' the throttle or airspeed to higher or lower values. When you have an airspeed sensor the nudge affects the target airspeed, so that throttle inputs above 50% will increase the target airspeed from AIRSPEED_CRUISE up to a maximum of AIRSPEED_MAX. When no airspeed sensor is enabled the throttle nudge will push up the target throttle for throttle inputs above 50%." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Short failsafe action" name="ArduPlane:FS_SHORT_ACTN" documentation="The action to take on a short failsafe event. A short failsafe event can be triggered instantly by loss of RC control or by throttle value (see THR_FS_VALUE). If in CIRCLE or RTL mode this parameter is ignored. A short failsafe event in stabilization and manual modes will cause a change to CIRCLE mode if FS_SHORT_ACTN is 0 or 1, a change to FBWA mode with zero throttle if FS_SHORT_ACTN is 2, and a change to FBWB mode if FS_SHORT_ACTN is 4. In all other modes (AUTO, GUIDED and LOITER) a short failsafe event will cause no mode change if FS_SHORT_ACTN is set to 0, will cause a change to CIRCLE mode if set to 1, will change to FBWA mode with zero throttle if set to 2, or will change to FBWB if set to 4. Please see the documentation for FS_LONG_ACTN for the behaviour after FS_LONG_TIMEOUT seconds of failsafe. This parameter only applies to failsafes during fixed wing modes. Quadplane modes will switch to QLAND unless Q_OPTIONS bit 5(QRTL) or 20(RTL) are set." user="Standard">
        <values>
          <value code="0">CIRCLE/no change(if already in AUTO|GUIDED|LOITER)</value>
          <value code="1">CIRCLE</value>
          <value code="2">FBWA at zero throttle</value>
          <value code="3">Disable</value>
          <value code="4">FBWB</value>
        </values>
      </param>
      <param humanName="Long failsafe action" name="ArduPlane:FS_LONG_ACTN" documentation="The action to take on a long (FS_LONG_TIMEOUT seconds) failsafe event. If the aircraft was in a stabilization or manual mode when failsafe started and a long failsafe occurs then it will change to RTL mode if FS_LONG_ACTN is 0 or 1, and will change to FBWA if FS_LONG_ACTN is set to 2. If the aircraft was in an auto mode (such as AUTO or GUIDED) when the failsafe started then it will continue in the auto mode if FS_LONG_ACTN is set to 0, will change to RTL mode if FS_LONG_ACTN is set to 1 and will change to FBWA mode if FS_LONG_ACTN is set to 2. If FS_LONG_ACTN is set to 3, the parachute will be deployed (make sure the chute is configured and enabled). If FS_LONG_ACTN is set to 4 the aircraft will switch to mode AUTO with the current waypoint if it is not already in mode AUTO, unless it is in the middle of a landing sequence. If FS_LONG_ACTN is set to 5, will switch to AUTOLAND mode if possible, otherwise RTL mode. This parameter only applies to failsafes during fixed wing modes. Quadplane modes will switch to QLAND unless Q_OPTIONS bit 5 (QRTL) or 20(RTL) are set." user="Standard">
        <values>
          <value code="0">Continue</value>
          <value code="1">ReturnToLaunch</value>
          <value code="2">Glide</value>
          <value code="3">Deploy Parachute</value>
          <value code="4">Auto</value>
          <value code="5">AUTOLAND</value>
        </values>
      </param>
      <param humanName="Long failsafe timeout" name="ArduPlane:FS_LONG_TIMEOUT" documentation="The time in seconds that a failsafe condition has to persist before a long failsafe event will occur. This defaults to 5 seconds." user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">1 300</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="GCS failsafe enable" name="ArduPlane:FS_GCS_ENABL" documentation="Enable ground control station telemetry failsafe. Failsafe will trigger after FS_LONG_TIMEOUT seconds of no MAVLink heartbeat messages. There are three possible enabled settings. Setting FS_GCS_ENABL to 1 means that GCS failsafe will be triggered when the aircraft has not received a MAVLink HEARTBEAT message. Note that heartbeat tracking only becomes active after having received the first heartbeat from the MAV_GCS_SYSID primary GCS system. Setting FS_GCS_ENABL to 2 means that GCS failsafe will be triggered on either a loss of HEARTBEAT messages, or a RADIO_STATUS message from a MAVLink enabled telemetry adio indicating that the primary ground station is not receiving status updates from the aircraft, which is indicated by the RADIO_STATUS.remrssi field being zero (this may happen if you have a one way link due to asymmetric noise on the ground station and aircraft radios).Setting FS_GCS_ENABL to 3 means that GCS failsafe will be triggered by Heartbeat(like option one), but only in AUTO mode. WARNING: Enabling this option opens up the possibility of your plane going into failsafe mode and running the motor on the ground it it loses contact with your ground station. If this option is enabled on an electric plane then you should enable ARMING_REQUIRED." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Heartbeat</value>
          <value code="2">HeartbeatAndREMRSSI</value>
          <value code="3">HeartbeatAndAUTO</value>
        </values>
      </param>
      <param humanName="Flightmode channel" name="ArduPlane:FLTMODE_CH" documentation="RC Channel to use for flight mode control" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Channel 1</value>
          <value code="2">Channel 2</value>
          <value code="3">Channel 3</value>
          <value code="4">Channel 4</value>
          <value code="5">Channel 5</value>
          <value code="6">Channel 6</value>
          <value code="7">Channel 7</value>
          <value code="8">Channel 8</value>
          <value code="9">Channel 9</value>
          <value code="10">Channel 10</value>
          <value code="11">Channel 11</value>
          <value code="12">Channel 12</value>
          <value code="13">Channel 13</value>
          <value code="14">Channel 14</value>
          <value code="15">Channel 15</value>
          <value code="16">Channel 16</value>
        </values>
      </param>
      <param humanName="FlightMode1" name="ArduPlane:FLTMODE1" documentation="Flight mode for switch position 1 (910 to 1230 and above 2049)" user="Standard">
        <values>
          <value code="0">Manual</value>
          <value code="1">CIRCLE</value>
          <value code="2">STABILIZE</value>
          <value code="3">TRAINING</value>
          <value code="4">ACRO</value>
          <value code="5">FBWA</value>
          <value code="6">FBWB</value>
          <value code="7">CRUISE</value>
          <value code="8">AUTOTUNE</value>
          <value code="10">Auto</value>
          <value code="11">RTL</value>
          <value code="12">Loiter</value>
          <value code="13">TAKEOFF</value>
          <value code="14">AVOID_ADSB</value>
          <value code="15">Guided</value>
          <value code="17">QSTABILIZE</value>
          <value code="18">QHOVER</value>
          <value code="19">QLOITER</value>
          <value code="20">QLAND</value>
          <value code="21">QRTL</value>
          <value code="22">QAUTOTUNE</value>
          <value code="23">QACRO</value>
          <value code="24">THERMAL</value>
          <value code="25">Loiter to QLand</value>
          <value code="26">AUTOLAND</value>
        </values>
      </param>
      <param humanName="FlightMode2" name="ArduPlane:FLTMODE2" documentation="Flight mode for switch position 2 (1231 to 1360)" user="Standard">
        <values>
          <value code="0">Manual</value>
          <value code="1">CIRCLE</value>
          <value code="2">STABILIZE</value>
          <value code="3">TRAINING</value>
          <value code="4">ACRO</value>
          <value code="5">FBWA</value>
          <value code="6">FBWB</value>
          <value code="7">CRUISE</value>
          <value code="8">AUTOTUNE</value>
          <value code="10">Auto</value>
          <value code="11">RTL</value>
          <value code="12">Loiter</value>
          <value code="13">TAKEOFF</value>
          <value code="14">AVOID_ADSB</value>
          <value code="15">Guided</value>
          <value code="17">QSTABILIZE</value>
          <value code="18">QHOVER</value>
          <value code="19">QLOITER</value>
          <value code="20">QLAND</value>
          <value code="21">QRTL</value>
          <value code="22">QAUTOTUNE</value>
          <value code="23">QACRO</value>
          <value code="24">THERMAL</value>
          <value code="25">Loiter to QLand</value>
          <value code="26">AUTOLAND</value>
        </values>
      </param>
      <param humanName="FlightMode3" name="ArduPlane:FLTMODE3" documentation="Flight mode for switch position 3 (1361 to 1490)" user="Standard">
        <values>
          <value code="0">Manual</value>
          <value code="1">CIRCLE</value>
          <value code="2">STABILIZE</value>
          <value code="3">TRAINING</value>
          <value code="4">ACRO</value>
          <value code="5">FBWA</value>
          <value code="6">FBWB</value>
          <value code="7">CRUISE</value>
          <value code="8">AUTOTUNE</value>
          <value code="10">Auto</value>
          <value code="11">RTL</value>
          <value code="12">Loiter</value>
          <value code="13">TAKEOFF</value>
          <value code="14">AVOID_ADSB</value>
          <value code="15">Guided</value>
          <value code="17">QSTABILIZE</value>
          <value code="18">QHOVER</value>
          <value code="19">QLOITER</value>
          <value code="20">QLAND</value>
          <value code="21">QRTL</value>
          <value code="22">QAUTOTUNE</value>
          <value code="23">QACRO</value>
          <value code="24">THERMAL</value>
          <value code="25">Loiter to QLand</value>
          <value code="26">AUTOLAND</value>
        </values>
      </param>
      <param humanName="FlightMode4" name="ArduPlane:FLTMODE4" documentation="Flight mode for switch position 4 (1491 to 1620)" user="Standard">
        <values>
          <value code="0">Manual</value>
          <value code="1">CIRCLE</value>
          <value code="2">STABILIZE</value>
          <value code="3">TRAINING</value>
          <value code="4">ACRO</value>
          <value code="5">FBWA</value>
          <value code="6">FBWB</value>
          <value code="7">CRUISE</value>
          <value code="8">AUTOTUNE</value>
          <value code="10">Auto</value>
          <value code="11">RTL</value>
          <value code="12">Loiter</value>
          <value code="13">TAKEOFF</value>
          <value code="14">AVOID_ADSB</value>
          <value code="15">Guided</value>
          <value code="17">QSTABILIZE</value>
          <value code="18">QHOVER</value>
          <value code="19">QLOITER</value>
          <value code="20">QLAND</value>
          <value code="21">QRTL</value>
          <value code="22">QAUTOTUNE</value>
          <value code="23">QACRO</value>
          <value code="24">THERMAL</value>
          <value code="25">Loiter to QLand</value>
          <value code="26">AUTOLAND</value>
        </values>
      </param>
      <param humanName="FlightMode5" name="ArduPlane:FLTMODE5" documentation="Flight mode for switch position 5 (1621 to 1749)" user="Standard">
        <values>
          <value code="0">Manual</value>
          <value code="1">CIRCLE</value>
          <value code="2">STABILIZE</value>
          <value code="3">TRAINING</value>
          <value code="4">ACRO</value>
          <value code="5">FBWA</value>
          <value code="6">FBWB</value>
          <value code="7">CRUISE</value>
          <value code="8">AUTOTUNE</value>
          <value code="10">Auto</value>
          <value code="11">RTL</value>
          <value code="12">Loiter</value>
          <value code="13">TAKEOFF</value>
          <value code="14">AVOID_ADSB</value>
          <value code="15">Guided</value>
          <value code="17">QSTABILIZE</value>
          <value code="18">QHOVER</value>
          <value code="19">QLOITER</value>
          <value code="20">QLAND</value>
          <value code="21">QRTL</value>
          <value code="22">QAUTOTUNE</value>
          <value code="23">QACRO</value>
          <value code="24">THERMAL</value>
          <value code="25">Loiter to QLand</value>
          <value code="26">AUTOLAND</value>
        </values>
      </param>
      <param humanName="FlightMode6" name="ArduPlane:FLTMODE6" documentation="Flight mode for switch position 6 (1750 to 2049)" user="Standard">
        <values>
          <value code="0">Manual</value>
          <value code="1">CIRCLE</value>
          <value code="2">STABILIZE</value>
          <value code="3">TRAINING</value>
          <value code="4">ACRO</value>
          <value code="5">FBWA</value>
          <value code="6">FBWB</value>
          <value code="7">CRUISE</value>
          <value code="8">AUTOTUNE</value>
          <value code="10">Auto</value>
          <value code="11">RTL</value>
          <value code="12">Loiter</value>
          <value code="13">TAKEOFF</value>
          <value code="14">AVOID_ADSB</value>
          <value code="15">Guided</value>
          <value code="17">QSTABILIZE</value>
          <value code="18">QHOVER</value>
          <value code="19">QLOITER</value>
          <value code="20">QLAND</value>
          <value code="21">QRTL</value>
          <value code="22">QAUTOTUNE</value>
          <value code="23">QACRO</value>
          <value code="24">THERMAL</value>
          <value code="25">Loiter to QLand</value>
          <value code="26">AUTOLAND</value>
        </values>
      </param>
      <param humanName="Initial flight mode" name="ArduPlane:INITIAL_MODE" documentation="This selects the mode to start in on boot. This is useful for when you want to start in AUTO mode on boot without a receiver." user="Advanced">
        <values>
          <value code="0">Manual</value>
          <value code="1">CIRCLE</value>
          <value code="2">STABILIZE</value>
          <value code="3">TRAINING</value>
          <value code="4">ACRO</value>
          <value code="5">FBWA</value>
          <value code="6">FBWB</value>
          <value code="7">CRUISE</value>
          <value code="8">AUTOTUNE</value>
          <value code="10">Auto</value>
          <value code="11">RTL</value>
          <value code="12">Loiter</value>
          <value code="13">TAKEOFF</value>
          <value code="14">AVOID_ADSB</value>
          <value code="15">Guided</value>
          <value code="17">QSTABILIZE</value>
          <value code="18">QHOVER</value>
          <value code="19">QLOITER</value>
          <value code="20">QLAND</value>
          <value code="21">QRTL</value>
          <value code="22">QAUTOTUNE</value>
          <value code="23">QACRO</value>
          <value code="24">THERMAL</value>
          <value code="25">Loiter to QLand</value>
          <value code="26">AUTOLAND</value>
        </values>
      </param>
      <param humanName="Maximum Bank Angle" name="ArduPlane:ROLL_LIMIT_DEG" documentation="Maximum bank angle commanded in modes with stabilized limits. Increase this value for sharper turns, but decrease to prevent accelerated stalls." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 90</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum Pitch Angle" name="ArduPlane:PTCH_LIM_MAX_DEG" documentation="Maximum pitch up angle commanded in modes with stabilized limits." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 90</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Minimum Pitch Angle" name="ArduPlane:PTCH_LIM_MIN_DEG" documentation="Maximum pitch down angle commanded in modes with stabilized limits" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-90 0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="ACRO mode roll rate" name="ArduPlane:ACRO_ROLL_RATE" documentation="The maximum roll rate at full stick deflection in ACRO mode" user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">10 500</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="ACRO mode pitch rate" name="ArduPlane:ACRO_PITCH_RATE" documentation="The maximum pitch rate at full stick deflection in ACRO mode" user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">10 500</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="ACRO mode yaw rate" name="ArduPlane:ACRO_YAW_RATE" documentation="The maximum yaw rate at full stick deflection in ACRO mode. If this is zero then rudder is directly controlled by rudder stick input. This option is only available if you also set YAW_RATE_ENABLE to 1." user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">0 500</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="ACRO mode attitude locking" name="ArduPlane:ACRO_LOCKING" documentation="Enable attitude locking when sticks are released. If set to 2 then quaternion based locking is used if the yaw rate controller is enabled. Quaternion based locking will hold any attitude" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Quaternion</value>
        </values>
      </param>
      <param humanName="Ground steer altitude" name="ArduPlane:GROUND_STEER_ALT" documentation="Altitude at which to use the ground steering controller on the rudder. If non-zero then the STEER2SRV controller will be used to control the rudder for altitudes within this limit of the home altitude." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-100 100</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Ground steer rate" name="ArduPlane:GROUND_STEER_DPS" documentation="Ground steering rate in degrees per second for full rudder stick deflection" user="Advanced">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">10 360</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mixing Gain" name="ArduPlane:MIXING_GAIN" documentation="The gain for the Vtail and elevon output mixers. The default is 0.5, which ensures that the mixer doesn't saturate, allowing both input channels to go to extremes while retaining control over the output. Hardware mixers often have a 1.0 gain, which gives more servo throw, but can saturate. If you don't have enough throw on your servos with VTAIL_OUTPUT or ELEVON_OUTPUT enabled then you can raise the gain using MIXING_GAIN. The mixer allows outputs in the range 900 to 2100 microseconds." user="Standard">
        <field name="Range">0.5 1.2</field>
      </param>
      <param humanName="Rudder only aircraft" name="ArduPlane:RUDDER_ONLY" documentation="Enable rudder only mode. The rudder will control attitude in attitude controlled modes (such as FBWA). You should setup your transmitter to send roll stick inputs to the RCMAP_YAW channel (normally channel 4). The rudder servo should be attached to the RCMAP_YAW channel as well. Note that automatic ground steering will be disabled for rudder only aircraft. You should also set KFF_RDDRMIX to 1.0. You will also need to setup the YAW2SRV_DAMP yaw damping appropriately for your aircraft. A value of 0.5 for YAW2SRV_DAMP is a good starting point." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Mixing Offset" name="ArduPlane:MIXING_OFFSET" documentation="The offset for the Vtail and elevon output mixers, as a percentage. This can be used in combination with MIXING_GAIN to configure how the control surfaces respond to input. The response to aileron or elevator input can be increased by setting this parameter to a positive or negative value. A common usage is to enter a positive value to increase the aileron response of the elevons of a flying wing. The default value of zero will leave the aileron-input response equal to the elevator-input response." user="Standard">
        <field name="Units">d%</field>
        <field name="UnitText">decipercent</field>
        <field name="Range">-1000 1000</field>
      </param>
      <param humanName="Differential spoilers rudder rate" name="ArduPlane:DSPOILR_RUD_RATE" documentation="Sets the amount of deflection that the rudder output will apply to the differential spoilers, as a percentage. The default value of 100 results in full rudder applying full deflection. A value of 0 will result in the differential spoilers exactly following the elevons (no rudder effect)." user="Standard">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">-100 100</field>
      </param>
      <param humanName="Log bitmask" name="ArduPlane:LOG_BITMASK" documentation="Bitmap of what on-board log types to enable. This value is made up of the sum of each of the log types you want to be saved. It is usually best just to enable all basic log types by setting this to 65535." user="Advanced">
        <bitmask>
          <bit code="0">Fast Attitude</bit>
          <bit code="1">Medium Attitude</bit>
          <bit code="2">GPS</bit>
          <bit code="3">Performance</bit>
          <bit code="4">Control Tuning</bit>
          <bit code="5">Navigation Tuning</bit>
          <bit code="7">IMU</bit>
          <bit code="8">Mission Commands</bit>
          <bit code="9">Battery Monitor</bit>
          <bit code="10">Compass</bit>
          <bit code="11">TECS</bit>
          <bit code="12">Camera</bit>
          <bit code="13">RC Input-Output</bit>
          <bit code="14">Rangefinder</bit>
          <bit code="19">Raw IMU</bit>
          <bit code="20">Fullrate Attitude</bit>
          <bit code="21">Video Stabilization</bit>
          <bit code="22">Fullrate Notch</bit>
        </bitmask>
        <field name="Bitmask">0:Fast Attitude,1:Medium Attitude,2:GPS,3:Performance,4:Control Tuning,5:Navigation Tuning,7:IMU,8:Mission Commands,9:Battery Monitor,10:Compass,11:TECS,12:Camera,13:RC Input-Output,14:Rangefinder,19:Raw IMU,20:Fullrate Attitude,21:Video Stabilization,22:Fullrate Notch</field>
      </param>
      <param humanName="speed used for speed scaling calculations" name="ArduPlane:SCALING_SPEED" documentation="Airspeed in m/s to use when calculating surface speed scaling. Note that changing this value will affect all PID values" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0 50</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Minimum ground speed" name="ArduPlane:MIN_GROUNDSPEED" documentation="Minimum ground speed when under airspeed control" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Pitch angle offset" name="ArduPlane:PTCH_TRIM_DEG" documentation="Offset in degrees used for in-flight pitch trimming for level flight. Correct ground leveling is an alternative to changing this parameter." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-45 45</field>
      </param>
      <param humanName="RTL altitude" name="ArduPlane:RTL_ALTITUDE" documentation="Target altitude above home for RTL mode. Maintains current altitude if set to -1. Rally point altitudes are used if plane does not return to home." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Minimum altitude for FBWB and CRUISE mode" name="ArduPlane:CRUISE_ALT_FLOOR" documentation="This is the minimum altitude in meters (above home) that FBWB and CRUISE modes will allow. If you attempt to descend below this altitude then the plane will level off. It will also force a climb to this altitude if below in these modes. A value of zero means no limit." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Flap 1 percentage" name="ArduPlane:FLAP_1_PERCNT" documentation="The percentage change in flap position when FLAP_1_SPEED is reached. Use zero to disable flaps" user="Advanced">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Flap 1 speed" name="ArduPlane:FLAP_1_SPEED" documentation="The speed in meters per second at which to engage FLAP_1_PERCENT of flaps. Note that FLAP_1_SPEED should be greater than or equal to FLAP_2_SPEED" user="Advanced">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Flap 2 percentage" name="ArduPlane:FLAP_2_PERCNT" documentation="The percentage change in flap position when FLAP_2_SPEED is reached. Use zero to disable flaps" user="Advanced">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Flap 2 speed" name="ArduPlane:FLAP_2_SPEED" documentation="The speed in meters per second at which to engage FLAP_2_PERCENT of flaps. Note that FLAP_1_SPEED should be greater than or equal to FLAP_2_SPEED" user="Advanced">
        <field name="Range">0 100</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="IO override channel" name="ArduPlane:OVERRIDE_CHAN" documentation="If set to a non-zero value then this is an RC input channel number to use for giving IO manual control in case the main FMU microcontroller on a board with a IO co-processor fails. When this RC input channel goes above 1750 the FMU microcontroller will no longer be involved in controlling the servos and instead the IO microcontroller will directly control the servos. Note that IO manual control will be automatically activated if the FMU crashes for any reason. This parameter allows you to test for correct manual behaviour without actually crashing the FMU. This parameter is can be set to a non-zero value either for ground testing purposes or for giving the effect of an external override control board. Note that you may set OVERRIDE_CHAN to the same channel as FLTMODE_CH to get IO based override when in flight mode 6. Note that when override is triggered due to a FMU crash the 6 auxiliary output channels on the FMU will no longer be updated, so all the flight controls you need must be assigned to the first 8 channels on boards with an IOMCU." user="Advanced">
        <field name="Range">0 16</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RTL auto land" name="ArduPlane:RTL_AUTOLAND" documentation="Automatically begin landing sequence after arriving at RTL location. This requires the addition of a DO_LAND_START mission item, which acts as a marker for the start of a landing sequence. The closest landing sequence will be chosen to the current location For a value of 1 a rally point will be used instead of HOME if in range (see rally point documentation).If this is set to 0 and there is a DO_LAND_START or DO_RETURN_PATH_START mission item then you will get an arming check failure. You can set to a value of 3 to avoid the arming check failure and use the DO_LAND_START for go-around (see wiki for aborting autolandings) without it changing RTL behaviour." user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Fly HOME then land via DO_LAND_START mission item</value>
          <value code="2">Go directly to landing sequence via DO_LAND_START mission item</value>
          <value code="3">OnlyForGoAround</value>
          <value code="4">Go directly to landing sequence via DO_RETURN_PATH_START mission item</value>
        </values>
      </param>
      <param humanName="Crash Deceleration Threshold" name="ArduPlane:CRASH_ACC_THRESH" documentation="X-Axis deceleration threshold to notify the crash detector that there was a possible impact which helps disarm the motor quickly after a crash. This value should be much higher than normal negative x-axis forces during normal flight, check flight log files to determine the average IMU.x values for your aircraft and motor type. Higher value means less sensitive (triggers on higher impact). For electric planes that don't vibrate much during fight a value of 25 is good (that's about 2.5G). For petrol/nitro planes you'll want a higher value. Set to 0 to disable the collision detector." user="Advanced">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">10 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Crash Detection" name="ArduPlane:CRASH_DETECT" documentation="Automatically detect a crash during AUTO flight and perform the bitmask selected action(s). Disarm will turn off motor for safety and to help against burning out ESC and motor. Set to 0 to disable crash detection." user="Advanced">
        <bitmask>
          <bit code="0">Disarm</bit>
        </bitmask>
        <field name="Bitmask">0:Disarm</field>
      </param>
      <param humanName="Enable use of rangefinder" name="ArduPlane:RNGFND_LANDING" documentation="Sets the use of a rangefinder for automatic landing and other use cases. When enabled for landing and takeoff the rangefinder will be used both on the landing approach and for final flare as well as as VTOL landing and for takeoffs and throttle suppression when close to the ground. When enabled for assist the rangefinder will be used for VTOL assistance. When enabled for climb the rangefinder will be used for the initial climb in QRTL and AUTO. Set to 0 to disable use of the rangefinder." user="Standard">
        <bitmask>
          <bit code="0">All</bit>
          <bit code="1">TakeoffAndLanding</bit>
          <bit code="2">Assist</bit>
          <bit code="3">InitialClimb</bit>
        </bitmask>
        <field name="Bitmask">0:All, 1:TakeoffAndLanding, 2:Assist, 3:InitialClimb</field>
      </param>
      <param humanName="rudder differential thrust gain" name="ArduPlane:RUDD_DT_GAIN" documentation="gain control from rudder to differential thrust" user="Standard">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Manual R/C pass-through mask" name="ArduPlane:MANUAL_RCMASK" documentation="Mask of R/C channels to pass directly to corresponding output channel when in MANUAL mode. When in any mode except MANUAL the channels selected with this option behave normally. This parameter is designed to allow for complex mixing strategies to be used for MANUAL flight using transmitter based mixing. Note that when this option is used you need to be very careful with pre-flight checks to ensure that the output is correct both in MANUAL and non-MANUAL modes." user="Advanced">
        <bitmask>
          <bit code="0">Chan1</bit>
          <bit code="1">Chan2</bit>
          <bit code="2">Chan3</bit>
          <bit code="3">Chan4</bit>
          <bit code="4">Chan5</bit>
          <bit code="5">Chan6</bit>
          <bit code="6">Chan7</bit>
          <bit code="7">Chan8</bit>
          <bit code="8">Chan9</bit>
          <bit code="9">Chan10</bit>
          <bit code="10">Chan11</bit>
          <bit code="11">Chan12</bit>
          <bit code="12">Chan13</bit>
          <bit code="13">Chan14</bit>
          <bit code="14">Chan15</bit>
          <bit code="15">Chan16</bit>
        </bitmask>
        <field name="Bitmask">0:Chan1,1:Chan2,2:Chan3,3:Chan4,4:Chan5,5:Chan6,6:Chan7,7:Chan8,8:Chan9,9:Chan10,10:Chan11,11:Chan12,12:Chan13,13:Chan14,14:Chan15,15:Chan16</field>
      </param>
      <param humanName="Home reset altitude threshold" name="ArduPlane:HOME_RESET_ALT" documentation="When the aircraft is within this altitude of the home waypoint, while disarmed it will automatically update the home position. Set to 0 to continuously reset it." user="Advanced">
        <values>
          <value code="-1">Never reset</value>
          <value code="0">Always reset</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Flight mode options" name="ArduPlane:FLIGHT_OPTIONS" documentation="Flight mode specific options" user="Advanced">
        <bitmask>
          <bit code="0">Rudder mixing in direct flight modes only (Manual/Stabilize/Acro)</bit>
          <bit code="1">Use centered throttle in Cruise or FBWB to indicate trim airspeed</bit>
          <bit code="2">Disable attitude check for takeoff arming</bit>
          <bit code="3">Force target airspeed to trim airspeed in Cruise or FBWB</bit>
          <bit code="4">Climb to RTL_ALTITUDE before turning for RTL</bit>
          <bit code="5">Enable yaw damper in acro mode</bit>
          <bit code="6">Suppress speed scaling during auto takeoffs to be 1 or less to prevent oscillations without airspeed sensor.</bit>
          <bit code="7">EnableDefaultAirspeed for takeoff</bit>
          <bit code="8">Remove the PTCH_TRIM_DEG on the GCS horizon</bit>
          <bit code="9">Remove the PTCH_TRIM_DEG on the OSD horizon</bit>
          <bit code="10">Adjust mid-throttle to be TRIM_THROTTLE in non-auto throttle modes except MANUAL</bit>
          <bit code="11">Disable suppression of fixed wing rate gains in ground mode</bit>
          <bit code="12">Enable FBWB style loiter altitude control</bit>
          <bit code="13">Indicate takeoff waiting for neutral rudder with flight control surfaces</bit>
          <bit code="14">In AUTO - climb to next waypoint altitude immediately instead of linear climb</bit>
          <bit code="15">Enable autoflap in manual modes and use minimum of target and actual speed for flap setting</bit>
          <bit code="16">Enable full aerodynamic load factor-based roll limits when an airspeed sensor is enabled and AIRSPEED_STALL is set</bit>
        </bitmask>
        <field name="Bitmask">0: Rudder mixing in direct flight modes only (Manual/Stabilize/Acro), 1: Use centered throttle in Cruise or FBWB to indicate trim airspeed, 2: Disable attitude check for takeoff arming, 3: Force target airspeed to trim airspeed in Cruise or FBWB, 4: Climb to RTL_ALTITUDE before turning for RTL, 5: Enable yaw damper in acro mode, 6: Suppress speed scaling during auto takeoffs to be 1 or less to prevent oscillations without airspeed sensor., 7: EnableDefaultAirspeed for takeoff, 8: Remove the PTCH_TRIM_DEG on the GCS horizon, 9: Remove the PTCH_TRIM_DEG on the OSD horizon, 10: Adjust mid-throttle to be TRIM_THROTTLE in non-auto throttle modes except MANUAL, 11: Disable suppression of fixed wing rate gains in ground mode, 12: Enable FBWB style loiter altitude control, 13: Indicate takeoff waiting for neutral rudder with flight control surfaces, 14: In AUTO - climb to next waypoint altitude immediately instead of linear climb, 15: Enable autoflap in manual modes and use minimum of target and actual speed for flap setting, 16: Enable full aerodynamic load factor-based roll limits when an airspeed sensor is enabled and AIRSPEED_STALL is set</field>
      </param>
      <param humanName="Takeoff throttle acceleration count" name="ArduPlane:TKOFF_ACCEL_CNT" documentation="This is the number of acceleration events to require for arming with TKOFF_THR_MINACC. The default is 1, which means a single forward acceleration above TKOFF_THR_MINACC will arm. By setting this higher than 1 you can require more forward/backward movements to arm." user="Standard">
        <field name="Range">1 10</field>
      </param>
      <param humanName="Differential spoiler crow flaps outer weight" name="ArduPlane:DSPOILER_CROW_W1" documentation="This is amount of deflection applied to the two outer surfaces for differential spoilers for flaps to give crow flaps. It is a number from 0 to 100. At zero no crow flaps are applied. A recommended starting value is 25." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Differential spoiler crow flaps inner weight" name="ArduPlane:DSPOILER_CROW_W2" documentation="This is amount of deflection applied to the two inner surfaces for differential spoilers for flaps to give crow flaps. It is a number from 0 to 100. At zero no crow flaps are applied. A recommended starting value is 45." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Takeoff timeout" name="ArduPlane:TKOFF_TIMEOUT" documentation="This is the timeout for an automatic takeoff. If this is non-zero and the aircraft does not reach a ground speed of at least 4 m/s within this number of seconds then the takeoff is aborted and the vehicle disarmed. If the value is zero then no timeout applies." user="Standard">
        <field name="Range">0 120</field>
        <field name="Increment">1</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Differential spoiler and crow flaps options" name="ArduPlane:DSPOILER_OPTS" documentation="Differential spoiler and crow flaps options.  Progressive crow flaps only first (0-50% flap in) then crow flaps (50 - 100% flap in)." user="Advanced">
        <bitmask>
          <bit code="0">Pitch input</bit>
          <bit code="1">use both control surfaces on each wing for roll</bit>
          <bit code="2">Progressive crow flaps</bit>
        </bitmask>
        <field name="Bitmask">0:Pitch input, 1:use both control surfaces on each wing for roll, 2:Progressive crow flaps</field>
      </param>
      <param humanName="Differential spoiler aileron matching" name="ArduPlane:DSPOILER_AILMTCH" documentation="This scales down the inner flaps so less than full downwards range can be used for differential spoiler and full span ailerons, 100 is use full range, upwards travel is unaffected" user="Advanced">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Forward throttle battery voltage compensation maximum voltage" name="ArduPlane:FWD_BAT_VOLT_MAX" documentation="Forward throttle battery voltage compensation maximum voltage (voltage above this will have no additional scaling effect on thrust). Recommend 4.2 * cell count, 0 = Disabled. Recommend THR_MAX is set to no more than 100 x FWD_BAT_VOLT_MIN / FWD_BAT_VOLT_MAX, THR_MIN is set to no less than -100 x FWD_BAT_VOLT_MIN / FWD_BAT_VOLT_MAX and climb descent rate limits are set accordingly." user="Advanced">
        <field name="Range">6 35</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Forward throttle battery voltage compensation minimum voltage" name="ArduPlane:FWD_BAT_VOLT_MIN" documentation="Forward throttle battery voltage compensation minimum voltage (voltage below this will have no additional scaling effect on thrust).  Recommend 3.5 * cell count, 0 = Disabled. Recommend THR_MAX is set to no more than 100 x FWD_BAT_VOLT_MIN / FWD_BAT_VOLT_MAX, THR_MIN is set to no less than -100 x FWD_BAT_VOLT_MIN / FWD_BAT_VOLT_MAX and climb descent rate limits are set accordingly." user="Advanced">
        <field name="Range">6 35</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Forward throttle battery compensation index" name="ArduPlane:FWD_BAT_IDX" documentation="Which battery monitor should be used for doing compensation for the forward throttle" user="Advanced">
        <values>
          <value code="0">First battery</value>
          <value code="1">Second battery</value>
        </values>
        <field name="Range">0 15</field>
      </param>
      <param humanName="EKF failsafe variance threshold" name="ArduPlane:FS_EKF_THRESH" documentation="Allows setting the maximum acceptable compass and velocity variance used to check navigation health in VTOL modes" user="Advanced">
        <values>
          <value code="0.6">Strict</value>
          <value code="0.8">Default</value>
          <value code="1.0">Relaxed</value>
        </values>
        <field name="Range">0.6 1.0</field>
      </param>
      <param humanName="RTL minimum climb" name="ArduPlane:RTL_CLIMB_MIN" documentation="The vehicle will climb this many m during the initial climb portion of the RTL. During this time the roll will be limited to LEVEL_ROLL_LIMIT degrees." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 30</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Manual control expo for roll" name="ArduPlane:MAN_EXPO_ROLL" documentation="Percentage exponential for roll input in MANUAL, ACRO and TRAINING modes" user="Standard">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Manual input expo for pitch" name="ArduPlane:MAN_EXPO_PITCH" documentation="Percentage exponential for pitch input in MANUAL, ACRO and TRAINING modes" user="Standard">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Manual input expo for rudder" name="ArduPlane:MAN_EXPO_RUDDER" documentation="Percentage exponential for rudder input in MANUAL, ACRO and TRAINING modes" user="Standard">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Oneshot output mask" name="ArduPlane:ONESHOT_MASK" documentation="Mask of output channels to use oneshot on" user="Advanced">
        <bitmask>
          <bit code="0">Servo 1</bit>
          <bit code="1">Servo 2</bit>
          <bit code="2">Servo 3</bit>
          <bit code="3">Servo 4</bit>
          <bit code="4">Servo 5</bit>
          <bit code="5">Servo 6</bit>
          <bit code="6">Servo 7</bit>
          <bit code="7">Servo 8</bit>
          <bit code="8">Servo 9</bit>
          <bit code="9">Servo 10</bit>
          <bit code="10">Servo 11</bit>
          <bit code="11">Servo 12</bit>
          <bit code="12">Servo 13</bit>
          <bit code="13">Servo 14</bit>
          <bit code="14">Servo 15</bit>
          <bit code="15">Servo 16</bit>
          <bit code="16">Servo 17</bit>
          <bit code="17">Servo 18</bit>
          <bit code="18">Servo 19</bit>
          <bit code="19">Servo 20</bit>
          <bit code="20">Servo 21</bit>
          <bit code="21">Servo 22</bit>
          <bit code="22">Servo 23</bit>
          <bit code="23">Servo 24</bit>
          <bit code="24">Servo 25</bit>
          <bit code="25">Servo 26</bit>
          <bit code="26">Servo 27</bit>
          <bit code="27">Servo 28</bit>
          <bit code="28">Servo 29</bit>
          <bit code="29">Servo 30</bit>
          <bit code="30">Servo 31</bit>
          <bit code="31">Servo 32</bit>
        </bitmask>
        <field name="Bitmask">0: Servo 1, 1: Servo 2, 2: Servo 3, 3: Servo 4, 4: Servo 5, 5: Servo 6, 6: Servo 7, 7: Servo 8, 8: Servo 9, 9: Servo 10, 10: Servo 11, 11: Servo 12, 12: Servo 13, 13: Servo 14, 14: Servo 15, 15: Servo 16, 16: Servo 17, 17: Servo 18, 18: Servo 19, 19: Servo 20, 20: Servo 21, 21: Servo 22, 22: Servo 23, 23: Servo 24, 24: Servo 25, 25: Servo 26, 26: Servo 27, 27: Servo 28, 28: Servo 29, 29: Servo 30, 30: Servo 31, 31: Servo 32</field>
      </param>
      <param humanName="Autotune axis bitmask" name="ArduPlane:AUTOTUNE_AXES" documentation="1-byte bitmap of axes to autotune" user="Standard">
        <bitmask>
          <bit code="0">Roll</bit>
          <bit code="1">Pitch</bit>
          <bit code="2">Yaw</bit>
        </bitmask>
        <field name="Bitmask">0:Roll,1:Pitch,2:Yaw</field>
      </param>
      <param humanName="rangefinder landing orientation" name="ArduPlane:RNGFND_LND_ORNT" documentation="The orientation of rangefinder to use for landing detection. Should be set to Down for normal downward facing rangefinder and Back for rearward facing rangefinder for quadplane tailsitters. Custom orientation can be used with Custom1 or Custom2. The orientation must match at least one of the available rangefinders." user="Standard">
        <values>
          <value code="4">Back</value>
          <value code="25">Down</value>
          <value code="101">Custom1</value>
          <value code="102">Custom2</value>
        </values>
      </param>
      <param humanName="Forward throttle cutoff battery voltage" name="ArduPlane:FWD_BAT_THR_CUT" documentation="The estimated battery resting voltage below which the throttle is cut in auto-throttle modes. Measured on the battery used for forward throttle compensation (FWD_BAT_IDX). If set to zero, the throttle will not be cut due to low voltage, allowing the motor(s) to continue running until the battery is depleted. This should be set to the minimum operating voltage of you motor(s) or to a voltage level where minimal thrust is produced, to conserve the remaining battery power for the electronics and actuators." user="Standard">
        <field name="Range">0 35</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Climb slope minimum height" name="ArduPlane:CLIMB_SLOPE_HGT" documentation="Sets the minimum height above home at which the aircraft will apply a climb slope between waypoints. Below it, the aircraft will ascend immediately, and will only resume the requested trajectory upon reaching this height. This prevents unsafe behavior such as attempting to slowly gain altitude near obstacles. The default value ensures safe operations in most environments, but it can be adjusted based on specific terrain or operational needs." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Timeout for external guided command." name="ArduPlane:GUIDED_TIMEOUT" documentation="If external guided command was not received by this timeout, the vehicle will revert to regular GUIDED mode." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 10</field>
        <field name="Increment">0.5</field>
      </param>
    </parameters>
  </vehicles>
  <libraries>
    <parameters name="VEHICLE">
      <param humanName="Flight mode block from GCS" name="FLTMODE_GCSBLOCK" documentation="Bitmask of flight modes to disable for GCS selection. Mode can still be accessed via RC or failsafe." user="Standard">
        <bitmask>
          <bit code="0">Manual</bit>
          <bit code="1">Circle</bit>
          <bit code="2">Stabilize</bit>
          <bit code="3">Training</bit>
          <bit code="4">ACRO</bit>
          <bit code="5">FBWA</bit>
          <bit code="6">FBWB</bit>
          <bit code="7">CRUISE</bit>
          <bit code="8">AUTOTUNE</bit>
          <bit code="9">Auto</bit>
          <bit code="10">Loiter</bit>
          <bit code="11">Takeoff</bit>
          <bit code="12">AVOID_ADSB</bit>
          <bit code="13">Guided</bit>
          <bit code="14">THERMAL</bit>
          <bit code="15">QSTABILIZE</bit>
          <bit code="16">QHOVER</bit>
          <bit code="17">QLOITER</bit>
          <bit code="18">QACRO</bit>
          <bit code="19">QAUTOTUNE</bit>
          <bit code="20">Loiter to QLand</bit>
          <bit code="21">Autoland</bit>
        </bitmask>
        <field name="Bitmask">0:Manual,1:Circle,2:Stabilize,3:Training,4:ACRO,5:FBWA,6:FBWB,7:CRUISE,8:AUTOTUNE,9:Auto,10:Loiter,11:Takeoff,12:AVOID_ADSB,13:Guided,14:THERMAL,15:QSTABILIZE,16:QHOVER,17:QLOITER,18:QACRO,19:QAUTOTUNE,20:Loiter to QLand,21:Autoland</field>
      </param>
    </parameters>
    <parameters name="Lua Script">
      <param humanName="AHRS/EKF Origin Latitude" name="AHRS_ORIG_LAT" documentation="AHRS/EKF origin will be set to this latitude if not already set" user="Standard">
        <field name="Range">-180 180</field>
      </param>
      <param humanName="AHRS/EKF Origin Longitude" name="AHRS_ORIG_LON" documentation="AHRS/EKF origin will be set to this longitude if not already set" user="Standard">
        <field name="Range">-180 180</field>
      </param>
      <param humanName="AHRS/EKF Origin Altitude" name="AHRS_ORIG_ALT" documentation="AHRS/EKF origin will be set to this altitude (in meters above sea level) if not already set" user="Standard">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="EKF Source ExternalNav Innovation Threshold" name="ESRC_EXTN_THRESH" documentation="ExternalNav may be used if innovations are below this threshold" user="Standard">
        <field name="Range">0 1</field>
      </param>
      <param humanName="EKF Source ExternalNav Quality Threshold" name="ESRC_EXTN_QUAL" documentation="ExternalNav may be used if quality is above this threshold" user="Standard">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="EKF Source OpticalFlow Innovation Threshold" name="ESRC_FLOW_THRESH" documentation="OpticalFlow may be used if innovations are below this threshold" user="Standard">
        <field name="Range">0 1</field>
      </param>
      <param humanName="EKF Source OpticalFlow Quality Threshold" name="ESRC_FLOW_QUAL" documentation="OpticalFlow may be used if quality is above this threshold" user="Standard">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="EKF Source Rangefinder Max" name="ESRC_RNGFND_MAX" documentation="OpticalFlow may be used if rangefinder distance is below this threshold" user="Standard">
        <field name="Range">0 50</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="MAV_SYSID must be set" name="ARM_SYSID" documentation="Check that MAV_SYSID (or SYDID_THISMAV) has been set. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="FOLL_SYSID must be set" name="ARM_FOLL_SYSID" documentation="If FOLL_ENABLE = 1, check that FOLL_SYSID has been set. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="Vehicle should not follow itself" name="ARM_FOLL_SYSID_X" documentation="If FOLL_ENABLE = 1, check that FOLL_SYSID is different to MAV_SYSID. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="Follow Offsets defaulted" name="ARM_FOLL_OFS_DEF" documentation="Follow offsets should not be left as default (zero) if FOLL_ENABLE = 1. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="Follow and Mount should follow the same vehicle" name="ARM_MNTX_SYSID" documentation="If FOLL_ENABLE = 1 and MNTx_SYSID_DEFLT is set, check that FOLL_SYSID is equal MNTx. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="RTL_CLIMB_MIN should be a valid value" name="ARM_RTL_CLIMB" documentation="RTL_CLIMB_MIN should be &lt; 120m (400ft). 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="Motors EStopped" name="ARM_ESTOP" documentation="Emergency Stop disables arming. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="Fence not enabled" name="ARM_FENCE" documentation="Fences loaded but no fence enabled. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="Rally too far" name="ARM_RALLY" documentation="Rally Point more than RALLY_LIMIT_KM kilometers away. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="RTL_ALT_M should be a valid value" name="ARM_C_RTL_ALT_M" documentation="RTL_ALT_M should be &lt; 120m (400ft). 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="Warn if Q failsafe will land" name="ARM_P_Q_FS_LAND" documentation="Notify the user that on failsafe a QuadPlan will land. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="Warn if Q failsafe will QRTL" name="ARM_P_Q_FS_RTL" documentation="Notify the user that on failsafe a QuadPlan will QRTL. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="Check AIRSPEED_ parameters" name="ARM_P_AIRSPEED" documentation="Validate that AIRSPEED_STALL(if set) &lt; MIN &lt; CRUISE &lt; MAX d. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="AIRSPEED_MIN should be 25% above STALL" name="ARM_P_STALL" documentation="Validate that AIRSPEED_MIN is at least 25% above AIRSPEED_STALL(if set). 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="SCALING_SPEED valid" name="ARM_P_SCALING" documentation="Validate that SCALING_SPEED is within 20% of AIRSPEED_CRUISE. If SCALING_SPEED changes the vehicle may need to be retuned. 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="RTL_ALTITUDE should be a valid value" name="ARM_P_RTL_ALT" documentation="RTL_ALTITITUDE should be &lt; 120m (400ft). 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="Q_RTL_ALT should be a valid value" name="ARM_P_QRTL_ALT" documentation="Q_RTL_ALT should be &lt; 120m (400ft). 3 or less to prevent arming. -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Emergency(PreArm)</value>
          <value code="1">Alert(PreArm)</value>
          <value code="2">Critical(PreArm)</value>
          <value code="3">Error(PreArm)</value>
          <value code="4">Warning</value>
          <value code="5">Notice</value>
          <value code="6">Info</value>
          <value code="7">Debug</value>
        </values>
      </param>
      <param humanName="Legal max altitude" name="ARM_V_ALT_LEGAL" documentation="Legal max altitude for UAV/RPAS/drones in your jurisdiction" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="enable battery info support" name="BTAG_ENABLE" documentation="enable battery info support" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="max battery cycles" name="BTAG_MAX_CYCLES" documentation="max battery cycles for arming" user="Standard">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="current battery cycles" name="BTAG_CUR_CYCLES" documentation="this is the highest value for battery cycles for all connected batteries" user="Advanced">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Count of SOC estimators" name="BATT_SOC_COUNT" documentation="Number of battery SOC estimators" user="Standard">
        <field name="Range">0 4</field>
      </param>
      <param humanName="Battery estimator index" name="BATT_SOC1_IDX" documentation="Battery estimator index" user="Standard">
        <field name="Range">0 4</field>
      </param>
      <param humanName="Battery estimator cell count" name="BATT_SOC1_NCELL" documentation="Battery estimator cell count" user="Standard">
        <field name="Range">0 48</field>
      </param>
      <param humanName="Battery estimator coefficient1" name="BATT_SOC1_C1" documentation="Battery estimator coefficient1" user="Standard">
        <field name="Range">100 200</field>
      </param>
      <param humanName="Battery estimator coefficient2" name="BATT_SOC1_C2" documentation="Battery estimator coefficient2" user="Standard">
        <field name="Range">2 5</field>
      </param>
      <param humanName="Battery estimator coefficient3" name="BATT_SOC1_C3" documentation="Battery estimator coefficient3" user="Standard">
        <field name="Range">0.01 0.5</field>
      </param>
      <param humanName="Battery estimator coefficient4" name="BATT_SOC1_C4" documentation="Battery estimator coefficient4" user="Standard">
        <field name="Range">5 100</field>
      </param>
      <param humanName="Battery estimator index" name="BATT_SOC2_IDX" documentation="Battery estimator index" user="Standard">
        <field name="Range">0 4</field>
      </param>
      <param humanName="Battery estimator cell count" name="BATT_SOC2_NCELL" documentation="Battery estimator cell count" user="Standard">
        <field name="Range">0 48</field>
      </param>
      <param humanName="Battery estimator coefficient1" name="BATT_SOC2_C1" documentation="Battery estimator coefficient1" user="Standard">
        <field name="Range">100 200</field>
      </param>
      <param humanName="Battery estimator coefficient2" name="BATT_SOC2_C2" documentation="Battery estimator coefficient2" user="Standard">
        <field name="Range">2 5</field>
      </param>
      <param humanName="Battery estimator coefficient3" name="BATT_SOC2_C3" documentation="Battery estimator coefficient3" user="Standard">
        <field name="Range">0.01 0.5</field>
      </param>
      <param humanName="Battery estimator coefficient4" name="BATT_SOC2_C4" documentation="Battery estimator coefficient4" user="Standard">
        <field name="Range">5 100</field>
      </param>
      <param humanName="Battery estimator index" name="BATT_SOC3_IDX" documentation="Battery estimator index" user="Standard">
        <field name="Range">0 4</field>
      </param>
      <param humanName="Battery estimator cell count" name="BATT_SOC3_NCELL" documentation="Battery estimator cell count" user="Standard">
        <field name="Range">0 48</field>
      </param>
      <param humanName="Battery estimator coefficient1" name="BATT_SOC3_C1" documentation="Battery estimator coefficient1" user="Standard">
        <field name="Range">100 200</field>
      </param>
      <param humanName="Battery estimator coefficient2" name="BATT_SOC3_C2" documentation="Battery estimator coefficient2" user="Standard">
        <field name="Range">2 5</field>
      </param>
      <param humanName="Battery estimator coefficient3" name="BATT_SOC3_C3" documentation="Battery estimator coefficient3" user="Standard">
        <field name="Range">0.01 0.5</field>
      </param>
      <param humanName="Battery estimator coefficient4" name="BATT_SOC3_C4" documentation="Battery estimator coefficient4" user="Standard">
        <field name="Range">5 100</field>
      </param>
      <param humanName="Battery estimator index" name="BATT_SOC4_IDX" documentation="Battery estimator index" user="Standard">
        <field name="Range">0 4</field>
      </param>
      <param humanName="Battery estimator cell count" name="BATT_SOC4_NCELL" documentation="Battery estimator cell count" user="Standard">
        <field name="Range">0 48</field>
      </param>
      <param humanName="Battery estimator coefficient1" name="BATT_SOC4_C1" documentation="Battery estimator coefficient1" user="Standard">
        <field name="Range">100 200</field>
      </param>
      <param humanName="Battery estimator coefficient2" name="BATT_SOC4_C2" documentation="Battery estimator coefficient2" user="Standard">
        <field name="Range">2 5</field>
      </param>
      <param humanName="Battery estimator coefficient3" name="BATT_SOC4_C3" documentation="Battery estimator coefficient3" user="Standard">
        <field name="Range">0.01 0.5</field>
      </param>
      <param humanName="Battery estimator coefficient4" name="BATT_SOC4_C4" documentation="Battery estimator coefficient4" user="Standard">
        <field name="Range">5 100</field>
      </param>
      <param humanName="Camera1 Thermal Palette" name="CAM1_THERM_PAL" documentation="thermal image colour palette" user="Standard">
        <values>
          <value code="-1">Leave Unchanged</value>
          <value code="0">WhiteHot</value>
          <value code="2">Sepia</value>
          <value code="3">IronBow</value>
          <value code="4">Rainbow</value>
          <value code="5">Night</value>
          <value code="6">Aurora</value>
          <value code="7">RedHot</value>
          <value code="8">Jungle</value>
          <value code="9">Medical</value>
          <value code="10">BlackHot</value>
          <value code="11">GloryHot</value>
        </values>
      </param>
      <param humanName="Camera1 Thermal Gain" name="CAM1_THERM_GAIN" documentation="thermal image temperature range" user="Standard">
        <values>
          <value code="-1">Leave Unchanged</value>
          <value code="0">LowGain (50C to 550C)</value>
          <value code="1">HighGain (-20C to 150C)</value>
        </values>
      </param>
      <param humanName="Camera1 Thermal Raw Data" name="CAM1_THERM_RAW" documentation="save images with raw temperatures" user="Standard">
        <values>
          <value code="-1">Leave Unchanged</value>
          <value code="0">Disabled (30fps)</value>
          <value code="1">Enabled (25 fps)</value>
        </values>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Deadreckoning Enable" name="DR_ENABLE" documentation="Deadreckoning Enable" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Deadreckoning Enable Distance" name="DR_ENABLE_DIST" documentation="Distance from home (in meters) beyond which the dead reckoning will be enabled" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Deadreckoning GPS speed accuracy maximum threshold" name="DR_GPS_SACC_MAX" documentation="GPS speed accuracy maximum, above which deadreckoning home will begin (default is 0.8).  Lower values trigger with good GPS quality, higher values will allow poorer GPS before triggering. Set to 0 to disable use of GPS speed accuracy" user="Standard">
        <field name="Range">0 10</field>
      </param>
      <param humanName="Deadreckoning GPS satellite count min threshold" name="DR_GPS_SAT_MIN" documentation="GPS satellite count threshold below which deadreckoning home will begin (default is 6).  Higher values trigger with good GPS quality, Lower values trigger with worse GPS quality. Set to 0 to disable use of GPS satellite count" user="Standard">
        <field name="Range">0 30</field>
      </param>
      <param humanName="Deadreckoning GPS check trigger seconds" name="DR_GPS_TRIGG_SEC" documentation="GPS checks must fail for this many seconds before dead reckoning will be triggered" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Deadreckoning Lean Angle" name="DR_FLY_ANGLE" documentation="lean angle (in degrees) during deadreckoning" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 45</field>
      </param>
      <param humanName="Deadreckoning Altitude Min" name="DR_FLY_ALT_MIN" documentation="Copter will fly at at least this altitude (in meters) above home during deadreckoning" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 1000</field>
      </param>
      <param humanName="Deadreckoning flight timeout" name="DR_FLY_TIMEOUT" documentation="Copter will attempt to switch to NEXT_MODE after this many seconds of deadreckoning.  If it cannot switch modes it will continue in Guided_NoGPS.  Set to 0 to disable timeout" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Deadreckoning Next Mode" name="DR_NEXT_MODE" documentation="Copter switch to this mode after GPS recovers or DR_FLY_TIMEOUT has elapsed.  Default is 6/RTL.  Set to -1 to return to mode used before deadreckoning was triggered" user="Standard">
        <values>
          <value code="2">AltHold</value>
          <value code="3">Auto</value>
          <value code="4">Guided</value>
          <value code="5">Loiter</value>
          <value code="6">RTL</value>
          <value code="7">Circle</value>
          <value code="9">Land</value>
          <value code="16">PosHold</value>
          <value code="17">Brake</value>
          <value code="20">Guided_NoGPS</value>
          <value code="21">Smart_RTL</value>
          <value code="27">Auto RTL</value>
        </values>
      </param>
      <param humanName="Slung Payload enable" name="SLUP_ENABLE" documentation="Slung Payload enable" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Slung Payload Velocity P gain" name="SLUP_VEL_P" documentation="Slung Payload Velocity P gain, higher values will result in faster movements in sync with payload" user="Standard">
        <field name="Range">0 0.8</field>
      </param>
      <param humanName="Slung Payload horizontal distance max" name="SLUP_DIST_MAX" documentation="Oscillation is suppressed when vehicle and payload are no more than this distance horizontally.  Set to 0 to always suppress" user="Standard">
        <field name="Range">0 30</field>
      </param>
      <param humanName="Slung Payload mavlink system id" name="SLUP_SYSID" documentation="Slung Payload mavlink system id.  0 to use any/all system ids" user="Standard">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Slung Payload return to WP position P gain" name="SLUP_WP_POS_P" documentation="WP position P gain. higher values will result in vehicle moving more quickly back to the original waypoint" user="Standard">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Slung Payload resting offset estimate filter time constant" name="SLUP_RESTOFS_TC" documentation="payload's position estimator's time constant used to compensate for GPS errors and wind.  Higher values result in smoother estimate but slower response" user="Standard">
        <field name="Range">1 20</field>
      </param>
      <param humanName="Slung Payload debug output" name="SLUP_DEBUG" documentation="Slung payload debug output, set to 1 to enable debug" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="terrain brake enable" name="TERR_BRK_ENABLE" documentation="terrain brake enable" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="terrain brake altitude" name="TERR_BRK_ALT" documentation="terrain brake altitude. The altitude above the ground below which BRAKE mode will be engaged if in LOITER mode." user="Standard">
        <field name="Range">1 100</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="terrain brake home distance" name="TERR_BRK_HDIST" documentation="terrain brake home distance. The distance from home where the auto BRAKE will be enabled. When within this distance of home the script will not activate" user="Standard">
        <field name="Range">0 1000</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="terrain brake speed threshold" name="TERR_BRK_SPD" documentation="terrain brake speed threshold. Don't trigger BRAKE if both horizontal speed and descent rate are below this threshold. By setting this to a small value this can be used to allow the user to climb up to a safe altitude in LOITER mode. A value of 0.5 is recommended if you want to use LOITER to recover from an emergency terrain BRAKE mode change." user="Standard">
        <field name="Range">0 5</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Follow Target Send Enable" name="FOLT_ENABLE" documentation="Follow Target Send Enable" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Follow Target Send MAVLink Channel" name="FOLT_MAV_CHAN" documentation="MAVLink channel to which FOLLOW_TARGET should be sent" user="Standard">
        <field name="Range">0 10</field>
      </param>
      <param humanName="Mount POI distance max" name="POI_DIST_MAX" documentation="POI's max distance (in meters) from the vehicle" user="Standard">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="enable web server" name="WEB_ENABLE" documentation="enable web server" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="web server TCP port" name="WEB_BIND_PORT" documentation="web server TCP port" user="Standard">
        <field name="Range">1 65535</field>
      </param>
      <param humanName="web server debugging" name="WEB_DEBUG" documentation="web server debugging" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="web server block size" name="WEB_BLOCK_SIZE" documentation="web server block size for download" user="Advanced">
        <field name="Range">1 65535</field>
      </param>
      <param humanName="web server timeout" name="WEB_TIMEOUT" documentation="timeout for inactive connections" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0.1 60</field>
      </param>
      <param humanName="web server minimum file size for sendfile" name="WEB_SENDFILE_MIN" documentation="sendfile is an offloading mechanism for faster file download. If this is non-zero and the file is larger than this size then sendfile will be used for file download" user="Advanced">
        <field name="Range">0 10000000</field>
      </param>
      <param humanName="Param Lockdown enable" name="PARAM_LOCK_ENAB" documentation="Param Lockdown enable" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Plane Follow lost target mode" name="FOLLP_FAIL_MODE" documentation="Mode to switch to if the target is lost (no signal or &gt; FOLL_DIST_MAX)." user="Standard">
</param>
      <param humanName="Plane Follow exit mode" name="FOLLP_EXIT_MODE" documentation="Mode to switch to when follow mode is exited normally" user="Standard">
</param>
      <param humanName="Plane Follow Scripting ActivationFunction" name="FOLLP_ACT_FN" documentation="Setting an RC channel's _OPTION to this value will use it for Plane Follow enable/disable">
        <field name="Range">300 307</field>
      </param>
      <param humanName="Plane Follow Telemetry Timeout" name="FOLLP_TIMEOUT" documentation="How long to try reaquire a target if telemetry from the lead vehicle is lost.">
        <field name="Range">0 30</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Plane Follow Scripting Overshoot Angle" name="FOLLP_OVRSHT_DEG" documentation="If the target is greater than this many degrees left or right, assume an overshoot">
        <field name="Range">0 180</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Plane Follow Scripting Turn Angle" name="FOLLP_TURN_DEG" documentation="If the target is greater than this many degrees left or right, assume it's turning">
        <field name="Range">0 180</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Plane Follow Scripting Close Distance" name="FOLLP_DIST_CLOSE" documentation="When closer than this distance assume we track by heading">
        <field name="Range">0 100</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Plane Follow Scripting Wide Turns" name="FOLLP_WIDE_TURNS" documentation="Use wide turns when following a turning target. Alternative is &quot;cutting the corner&quot;">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Plane Follow Scripting Altitude Override" name="FOLLP_ALT" documentation="When non zero, this altitude value (in FOLL_ALT_TYPE frame) overrides the value sent by the target vehicle">
        <field name="Range">0 1000</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Plane Follow Scripting distance P gain" name="FOLLP_D_P" documentation="P gain for the speed PID controller distance component">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Plane Follow Scripting distance I gain" name="FOLLP_D_I" documentation="I gain for the speed PID  distance component">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Plane Follow Scripting distance D gain" name="FOLLP_D_D" documentation="D gain for the speed PID controller distance component">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Plane Follow Scripting speed P gain" name="FOLLP_V_P" documentation="P gain for the speed PID controller velocity component">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Plane Follow Scripting speed I gain" name="FOLLP_V_I" documentation="I gain for the speed PID controller velocity component">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Plane Follow Scripting speed D gain" name="FOLLP_V_D" documentation="D gain for the speed PID controller velocity component">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Plane Follow Lookahead seconds" name="FOLLP_LkAHD" documentation="Time to &quot;lookahead&quot; when calculating distance errors">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Plane Follow Simulate Telemetry fail function" name="FOLLP_SIM_TLF_FN" documentation="Set this switch to simulate losing telemetry from the other vehicle">
        <field name="Range">300 307</field>
      </param>
      <param humanName="Plane Follow crosstrack PID controller P term" name="FOLLP_XT_P" documentation="P term for the crosstrack/heading PID controller">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Plane Follow crosstrack PID controller I term" name="FOLLP_XT_I" documentation="I term for the crosstrack/heading PID controller">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Plane Follow crosstrack PID controller D term" name="FOLLP_XT_D" documentation="D term for the crosstrack/heading PID controller">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Plane Follow crosstrack PID controller maximum correction" name="FOLLP_XT_MAX" documentation="maximum correction retured by the crosstrack/heading PID controller">
        <field name="Range">0 1</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Plane Follow crosstrack PID controller maximum integral" name="FOLLP_XT_I_MAX" documentation="maximum I applied the crosstrack/heading PID controller">
        <field name="Range">0 100</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="Plane Follow refresh rate" name="FOLLP_REFRESH" documentation="refresh rate for Plane Follow updates">
        <field name="Range">0 0.2</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Precland altitude cutoff" name="PLND_ALT_CUTOFF" documentation="The altitude (rangefinder distance) below which we stop using the precision landing sensor and continue landing" user="Standard">
        <field name="Range">0 20</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Precland distance cutoff" name="DIST_CUTOFF" documentation="The distance from target beyond which the target is ignored" user="Standard">
        <field name="Range">0 100</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Ship landing enable" name="SHIP_ENABLE" documentation="Enable ship landing system" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Ship landing angle" name="SHIP_LAND_ANGLE" documentation="Angle from the stern of the ship for landing approach. Use this to ensure that on a go-around that ship superstructure and cables are avoided. A value of zero means to approach from the rear of the ship. A value of 90 means the landing will approach from the port (left) side of the ship. A value of -90 will mean approaching from the starboard (right) side of the ship. A value of 180 will approach from the bow of the ship. This parameter is combined with the sign of the RTL_RADIUS parameter to determine the holdoff pattern. If RTL_RADIUS is positive then a clockwise loiter is performed, if RTL_RADIUS is negative then a counter-clockwise loiter is used." user="Standard">
        <field name="Range">-180 180</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Ship automatic offset trigger" name="SHIP_AUTO_OFS" documentation="Settings this parameter to one triggers an automatic follow offset calculation based on current position of the vehicle and the landing target. NOTE: This parameter will auto-reset to zero once the offset has been calculated." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Trigger</value>
        </values>
      </param>
      <param humanName="Activation Function for Terrain Avoidance" name="TA_ACT_FN" documentation="Setting an RC channel's _OPTION to this value will use it for Terrain Avoidance enable/disable">
        <field name="Range">300 307</field>
      </param>
      <param humanName="down distance minimum for Pitching" name="TA_PTCH_DWN_MIN" documentation="If the downward distance is less than this value then start Pitching up to gain altitude.">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="forward distance minimum for Pitching" name="TA_PTCH_FWD_MIN" documentation="If the farwardward distance is less than this value then start Pitching up to gain altitude.">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Downward distance minimum Quading" name="TA_QUAD_DWN_MIN" documentation="If the downward distance is less than this value then start Quading up to gain altitude.">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="minimum forward distance for Quading" name="TA_QUAD_FWD_MIN" documentation="If the farwardward distance is less than this value then start Quading up to gain altitude.">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="minimum ground speed for Pitching" name="TA_PTCH_GSP_MIN" documentation="Minimum Groundspeed (not airspeed) to be flying for Pitching to be used.">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="timeout Pitching" name="TA_PTCH_TIMEOUT" documentation="Minimum down or forward distance must be triggered for more than this many seconds to start Pitching">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="safe distance around home" name="TA_HOME_DIST" documentation="Terrain avoidance will not be applied if the vehicle is less than this distance from home">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="ceiling for pitching/quading" name="TA_ALT_MAX" documentation="This is a limit on how high the terrain avoidane will take the vehicle. It acts a failsafe to prevent vertical flyaways.">
        <field name="Range">20 1000</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Maximum Groundspeed" name="TA_GSP_MAX" documentation="This is a limit on how fast in groundspeeed terrain avoidance will take the vehicle. This is to allow for reliable sensor readings. -1 for disabled.">
        <field name="Range">10 40</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Groudspeed Airbrake limt" name="TA_GSP_AIRBRAKE" documentation="This is the limit for triggering airbrake to slow groundspeed as a difference between the airspeed and groundspeed. -1 for disabled.">
        <field name="Range">-1 -10</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="CMTC Height" name="TA_CMTC_HGT" documentation="The minimum Height above terrain to maintain when following an AUTO mission or RTL. If zero(0) use TA_PTCH_DOW_MIN.">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="CMTC Enable" name="TA_CMTC_ENABLE" documentation="Whether to enable Can't Make That Climb while running Terrain Avoidance">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Frequency to process avoidance" name="TA_UPDATE_RATE" documentation="Avoidance processing rate">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="CMTC loiter radius" name="TA_CMTC_RAD" documentation="Use this radius for the loiter when trying to gain altitude. If not set or &lt;=0 use WP_LOITER_RAD">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="parameter reversion enable" name="PREV_ENABLE" documentation="Enable parameter reversion system" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="param reversion RC function" name="PREV_RC_FUNC" documentation="RCn_OPTION number to used to trigger parameter reversion" user="Standard">
</param>
      <param humanName="Force enable High Latency mode" name="RK9_FORCEHL" documentation="Automatically enables High Latency mode if not already enabled" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Enabled on telemetry loss</value>
        </values>
      </param>
      <param humanName="Update rate" name="RK9_PERIOD" documentation="When in High Latency mode, send Rockblock updates every N seconds" user="Standard">
        <field name="Range">0 600</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Display Rockblock debugging text" name="RK9_DEBUG" documentation="Sends Rockblock debug text to GCS via statustexts" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Enable Message transmission" name="RK9_ENABLE" documentation="Enables the Rockblock sending and recieving" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GCS timeout to start sendin Rockblock messages" name="RK9_TIMEOUT" documentation="If RK9_FORCEHL=2, this is the number of seconds of GCS timeout until High Latency mode is auto-enabled" user="Standard">
        <field name="Range">0 600</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Rockblock Serial Port" name="RK9_SERPORT" documentation="Serial port number to which the Rockblock is connected.This is the index of the SERIALn_ ports that are set to 28 for &quot;scripting&quot;" user="Standard">
        <field name="Range">0 8</field>
      </param>
      <param humanName="Rockblock Scripting Serial Port" name="RK9_SCRPORT" documentation="Scripting Serial port number to which the Rockblock is connected for HL2 messages This is the index of the SCR_SDEV ports that are set to 2 for &quot;MavlinkHL&quot;" user="Standard">
        <field name="Range">0 8</field>
      </param>
      <param humanName="Rockblock Power Relay" name="RK9_RELAY" documentation="RELAYn output to control Rockblock power. This connects to I_EN on the Rockblock header." user="Standard">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Rockblock booted feedback" name="RK9_BOOTED" documentation="SERVOn GPIO channel that reads the Rockblock booted state. This connects to I_BTD on the Rockblock header. Requires SERVON_FUNCTION=-1" user="Standard">
        <field name="Range">50 110</field>
      </param>
      <param humanName="Force enable High Latency mode" name="RCK_FORCEHL" documentation="Automatically enables High Latency mode if not already enabled" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Enabled on telemetry loss</value>
        </values>
      </param>
      <param humanName="Update rate" name="RCK_PERIOD" documentation="When in High Latency mode, send Rockblock updates every N seconds" user="Standard">
        <field name="Range">0 600</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Display Rockblock debugging text" name="RCK_DEBUG" documentation="Sends Rockblock debug text to GCS via statustexts" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Enable Message transmission" name="RCK_ENABLE" documentation="Enables the Rockblock sending and recieving" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GCS timeout to start sendin Rockblock messages" name="RCK_TIMEOUT" documentation="If RCK_FORCEHL=2, this is the number of seconds of GCS timeout until High Latency mode is auto-enabled" user="Standard">
        <field name="Range">0 600</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Rover Quicktune enable" name="RTUN_ENABLE" documentation="Enable quicktune system" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Rover Quicktune axes" name="RTUN_AXES" documentation="axes to tune" user="Standard">
        <bitmask>
          <bit code="0">Steering</bit>
          <bit code="1">Speed</bit>
        </bitmask>
        <field name="Bitmask">0:Steering,1:Speed</field>
      </param>
      <param humanName="Rover Quicktune Steering Rate FeedForward ratio" name="RTUN_STR_FFRATIO" documentation="Ratio between measured response and FF gain. Raise this to get a higher FF gain" user="Standard">
        <field name="Range">0 1.0</field>
      </param>
      <param humanName="Rover Quicktune Steering FF to P ratio" name="RTUN_STR_P_RATIO" documentation="Ratio between steering FF and P gains. Raise this to get a higher P gain, 0 to leave P unchanged" user="Standard">
        <field name="Range">0 2.0</field>
      </param>
      <param humanName="Rover Quicktune Steering FF to I ratio" name="RTUN_STR_I_RATIO" documentation="Ratio between steering FF and I gains. Raise this to get a higher I gain, 0 to leave I unchanged" user="Standard">
        <field name="Range">0 2.0</field>
      </param>
      <param humanName="Rover Quicktune Speed FeedForward (equivalent) ratio" name="RTUN_SPD_FFRATIO" documentation="Ratio between measured response and CRUISE_THROTTLE value. Raise this to get a higher CRUISE_THROTTLE value" user="Standard">
        <field name="Range">0 1.0</field>
      </param>
      <param humanName="Rover Quicktune Speed FF to P ratio" name="RTUN_SPD_P_RATIO" documentation="Ratio between speed FF and P gain. Raise this to get a higher P gain, 0 to leave P unchanged" user="Standard">
        <field name="Range">0 2.0</field>
      </param>
      <param humanName="Rover Quicktune Speed FF to I ratio" name="RTUN_SPD_I_RATIO" documentation="Ratio between speed FF and I gain. Raise this to get a higher I gain, 0 to leave I unchanged" user="Standard">
        <field name="Range">0 2.0</field>
      </param>
      <param humanName="Rover Quicktune auto filter enable" name="RTUN_AUTO_FILTER" documentation="When enabled the PID filter settings are automatically set based on INS_GYRO_FILTER" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Rover Quicktune auto save" name="RTUN_AUTO_SAVE" documentation="Number of seconds after completion of tune to auto-save. This is useful when using a 2 position switch for quicktune" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Rover Quicktune RC function" name="RTUN_RC_FUNC" documentation="RCn_OPTION number to use to control tuning stop/start/save" user="Standard">
        <values>
          <value code="300">Scripting1</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
        </values>
      </param>
      <param humanName="Rover Quicktune minimum speed for tuning" name="RTUN_SPEED_MIN" documentation="The mimimum speed in m/s required for tuning to start" user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0.1 0.5</field>
      </param>
      <param humanName="AUX function to kill engine" name="THR_KILL_FUNC" documentation="AUX function to kill engine. This can be activated either with a RCn_OPTION and a R/C switch or with a ground station auxilliary function" user="Standard">
        <field name="Range">300 307</field>
      </param>
      <param humanName="PWM on kill active" name="THR_KILL_PWM" documentation="PWM on kill active" user="Standard">
        <field name="Range">800 2200</field>
      </param>
      <param humanName="output channel to change on throttle kill" name="THR_KILL_CHAN" documentation="output channel to change on throttle kill, a value of zero disables the feature" user="Standard">
        <field name="Range">0 32</field>
      </param>
      <param humanName="auxilliary value to kill throttle" name="THR_KILL_VAL" documentation="auxilliary value to kill throttle. Set to 2 to kill the throttle when the auxilliary is high. Set to 0 to kill when auxilliary is low" user="Standard">
        <field name="Range">0 2</field>
      </param>
      <param humanName="throttle kill default value" name="THR_KILL_DEF" documentation="throttle kill default value. The default auxilliary function position on boot" user="Standard">
        <field name="Range">0 2</field>
      </param>
      <param humanName="Auto land enable" name="ALAND_ENABLE" documentation="enable Auto land script action" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Final approach waypoint alt" name="ALAND_WP_ALT" documentation="Altitude of final approach waypoint created by script" user="Standard">
        <field name="Range">1 100</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Final approach waypoint distance" name="ALAND_WP_DIST" documentation="Distance from landing point (HOME) to final approach waypoint created by script in the opposite direction of initial takeoff" user="Standard">
        <field name="Range">0 1000</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Camera1 Video Stream Camera Model" name="VID1_CAMMODEL" documentation="Video stream camera model" user="Standard">
        <values>
          <value code="0">Unknown</value>
          <value code="1">Siyi A8</value>
          <value code="2">Siyi ZR10</value>
          <value code="3">Siyi ZR30</value>
          <value code="4">Siyi ZT30 Zoom</value>
          <value code="5">Siyi ZT30 Wide</value>
          <value code="6">Siyi ZT30 IR</value>
          <value code="7">Siyi ZT6 RGB</value>
          <value code="8">Siyi ZT6 IR</value>
          <value code="9">Herelink WifiAP</value>
          <value code="10">Herelink USB-tethering</value>
          <value code="11">Topotek 1080p</value>
          <value code="12">Topotek 480p</value>
          <value code="13">Viewpro</value>
        </values>
      </param>
      <param humanName="Camera1 Video Stream Id" name="VID1_ID" documentation="Video stream id" user="Standard">
        <field name="Range">0 50</field>
      </param>
      <param humanName="Camera1 Video Stream Type" name="VID1_TYPE" documentation="Video stream type" user="Standard">
        <values>
          <value code="0">RTSP</value>
          <value code="1">RTPUDP</value>
          <value code="2">TCP_MPEG</value>
          <value code="3">MPEG_TS</value>
        </values>
      </param>
      <param humanName="Camera1 Video Stream Flags" name="VID1_FLAG" documentation="Video stream flags" user="Standard">
        <bitmask>
          <bit code="0">Running</bit>
          <bit code="1">Thermal</bit>
          <bit code="2">Thermal Range Enabled</bit>
        </bitmask>
        <field name="Bitmask">0:Running,1:Thermal,2:Thermal Range Enabled</field>
      </param>
      <param humanName="Camera1 Video Stream Frame Rate" name="VID1_FRAME_RATE" documentation="Video stream frame rate" user="Standard">
        <field name="Range">0 50</field>
      </param>
      <param humanName="Camera1 Video Stream Horizontal Resolution" name="VID1_HRES" documentation="Video stream horizontal resolution" user="Standard">
        <field name="Range">0 4096</field>
      </param>
      <param humanName="Camera1 Video Stream Vertical Resolution" name="VID1_VRES" documentation="Video stream vertical resolution" user="Standard">
        <field name="Range">0 4096</field>
      </param>
      <param humanName="Camera1 Video Stream Bitrate" name="VID1_BITRATE" documentation="Video stream bitrate" user="Standard">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Camera1 Video Stream Horizontal FOV" name="VID1_HFOV" documentation="Video stream horizontal FOV" user="Standard">
        <field name="Range">0 360</field>
      </param>
      <param humanName="Camera1 Video Stream Encoding" name="VID1_ENCODING" documentation="Video stream encoding" user="Standard">
        <values>
          <value code="0">Unknown</value>
          <value code="1">H264</value>
          <value code="2">H265</value>
        </values>
      </param>
      <param humanName="Camera1 Video Stream IP Address 0" name="VID1_IPADDR0" documentation="Video stream IP Address first octet" user="Standard">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Camera1 Video Stream IP Address 1" name="VID1_IPADDR1" documentation="Video stream IP Address second octet" user="Standard">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Camera1 Video Stream IP Address 2" name="VID1_IPADDR2" documentation="Video stream IP Address third octet" user="Standard">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Camera1 Video Stream IP Address 3" name="VID1_IPADDR3" documentation="Video stream IP Address fourth octet" user="Standard">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Camera1 Video Stream IP Address Port" name="VID1_IPPORT" documentation="Video stream IP Address Port" user="Standard">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Quicktune enable" name="QUIK_ENABLE" documentation="Enable quicktune system" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Quicktune axes" name="QUIK_AXES" documentation="axes to tune" user="Standard">
        <bitmask>
          <bit code="0">Roll</bit>
          <bit code="1">Pitch</bit>
          <bit code="2">Yaw</bit>
        </bitmask>
        <field name="Bitmask">0:Roll,1:Pitch,2:Yaw</field>
      </param>
      <param humanName="Quicktune doubling time" name="QUIK_DOUBLE_TIME" documentation="Time to double a tuning parameter. Raise this for a slower tune." user="Standard">
        <field name="Range">5 20</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Quicktune gain margin" name="QUIK_GAIN_MARGIN" documentation="Reduction in gain after oscillation detected. Raise this number to get a more conservative tune" user="Standard">
        <field name="Range">20 80</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Quicktune oscillation rate threshold" name="QUIK_OSC_SMAX" documentation="Threshold for oscillation detection. A lower value will lead to a more conservative tune." user="Standard">
        <field name="Range">1 10</field>
      </param>
      <param humanName="Quicktune Yaw P max" name="QUIK_YAW_P_MAX" documentation="Maximum value for yaw P gain" user="Standard">
        <field name="Range">0.1 3</field>
      </param>
      <param humanName="Quicktune Yaw D max" name="QUIK_YAW_D_MAX" documentation="Maximum value for yaw D gain" user="Standard">
        <field name="Range">0.001 1</field>
      </param>
      <param humanName="Quicktune roll/pitch PI ratio" name="QUIK_RP_PI_RATIO" documentation="Ratio between P and I gains for roll and pitch. Raise this to get a lower I gain" user="Standard">
        <field name="Range">0.5 1.0</field>
      </param>
      <param humanName="Quicktune Yaw PI ratio" name="QUIK_Y_PI_RATIO" documentation="Ratio between P and I gains for yaw. Raise this to get a lower I gain" user="Standard">
        <field name="Range">0.5 20</field>
      </param>
      <param humanName="Quicktune auto filter enable" name="QUIK_AUTO_FILTER" documentation="When enabled the PID filter settings are automatically set based on INS_GYRO_FILTER" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Quicktune auto save" name="QUIK_AUTO_SAVE" documentation="Number of seconds after completion of tune to auto-save. This is useful when using a 2 position switch for quicktune" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Quicktune RC function" name="QUIK_RC_FUNC" documentation="RCn_OPTION number to use to control tuning stop/start/save" user="Standard">
</param>
      <param humanName="Quicktune maximum gain reduction" name="QUIK_MAX_REDUCE" documentation="This controls how much quicktune is allowed to lower gains from the original gains. If the vehicle already has a reasonable tune and is not oscillating then you can set this to zero to prevent gain reductions. The default of 20% is reasonable for most vehicles. Using a maximum gain reduction lowers the chance of an angle P oscillation happening if quicktune gets a false positive oscillation at a low gain, which can result in very low rate gains and a dangerous angle P oscillation." user="Standard">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">0 100</field>
      </param>
      <param humanName="Quicktune options" name="QUIK_OPTIONS" documentation="Additional options. When the Two Position Switch option is enabled then a high switch position will start the tune, low will disable the tune. you should also set a QUIK_AUTO_SAVE time so that you will be able to save the tune." user="Standard">
        <bitmask>
          <bit code="0">UseTwoPositionSwitch</bit>
        </bitmask>
        <field name="Bitmask">0:UseTwoPositionSwitch</field>
      </param>
      <param humanName="maximum angle error for tune abort" name="QUIK_ANGLE_MAX" documentation="If while tuning the angle error goes over this limit then the tune will aborts to prevent a bad oscillation in the case of the tuning algorithm failing. If you get an error &quot;Tuning: attitude error ABORTING&quot; and you think it is a false positive then you can either raise this parameter or you can try increasing the QUIK_DOUBLE_TIME to do the tune more slowly. A value of zero disables this check." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="WinchControl Rate Up" name="WINCH_RATE_UP" documentation="Maximum rate when retracting line" user="Standard">
        <field name="Range">0.1 5.0</field>
      </param>
      <param humanName="WinchControl Rate Down" name="WINCH_RATE_DN" documentation="Maximum rate when releasing line" user="Standard">
        <field name="Range">0.1 5.0</field>
      </param>
      <param humanName="Winch Rate Control RC function" name="WINCH_RC_FUNC" documentation="RCn_OPTION number to use to control winch rate" user="Standard">
        <values>
          <value code="300">Scripting1</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
        </values>
      </param>
      <param humanName="CoG adjustment ratio" name="CGA_RATIO" documentation="The ratio between the front and back motor outputs during steady-state hover. Positive when the CoG is in front of the motors midpoint (front motors work harder)." user="Advanced">
        <field name="Range">0.5 2</field>
      </param>
      <param humanName="Angular acceleration limit" name="AEROM_ANG_ACCEL" documentation="Maximum angular acceleration in maneuvers">
        <field name="Units">deg/s/s</field>
        <field name="UnitText">degrees per square second</field>
      </param>
      <param humanName="Roll control filtertime constant" name="AEROM_ANG_TC" documentation="This is the time over which we filter the desired roll to smooth it">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Throttle feed forward from pitch" name="AEROM_THR_PIT_FF" documentation="This controls how much extra throttle to add based on pitch ange. The value is for 90 degrees and is applied in proportion to pitch">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="P gain for speed controller" name="AEROM_SPD_P" documentation="This controls how rapidly the throttle is raised to compensate for a speed error">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="I gain for speed controller" name="AEROM_SPD_I" documentation="This controls how rapidly the throttle is raised to compensate for a speed error">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Roll control time constant" name="AEROM_ROL_COR_TC" documentation="This is the time constant for correcting roll errors. A smaller value leads to faster roll corrections">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Time constant for correction of our distance along the path" name="AEROM_TIME_COR_P" documentation="This is the time constant for correcting path position errors">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="P gain for path error corrections" name="AEROM_ERR_COR_P" documentation="This controls how rapidly we correct back onto the desired path">
</param>
      <param humanName="D gain for path error corrections" name="AEROM_ERR_COR_D" documentation="This controls how rapidly we correct back onto the desired path">
</param>
      <param humanName="The roll rate to use when entering a roll maneuver" name="AEROM_ENTRY_RATE" documentation="This controls how rapidly we roll into a new orientation">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
      </param>
      <param humanName="The lookahead for throttle control" name="AEROM_THR_LKAHD" documentation="This controls how far ahead we look in time along the path for the target throttle">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Debug control" name="AEROM_DEBUG" documentation="This controls the printing of extra debug information on paths">
</param>
      <param humanName="Minimum Throttle" name="AEROM_THR_MIN" documentation="Lowest throttle used during maneuvers">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Throttle boost" name="AEROM_THR_BOOST" documentation="This is the extra throttle added in schedule elements marked as needing a throttle boost">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Yaw acceleration" name="AEROM_YAW_ACCEL" documentation="This is maximum yaw acceleration to use">
        <field name="Units">deg/s/s</field>
        <field name="UnitText">degrees per square second</field>
      </param>
      <param humanName="Lookahead" name="AEROM_LKAHD" documentation="This is how much time to look ahead in the path for calculating path rates">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Path Scale" name="AEROM_PATH_SCALE" documentation="Scale factor for Path/Box size. 0.5 would half the distances in maneuvers. Radii are unaffected.">
        <field name="Range">0.1 100</field>
      </param>
      <param humanName="Box Width" name="AEROM_BOX_WIDTH" documentation="Length of aerobatic &quot;box&quot;">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Stall turn throttle" name="AEROM_STALL_THR" documentation="Amount of throttle to reduce to for a stall turn">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Stall turn pitch threshold" name="AEROM_STALL_PIT" documentation="Pitch threashold for moving to final stage of stall turn">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="KnifeEdge Rudder" name="AEROM_KE_RUDD" documentation="Percent of rudder normally uses to sustain knife-edge at trick speed">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="KnifeEdge Rudder lookahead" name="AEROM_KE_RUDD_LK" documentation="Time to look ahead in the path to calculate rudder correction for bank angle">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Altitude Abort" name="AEROM_ALT_ABORT" documentation="Maximum allowable loss in altitude during a trick or sequence from its starting altitude.">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Timesync P gain" name="AEROM_TS_P" documentation="This controls how rapidly two aircraft are brought back into time sync">
</param>
      <param humanName="Timesync I gain" name="AEROM_TS_I" documentation="This controls how rapidly two aircraft are brought back into time sync">
</param>
      <param humanName="Timesync speed max" name="AEROM_TS_SPDMAX" documentation="This sets the maximum speed adjustment for time sync between aircraft">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Timesync rate of send of NAMED_VALUE_FLOAT data" name="AEROM_TS_RATE" documentation="This sets the rate we send data for time sync between aircraft">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Mission angle" name="AEROM_MIS_ANGLE" documentation="When set to a non-zero value, this is the assumed direction of the mission. Otherwise the waypoint angle is used">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Aerobatic options" name="AEROM_OPTIONS" documentation="Options to control aerobatic behavior">
        <bitmask>
          <bit code="0">UseRTLOnAbort</bit>
          <bit code="1">AddAtToMessages</bit>
          <bit code="2">DualAircraftSynchronised</bit>
        </bitmask>
        <field name="Bitmask">0:UseRTLOnAbort, 1:AddAtToMessages, 2:DualAircraftSynchronised</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Tricks on Switch Enable" name="TRIK_ENABLE" documentation="Enables Tricks on Switch. TRIK params hidden until enabled">
</param>
      <param humanName="Trik Selection Scripting Function" name="TRIK_SEL_FN" documentation="Setting an RC channel's _OPTION to this value will use it for trick selection">
        <field name="Range">301 307</field>
      </param>
      <param humanName="Trik Action Scripting Function" name="TRIK_ACT_FN" documentation="Setting an RC channel's _OPTION to this value will use it for trick action (abort,announce,execute)">
        <field name="Range">301 307</field>
      </param>
      <param humanName="Trik Count" name="TRIK_COUNT" documentation="Number of tricks which can be selected over the range of the trik selection RC channel">
        <field name="Range">1 11</field>
      </param>
      <param humanName="Enable ANX battery support" name="BATT_ANX_ENABLE" documentation="Enable ANX battery support" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Set ANX CAN driver" name="BATT_ANX_CANDRV" documentation="Set ANX CAN driver" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">1stCANDriver</value>
          <value code="2">2ndCanDriver</value>
        </values>
      </param>
      <param humanName="ANX CAN battery index" name="BATT_ANX_INDEX" documentation="ANX CAN battery index" user="Standard">
        <field name="Range">1 10</field>
      </param>
      <param humanName="ANX CAN battery options" name="BATT_ANX_OPTIONS" documentation="ANX CAN battery options" user="Advanced">
        <bitmask>
          <bit code="0">LogAllFrames</bit>
        </bitmask>
        <field name="Bitmask">0:LogAllFrames</field>
      </param>
      <param humanName="EFI DLA enable" name="EFI_DLA_ENABLE" documentation="Enable EFI DLA driver" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="EFI DLA fuel scale" name="EFI_DLA_LPS" documentation="EFI DLA litres of fuel per second of injection time" user="Standard">
        <field name="Range">0.00001 1</field>
        <field name="Units">litres</field>
        <field name="UnitText">litres</field>
      </param>
      <param humanName="EFI DLA64 enable" name="EFI_DLA64_ENABLE" documentation="Enable EFI DLA64 driver" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Enable Halo6000 EFI driver" name="EFI_H6K_ENABLE" documentation="Enable Halo6000 EFI driver" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Halo6000 CAN driver" name="EFI_H6K_CANDRV" documentation="Halo6000 CAN driver. Use 1 for first CAN scripting driver, 2 for 2nd driver" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">FirstCAN</value>
          <value code="2">SecondCAN</value>
        </values>
      </param>
      <param humanName="Halo6000 start auxilliary function" name="EFI_H6K_START_FN" documentation="The RC auxilliary function number for start/stop of the generator. Zero to disable start function" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="300">300</value>
          <value code="301">301</value>
          <value code="302">302</value>
          <value code="303">303</value>
          <value code="304">304</value>
          <value code="305">305</value>
          <value code="306">306</value>
          <value code="307">307</value>
        </values>
      </param>
      <param humanName="Halo6000 telemetry rate" name="EFI_H6K_TELEM_RT" documentation="The rate that additional generator telemetry is sent" user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Halo6000 total fuel capacity" name="EFI_H6K_FUELTOT" documentation="The capacity of the tank in litres" user="Standard">
        <field name="Units">litres</field>
        <field name="UnitText">litres</field>
      </param>
      <param humanName="Halo6000 options" name="EFI_H6K_OPTIONS" documentation="Halo6000 options" user="Standard">
        <bitmask>
          <bit code="0">LogAllCanPackets</bit>
        </bitmask>
        <field name="Bitmask">0:LogAllCanPackets</field>
      </param>
      <param humanName="Enable HFE EFI driver" name="EFI_HFE_ENABLE" documentation="Enable HFE EFI driver" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HFI EFI Update rate" name="EFI_HFE_RATE_HZ" documentation="HFI EFI Update rate" user="Standard">
        <field name="Range">0 400</field>
      </param>
      <param humanName="HFI EFI ECU index" name="EFI_HFE_ECU_IDX" documentation="HFI EFI ECU index, 0 for automatic" user="Standard">
        <field name="Range">0 10</field>
      </param>
      <param humanName="HFI EFI fuel density" name="EFI_HFE_FUEL_DTY" documentation="HFI EFI fuel density in gram per litre" user="Standard">
        <field name="Range">0 2000</field>
      </param>
      <param humanName="HFI EFI relay index" name="EFI_HFE_REL_IDX" documentation="HFI EFI relay index" user="Standard">
        <field name="Range">0 10</field>
      </param>
      <param humanName="HFI EFI CAN driver" name="EFI_HFE_CANDRV" documentation="HFI EFI CAN driver" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">1stCANDriver</value>
          <value code="2">2ndCanDriver</value>
        </values>
      </param>
      <param humanName="HFI EFI options" name="EFI_HFE_OPTIONS" documentation="HFI EFI options" user="Standard">
        <bitmask>
          <bit code="1">EnableCANLogging</bit>
        </bitmask>
        <field name="Bitmask">1:EnableCANLogging</field>
      </param>
      <param humanName="Enable NMEA 2000 EFI driver" name="EFI_2K_ENABLE" documentation="Enable NMEA 2000 EFI driver" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="NMEA 2000 CAN driver" name="EFI_2K_CANDRV" documentation="NMEA 2000 CAN driver. Use 1 for first CAN scripting driver, 2 for 2nd driver" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">FirstCAN</value>
          <value code="2">SecondCAN</value>
        </values>
      </param>
      <param humanName="NMEA 2000 options" name="EFI_2K_OPTIONS" documentation="NMEA 2000 driver options" user="Standard">
        <bitmask>
          <bit code="0">EnableLogging</bit>
        </bitmask>
        <field name="Bitmask">0:EnableLogging</field>
      </param>
      <param humanName="Enable SkyPower EFI support" name="EFI_SP_ENABLE" documentation="Enable SkyPower EFI support" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Set SkyPower EFI CAN driver" name="EFI_SP_CANDRV" documentation="Set SkyPower EFI CAN driver" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">1stCANDriver</value>
          <value code="2">2ndCanDriver</value>
        </values>
      </param>
      <param humanName="SkyPower EFI update rate" name="EFI_SP_UPDATE_HZ" documentation="SkyPower EFI update rate" user="Advanced">
        <field name="Range">10 200</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="SkyPower EFI throttle function" name="EFI_SP_THR_FN" documentation="SkyPower EFI throttle function. This sets which SERVOn_FUNCTION to use for the target throttle. This should be 70 for fixed wing aircraft and 31 for helicopter rotor speed control" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="70">FixedWing</value>
          <value code="31">HeliRSC</value>
        </values>
      </param>
      <param humanName="SkyPower EFI throttle rate" name="EFI_SP_THR_RATE" documentation="SkyPower EFI throttle rate. This sets rate at which throttle updates are sent to the engine" user="Advanced">
        <field name="Range">10 100</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="SkyPower EFI start function" name="EFI_SP_START_FN" documentation="SkyPower EFI start function. This is the RCn_OPTION value to use to find the R/C channel used for controlling engine start" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="300">300</value>
          <value code="301">301</value>
          <value code="302">302</value>
          <value code="303">303</value>
          <value code="304">304</value>
          <value code="305">305</value>
          <value code="306">306</value>
          <value code="307">307</value>
        </values>
      </param>
      <param humanName="SkyPower EFI generator control function" name="EFI_SP_GEN_FN" documentation="SkyPower EFI generator control function. This is the RCn_OPTION value to use to find the R/C channel used for controlling generator start/stop" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="300">300</value>
          <value code="301">301</value>
          <value code="302">302</value>
          <value code="303">303</value>
          <value code="304">304</value>
          <value code="305">305</value>
          <value code="306">306</value>
          <value code="307">307</value>
        </values>
      </param>
      <param humanName="SkyPower EFI minimum RPM" name="EFI_SP_MIN_RPM" documentation="SkyPower EFI minimum RPM. This is the RPM below which the engine is considered to be stopped" user="Advanced">
        <field name="Range">1 1000</field>
      </param>
      <param humanName="SkyPower EFI telemetry rate" name="EFI_SP_TLM_RT" documentation="SkyPower EFI telemetry rate. This is the rate at which extra telemetry values are sent to the GCS" user="Advanced">
        <field name="Range">1 10</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="SkyPower EFI log rate" name="EFI_SP_LOG_RT" documentation="SkyPower EFI log rate. This is the rate at which extra logging of the SkyPower EFI is performed" user="Advanced">
        <field name="Range">1 50</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="SkyPower EFI allow start disarmed" name="EFI_SP_ST_DISARM" documentation="SkyPower EFI allow start disarmed. This controls if starting the engine while disarmed is allowed" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="SkyPower EFI ECU model" name="EFI_SP_MODEL" documentation="SkyPower EFI ECU model" user="Standard">
        <values>
          <value code="0">SRE_180</value>
          <value code="1">SP_275</value>
        </values>
      </param>
      <param humanName="SkyPower EFI enable generator control" name="EFI_SP_GEN_CTRL" documentation="SkyPower EFI enable generator control" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="SkyPower EFI restart time" name="EFI_SP_RST_TIME" documentation="SkyPower EFI restart time. If engine should be running and it has stopped for this amount of time then auto-restart. To disable this feature set this value to zero." user="Standard">
        <field name="Range">0 10</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Generator SVFFI enable" name="EFI_SVF_ENABLE" documentation="Enable SVFFI generator support" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Generator SVFFI arming check" name="EFI_SVF_ARMCHECK" documentation="Check for Generator ARM state before arming" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Hobbywing ESC Enable" name="ESC_HW_ENABLE" documentation="Enable Hobbywing ESC telemetry" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Hobbywing ESC motor poles" name="ESC_HW_POLES" documentation="Number of motor poles for eRPM scaling" user="Standard">
        <field name="Range">1 50</field>
      </param>
      <param humanName="Hobbywing ESC motor offset" name="ESC_HW_OFS" documentation="Motor number offset of first ESC" user="Standard">
        <field name="Range">0 31</field>
      </param>
      <param humanName="EFI INF-Inject enable" name="EFI_INF_ENABLE" documentation="Enable EFI INF-Inject driver" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="EFI INF-Inject options" name="EFI_INF_OPTIONS" documentation="EFI INF driver options" user="Standard">
        <bitmask>
          <bit code="0">EnableLogging</bit>
        </bitmask>
        <field name="Bitmask">0:EnableLogging</field>
      </param>
      <param humanName="EFI INF-Inject throttle rate" name="EFI_INF_THR_HZ" documentation="EFI INF throttle output rate" user="Standard">
        <field name="Range">0 50</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="EFI INF-Inject ignition aux function" name="EFI_INF_IGN_AUX" documentation="EFI INF throttle ignition aux function" user="Standard">
</param>
      <param humanName="LTE Enable" name="LTE_ENABLE" documentation="Enable or disable the LTE modem driver" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Serial Port" name="LTE_SERPORT" documentation="Serial port to use for the LTE modem. This is the index of the SERIALn_ ports that are set to 28 for &quot;scripting&quot;" user="Standard">
        <field name="Range">0 8</field>
      </param>
      <param humanName="Scripting Serial Port" name="LTE_SCRPORT" documentation="Scripting Serial port to use for the LTE modem. This is the index of the SCR_SDEV ports that are set to 2 for &quot;MAVLink2&quot;" user="Standard">
        <field name="Range">0 8</field>
      </param>
      <param humanName="Server IP 0" name="LTE_SERVER_IP0" documentation="First octet of the server IP address to connect to" user="Standard">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Server IP 1" name="LTE_SERVER_IP1" documentation="Second octet of the server IP address to connect to" user="Standard">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Server IP 2" name="LTE_SERVER_IP2" documentation="Third octet of the server IP address to connect to" user="Standard">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Server IP 3" name="LTE_SERVER_IP3" documentation="Fourth octet of the server IP address to connect to" user="Standard">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Server Port" name="LTE_SERVER_PORT" documentation="IPv4 Port of the server to connect to" user="Standard">
        <field name="Range">1 65525</field>
      </param>
      <param humanName="Serial Baud Rate" name="LTE_BAUD" documentation="Baud rate for the serial port to the LTE modem when connected. Initial power on baudrate is in LTE_IBAUD" user="Standard">
        <values>
          <value code="19200">19200</value>
          <value code="38400">38400</value>
          <value code="57600">57600</value>
          <value code="115200">115200</value>
          <value code="230400">230400</value>
          <value code="460800">460800</value>
          <value code="921600">921600</value>
          <value code="3686400">3686400</value>
        </values>
      </param>
      <param humanName="Timeout" name="LTE_TIMEOUT" documentation="Timeout in seconds for the LTE connection. If no data is received for this time, the connection will be reset. A value of zero disables the timeout" user="Standard">
        <field name="Range">0 60</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="LTE protocol" name="LTE_PROTOCOL" documentation="The protocol that we will use in communication with the LTE modem. If this is PPP then the LTE_SERVER parameters are not used and instead a PPP connection will be established and you should use the NET_ parameters to enable network ports. If this is MAVLink2 then the LTE_SERVER parameters are used to create a TCP or UDP connection to a single server." user="Standard">
        <values>
          <value code="2">MavLink2</value>
          <value code="48">PPP</value>
        </values>
      </param>
      <param humanName="LTE options" name="LTE_OPTIONS" documentation="Options to control the LTE modem driver. If VerboseSignalInfoGCS is set then additional NAMED_VALUE_FLOAT values are sent with verbose signal information" user="Standard">
        <bitmask>
          <bit code="0">LogAllData</bit>
          <bit code="1">VerboseSignalInfoGCS</bit>
          <bit code="2">DisableMultiplexing</bit>
          <bit code="3">DisableSignalQueries</bit>
          <bit code="4">UseTCP</bit>
        </bitmask>
        <field name="Bitmask">0:LogAllData,1:VerboseSignalInfoGCS,2:DisableMultiplexing,3:DisableSignalQueries,4:UseTCP</field>
      </param>
      <param humanName="LTE initial baudrate" name="LTE_IBAUD" documentation="This is the initial baud rate on power on for the modem. This is set in the modem with the AT+IREX=baud command" user="Standard">
        <values>
          <value code="19200">19200</value>
          <value code="38400">38400</value>
          <value code="57600">57600</value>
          <value code="115200">115200</value>
          <value code="230400">230400</value>
          <value code="460800">460800</value>
          <value code="921600">921600</value>
          <value code="3686400">3686400</value>
        </values>
      </param>
      <param humanName="LTE operator selection" name="LTE_MCCMNC" documentation="This allows selection of network operator" user="Standard">
        <values>
          <value code="-1">NoChange</value>
          <value code="0">Default</value>
          <value code="50501">AU-Telstra</value>
          <value code="50502">AU-Optus</value>
          <value code="50503">AU-Vodafone</value>
        </values>
      </param>
      <param humanName="Max transmit rate" name="LTE_TX_RATE" documentation="Maximum data transmit rate to the modem in bytes/second. Use zero for unlimited" user="Standard">
</param>
      <param humanName="LTE band selection" name="LTE_BAND" documentation="This allows selection of LTE band. A value of -1 means no band setting change is made. A value of 0 sets all bands. Otherwise the specified band is set." user="Standard">
        <field name="Range">-1 50</field>
      </param>
      <param humanName="DJIRS2 debug" name="DJIR_DEBUG" documentation="Enable DJIRS2 debug" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Enabled with attitude reporting</value>
        </values>
      </param>
      <param humanName="DJIRS2 upside down" name="DJIR_UPSIDEDOWN" documentation="DJIRS2 upside down" user="Standard">
        <values>
          <value code="0">Right side up</value>
          <value code="1">Upside down</value>
        </values>
      </param>
      <param humanName="Torqeedo TorqLink Enable" name="TRQL_ENABLE" documentation="Torqeedo TorqLink Enable" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Torqeedo TorqLink Debug Level" name="TRQL_DEBUG" documentation="Torqeedo TorqLink Debug Level" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">Low</value>
          <value code="2">Medium</value>
          <value code="3">High</value>
        </values>
      </param>
      <param humanName="Mask of UltraMotion servos" name="UM_SERVO_MASK" documentation="Mask of UltraMotion servos" user="Standard">
        <bitmask>
          <bit code="0">SERVO1</bit>
          <bit code="1">SERVO2</bit>
          <bit code="2">SERVO3</bit>
          <bit code="3">SERVO4</bit>
          <bit code="4">SERVO5</bit>
          <bit code="5">SERVO6</bit>
          <bit code="6">SERVO7</bit>
          <bit code="7">SERVO8</bit>
          <bit code="8">SERVO9</bit>
          <bit code="9">SERVO10</bit>
          <bit code="10">SERVO11</bit>
          <bit code="11">SERVO12</bit>
        </bitmask>
        <field name="Bitmask">0:SERVO1,1:SERVO2,2:SERVO3,3:SERVO4,4:SERVO5,5:SERVO6,6:SERVO7,7:SERVO8,8:SERVO9,9:SERVO10,10:SERVO11,11:SERVO12</field>
      </param>
      <param humanName="Set CAN driver" name="UM_CANDRV" documentation="Set CAN driver" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">1stCANDriver</value>
          <value code="2">2ndCanDriver</value>
        </values>
      </param>
      <param humanName="Update rate for UltraMotion servos" name="UM_RATE_HZ" documentation="Update rate for UltraMotion servos" user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">1 400</field>
      </param>
      <param humanName="Optional settings" name="UM_OPTIONS" documentation="Optional settings" user="Standard">
        <bitmask>
          <bit code="0">LogAllFrames</bit>
          <bit code="1">ParseTelemetry</bit>
          <bit code="2">SendPosAsNamedValueFloat</bit>
        </bitmask>
        <field name="Bitmask">0:LogAllFrames,1:ParseTelemetry,2:SendPosAsNamedValueFloat</field>
      </param>
      <param humanName="Enable this script" name="ENABLE" documentation="When set to 0 this script will not run. When set to 1 this script will run." user="Standard">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Index of assigned battery." name="BATT_IDX" documentation="Ensure this battery is configured with `BATT*_MONITOR=29`." user="Standard">
</param>
      <param humanName="Measurement correction factor" name="CFACT" documentation="This is multiplicative factor to correct the measured flow. Set to &lt;1 if your sensor measures too high." user="Standard">
</param>
      <param humanName="Sensor operating mode" name="MODE" documentation="0: The sensor will save the fuel consumption across power resets. 1: The sensor will reset the power consumption." user="Standard">
</param>
      <param humanName="Scripting serial port number" name="PORT" documentation="Which Scripting serial port the sensor is connected at." user="Standard">
        <field name="Range">1 10</field>
      </param>
      <param humanName="TOFSENSE-M to be used as Proximity sensor" name="TOFSENSE_PRX" documentation="Set 0 if sensor is to be used as a 1-D rangefinder (minimum of all distances will be sent, typically used for height detection). Set 1 if it should be used as a 3-D proximity device (Eg. Obstacle Avoidance)" user="Standard">
        <values>
          <value code="0">Set as Rangefinder</value>
          <value code="1">Set as Proximity sensor</value>
        </values>
      </param>
      <param humanName="TOFSENSE-M Connected" name="TOFSENSE_NO" documentation="Number of TOFSENSE-M CAN sensors connected" user="Standard">
        <field name="Range">1 3</field>
      </param>
      <param humanName="TOFSENSE-M mode to be used" name="TOFSENSE_MODE" documentation="TOFSENSE-M mode to be used. 0 for 8x8 mode. 1 for 4x4 mode" user="Standard">
        <values>
          <value code="0">8x8 mode</value>
          <value code="1">4x4 mode</value>
        </values>
      </param>
      <param humanName="TOFSENSE-M First Instance" name="TOFSENSE_INST1" documentation="First TOFSENSE-M sensors backend Instance. Setting this to 1 will pick the first backend from PRX_ or RNG_ Parameters (Depending on TOFSENSE_PRX)" user="Standard">
        <field name="Range">1 3</field>
      </param>
      <param humanName="TOFSENSE-M First ID" name="TOFSENSE_ID1" documentation="First TOFSENSE-M sensor ID. Leave this at 0 to accept all IDs and if only one sensor is present. You can change ID of sensor from NAssistant Software" user="Standard">
        <field name="Range">1 255</field>
      </param>
      <param humanName="TOFSENSE-M Second Instance" name="TOFSENSE_INST2" documentation="Second TOFSENSE-M sensors backend Instance. Setting this to 2 will pick the second backend from PRX_ or RNG_ Parameters (Depending on TOFSENSE_PRX)" user="Standard">
        <field name="Range">1 3</field>
      </param>
      <param humanName="TOFSENSE-M Second ID" name="TOFSENSE_ID2" documentation="Second TOFSENSE-M sensor ID. This cannot be 0. You can change ID of sensor from NAssistant Software" user="Standard">
        <field name="Range">1 255</field>
      </param>
      <param humanName="TOFSENSE-M Third Instance" name="TOFSENSE_INST3" documentation="Third TOFSENSE-M sensors backend Instance. Setting this to 3 will pick the second backend from PRX_ or RNG_ Parameters (Depending on TOFSENSE_PRX)" user="Standard">
        <field name="Range">1 3</field>
      </param>
      <param humanName="TOFSENSE-M Thir ID" name="TOFSENSE_ID3" documentation="Third TOFSENSE-M sensor ID. This cannot be 0. You can change ID of sensor from NAssistant Software" user="Standard">
        <field name="Range">1 255</field>
      </param>
      <param humanName="TOFSENSE-M to be used as Proximity sensor" name="TOFSENSE_S1_PRX" documentation="Set 0 if sensor is to be used as a 1-D rangefinder (minimum of all distances will be sent, typically used for height detection). Set 1 if it should be used as a 3-D proximity device (Eg. Obstacle Avoidance)" user="Standard">
        <values>
          <value code="0">Set as Rangefinder</value>
          <value code="1">Set as Proximity sensor</value>
        </values>
      </param>
      <param humanName="TOFSENSE-M serial port config" name="TOFSENSE_S1_SP" documentation="UART instance sensor is connected to. Set 1 if sensor is connected to the port with fist SERIALx_PROTOCOL = 28." user="Standard">
        <field name="Range">1 4</field>
      </param>
      <param humanName="TOFSENSE-M serial port baudrate" name="TOFSENSE_S1_BR" documentation="Serial Port baud rate. Sensor baud rate can be changed from Nassistant software" user="Standard">
</param>
    </parameters>
    <parameters name="ADSB_">
      <param humanName="ADSB Type" name="ADSB_TYPE" documentation="Type of ADS-B hardware for ADSB-in and ADSB-out configuration and operation. If any type is selected then MAVLink based ADSB-in messages will always be enabled" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">uAvionix-MAVLink</value>
          <value code="2">Sagetech</value>
          <value code="3">uAvionix-UCP</value>
          <value code="4">Sagetech MX Series</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB vehicle list size" name="ADSB_LIST_MAX" documentation="ADSB list size of nearest vehicles. Longer lists take longer to refresh with lower SRx_ADSB values." user="Advanced">
        <field name="Range">1 100</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB vehicle list radius filter" name="ADSB_LIST_RADIUS" documentation="ADSB vehicle list radius filter. Vehicles detected outside this radius will be completely ignored. They will not show up in the SRx_ADSB stream to the GCS and will not be considered in any avoidance calculations. A value of 0 will disable this filter." user="Advanced">
        <field name="Range">0 100000</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="ICAO_ID vehicle identification number" name="ADSB_ICAO_ID" documentation="ICAO_ID unique vehicle identification number of this aircraft. This is an integer limited to 24bits. If set to 0 then one will be randomly generated. If set to -1 then static information is not sent, transceiver is assumed pre-programmed." user="Advanced">
        <field name="Range">-1 16777215</field>
      </param>
      <param humanName="Emitter type" name="ADSB_EMIT_TYPE" documentation="ADSB classification for the type of vehicle emitting the transponder signal. Default value is 14 (UAV)." user="Advanced">
        <values>
          <value code="0">NoInfo</value>
          <value code="1">Light</value>
          <value code="2">Small</value>
          <value code="3">Large</value>
          <value code="4">HighVortexlarge</value>
          <value code="5">Heavy</value>
          <value code="6">HighlyManuv</value>
          <value code="7">Rotocraft</value>
          <value code="8">RESERVED</value>
          <value code="9">Glider</value>
          <value code="10">LightAir</value>
          <value code="11">Parachute</value>
          <value code="12">UltraLight</value>
          <value code="13">RESERVED</value>
          <value code="14">UAV</value>
          <value code="15">Space</value>
          <value code="16">RESERVED</value>
          <value code="17">EmergencySurface</value>
          <value code="18">ServiceSurface</value>
          <value code="19">PointObstacle</value>
        </values>
      </param>
      <param humanName="Aircraft length and width" name="ADSB_LEN_WIDTH" documentation="Aircraft length and width dimension options in Length and Width in meters. In most cases, use a value of 1 for smallest size." user="Advanced">
        <values>
          <value code="0">NO_DATA</value>
          <value code="1">L15W23</value>
          <value code="2">L25W28P5</value>
          <value code="3">L25W34</value>
          <value code="4">L35W33</value>
          <value code="5">L35W38</value>
          <value code="6">L45W39P5</value>
          <value code="7">L45W45</value>
          <value code="8">L55W45</value>
          <value code="9">L55W52</value>
          <value code="10">L65W59P5</value>
          <value code="11">L65W67</value>
          <value code="12">L75W72P5</value>
          <value code="13">L75W80</value>
          <value code="14">L85W80</value>
          <value code="15">L85W90</value>
        </values>
      </param>
      <param humanName="GPS antenna lateral offset" name="ADSB_OFFSET_LAT" documentation="GPS antenna lateral offset. This describes the physical location offset from center of the GPS antenna on the aircraft." user="Advanced">
        <values>
          <value code="0">NoData</value>
          <value code="1">Left2m</value>
          <value code="2">Left4m</value>
          <value code="3">Left6m</value>
          <value code="4">Center</value>
          <value code="5">Right2m</value>
          <value code="6">Right4m</value>
          <value code="7">Right6m</value>
        </values>
      </param>
      <param humanName="GPS antenna longitudinal offset" name="ADSB_OFFSET_LON" documentation="GPS antenna longitudinal offset. This is usually set to 1, Applied By Sensor" user="Advanced">
        <values>
          <value code="0">NO_DATA</value>
          <value code="1">AppliedBySensor</value>
        </values>
      </param>
      <param humanName="Transceiver RF selection" name="ADSB_RF_SELECT" documentation="Transceiver RF selection for Rx enable and/or Tx enable. This only effects devices that can Tx and/or Rx. Rx-only devices should override this to always be Rx-only." user="Advanced">
        <bitmask>
          <bit code="0">Rx</bit>
          <bit code="1">Tx</bit>
        </bitmask>
        <field name="Bitmask">0:Rx,1:Tx</field>
      </param>
      <param humanName="Squawk code" name="ADSB_SQUAWK" documentation="VFR squawk (Mode 3/A) code is a pre-programmed default code when the pilot is flying VFR and not in contact with ATC. In the USA, the VFR squawk code is octal 1200 (hex 0x280, decimal 640) and in most parts of Europe the VFR squawk code is octal 7000. If an invalid octal number is set then it will be reset to 1200." user="Advanced">
        <field name="Range">0 7777</field>
        <field name="Units">octal</field>
        <field name="UnitText">octal</field>
      </param>
      <param humanName="RF capabilities" name="ADSB_RF_CAPABLE" documentation="Describes your hardware RF In/Out capabilities." user="Advanced">
        <bitmask>
          <bit code="0">UAT_in</bit>
          <bit code="1">1090ES_in</bit>
          <bit code="2">UAT_out</bit>
          <bit code="3">1090ES_out</bit>
        </bitmask>
        <field name="Bitmask">0:UAT_in,1:1090ES_in,2:UAT_out,3:1090ES_out</field>
      </param>
      <param humanName="ADSB vehicle list altitude filter" name="ADSB_LIST_ALT" documentation="ADSB vehicle list altitude filter. Vehicles detected more than this altitude above our own altitude will be completely ignored. They will not show up in the SRx_ADSB stream to the GCS and will not be considered in any avoidance calculations. A value of 0 will disable this filter." user="Advanced">
        <field name="Range">0 32767</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="ICAO_ID of special vehicle" name="ADSB_ICAO_SPECL" documentation="ICAO_ID of special vehicle that ignores ADSB_LIST_RADIUS and ADSB_LIST_ALT. The vehicle is always tracked. Use 0 to disable." user="Advanced">
</param>
      <param humanName="ADS-B logging" name="ADSB_LOG" documentation="0: no logging, 1: log only special ID, 2:log all" user="Advanced">
        <values>
          <value code="0">no logging</value>
          <value code="1">log only special ID</value>
          <value code="2">log all</value>
        </values>
      </param>
      <param humanName="ADS-B Options" name="ADSB_OPTIONS" documentation="Options for emergency failsafe codes and device capabilities" user="Advanced">
        <bitmask>
          <bit code="0">Ping200X Send GPS</bit>
          <bit code="1">Squawk 7400 on RC failsafe</bit>
          <bit code="2">Squawk 7400 on GCS failsafe</bit>
          <bit code="3">Sagetech MXS use External Config</bit>
          <bit code="4">Transmit in traditional Mode 3A/C only and inhibit Mode-S and ES (ADSB) transmissions</bit>
        </bitmask>
        <field name="Bitmask">0:Ping200X Send GPS,1:Squawk 7400 on RC failsafe,2:Squawk 7400 on GCS failsafe,3:Sagetech MXS use External Config,4:Transmit in traditional Mode 3A/C only and inhibit Mode-S and ES (ADSB) transmissions</field>
      </param>
    </parameters>
    <parameters name="AFS_">
      <param humanName="Enable Advanced Failsafe" name="AFS_ENABLE" documentation="This enables the advanced failsafe system. If this is set to zero (disable) then all the other AFS options have no effect" user="Advanced">
</param>
      <param humanName="Manual Pin" name="AFS_MAN_PIN" documentation="This sets a digital output pin to set high when in manual mode.  See the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Advanced">
</param>
      <param humanName="Heartbeat Pin" name="AFS_HB_PIN" documentation="This sets a digital output pin which is cycled at 10Hz when termination is not activated. Note that if a FS_TERM_PIN is set then the heartbeat pin will continue to cycle at 10Hz when termination is activated, to allow the termination board to distinguish between autopilot crash and termination. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Comms Waypoint" name="AFS_WP_COMMS" documentation="Waypoint number to navigate to on comms loss" user="Advanced">
</param>
      <param humanName="GPS Loss Waypoint" name="AFS_WP_GPS_LOSS" documentation="Waypoint number to navigate to on GPS lock loss" user="Advanced">
</param>
      <param humanName="Force Terminate" name="AFS_TERMINATE" documentation="Can be set in flight to force termination of the heartbeat signal" user="Advanced">
</param>
      <param humanName="Terminate action" name="AFS_TERM_ACTION" documentation="This can be used to force an action on flight termination. Normally this is handled by an external failsafe board, but you can setup ArduPilot to handle it here. Please consult the wiki for more information on the possible values of the parameter" user="Advanced">
</param>
      <param humanName="Terminate Pin" name="AFS_TERM_PIN" documentation="This sets a digital output pin to set high on flight termination. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="AMSL limit" name="AFS_AMSL_LIMIT" documentation="This sets the AMSL (above mean sea level) altitude limit. If the pressure altitude determined by QNH exceeds this limit then flight termination will be forced. Note that this limit is in meters, whereas pressure altitude limits are often quoted in feet. A value of zero disables the pressure altitude limit." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Error margin for GPS based AMSL limit" name="AFS_AMSL_ERR_GPS" documentation="This sets margin for error in GPS derived altitude limit. This error margin is only used if the barometer has failed. If the barometer fails then the GPS will be used to enforce the AMSL_LIMIT, but this margin will be subtracted from the AMSL_LIMIT first, to ensure that even with the given amount of GPS altitude error the pressure altitude is not breached. OBC users should set this to comply with their D2 safety case. A value of -1 will mean that barometer failure will lead to immediate termination." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="QNH pressure" name="AFS_QNH_PRESSURE" documentation="This sets the QNH pressure in millibars to be used for pressure altitude in the altitude limit. A value of zero disables the altitude limit." user="Advanced">
        <field name="Units">hPa</field>
        <field name="UnitText">hectopascal</field>
      </param>
      <param humanName="Maximum number of GPS loss events" name="AFS_MAX_GPS_LOSS" documentation="Maximum number of GPS loss events before the aircraft stops returning to mission on GPS recovery. Use zero to allow for any number of GPS loss events." user="Advanced">
</param>
      <param humanName="Maximum number of comms loss events" name="AFS_MAX_COM_LOSS" documentation="Maximum number of comms loss events before the aircraft stops returning to mission on comms recovery. Use zero to allow for any number of comms loss events." user="Advanced">
</param>
      <param humanName="Enable geofence Advanced Failsafe" name="AFS_GEOFENCE" documentation="This enables the geofence part of the AFS. Will only be in effect if AFS_ENABLE is also 1" user="Advanced">
</param>
      <param humanName="Enable RC Advanced Failsafe" name="AFS_RC" documentation="This enables the RC part of the AFS. Will only be in effect if AFS_ENABLE is also 1" user="Advanced">
</param>
      <param humanName="Enable RC Termination only in manual control modes" name="AFS_RC_MAN_ONLY" documentation="If this parameter is set to 1, then an RC loss will only cause the plane to terminate in manual control modes. If it is 0, then the plane will terminate in any flight mode." user="Advanced">
</param>
      <param humanName="Enable dual loss terminate due to failure of both GCS and GPS simultaneously" name="AFS_DUAL_LOSS" documentation="This enables the dual loss termination part of the AFS system. If this parameter is 1 and both GPS and the ground control station fail simultaneously, this will be considered a &quot;dual loss&quot; and cause termination." user="Advanced">
</param>
      <param humanName="RC failure time" name="AFS_RC_FAIL_TIME" documentation="This is the time in seconds in manual mode that failsafe termination will activate if RC input is lost. For the OBC rules this should be (1.5). Use 0 to disable." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Max allowed range" name="AFS_MAX_RANGE" documentation="This is the maximum range of the vehicle in kilometers from first arming. If the vehicle goes beyond this range then the TERM_ACTION is performed. A value of zero disables this feature." user="Advanced">
        <field name="Units">km</field>
        <field name="UnitText">kilometers</field>
      </param>
      <param humanName="AFS options" name="AFS_OPTIONS" documentation="See description for each bitmask bit description">
        <bitmask>
          <bit code="0">Continue the mission even after comms are recovered (does not go to the mission item at the time comms were lost)</bit>
          <bit code="1">Enable AFS for all autonomous modes (not just AUTO)</bit>
          <bit code="2">Option to not jump to AFS_WP_COMMS if already in the return path</bit>
        </bitmask>
        <field name="Bitmask">0: Continue the mission even after comms are recovered (does not go to the mission item at the time comms were lost), 1: Enable AFS for all autonomous modes (not just AUTO), 2: Option to not jump to AFS_WP_COMMS if already in the return path</field>
      </param>
      <param humanName="GCS timeout" name="AFS_GCS_TIMEOUT" documentation="The time (in seconds) of persistent data link loss before GCS failsafe occurs." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
    </parameters>
    <parameters name="AHRS_">
      <param humanName="AHRS GPS gain" name="AHRS_GPS_GAIN" documentation="This controls how much to use the GPS to correct the attitude. This should never be set to zero for a plane as it would result in the plane losing control in turns. For a plane please use the default value of 1.0." user="Advanced">
        <field name="Range">0.0 1.0</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="AHRS use GPS for DCM navigation and position-down" name="AHRS_GPS_USE" documentation="This controls whether to use dead-reckoning or GPS based navigation. If set to 0 then the GPS won't be used for navigation, and only dead reckoning will be used. A value of zero should never be used for normal flight. Currently this affects only the DCM-based AHRS: the EKF uses GPS according to its own parameters. A value of 2 means to use GPS for height as well as position - both in DCM estimation and when determining altitude-above-home." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Use GPS for DCM position</value>
          <value code="2">Use GPS for DCM position and height</value>
        </values>
      </param>
      <param humanName="Yaw P" name="AHRS_YAW_P" documentation="This controls the weight the compass or GPS has on the heading. A higher value means the heading will track the yaw source (GPS or compass) more rapidly." user="Advanced">
        <field name="Range">0.1 0.4</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="AHRS RP_P" name="AHRS_RP_P" documentation="This controls how fast the accelerometers correct the attitude" user="Advanced">
        <field name="Range">0.1 0.4</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Maximum wind" name="AHRS_WIND_MAX" documentation="This sets the maximum allowable difference between ground speed and airspeed. A value of zero means to use the airspeed as is. This allows the plane to cope with a failing airspeed sensor by clipping it to groundspeed plus/minus this limit. See ARSPD_OPTIONS and ARSPD_WIND_MAX to disable airspeed sensors." user="Advanced">
        <field name="Range">0 127</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="AHRS Trim Roll" name="AHRS_TRIM_X" documentation="Compensates for the roll angle difference between the control board and the frame. Positive values make the vehicle roll right." user="Standard">
        <field name="Units">rad</field>
        <field name="UnitText">radians</field>
        <field name="Range">-0.1745 +0.1745</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="AHRS Trim Pitch" name="AHRS_TRIM_Y" documentation="Compensates for the pitch angle difference between the control board and the frame. Positive values make the vehicle pitch up/back." user="Standard">
        <field name="Units">rad</field>
        <field name="UnitText">radians</field>
        <field name="Range">-0.1745 +0.1745</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="AHRS Trim Yaw" name="AHRS_TRIM_Z" documentation="Not Used" user="Advanced">
        <field name="Units">rad</field>
        <field name="UnitText">radians</field>
        <field name="Range">-0.1745 +0.1745</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Board Orientation" name="AHRS_ORIENTATION" documentation="Overall board orientation relative to the standard orientation for the board type. This rotates the IMU and compass readings to allow the board to be oriented in your vehicle at any 90 or 45 degree angle. The label for each option is specified in the order of rotations for that orientation. This option takes affect on next boot. After changing you will need to re-level your vehicle. Firmware versions 4.2 and prior can use a CUSTOM (100) rotation to set the AHRS_CUSTOM_ROLL/PIT/YAW angles for AHRS orientation. Later versions provide two general custom rotations which can be used, Custom 1 and Custom 2, with CUST_ROT1_ROLL/PIT/YAW or CUST_ROT2_ROLL/PIT/YAW angles." user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Yaw45</value>
          <value code="2">Yaw90</value>
          <value code="3">Yaw135</value>
          <value code="4">Yaw180</value>
          <value code="5">Yaw225</value>
          <value code="6">Yaw270</value>
          <value code="7">Yaw315</value>
          <value code="8">Roll180</value>
          <value code="9">Yaw45Roll180</value>
          <value code="10">Yaw90Roll180</value>
          <value code="11">Yaw135Roll180</value>
          <value code="12">Pitch180</value>
          <value code="13">Yaw225Roll180</value>
          <value code="14">Yaw270Roll180</value>
          <value code="15">Yaw315Roll180</value>
          <value code="16">Roll90</value>
          <value code="17">Yaw45Roll90</value>
          <value code="18">Yaw90Roll90</value>
          <value code="19">Yaw135Roll90</value>
          <value code="20">Roll270</value>
          <value code="21">Yaw45Roll270</value>
          <value code="22">Yaw90Roll270</value>
          <value code="23">Yaw135Roll270</value>
          <value code="24">Pitch90</value>
          <value code="25">Pitch270</value>
          <value code="26">Yaw90Pitch180</value>
          <value code="27">Yaw270Pitch180</value>
          <value code="28">Pitch90Roll90</value>
          <value code="29">Pitch90Roll180</value>
          <value code="30">Pitch90Roll270</value>
          <value code="31">Pitch180Roll90</value>
          <value code="32">Pitch180Roll270</value>
          <value code="33">Pitch270Roll90</value>
          <value code="34">Pitch270Roll180</value>
          <value code="35">Pitch270Roll270</value>
          <value code="36">Yaw90Pitch180Roll90</value>
          <value code="37">Yaw270Roll90</value>
          <value code="38">Yaw293Pitch68Roll180</value>
          <value code="39">Pitch315</value>
          <value code="40">Pitch315Roll90</value>
          <value code="42">Roll45</value>
          <value code="43">Roll315</value>
          <value code="100">Custom 4.1 and older</value>
          <value code="101">Custom 1</value>
          <value code="102">Custom 2</value>
        </values>
      </param>
      <param humanName="AHRS Velocity Complementary Filter Beta Coefficient" name="AHRS_COMP_BETA" documentation="This controls the time constant for the cross-over frequency used to fuse AHRS (airspeed and heading) and GPS data to estimate ground velocity. Time constant is 0.1/beta. A larger time constant will use GPS data less and a small time constant will use air data less." user="Advanced">
        <field name="Range">0.001 0.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="AHRS GPS Minimum satellites" name="AHRS_GPS_MINSATS" documentation="Minimum number of satellites visible to use GPS for velocity based corrections attitude correction. This defaults to 6, which is about the point at which the velocity numbers from a GPS become too unreliable for accurate correction of the accelerometers." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Use NavEKF Kalman filter for attitude and position estimation" name="AHRS_EKF_TYPE" documentation="This controls which NavEKF Kalman filter version is used for attitude and position estimation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="2">Enable EKF2</value>
          <value code="3">Enable EKF3</value>
          <value code="10">Sim</value>
          <value code="11">ExternalAHRS</value>
        </values>
      </param>
      <param humanName="Board orientation roll offset" name="AHRS_CUSTOM_ROLL" documentation="Autopilot mounting position roll offset. Positive values = roll right, negative values = roll left. This parameter is only used when AHRS_ORIENTATION is set to CUSTOM." user="Advanced">
        <field name="Range">-180 180</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Board orientation pitch offset" name="AHRS_CUSTOM_PIT" documentation="Autopilot mounting position pitch offset. Positive values = pitch up, negative values = pitch down. This parameter is only used when AHRS_ORIENTATION is set to CUSTOM." user="Advanced">
        <field name="Range">-180 180</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Board orientation yaw offset" name="AHRS_CUSTOM_YAW" documentation="Autopilot mounting position yaw offset. Positive values = yaw right, negative values = yaw left. This parameter is only used when AHRS_ORIENTATION is set to CUSTOM." user="Advanced">
        <field name="Range">-180 180</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Optional AHRS behaviour" name="AHRS_OPTIONS" documentation="This controls optional AHRS behaviour. Setting DisableDCMFallbackFW will change the AHRS behaviour for fixed wing aircraft in fly-forward flight to not fall back to DCM when the EKF stops navigating. Setting DisableDCMFallbackVTOL will change the AHRS behaviour for fixed wing aircraft in non fly-forward (VTOL) flight to not fall back to DCM when the EKF stops navigating. Setting DontDisableAirspeedUsingEKF disables the EKF based innovation check for airspeed consistency. Setting AutoRecordOrigin will auto-save the EKF origin to parameters when it becomes valid." user="Advanced">
        <bitmask>
          <bit code="0">DisableDCMFallbackFW</bit>
          <bit code="1">DisableDCMFallbackVTOL</bit>
          <bit code="2">DontDisableAirspeedUsingEKF</bit>
          <bit code="3">RecordOrigin</bit>
          <bit code="4">UseRecordedOriginForNonGPS</bit>
        </bitmask>
        <field name="Bitmask">0:DisableDCMFallbackFW, 1:DisableDCMFallbackVTOL, 2:DontDisableAirspeedUsingEKF, 3:RecordOrigin, 4:UseRecordedOriginForNonGPS</field>
      </param>
      <param humanName="AHRS last origin latitude" name="AHRS_ORIGIN_LAT" documentation="AHRS last origin latitude in degrees" user="Advanced">
        <field name="Range">-180 180</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="AHRS last origin longitude" name="AHRS_ORIGIN_LON" documentation="AHRS last origin longitude in degrees" user="Advanced">
        <field name="Range">-180 180</field>
      </param>
      <param humanName="AHRS last origin altitude" name="AHRS_ORIGIN_ALT" documentation="AHRS last origin altitude in meters" user="Advanced">
        <field name="Range">-200 5000</field>
      </param>
    </parameters>
    <parameters name="AIS_">
      <param humanName="AIS receiver type" name="AIS_TYPE" documentation="AIS receiver type" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">NMEA AIVDM message</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="AIS vessel list size" name="AIS_LIST_MAX" documentation="AIS list size of nearest vessels. Longer lists take longer to refresh with lower SRx_ADSB values." user="Advanced">
        <field name="Range">1 100</field>
      </param>
      <param humanName="AIS vessel time out" name="AIS_TIME_OUT" documentation="if no updates are received in this time a vessel will be removed from the list" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">1 2000</field>
      </param>
      <param humanName="AIS logging options" name="AIS_LOGGING" documentation="Bitmask of AIS logging options" user="Advanced">
        <bitmask>
          <bit code="0">Log all AIVDM messages</bit>
          <bit code="1">Log only unsupported AIVDM messages</bit>
          <bit code="2">Log decoded messages</bit>
        </bitmask>
        <field name="Bitmask">0:Log all AIVDM messages,1:Log only unsupported AIVDM messages,2:Log decoded messages</field>
      </param>
    </parameters>
    <parameters name="ARMING_">
      <param humanName="Blackbox speed" name="ARMING_BBOX_SPD" documentation="This is a 3D GPS speed threshold above which we will force arm the vehicle to start logging. WARNING: This should only be used on a vehicle with no propellers attached to the flight controller and when the flight controller is not in control of the vehicle." user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Increment">1</field>
        <field name="Range">1 20</field>
      </param>
      <param humanName="Require Arming Motors" name="ARMING_REQUIRE" documentation="Arming disabled until some requirements are met. If 0, there are no requirements (arm immediately).  If 1, sends the minimum throttle PWM value to the throttle channel when disarmed. If 2, send 0 PWM (no signal) to throttle channel when disarmed. On planes with ICE enabled and the throttle while disarmed option set in ICE_OPTIONS, the motor will always get THR_MIN when disarmed. Arming will be blocked until all mandatory and non-ARMING_SKIPCHK items are satisfied; arming can then be accomplished via (eg.) rudder gesture or GCS command." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Yes(minimum PWM when disarmed)</value>
          <value code="2">Yes(0 PWM when disarmed)</value>
        </values>
      </param>
      <param humanName="Accelerometer error threshold" name="ARMING_ACCTHRESH" documentation="Accelerometer error threshold used to determine inconsistent accelerometers. Compares this error range to other accelerometers to detect a hardware or calibration error. Lower value means tighter check and harder to pass arming check. Not all accelerometers are created equal." user="Advanced">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">0.25 3.0</field>
      </param>
      <param humanName="Arming with Rudder enable/disable" name="ARMING_RUDDER" documentation="Allow arm/disarm by rudder input. When enabled arming can be done with right rudder, disarming with left rudder. Rudder arming only works with throttle at zero +- deadzone (RCx_DZ). Depending on vehicle type, arming in certain modes is prevented. See the wiki for each vehicle. Caution is recommended when arming if it is allowed in an auto-throttle mode!" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">ArmingOnly</value>
          <value code="2">ArmOrDisarm</value>
        </values>
      </param>
      <param humanName="Required mission items" name="ARMING_MIS_ITEMS" documentation="Bitmask of mission items that are required to be planned in order to arm the aircraft" user="Advanced">
        <bitmask>
          <bit code="0">Land</bit>
          <bit code="1">VTOL Land</bit>
          <bit code="2">DO_LAND_START</bit>
          <bit code="3">Takeoff</bit>
          <bit code="4">VTOL Takeoff</bit>
          <bit code="5">Rallypoint</bit>
          <bit code="6">RTL</bit>
        </bitmask>
        <field name="Bitmask">0:Land,1:VTOL Land,2:DO_LAND_START,3:Takeoff,4:VTOL Takeoff,5:Rallypoint,6:RTL</field>
      </param>
      <param humanName="Arming options" name="ARMING_OPTIONS" documentation="Options that can be applied to change arming behaviour" user="Advanced">
        <bitmask>
          <bit code="0">Disable prearm display</bit>
          <bit code="1">Do not send status text on state change</bit>
          <bit code="2">Skip IMU consistency checks when ICE motor running</bit>
        </bitmask>
        <field name="Bitmask">0:Disable prearm display,1:Do not send status text on state change,2:Skip IMU consistency checks when ICE motor running</field>
      </param>
      <param humanName="Compass magnetic field strength error threshold vs earth magnetic model" name="ARMING_MAGTHRESH" documentation="Compass magnetic field strength error threshold vs earth magnetic model.  X and y axis are compared using this threhold, Z axis uses 2x this threshold.  0 to disable check" user="Advanced">
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="Disable CrashDump Arming check" name="ARMING_CRSDP_IGN" documentation="Must have value &quot;1&quot; if crashdump data is present on the system, or a prearm failure will be raised.  Do not set this parameter unless the risks of doing so are fully understood.  The presence of a crash dump means that the firmware currently installed has suffered a critical software failure which resulted in the autopilot immediately rebooting.  The crashdump file gives diagnostic information which can help in finding the issue, please contact the ArduPIlot support team.  If this crashdump data is present, the vehicle is likely unsafe to fly.  Check the ArduPilot documentation for more details." user="Advanced">
        <values>
          <value code="0">Crash Dump arming check active</value>
          <value code="1">Crash Dump arming check deactivated</value>
        </values>
      </param>
      <param humanName="Arm Checks to Skip (bitmask)" name="ARMING_SKIPCHK" documentation="Checks to skip prior to arming motor. This is a bitmask of checks before allowing arming that will be skipped. For most users it is recommended to leave this at the default of 0 (no checks skipped). In extreme circumstances, a value of -1 can be used to skip all non-mandatory current and future checks." user="Standard">
        <bitmask>
          <bit code="1">Barometer</bit>
          <bit code="2">Compass</bit>
          <bit code="3">GPS lock</bit>
          <bit code="4">INS</bit>
          <bit code="5">Parameters</bit>
          <bit code="6">RC Channels</bit>
          <bit code="7">Board voltage</bit>
          <bit code="8">Battery Level</bit>
          <bit code="9">Airspeed</bit>
          <bit code="10">Logging Available</bit>
          <bit code="11">Hardware safety switch</bit>
          <bit code="12">GPS Configuration</bit>
          <bit code="13">System</bit>
          <bit code="14">Mission</bit>
          <bit code="15">Rangefinder</bit>
          <bit code="16">Camera</bit>
          <bit code="17">AuxAuth</bit>
          <bit code="19">FFT</bit>
        </bitmask>
        <field name="Bitmask">1:Barometer,2:Compass,3:GPS lock,4:INS,5:Parameters,6:RC Channels,7:Board voltage,8:Battery Level,9:Airspeed,10:Logging Available,11:Hardware safety switch,12:GPS Configuration,13:System,14:Mission,15:Rangefinder,16:Camera,17:AuxAuth,19:FFT</field>
      </param>
    </parameters>
    <parameters name="ARSPD">
      <param humanName="Airspeed Enable" name="ARSPD_ENABLE" documentation="Enable airspeed sensor support" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Control pitot tube order" name="ARSPD_TUBE_ORDER" documentation="This parameter allows you to control whether the order in which the tubes are attached to your pitot tube matters. If you set this to 0 then the first (often the top) connector on the sensor needs to be the stagnation pressure (the pressure at the tip of the pitot tube). If set to 1 then the second (often the bottom) connector needs to be the stagnation pressure. If set to 2 (the default) then the airspeed driver will accept either order. The reason you may wish to specify the order is it will allow your airspeed sensor to detect if the aircraft is receiving excessive pressure on the static port compared to the stagnation port such as during a stall, which would otherwise be seen as a positive airspeed." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Swapped</value>
          <value code="2">Auto Detect</value>
        </values>
      </param>
      <param humanName="Primary airspeed sensor" name="ARSPD_PRIMARY" documentation="This selects which airspeed sensor will be the primary if multiple sensors are found" user="Advanced">
        <values>
          <value code="0">FirstSensor</value>
          <value code="1">2nd Sensor</value>
          <value code="2">3rd Sensor</value>
          <value code="3">4th Sensor</value>
          <value code="4">5th Sensor</value>
          <value code="5">6th Sensor</value>
        </values>
      </param>
      <param humanName="Airspeed options bitmask" name="ARSPD_OPTIONS" documentation="Bitmask of options to use with airspeed. 0:Disable use based on airspeed/groundspeed mismatch (see ARSPD_WIND_MAX), 1:Automatically reenable use based on airspeed/groundspeed mismatch recovery (see ARSPD_WIND_MAX) 2:Disable voltage correction, 3:Check that the airspeed is statistically consistent with the navigation EKF vehicle and wind velocity estimates using EKF3 (requires AHRS_EKF_TYPE = 3), 4:Report cal offset to GCS" user="Advanced">
        <bitmask>
          <bit code="0">SpeedMismatchDisable</bit>
          <bit code="1">AllowSpeedMismatchRecovery</bit>
          <bit code="2">DisableVoltageCorrection</bit>
          <bit code="3">UseEkf3Consistency</bit>
          <bit code="4">ReportOffset</bit>
        </bitmask>
        <field name="Bitmask">0:SpeedMismatchDisable, 1:AllowSpeedMismatchRecovery, 2:DisableVoltageCorrection, 3:UseEkf3Consistency, 4:ReportOffset</field>
      </param>
      <param humanName="Maximum airspeed and ground speed difference" name="ARSPD_WIND_MAX" documentation="If the difference between airspeed and ground speed is greater than this value the sensor will be marked unhealthy. Using ARSPD_OPTIONS this health value can be used to disable the sensor." user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Airspeed and GPS speed difference that gives a warning" name="ARSPD_WIND_WARN" documentation="If the difference between airspeed and GPS speed is greater than this value the sensor will issue a warning. If 0 ARSPD_WIND_MAX is used." user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Re-enable Consistency Check Gate Size" name="ARSPD_WIND_GATE" documentation="Number of standard deviations applied to the re-enable EKF consistency check that is used when ARSPD_OPTIONS bit position 3 is set. Larger values will make the re-enabling of the airspeed sensor faster, but increase the likelihood of re-enabling a degraded sensor. The value can be tuned by using the ARSP.TR log message by setting ARSPD_WIND_GATE to a value that is higher than the value for ARSP.TR observed with a healthy airspeed sensor. Occasional transients in ARSP.TR above the value set by ARSPD_WIND_GATE can be tolerated provided they are less than 5 seconds in duration and less than 10% duty cycle." user="Advanced">
        <field name="Range">0.0 10.0</field>
      </param>
      <param humanName="Maximum offset cal speed error" name="ARSPD_OFF_PCNT" documentation="The maximum percentage speed change in airspeed reports that is allowed due to offset changes between calibrations before a warning is issued. This potential speed error is in percent of AIRSPEED_MIN. 0 disables. Helps warn of calibrations without pitot being covered." user="Advanced">
        <field name="Range">0.0 10.0</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
    </parameters>
    <parameters name="ARSPD2_">
      <param humanName="Airspeed type" name="ARSPD2_TYPE" documentation="Type of airspeed sensor" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">I2C-MS4525D0</value>
          <value code="2">Analog</value>
          <value code="3">I2C-MS5525</value>
          <value code="4">I2C-MS5525 (0x76)</value>
          <value code="5">I2C-MS5525 (0x77)</value>
          <value code="6">I2C-SDP3X</value>
          <value code="7">I2C-DLVR-5in</value>
          <value code="8">DroneCAN</value>
          <value code="9">I2C-DLVR-10in</value>
          <value code="10">I2C-DLVR-20in</value>
          <value code="11">I2C-DLVR-30in</value>
          <value code="12">I2C-DLVR-60in</value>
          <value code="13">NMEA water speed</value>
          <value code="14">MSP</value>
          <value code="15">ASP5033</value>
          <value code="16">ExternalAHRS</value>
          <value code="17">AUAV-10in</value>
          <value code="18">AUAV-5in</value>
          <value code="19">AUAV-30in</value>
          <value code="100">SITL</value>
        </values>
      </param>
      <param humanName="Airspeed use" name="ARSPD2_USE" documentation="Enables airspeed use for automatic throttle modes and replaces control from THR_TRIM. Continues to display and log airspeed if set to 0. Uses airspeed for control if set to 1. Only uses airspeed when throttle = 0 if set to 2 (useful for gliders with airspeed sensors behind propellers)." user="Standard">
        <values>
          <value code="0">DoNotUse</value>
          <value code="1">Use</value>
          <value code="2">UseWhenZeroThrottle</value>
        </values>
      </param>
      <param humanName="Airspeed offset" name="ARSPD2_OFFSET" documentation="Airspeed calibration offset" user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed ratio" name="ARSPD2_RATIO" documentation="Calibrates pitot tube pressure to velocity. Increasing this value will indicate a higher airspeed at any given dynamic pressure." user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed pin" name="ARSPD2_PIN" documentation="The pin number that the airspeed sensor is connected to for analog sensors. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Automatic airspeed ratio calibration" name="ARSPD2_AUTOCAL" documentation="Enables automatic adjustment of airspeed ratio during a calibration flight based on estimation of ground speed and true airspeed. New ratio saved every 2 minutes if change is &gt; 5%. Should not be left enabled." user="Advanced">
</param>
      <param humanName="Control pitot tube order" name="ARSPD2_TUBE_ORDR" documentation="This parameter allows you to control whether the order in which the tubes are attached to your pitot tube matters. If you set this to 0 then the first (often the top) connector on the sensor needs to be the stagnation pressure (the pressure at the tip of the pitot tube). If set to 1 then the second (often the bottom) connector needs to be the stagnation pressure. If set to 2 (the default) then the airspeed driver will accept either order. The reason you may wish to specify the order is it will allow your airspeed sensor to detect if the aircraft is receiving excessive pressure on the static port compared to the stagnation port such as during a stall, which would otherwise be seen as a positive airspeed." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Swapped</value>
          <value code="2">Auto Detect</value>
        </values>
      </param>
      <param humanName="Skip airspeed offset calibration on startup" name="ARSPD2_SKIP_CAL" documentation="This parameter allows you to skip airspeed offset calibration on startup, instead using the offset from the last calibration or requiring a manual calibration. This may be desirable if the offset variance between flights for your sensor is low and you want to avoid having to cover the pitot tube on each boot." user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Do not require offset calibration before flight. Manual calibration should be performed during initial setup.</value>
          <value code="2">Do not calibrate on start up. Manual calibration must be performed once per boot.</value>
        </values>
      </param>
      <param humanName="The PSI range of the device" name="ARSPD2_PSI_RANGE" documentation="This parameter allows you to set the PSI (pounds per square inch) range for your sensor. You should not change this unless you examine the datasheet for your device" user="Advanced">
</param>
      <param humanName="Airspeed I2C bus" name="ARSPD2_BUS" documentation="Bus number of the I2C bus where the airspeed sensor is connected. May not correspond to board's I2C bus number labels. Retry another bus and reboot if airspeed sensor fails to initialize." user="Advanced">
        <values>
          <value code="0">Bus0</value>
          <value code="1">Bus1</value>
          <value code="2">Bus2</value>
          <value code="3">Bus3</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Airspeed ID" name="ARSPD2_DEVID" documentation="Airspeed sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
    </parameters>
    <parameters name="ARSPD3_">
      <param humanName="Airspeed type" name="ARSPD3_TYPE" documentation="Type of airspeed sensor" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">I2C-MS4525D0</value>
          <value code="2">Analog</value>
          <value code="3">I2C-MS5525</value>
          <value code="4">I2C-MS5525 (0x76)</value>
          <value code="5">I2C-MS5525 (0x77)</value>
          <value code="6">I2C-SDP3X</value>
          <value code="7">I2C-DLVR-5in</value>
          <value code="8">DroneCAN</value>
          <value code="9">I2C-DLVR-10in</value>
          <value code="10">I2C-DLVR-20in</value>
          <value code="11">I2C-DLVR-30in</value>
          <value code="12">I2C-DLVR-60in</value>
          <value code="13">NMEA water speed</value>
          <value code="14">MSP</value>
          <value code="15">ASP5033</value>
          <value code="16">ExternalAHRS</value>
          <value code="17">AUAV-10in</value>
          <value code="18">AUAV-5in</value>
          <value code="19">AUAV-30in</value>
          <value code="100">SITL</value>
        </values>
      </param>
      <param humanName="Airspeed use" name="ARSPD3_USE" documentation="Enables airspeed use for automatic throttle modes and replaces control from THR_TRIM. Continues to display and log airspeed if set to 0. Uses airspeed for control if set to 1. Only uses airspeed when throttle = 0 if set to 2 (useful for gliders with airspeed sensors behind propellers)." user="Standard">
        <values>
          <value code="0">DoNotUse</value>
          <value code="1">Use</value>
          <value code="2">UseWhenZeroThrottle</value>
        </values>
      </param>
      <param humanName="Airspeed offset" name="ARSPD3_OFFSET" documentation="Airspeed calibration offset" user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed ratio" name="ARSPD3_RATIO" documentation="Calibrates pitot tube pressure to velocity. Increasing this value will indicate a higher airspeed at any given dynamic pressure." user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed pin" name="ARSPD3_PIN" documentation="The pin number that the airspeed sensor is connected to for analog sensors. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Automatic airspeed ratio calibration" name="ARSPD3_AUTOCAL" documentation="Enables automatic adjustment of airspeed ratio during a calibration flight based on estimation of ground speed and true airspeed. New ratio saved every 2 minutes if change is &gt; 5%. Should not be left enabled." user="Advanced">
</param>
      <param humanName="Control pitot tube order" name="ARSPD3_TUBE_ORDR" documentation="This parameter allows you to control whether the order in which the tubes are attached to your pitot tube matters. If you set this to 0 then the first (often the top) connector on the sensor needs to be the stagnation pressure (the pressure at the tip of the pitot tube). If set to 1 then the second (often the bottom) connector needs to be the stagnation pressure. If set to 2 (the default) then the airspeed driver will accept either order. The reason you may wish to specify the order is it will allow your airspeed sensor to detect if the aircraft is receiving excessive pressure on the static port compared to the stagnation port such as during a stall, which would otherwise be seen as a positive airspeed." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Swapped</value>
          <value code="2">Auto Detect</value>
        </values>
      </param>
      <param humanName="Skip airspeed offset calibration on startup" name="ARSPD3_SKIP_CAL" documentation="This parameter allows you to skip airspeed offset calibration on startup, instead using the offset from the last calibration or requiring a manual calibration. This may be desirable if the offset variance between flights for your sensor is low and you want to avoid having to cover the pitot tube on each boot." user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Do not require offset calibration before flight. Manual calibration should be performed during initial setup.</value>
          <value code="2">Do not calibrate on start up. Manual calibration must be performed once per boot.</value>
        </values>
      </param>
      <param humanName="The PSI range of the device" name="ARSPD3_PSI_RANGE" documentation="This parameter allows you to set the PSI (pounds per square inch) range for your sensor. You should not change this unless you examine the datasheet for your device" user="Advanced">
</param>
      <param humanName="Airspeed I2C bus" name="ARSPD3_BUS" documentation="Bus number of the I2C bus where the airspeed sensor is connected. May not correspond to board's I2C bus number labels. Retry another bus and reboot if airspeed sensor fails to initialize." user="Advanced">
        <values>
          <value code="0">Bus0</value>
          <value code="1">Bus1</value>
          <value code="2">Bus2</value>
          <value code="3">Bus3</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Airspeed ID" name="ARSPD3_DEVID" documentation="Airspeed sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
    </parameters>
    <parameters name="ARSPD4_">
      <param humanName="Airspeed type" name="ARSPD4_TYPE" documentation="Type of airspeed sensor" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">I2C-MS4525D0</value>
          <value code="2">Analog</value>
          <value code="3">I2C-MS5525</value>
          <value code="4">I2C-MS5525 (0x76)</value>
          <value code="5">I2C-MS5525 (0x77)</value>
          <value code="6">I2C-SDP3X</value>
          <value code="7">I2C-DLVR-5in</value>
          <value code="8">DroneCAN</value>
          <value code="9">I2C-DLVR-10in</value>
          <value code="10">I2C-DLVR-20in</value>
          <value code="11">I2C-DLVR-30in</value>
          <value code="12">I2C-DLVR-60in</value>
          <value code="13">NMEA water speed</value>
          <value code="14">MSP</value>
          <value code="15">ASP5033</value>
          <value code="16">ExternalAHRS</value>
          <value code="17">AUAV-10in</value>
          <value code="18">AUAV-5in</value>
          <value code="19">AUAV-30in</value>
          <value code="100">SITL</value>
        </values>
      </param>
      <param humanName="Airspeed use" name="ARSPD4_USE" documentation="Enables airspeed use for automatic throttle modes and replaces control from THR_TRIM. Continues to display and log airspeed if set to 0. Uses airspeed for control if set to 1. Only uses airspeed when throttle = 0 if set to 2 (useful for gliders with airspeed sensors behind propellers)." user="Standard">
        <values>
          <value code="0">DoNotUse</value>
          <value code="1">Use</value>
          <value code="2">UseWhenZeroThrottle</value>
        </values>
      </param>
      <param humanName="Airspeed offset" name="ARSPD4_OFFSET" documentation="Airspeed calibration offset" user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed ratio" name="ARSPD4_RATIO" documentation="Calibrates pitot tube pressure to velocity. Increasing this value will indicate a higher airspeed at any given dynamic pressure." user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed pin" name="ARSPD4_PIN" documentation="The pin number that the airspeed sensor is connected to for analog sensors. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Automatic airspeed ratio calibration" name="ARSPD4_AUTOCAL" documentation="Enables automatic adjustment of airspeed ratio during a calibration flight based on estimation of ground speed and true airspeed. New ratio saved every 2 minutes if change is &gt; 5%. Should not be left enabled." user="Advanced">
</param>
      <param humanName="Control pitot tube order" name="ARSPD4_TUBE_ORDR" documentation="This parameter allows you to control whether the order in which the tubes are attached to your pitot tube matters. If you set this to 0 then the first (often the top) connector on the sensor needs to be the stagnation pressure (the pressure at the tip of the pitot tube). If set to 1 then the second (often the bottom) connector needs to be the stagnation pressure. If set to 2 (the default) then the airspeed driver will accept either order. The reason you may wish to specify the order is it will allow your airspeed sensor to detect if the aircraft is receiving excessive pressure on the static port compared to the stagnation port such as during a stall, which would otherwise be seen as a positive airspeed." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Swapped</value>
          <value code="2">Auto Detect</value>
        </values>
      </param>
      <param humanName="Skip airspeed offset calibration on startup" name="ARSPD4_SKIP_CAL" documentation="This parameter allows you to skip airspeed offset calibration on startup, instead using the offset from the last calibration or requiring a manual calibration. This may be desirable if the offset variance between flights for your sensor is low and you want to avoid having to cover the pitot tube on each boot." user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Do not require offset calibration before flight. Manual calibration should be performed during initial setup.</value>
          <value code="2">Do not calibrate on start up. Manual calibration must be performed once per boot.</value>
        </values>
      </param>
      <param humanName="The PSI range of the device" name="ARSPD4_PSI_RANGE" documentation="This parameter allows you to set the PSI (pounds per square inch) range for your sensor. You should not change this unless you examine the datasheet for your device" user="Advanced">
</param>
      <param humanName="Airspeed I2C bus" name="ARSPD4_BUS" documentation="Bus number of the I2C bus where the airspeed sensor is connected. May not correspond to board's I2C bus number labels. Retry another bus and reboot if airspeed sensor fails to initialize." user="Advanced">
        <values>
          <value code="0">Bus0</value>
          <value code="1">Bus1</value>
          <value code="2">Bus2</value>
          <value code="3">Bus3</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Airspeed ID" name="ARSPD4_DEVID" documentation="Airspeed sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
    </parameters>
    <parameters name="ARSPD5_">
      <param humanName="Airspeed type" name="ARSPD5_TYPE" documentation="Type of airspeed sensor" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">I2C-MS4525D0</value>
          <value code="2">Analog</value>
          <value code="3">I2C-MS5525</value>
          <value code="4">I2C-MS5525 (0x76)</value>
          <value code="5">I2C-MS5525 (0x77)</value>
          <value code="6">I2C-SDP3X</value>
          <value code="7">I2C-DLVR-5in</value>
          <value code="8">DroneCAN</value>
          <value code="9">I2C-DLVR-10in</value>
          <value code="10">I2C-DLVR-20in</value>
          <value code="11">I2C-DLVR-30in</value>
          <value code="12">I2C-DLVR-60in</value>
          <value code="13">NMEA water speed</value>
          <value code="14">MSP</value>
          <value code="15">ASP5033</value>
          <value code="16">ExternalAHRS</value>
          <value code="17">AUAV-10in</value>
          <value code="18">AUAV-5in</value>
          <value code="19">AUAV-30in</value>
          <value code="100">SITL</value>
        </values>
      </param>
      <param humanName="Airspeed use" name="ARSPD5_USE" documentation="Enables airspeed use for automatic throttle modes and replaces control from THR_TRIM. Continues to display and log airspeed if set to 0. Uses airspeed for control if set to 1. Only uses airspeed when throttle = 0 if set to 2 (useful for gliders with airspeed sensors behind propellers)." user="Standard">
        <values>
          <value code="0">DoNotUse</value>
          <value code="1">Use</value>
          <value code="2">UseWhenZeroThrottle</value>
        </values>
      </param>
      <param humanName="Airspeed offset" name="ARSPD5_OFFSET" documentation="Airspeed calibration offset" user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed ratio" name="ARSPD5_RATIO" documentation="Calibrates pitot tube pressure to velocity. Increasing this value will indicate a higher airspeed at any given dynamic pressure." user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed pin" name="ARSPD5_PIN" documentation="The pin number that the airspeed sensor is connected to for analog sensors. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Automatic airspeed ratio calibration" name="ARSPD5_AUTOCAL" documentation="Enables automatic adjustment of airspeed ratio during a calibration flight based on estimation of ground speed and true airspeed. New ratio saved every 2 minutes if change is &gt; 5%. Should not be left enabled." user="Advanced">
</param>
      <param humanName="Control pitot tube order" name="ARSPD5_TUBE_ORDR" documentation="This parameter allows you to control whether the order in which the tubes are attached to your pitot tube matters. If you set this to 0 then the first (often the top) connector on the sensor needs to be the stagnation pressure (the pressure at the tip of the pitot tube). If set to 1 then the second (often the bottom) connector needs to be the stagnation pressure. If set to 2 (the default) then the airspeed driver will accept either order. The reason you may wish to specify the order is it will allow your airspeed sensor to detect if the aircraft is receiving excessive pressure on the static port compared to the stagnation port such as during a stall, which would otherwise be seen as a positive airspeed." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Swapped</value>
          <value code="2">Auto Detect</value>
        </values>
      </param>
      <param humanName="Skip airspeed offset calibration on startup" name="ARSPD5_SKIP_CAL" documentation="This parameter allows you to skip airspeed offset calibration on startup, instead using the offset from the last calibration or requiring a manual calibration. This may be desirable if the offset variance between flights for your sensor is low and you want to avoid having to cover the pitot tube on each boot." user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Do not require offset calibration before flight. Manual calibration should be performed during initial setup.</value>
          <value code="2">Do not calibrate on start up. Manual calibration must be performed once per boot.</value>
        </values>
      </param>
      <param humanName="The PSI range of the device" name="ARSPD5_PSI_RANGE" documentation="This parameter allows you to set the PSI (pounds per square inch) range for your sensor. You should not change this unless you examine the datasheet for your device" user="Advanced">
</param>
      <param humanName="Airspeed I2C bus" name="ARSPD5_BUS" documentation="Bus number of the I2C bus where the airspeed sensor is connected. May not correspond to board's I2C bus number labels. Retry another bus and reboot if airspeed sensor fails to initialize." user="Advanced">
        <values>
          <value code="0">Bus0</value>
          <value code="1">Bus1</value>
          <value code="2">Bus2</value>
          <value code="3">Bus3</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Airspeed ID" name="ARSPD5_DEVID" documentation="Airspeed sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
    </parameters>
    <parameters name="ARSPD6_">
      <param humanName="Airspeed type" name="ARSPD6_TYPE" documentation="Type of airspeed sensor" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">I2C-MS4525D0</value>
          <value code="2">Analog</value>
          <value code="3">I2C-MS5525</value>
          <value code="4">I2C-MS5525 (0x76)</value>
          <value code="5">I2C-MS5525 (0x77)</value>
          <value code="6">I2C-SDP3X</value>
          <value code="7">I2C-DLVR-5in</value>
          <value code="8">DroneCAN</value>
          <value code="9">I2C-DLVR-10in</value>
          <value code="10">I2C-DLVR-20in</value>
          <value code="11">I2C-DLVR-30in</value>
          <value code="12">I2C-DLVR-60in</value>
          <value code="13">NMEA water speed</value>
          <value code="14">MSP</value>
          <value code="15">ASP5033</value>
          <value code="16">ExternalAHRS</value>
          <value code="17">AUAV-10in</value>
          <value code="18">AUAV-5in</value>
          <value code="19">AUAV-30in</value>
          <value code="100">SITL</value>
        </values>
      </param>
      <param humanName="Airspeed use" name="ARSPD6_USE" documentation="Enables airspeed use for automatic throttle modes and replaces control from THR_TRIM. Continues to display and log airspeed if set to 0. Uses airspeed for control if set to 1. Only uses airspeed when throttle = 0 if set to 2 (useful for gliders with airspeed sensors behind propellers)." user="Standard">
        <values>
          <value code="0">DoNotUse</value>
          <value code="1">Use</value>
          <value code="2">UseWhenZeroThrottle</value>
        </values>
      </param>
      <param humanName="Airspeed offset" name="ARSPD6_OFFSET" documentation="Airspeed calibration offset" user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed ratio" name="ARSPD6_RATIO" documentation="Calibrates pitot tube pressure to velocity. Increasing this value will indicate a higher airspeed at any given dynamic pressure." user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed pin" name="ARSPD6_PIN" documentation="The pin number that the airspeed sensor is connected to for analog sensors. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Automatic airspeed ratio calibration" name="ARSPD6_AUTOCAL" documentation="Enables automatic adjustment of airspeed ratio during a calibration flight based on estimation of ground speed and true airspeed. New ratio saved every 2 minutes if change is &gt; 5%. Should not be left enabled." user="Advanced">
</param>
      <param humanName="Control pitot tube order" name="ARSPD6_TUBE_ORDR" documentation="This parameter allows you to control whether the order in which the tubes are attached to your pitot tube matters. If you set this to 0 then the first (often the top) connector on the sensor needs to be the stagnation pressure (the pressure at the tip of the pitot tube). If set to 1 then the second (often the bottom) connector needs to be the stagnation pressure. If set to 2 (the default) then the airspeed driver will accept either order. The reason you may wish to specify the order is it will allow your airspeed sensor to detect if the aircraft is receiving excessive pressure on the static port compared to the stagnation port such as during a stall, which would otherwise be seen as a positive airspeed." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Swapped</value>
          <value code="2">Auto Detect</value>
        </values>
      </param>
      <param humanName="Skip airspeed offset calibration on startup" name="ARSPD6_SKIP_CAL" documentation="This parameter allows you to skip airspeed offset calibration on startup, instead using the offset from the last calibration or requiring a manual calibration. This may be desirable if the offset variance between flights for your sensor is low and you want to avoid having to cover the pitot tube on each boot." user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Do not require offset calibration before flight. Manual calibration should be performed during initial setup.</value>
          <value code="2">Do not calibrate on start up. Manual calibration must be performed once per boot.</value>
        </values>
      </param>
      <param humanName="The PSI range of the device" name="ARSPD6_PSI_RANGE" documentation="This parameter allows you to set the PSI (pounds per square inch) range for your sensor. You should not change this unless you examine the datasheet for your device" user="Advanced">
</param>
      <param humanName="Airspeed I2C bus" name="ARSPD6_BUS" documentation="Bus number of the I2C bus where the airspeed sensor is connected. May not correspond to board's I2C bus number labels. Retry another bus and reboot if airspeed sensor fails to initialize." user="Advanced">
        <values>
          <value code="0">Bus0</value>
          <value code="1">Bus1</value>
          <value code="2">Bus2</value>
          <value code="3">Bus3</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Airspeed ID" name="ARSPD6_DEVID" documentation="Airspeed sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
    </parameters>
    <parameters name="ARSPD_">
      <param humanName="Airspeed type" name="ARSPD_TYPE" documentation="Type of airspeed sensor" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">I2C-MS4525D0</value>
          <value code="2">Analog</value>
          <value code="3">I2C-MS5525</value>
          <value code="4">I2C-MS5525 (0x76)</value>
          <value code="5">I2C-MS5525 (0x77)</value>
          <value code="6">I2C-SDP3X</value>
          <value code="7">I2C-DLVR-5in</value>
          <value code="8">DroneCAN</value>
          <value code="9">I2C-DLVR-10in</value>
          <value code="10">I2C-DLVR-20in</value>
          <value code="11">I2C-DLVR-30in</value>
          <value code="12">I2C-DLVR-60in</value>
          <value code="13">NMEA water speed</value>
          <value code="14">MSP</value>
          <value code="15">ASP5033</value>
          <value code="16">ExternalAHRS</value>
          <value code="17">AUAV-10in</value>
          <value code="18">AUAV-5in</value>
          <value code="19">AUAV-30in</value>
          <value code="100">SITL</value>
        </values>
      </param>
      <param humanName="Airspeed use" name="ARSPD_USE" documentation="Enables airspeed use for automatic throttle modes and replaces control from THR_TRIM. Continues to display and log airspeed if set to 0. Uses airspeed for control if set to 1. Only uses airspeed when throttle = 0 if set to 2 (useful for gliders with airspeed sensors behind propellers)." user="Standard">
        <values>
          <value code="0">DoNotUse</value>
          <value code="1">Use</value>
          <value code="2">UseWhenZeroThrottle</value>
        </values>
      </param>
      <param humanName="Airspeed offset" name="ARSPD_OFFSET" documentation="Airspeed calibration offset" user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed ratio" name="ARSPD_RATIO" documentation="Calibrates pitot tube pressure to velocity. Increasing this value will indicate a higher airspeed at any given dynamic pressure." user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Airspeed pin" name="ARSPD_PIN" documentation="The pin number that the airspeed sensor is connected to for analog sensors. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Automatic airspeed ratio calibration" name="ARSPD_AUTOCAL" documentation="Enables automatic adjustment of airspeed ratio during a calibration flight based on estimation of ground speed and true airspeed. New ratio saved every 2 minutes if change is &gt; 5%. Should not be left enabled." user="Advanced">
</param>
      <param humanName="Control pitot tube order" name="ARSPD_TUBE_ORDR" documentation="This parameter allows you to control whether the order in which the tubes are attached to your pitot tube matters. If you set this to 0 then the first (often the top) connector on the sensor needs to be the stagnation pressure (the pressure at the tip of the pitot tube). If set to 1 then the second (often the bottom) connector needs to be the stagnation pressure. If set to 2 (the default) then the airspeed driver will accept either order. The reason you may wish to specify the order is it will allow your airspeed sensor to detect if the aircraft is receiving excessive pressure on the static port compared to the stagnation port such as during a stall, which would otherwise be seen as a positive airspeed." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Swapped</value>
          <value code="2">Auto Detect</value>
        </values>
      </param>
      <param humanName="Skip airspeed offset calibration on startup" name="ARSPD_SKIP_CAL" documentation="This parameter allows you to skip airspeed offset calibration on startup, instead using the offset from the last calibration or requiring a manual calibration. This may be desirable if the offset variance between flights for your sensor is low and you want to avoid having to cover the pitot tube on each boot." user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Do not require offset calibration before flight. Manual calibration should be performed during initial setup.</value>
          <value code="2">Do not calibrate on start up. Manual calibration must be performed once per boot.</value>
        </values>
      </param>
      <param humanName="The PSI range of the device" name="ARSPD_PSI_RANGE" documentation="This parameter allows you to set the PSI (pounds per square inch) range for your sensor. You should not change this unless you examine the datasheet for your device" user="Advanced">
</param>
      <param humanName="Airspeed I2C bus" name="ARSPD_BUS" documentation="Bus number of the I2C bus where the airspeed sensor is connected. May not correspond to board's I2C bus number labels. Retry another bus and reboot if airspeed sensor fails to initialize." user="Advanced">
        <values>
          <value code="0">Bus0</value>
          <value code="1">Bus1</value>
          <value code="2">Bus2</value>
          <value code="3">Bus3</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Airspeed ID" name="ARSPD_DEVID" documentation="Airspeed sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
    </parameters>
    <parameters name="AUTOLAND_">
      <param humanName="Final approach WP altitude" name="AUTOLAND_WP_ALT" documentation="This is the target altitude above HOME for final approach waypoint" user="Standard">
        <field name="Range">0 200</field>
        <field name="Increment">1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Final approach WP distance" name="AUTOLAND_WP_DIST" documentation="This is the distance from Home that the final approach waypoint is set. The waypoint point will be in the opposite direction of takeoff (the direction the plane is facing when the plane sets its takeoff heading)" user="Standard">
        <field name="Range">0 700</field>
        <field name="Increment">1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Landing direction offset from takeoff" name="AUTOLAND_DIR_OFF" documentation="The captured takeoff direction after ground course is established in autotakeoffsis offset by this amount to create a different landing direction and approach.However,if TKOFF_OPTION bit1 is set, the takeoff(landing) direction is captured immediately via compass heading upon arming, then this offset is NOT applied." user="Standard">
        <field name="Range">-360 360</field>
        <field name="Increment">1</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Autoland mode options" name="AUTOLAND_OPTIONS" documentation="Enables optional autoland mode behaviors" user="Standard">
        <bitmask>
          <bit code="0">When set if there is a healthy compass in use the compass heading will be captured at arming and used for the AUTOLAND mode's initial takeoff direction instead of capturing ground course in NAV_TAKEOFF or Mode TAKEOFF or other modes.</bit>
        </bitmask>
        <field name="Bitmask">0: When set if there is a healthy compass in use the compass heading will be captured at arming and used for the AUTOLAND mode's initial takeoff direction instead of capturing ground course in NAV_TAKEOFF or Mode TAKEOFF or other modes.</field>
      </param>
      <param humanName="Minimum altitude above terrain before turning upon entry" name="AUTOLAND_CLIMB" documentation="Vehicle will climb with limited turn ability (LEVEL_ROLL_LIMIT) until it is at least this altitude above the terrain at the point of entry, before proceeding to loiter-to-alt and landing legs. 0 Disables." user="Standard">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
    </parameters>
    <parameters name="AVD_">
      <param humanName="Enable Avoidance using ADSB" name="AVD_ENABLE" documentation="Enable Avoidance using ADSB" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Collision Avoidance Behavior" name="AVD_F_ACTION" documentation="Specifies aircraft behaviour when a collision is imminent" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Report</value>
          <value code="2">Climb Or Descend</value>
          <value code="3">Move Horizontally</value>
          <value code="4">Move Perpendicularly in 3D</value>
          <value code="5">RTL</value>
          <value code="6">Hover</value>
        </values>
      </param>
      <param humanName="Collision Avoidance Behavior - Warn" name="AVD_W_ACTION" documentation="Specifies aircraft behaviour when a collision may occur" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Report</value>
        </values>
      </param>
      <param humanName="Recovery behaviour after a fail event" name="AVD_F_RCVRY" documentation="Determines what the aircraft will do after a fail event is resolved" user="Advanced">
        <values>
          <value code="0">Remain in AVOID_ADSB</value>
          <value code="1">Resume previous flight mode</value>
          <value code="2">RTL</value>
          <value code="3">Resume if AUTO else Loiter</value>
        </values>
      </param>
      <param humanName="Maximum number of obstacles to track" name="AVD_OBS_MAX" documentation="Maximum number of obstacles to track" user="Advanced">
</param>
      <param humanName="Time Horizon Warn" name="AVD_W_TIME" documentation="Aircraft velocity vectors are multiplied by this time to determine closest approach.  If this results in an approach closer than W_DIST_XY or W_DIST_Z then W_ACTION is undertaken (assuming F_ACTION is not undertaken)" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Time Horizon Fail" name="AVD_F_TIME" documentation="Aircraft velocity vectors are multiplied by this time to determine closest approach.  If this results in an approach closer than F_DIST_XY or F_DIST_Z then F_ACTION is undertaken" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Distance Warn XY" name="AVD_W_DIST_XY" documentation="Closest allowed projected distance before W_ACTION is undertaken" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Distance Fail XY" name="AVD_F_DIST_XY" documentation="Closest allowed projected distance before F_ACTION is undertaken" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Distance Warn Z" name="AVD_W_DIST_Z" documentation="Closest allowed projected distance before BEHAVIOUR_W is undertaken" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Distance Fail Z" name="AVD_F_DIST_Z" documentation="Closest allowed projected distance before BEHAVIOUR_F is undertaken" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="ADS-B avoidance minimum altitude" name="AVD_F_ALT_MIN" documentation="Minimum AMSL (above mean sea level) altitude for ADS-B avoidance. If the vehicle is below this altitude, no avoidance action will take place. Useful to prevent ADS-B avoidance from activating while below the tree line or around structures. Default of 0 is no minimum." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
    </parameters>
    <parameters name="BARO">
      <param humanName="Ground Pressure" name="BARO1_GND_PRESS" documentation="calibrated ground pressure in Pascals" user="Advanced">
        <field name="Units">Pa</field>
        <field name="UnitText">pascal</field>
        <field name="Increment">1</field>
        <field name="ReadOnly">True</field>
        <field name="Volatile">True</field>
      </param>
      <param humanName="ground temperature" name="BARO_GND_TEMP" documentation="User provided ambient ground temperature in degrees Celsius. This is used to improve the calculation of the altitude the vehicle is at. This parameter is not persistent and will be reset to 0 every time the vehicle is rebooted. A value of 0 means use the internal measurement ambient temperature." user="Advanced">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Increment">1</field>
        <field name="Volatile">True</field>
      </param>
      <param humanName="altitude offset" name="BARO_ALT_OFFSET" documentation="altitude offset in meters added to barometric altitude. This is used to allow for automatic adjustment of the base barometric altitude by a ground station equipped with a barometer. The value is added to the barometric altitude read by the aircraft. It is automatically reset to 0 when the barometer is calibrated on each reboot or when a preflight calibration is performed." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Primary barometer" name="BARO_PRIMARY" documentation="This selects which barometer will be the primary if multiple barometers are found" user="Advanced">
        <values>
          <value code="0">FirstBaro</value>
          <value code="1">2ndBaro</value>
          <value code="2">3rdBaro</value>
        </values>
      </param>
      <param humanName="External baro bus" name="BARO_EXT_BUS" documentation="This selects the bus number for looking for an I2C barometer. When set to -1 it will probe all external i2c buses based on the BARO_PROBE_EXT parameter." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Bus0</value>
          <value code="1">Bus1</value>
          <value code="6">Bus6</value>
        </values>
      </param>
      <param humanName="Ground Pressure" name="BARO2_GND_PRESS" documentation="calibrated ground pressure in Pascals" user="Advanced">
        <field name="Units">Pa</field>
        <field name="UnitText">pascal</field>
        <field name="Increment">1</field>
        <field name="ReadOnly">True</field>
        <field name="Volatile">True</field>
      </param>
      <param humanName="Absolute Pressure" name="BARO3_GND_PRESS" documentation="calibrated ground pressure in Pascals" user="Advanced">
        <field name="Units">Pa</field>
        <field name="UnitText">pascal</field>
        <field name="Increment">1</field>
        <field name="ReadOnly">True</field>
        <field name="Volatile">True</field>
      </param>
      <param humanName="Range in which sample is accepted" name="BARO_FLTR_RNG" documentation="This sets the range around the average value that new samples must be within to be accepted. This can help reduce the impact of noise on sensors that are on long I2C cables. The value is a percentage from the average value. A value of zero disables this filter.">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="External barometers to probe" name="BARO_PROBE_EXT" documentation="This sets which types of external i2c barometer to look for. It is a bitmask of barometer types. The I2C buses to probe is based on BARO_EXT_BUS. If BARO_EXT_BUS is -1 then it will probe all external buses, otherwise it will probe just the bus number given in BARO_EXT_BUS." user="Advanced">
        <bitmask>
          <bit code="0">BMP085</bit>
          <bit code="1">BMP280</bit>
          <bit code="2">MS5611</bit>
          <bit code="3">MS5607</bit>
          <bit code="4">MS5637</bit>
          <bit code="5">FBM320</bit>
          <bit code="6">DPS280</bit>
          <bit code="7">LPS25H</bit>
          <bit code="8">Keller</bit>
          <bit code="9">MS5837</bit>
          <bit code="10">BMP388</bit>
          <bit code="11">SPL06</bit>
          <bit code="12">MSP</bit>
          <bit code="13">BMP581</bit>
          <bit code="14">AUAV</bit>
        </bitmask>
        <field name="Bitmask">0:BMP085,1:BMP280,2:MS5611,3:MS5607,4:MS5637,5:FBM320,6:DPS280,7:LPS25H,8:Keller,9:MS5837,10:BMP388,11:SPL06,12:MSP,13:BMP581,14:AUAV</field>
      </param>
      <param humanName="Baro ID" name="BARO1_DEVID" documentation="Barometer sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Baro ID2" name="BARO2_DEVID" documentation="Barometer2 sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Baro ID3" name="BARO3_DEVID" documentation="Barometer3 sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="field elevation" name="BARO_FIELD_ELV" documentation="User provided field elevation in meters. This is used to improve the calculation of the altitude the vehicle is at. This parameter is not persistent and will be reset to 0 every time the vehicle is rebooted. Changes to this parameter will only be used when disarmed. A value of 0 means the EKF origin height is used for takeoff height above sea level." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.1</field>
        <field name="Volatile">True</field>
      </param>
      <param humanName="Altitude error maximum" name="BARO_ALTERR_MAX" documentation="This is the maximum acceptable altitude discrepancy between GPS altitude and barometric presssure altitude calculated against a standard atmosphere for arming checks to pass. If you are getting an arming error due to this parameter then you may have a faulty or substituted barometer. A common issue is vendors replacing a MS5611 in a &quot;Pixhawk&quot; with a MS5607. If you have that issue then please see BARO_OPTIONS parameter to force the MS5611 to be treated as a MS5607. This check is disabled if the value is zero." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">1</field>
        <field name="Range">0 5000</field>
      </param>
      <param humanName="Barometer options" name="BARO_OPTIONS" documentation="Barometer options" user="Advanced">
        <bitmask>
          <bit code="0">Treat MS5611 as MS5607</bit>
        </bitmask>
        <field name="Bitmask">0:Treat MS5611 as MS5607</field>
      </param>
      <param humanName="Thrust compensation" name="BARO1_THST_SCALE" documentation="Thrust scaling in Pascals. This value scaled by the normalized thrust is subtracted from the barometer pressure. This is used to adjust linearly based on the thrust output for local pressure difference induced by the props." user="Advanced">
        <field name="Range">-300 300</field>
      </param>
    </parameters>
    <parameters name="BARO1_WCF_">
      <param humanName="Wind coefficient enable" name="BARO1_WCF_ENABLE" documentation="This enables the use of wind coefficients for barometer compensation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Pressure error coefficient in positive X direction (forward)" name="BARO1_WCF_FWD" documentation="This is the ratio of static pressure error to dynamic pressure generated by a positive wind relative velocity along the X body axis. If the baro height estimate rises during forwards flight, then this will be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in negative X direction (backwards)" name="BARO1_WCF_BCK" documentation="This is the ratio of static pressure error to dynamic pressure generated by a negative wind relative velocity along the X body axis. If the baro height estimate rises during backwards flight, then this will be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in positive Y direction (right)" name="BARO1_WCF_RGT" documentation="This is the ratio of static pressure error to dynamic pressure generated by a positive wind relative velocity along the Y body axis. If the baro height estimate rises during sideways flight to the right, then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in negative Y direction (left)" name="BARO1_WCF_LFT" documentation="This is the ratio of static pressure error to dynamic pressure generated by a negative wind relative velocity along the Y body axis. If the baro height estimate rises during sideways flight to the left, then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in positive Z direction (up)" name="BARO1_WCF_UP" documentation="This is the ratio of static pressure error to dynamic pressure generated by a positive wind relative velocity along the Z body axis. If the baro height estimate rises above truth height during climbing flight (or forward flight with a high forwards lean angle), then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in negative Z direction (down)" name="BARO1_WCF_DN" documentation="This is the ratio of static pressure error to dynamic pressure generated by a negative wind relative velocity along the Z body axis. If the baro height estimate rises above truth height during descending flight (or forward flight with a high backwards lean angle, eg braking manoeuvre), then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
    </parameters>
    <parameters name="BARO2_WCF_">
      <param humanName="Wind coefficient enable" name="BARO2_WCF_ENABLE" documentation="This enables the use of wind coefficients for barometer compensation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Pressure error coefficient in positive X direction (forward)" name="BARO2_WCF_FWD" documentation="This is the ratio of static pressure error to dynamic pressure generated by a positive wind relative velocity along the X body axis. If the baro height estimate rises during forwards flight, then this will be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in negative X direction (backwards)" name="BARO2_WCF_BCK" documentation="This is the ratio of static pressure error to dynamic pressure generated by a negative wind relative velocity along the X body axis. If the baro height estimate rises during backwards flight, then this will be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in positive Y direction (right)" name="BARO2_WCF_RGT" documentation="This is the ratio of static pressure error to dynamic pressure generated by a positive wind relative velocity along the Y body axis. If the baro height estimate rises during sideways flight to the right, then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in negative Y direction (left)" name="BARO2_WCF_LFT" documentation="This is the ratio of static pressure error to dynamic pressure generated by a negative wind relative velocity along the Y body axis. If the baro height estimate rises during sideways flight to the left, then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in positive Z direction (up)" name="BARO2_WCF_UP" documentation="This is the ratio of static pressure error to dynamic pressure generated by a positive wind relative velocity along the Z body axis. If the baro height estimate rises above truth height during climbing flight (or forward flight with a high forwards lean angle), then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in negative Z direction (down)" name="BARO2_WCF_DN" documentation="This is the ratio of static pressure error to dynamic pressure generated by a negative wind relative velocity along the Z body axis. If the baro height estimate rises above truth height during descending flight (or forward flight with a high backwards lean angle, eg braking manoeuvre), then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
    </parameters>
    <parameters name="BARO3_WCF_">
      <param humanName="Wind coefficient enable" name="BARO3_WCF_ENABLE" documentation="This enables the use of wind coefficients for barometer compensation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Pressure error coefficient in positive X direction (forward)" name="BARO3_WCF_FWD" documentation="This is the ratio of static pressure error to dynamic pressure generated by a positive wind relative velocity along the X body axis. If the baro height estimate rises during forwards flight, then this will be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in negative X direction (backwards)" name="BARO3_WCF_BCK" documentation="This is the ratio of static pressure error to dynamic pressure generated by a negative wind relative velocity along the X body axis. If the baro height estimate rises during backwards flight, then this will be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in positive Y direction (right)" name="BARO3_WCF_RGT" documentation="This is the ratio of static pressure error to dynamic pressure generated by a positive wind relative velocity along the Y body axis. If the baro height estimate rises during sideways flight to the right, then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in negative Y direction (left)" name="BARO3_WCF_LFT" documentation="This is the ratio of static pressure error to dynamic pressure generated by a negative wind relative velocity along the Y body axis. If the baro height estimate rises during sideways flight to the left, then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in positive Z direction (up)" name="BARO3_WCF_UP" documentation="This is the ratio of static pressure error to dynamic pressure generated by a positive wind relative velocity along the Z body axis. If the baro height estimate rises above truth height during climbing flight (or forward flight with a high forwards lean angle), then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pressure error coefficient in negative Z direction (down)" name="BARO3_WCF_DN" documentation="This is the ratio of static pressure error to dynamic pressure generated by a negative wind relative velocity along the Z body axis. If the baro height estimate rises above truth height during descending flight (or forward flight with a high backwards lean angle, eg braking manoeuvre), then this should be a negative number. Multirotors can use this feature only if using EKF3 and if the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters have been tuned." user="Advanced">
        <field name="Range">-1.0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
    </parameters>
    <parameters name="BATT2_">
      <param humanName="Battery monitoring" name="BATT2_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATT2_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATT2_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATT2_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATT2_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATT2_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATT2_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT2_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT2_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATT2_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT2_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATT2_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT2_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT2_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATT2_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT2_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATT2_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATT2_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATT2_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATT2_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATT2_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATT2_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATT2_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATT2_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT2_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT2_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT2_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT2_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT2_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATT2_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT2_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT2_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATT2_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATT2_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATT2_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATT2_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATT2_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATT2_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATT2_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATT2_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATT2_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATT2_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATT2_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT2_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT2_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT2_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT2_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATT2_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT2_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT2_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT2_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT2_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATT2_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATT2_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT2_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT2_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT2_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT2_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT2_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATT2_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATT3_">
      <param humanName="Battery monitoring" name="BATT3_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATT3_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATT3_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATT3_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATT3_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATT3_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATT3_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT3_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT3_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATT3_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT3_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATT3_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT3_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT3_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATT3_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT3_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATT3_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATT3_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATT3_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATT3_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATT3_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATT3_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATT3_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATT3_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT3_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT3_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT3_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT3_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT3_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATT3_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT3_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT3_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATT3_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATT3_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATT3_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATT3_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATT3_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATT3_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATT3_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATT3_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATT3_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATT3_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATT3_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT3_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT3_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT3_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT3_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATT3_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT3_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT3_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT3_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT3_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATT3_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATT3_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT3_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT3_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT3_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT3_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT3_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATT3_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATT4_">
      <param humanName="Battery monitoring" name="BATT4_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATT4_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATT4_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATT4_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATT4_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATT4_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATT4_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT4_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT4_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATT4_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT4_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATT4_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT4_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT4_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATT4_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT4_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATT4_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATT4_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATT4_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATT4_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATT4_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATT4_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATT4_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATT4_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT4_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT4_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT4_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT4_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT4_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATT4_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT4_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT4_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATT4_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATT4_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATT4_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATT4_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATT4_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATT4_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATT4_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATT4_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATT4_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATT4_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATT4_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT4_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT4_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT4_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT4_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATT4_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT4_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT4_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT4_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT4_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATT4_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATT4_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT4_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT4_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT4_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT4_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT4_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATT4_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATT5_">
      <param humanName="Battery monitoring" name="BATT5_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATT5_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATT5_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATT5_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATT5_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATT5_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATT5_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT5_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT5_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATT5_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT5_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATT5_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT5_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT5_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATT5_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT5_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATT5_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATT5_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATT5_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATT5_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATT5_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATT5_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATT5_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATT5_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT5_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT5_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT5_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT5_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT5_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATT5_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT5_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT5_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATT5_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATT5_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATT5_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATT5_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATT5_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATT5_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATT5_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATT5_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATT5_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATT5_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATT5_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT5_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT5_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT5_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT5_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATT5_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT5_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT5_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT5_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT5_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATT5_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATT5_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT5_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT5_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT5_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT5_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT5_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATT5_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATT6_">
      <param humanName="Battery monitoring" name="BATT6_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATT6_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATT6_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATT6_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATT6_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATT6_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATT6_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT6_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT6_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATT6_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT6_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATT6_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT6_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT6_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATT6_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT6_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATT6_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATT6_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATT6_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATT6_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATT6_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATT6_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATT6_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATT6_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT6_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT6_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT6_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT6_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT6_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATT6_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT6_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT6_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATT6_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATT6_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATT6_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATT6_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATT6_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATT6_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATT6_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATT6_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATT6_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATT6_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATT6_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT6_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT6_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT6_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT6_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATT6_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT6_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT6_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT6_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT6_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATT6_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATT6_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT6_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT6_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT6_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT6_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT6_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATT6_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATT7_">
      <param humanName="Battery monitoring" name="BATT7_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATT7_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATT7_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATT7_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATT7_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATT7_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATT7_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT7_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT7_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATT7_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT7_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATT7_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT7_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT7_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATT7_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT7_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATT7_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATT7_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATT7_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATT7_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATT7_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATT7_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATT7_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATT7_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT7_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT7_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT7_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT7_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT7_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATT7_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT7_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT7_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATT7_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATT7_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATT7_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATT7_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATT7_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATT7_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATT7_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATT7_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATT7_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATT7_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATT7_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT7_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT7_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT7_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT7_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATT7_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT7_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT7_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT7_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT7_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATT7_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATT7_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT7_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT7_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT7_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT7_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT7_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATT7_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATT8_">
      <param humanName="Battery monitoring" name="BATT8_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATT8_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATT8_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATT8_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATT8_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATT8_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATT8_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT8_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT8_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATT8_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT8_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATT8_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT8_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT8_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATT8_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT8_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATT8_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATT8_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATT8_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATT8_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATT8_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATT8_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATT8_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATT8_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT8_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT8_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT8_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT8_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT8_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATT8_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT8_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT8_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATT8_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATT8_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATT8_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATT8_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATT8_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATT8_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATT8_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATT8_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATT8_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATT8_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATT8_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT8_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT8_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT8_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT8_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATT8_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT8_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT8_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT8_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT8_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATT8_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATT8_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT8_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT8_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT8_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT8_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT8_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATT8_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATT9_">
      <param humanName="Battery monitoring" name="BATT9_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATT9_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATT9_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATT9_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATT9_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATT9_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATT9_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT9_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT9_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATT9_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT9_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATT9_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT9_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT9_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATT9_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT9_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATT9_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATT9_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATT9_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATT9_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATT9_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATT9_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATT9_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATT9_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT9_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT9_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT9_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT9_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT9_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATT9_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT9_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT9_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATT9_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATT9_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATT9_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATT9_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATT9_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATT9_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATT9_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATT9_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATT9_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATT9_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATT9_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT9_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT9_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT9_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT9_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATT9_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT9_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT9_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT9_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT9_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATT9_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATT9_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT9_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT9_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT9_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT9_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT9_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATT9_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATTA_">
      <param humanName="Battery monitoring" name="BATTA_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATTA_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATTA_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATTA_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATTA_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATTA_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATTA_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTA_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTA_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATTA_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTA_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATTA_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTA_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTA_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATTA_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTA_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATTA_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATTA_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATTA_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATTA_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATTA_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATTA_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATTA_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATTA_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTA_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTA_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTA_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTA_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTA_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATTA_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTA_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTA_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATTA_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATTA_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATTA_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATTA_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATTA_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATTA_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATTA_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATTA_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATTA_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATTA_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATTA_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTA_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTA_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTA_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTA_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATTA_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTA_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTA_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTA_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTA_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATTA_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATTA_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTA_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTA_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTA_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTA_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTA_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATTA_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATTB_">
      <param humanName="Battery monitoring" name="BATTB_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATTB_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATTB_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATTB_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATTB_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATTB_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATTB_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTB_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTB_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATTB_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTB_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATTB_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTB_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTB_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATTB_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTB_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATTB_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATTB_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATTB_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATTB_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATTB_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATTB_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATTB_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATTB_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTB_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTB_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTB_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTB_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTB_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATTB_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTB_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTB_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATTB_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATTB_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATTB_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATTB_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATTB_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATTB_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATTB_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATTB_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATTB_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATTB_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATTB_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTB_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTB_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTB_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTB_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATTB_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTB_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTB_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTB_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTB_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATTB_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATTB_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTB_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTB_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTB_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTB_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTB_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATTB_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATTC_">
      <param humanName="Battery monitoring" name="BATTC_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATTC_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATTC_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATTC_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATTC_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATTC_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATTC_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTC_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTC_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATTC_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTC_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATTC_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTC_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTC_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATTC_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTC_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATTC_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATTC_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATTC_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATTC_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATTC_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATTC_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATTC_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATTC_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTC_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTC_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTC_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTC_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTC_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATTC_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTC_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTC_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATTC_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATTC_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATTC_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATTC_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATTC_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATTC_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATTC_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATTC_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATTC_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATTC_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATTC_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTC_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTC_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTC_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTC_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATTC_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTC_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTC_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTC_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTC_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATTC_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATTC_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTC_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTC_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTC_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTC_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTC_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATTC_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATTD_">
      <param humanName="Battery monitoring" name="BATTD_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATTD_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATTD_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATTD_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATTD_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATTD_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATTD_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTD_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTD_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATTD_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTD_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATTD_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTD_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTD_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATTD_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTD_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATTD_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATTD_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATTD_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATTD_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATTD_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATTD_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATTD_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATTD_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTD_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTD_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTD_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTD_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTD_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATTD_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTD_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTD_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATTD_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATTD_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATTD_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATTD_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATTD_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATTD_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATTD_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATTD_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATTD_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATTD_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATTD_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTD_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTD_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTD_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTD_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATTD_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTD_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTD_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTD_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTD_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATTD_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATTD_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTD_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTD_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTD_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTD_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTD_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATTD_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATTE_">
      <param humanName="Battery monitoring" name="BATTE_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATTE_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATTE_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATTE_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATTE_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATTE_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATTE_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTE_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTE_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATTE_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTE_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATTE_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTE_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTE_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATTE_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTE_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATTE_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATTE_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATTE_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATTE_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATTE_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATTE_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATTE_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATTE_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTE_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTE_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTE_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTE_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTE_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATTE_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTE_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTE_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATTE_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATTE_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATTE_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATTE_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATTE_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATTE_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATTE_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATTE_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATTE_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATTE_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATTE_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTE_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTE_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTE_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTE_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATTE_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTE_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTE_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTE_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTE_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATTE_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATTE_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTE_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTE_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTE_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTE_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTE_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATTE_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATTF_">
      <param humanName="Battery monitoring" name="BATTF_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATTF_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATTF_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATTF_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATTF_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATTF_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATTF_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTF_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTF_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATTF_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTF_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATTF_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTF_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTF_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATTF_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTF_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATTF_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATTF_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATTF_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATTF_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATTF_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATTF_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATTF_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATTF_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTF_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTF_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTF_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTF_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTF_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATTF_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTF_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTF_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATTF_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATTF_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATTF_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATTF_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATTF_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATTF_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATTF_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATTF_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATTF_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATTF_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATTF_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTF_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTF_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTF_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTF_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATTF_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTF_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTF_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTF_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTF_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATTF_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATTF_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTF_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTF_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTF_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTF_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTF_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATTF_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATTG_">
      <param humanName="Battery monitoring" name="BATTG_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATTG_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATTG_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATTG_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATTG_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATTG_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATTG_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTG_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTG_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATTG_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTG_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATTG_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATTG_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATTG_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATTG_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATTG_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATTG_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATTG_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATTG_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATTG_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATTG_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATTG_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATTG_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATTG_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTG_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTG_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTG_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTG_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTG_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATTG_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTG_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTG_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATTG_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATTG_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATTG_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATTG_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATTG_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATTG_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATTG_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATTG_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATTG_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATTG_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATTG_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTG_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTG_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTG_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTG_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATTG_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATTG_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATTG_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATTG_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATTG_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATTG_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATTG_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATTG_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATTG_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATTG_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATTG_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATTG_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATTG_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BATT_">
      <param humanName="Battery monitoring" name="BATT_MONITOR" documentation="Controls enabling monitoring of the battery's voltage and current" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="28">AD7091R5</value>
          <value code="31">Analog Current Only</value>
          <value code="3">Analog Voltage Only</value>
          <value code="4">Analog Voltage and Current</value>
          <value code="6">Bebop</value>
          <value code="8">DroneCAN-BatteryInfo</value>
          <value code="27">EFI</value>
          <value code="9">ESC</value>
          <value code="11">FuelFlow</value>
          <value code="24">FuelLevelAnalog</value>
          <value code="12">FuelLevelPWM</value>
          <value code="17">Generator-Elec</value>
          <value code="18">Generator-Fuel</value>
          <value code="26">INA239_SPI</value>
          <value code="21">INA2XX (INA226 INA228 INA238 INA231 INA260)</value>
          <value code="30">INA3221</value>
          <value code="22">LTC2946</value>
          <value code="20">MPPT</value>
          <value code="15">NeoDesign</value>
          <value code="19">Rotoye</value>
          <value code="13">SMBUS-SUI3</value>
          <value code="14">SMBUS-SUI6</value>
          <value code="7">SMBus-Generic</value>
          <value code="16">SMBus-Maxell</value>
          <value code="29">Scripting</value>
          <value code="5">Solo</value>
          <value code="10">Sum Of Selected Monitors</value>
          <value code="25">Synthetic Current and Analog Voltage</value>
          <value code="32">TIBQ76952-I2C (Periph only)</value>
          <value code="23">Torqeedo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery capacity" name="BATT_CAPACITY" documentation="Capacity of the battery in mAh when full" user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Maximum allowed power (Watts)" name="BATT_WATT_MAX" documentation="If battery wattage (voltage * current) exceeds this value then the system will reduce max throttle (THR_MAX, TKOFF_THR_MAX and THR_MIN for reverse thrust) to satisfy this limit. This helps limit high current to low C rated batteries regardless of battery voltage. The max throttle will slowly grow back to THR_MAX (or TKOFF_THR_MAX ) and THR_MIN if demanding the current max and under the watt max. Use 0 to disable." user="Advanced">
        <field name="Units">W</field>
        <field name="UnitText">watt</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery serial number" name="BATT_SERIAL_NUM" documentation="Battery serial number, automatically filled in for SMBus batteries, otherwise will be -1. With DroneCan it is the battery_id." user="Advanced">
</param>
      <param humanName="Low voltage timeout" name="BATT_LOW_TIMER" documentation="This is the timeout in seconds before a low voltage event will be triggered. For aircraft with low C batteries it may be necessary to raise this in order to cope with low voltage on long takeoffs. A value of zero disables low voltage errors." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 120</field>
      </param>
      <param humanName="Failsafe voltage source" name="BATT_FS_VOLTSRC" documentation="Voltage type used for detection of low voltage event" user="Advanced">
        <values>
          <value code="0">Raw Voltage</value>
          <value code="1">Sag Compensated Voltage</value>
        </values>
      </param>
      <param humanName="Low battery voltage" name="BATT_LOW_VOLT" documentation="Battery voltage that triggers a low battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Low battery capacity" name="BATT_LOW_MAH" documentation="Battery capacity at which the low battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT_FS_LOW_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Critical battery voltage" name="BATT_CRT_VOLT" documentation="Battery voltage that triggers a critical battery failsafe. Set to 0 to disable. If the battery voltage drops below this voltage continuously for more then the period specified by the BATT_LOW_TIMER parameter then the vehicle will perform the failsafe specified by the BATT_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery critical capacity" name="BATT_CRT_MAH" documentation="Battery capacity at which the critical battery failsafe is triggered. Set to 0 to disable battery remaining failsafe. If the battery capacity drops below this level the vehicle will perform the failsafe specified by the BATT_FS_CRT_ACT parameter." user="Standard">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Low battery failsafe action" name="BATT_FS_LOW_ACT" documentation="What action the vehicle should perform if it hits a low battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute release</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Critical battery failsafe action" name="BATT_FS_CRT_ACT" documentation="What action the vehicle should perform if it hits a critical battery failsafe" user="Standard">
        <values>
          <value code="0">Warn only</value>
          <value code="1">RTL</value>
          <value code="2">Land</value>
          <value code="3">Terminate</value>
          <value code="4">QLand</value>
          <value code="5">Parachute</value>
          <value code="6">Loiter to QLand</value>
          <value code="7">AUTOLAND or RTL</value>
        </values>
      </param>
      <param humanName="Required arming voltage" name="BATT_ARM_VOLT" documentation="Battery voltage level which is required to arm the aircraft. Set to 0 to allow arming at any voltage." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Required arming remaining capacity" name="BATT_ARM_MAH" documentation="Battery capacity remaining which is required to arm the aircraft. Set to 0 to allow arming at any capacity. Note that execept for smart batteries rebooting the vehicle will always reset the remaining capacity estimate, which can lead to this check not providing sufficent protection, it is recommended to always use this in conjunction with the BATT_ARM_VOLT parameter." user="Advanced">
        <field name="Units">mAh</field>
        <field name="UnitText">milliampere hour</field>
        <field name="Increment">50</field>
      </param>
      <param humanName="Battery monitor options" name="BATT_OPTIONS" documentation="This sets options to change the behaviour of the battery monitor" user="Advanced">
        <bitmask>
          <bit code="0">Ignore DroneCAN SoC</bit>
          <bit code="1">MPPT reports input voltage and current</bit>
          <bit code="2">MPPT Powered off when disarmed</bit>
          <bit code="3">MPPT Powered on when armed</bit>
          <bit code="4">MPPT Powered off at boot</bit>
          <bit code="5">MPPT Powered on at boot</bit>
          <bit code="6">Send resistance compensated voltage to GCS</bit>
          <bit code="7">Allow DroneCAN InfoAux to be from a different CAN node</bit>
          <bit code="8">Battery is for internal autopilot use only</bit>
          <bit code="9">Sum monitor measures minimum voltage instead of average</bit>
          <bit code="10">Allow DroneCAN dynamic node update on hot-swap</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore DroneCAN SoC, 1:MPPT reports input voltage and current, 2:MPPT Powered off when disarmed, 3:MPPT Powered on when armed, 4:MPPT Powered off at boot, 5:MPPT Powered on at boot, 6:Send resistance compensated voltage to GCS, 7:Allow DroneCAN InfoAux to be from a different CAN node, 8:Battery is for internal autopilot use only, 9:Sum monitor measures minimum voltage instead of average, 10:Allow DroneCAN dynamic node update on hot-swap</field>
      </param>
      <param humanName="ESC Telemetry Index to write to" name="BATT_ESC_INDEX" documentation="ESC Telemetry Index to write voltage, current, consumption and temperature data to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Battery Voltage sensing pin" name="BATT_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT_CURR_PIN" documentation="Sets the analog input pin that should be used for current monitoring." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="3">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="4">CubeOrange_PM2/Navigator</value>
          <value code="14">Pixhawk2_PM2</value>
          <value code="15">CubeOrange</value>
          <value code="17">Durandal</value>
          <value code="101">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT). For the 3DR Power brick with a Pixhawk, this should be set to 10.1. For the Pixhawk with the 3DR 4in1 ESC this should be 12.02. For the PX using the PX4IO power supply this should be set to 1." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to. With a Pixhawk using the 3DR Power brick this should be set to 17. For the Pixhawk with the 3DR 4in1 ESC this should be 17. For Synthetic Current sensor monitors, this is the maximum, full throttle current draw." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor for Analog Sensors. For Synthetic Current sensor, this offset is the zero throttle system current and is added to the calculated throttle base current." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Voltage offset" name="BATT_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT_I2C_ADDR" documentation="Battery monitor I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Sum mask" name="BATT_SUM_MASK" documentation="0: sum of remaining battery monitors, If none 0 sum of specified monitors. Current will be summed and voltages averaged." user="Standard">
        <bitmask>
          <bit code="0">monitor 1</bit>
          <bit code="1">monitor 2</bit>
          <bit code="2">monitor 3</bit>
          <bit code="3">monitor 4</bit>
          <bit code="4">monitor 5</bit>
          <bit code="5">monitor 6</bit>
          <bit code="6">monitor 7</bit>
          <bit code="7">monitor 8</bit>
          <bit code="8">monitor 9</bit>
        </bitmask>
        <field name="Bitmask">0:monitor 1, 1:monitor 2, 2:monitor 3, 3:monitor 4, 4:monitor 5, 5:monitor 6, 6:monitor 7, 7:monitor 8, 8:monitor 9</field>
      </param>
      <param humanName="Scales reported power monitor current" name="BATT_CURR_MULT" documentation="Multiplier applied to all current related reports to allow for adjustment if no UAVCAN param access or current splitting applications" user="Advanced">
        <field name="Range">0.1 10</field>
      </param>
      <param humanName="Empty fuel level voltage" name="BATT_FL_VLT_MIN" documentation="The voltage seen on the analog pin when the fuel tank is empty. Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Fuel level voltage multiplier" name="BATT_FL_V_MULT" documentation="Voltage multiplier to determine what the full tank voltage reading is. This is calculated as 1 / (Voltage_Full - Voltage_Empty) Note: For this type of battery monitor, the voltage seen by the analog pin is displayed as battery voltage on a GCS." user="Advanced">
        <field name="Range">0.01 10</field>
      </param>
      <param humanName="Fuel level filter frequency" name="BATT_FL_FLTR" documentation="Filter frequency in Hertz where a low pass filter is used. This is used to filter out tank slosh from the fuel level reading. A value of -1 disables the filter and unfiltered voltage is used to determine the fuel level. The suggested values at in the range of 0.2 Hz to 0.5 Hz." user="Advanced">
        <field name="Range">-1 1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Fuel level analog pin number" name="BATT_FL_PIN" documentation="Analog input pin that fuel level sensor is connected to.Analog Airspeed or RSSI ports can be used for Analog input( some autopilots provide others also). Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;.">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="First order term" name="BATT_FL_FF" documentation="First order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Second order term" name="BATT_FL_FS" documentation="Second order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Third order term" name="BATT_FL_FT" documentation="Third order polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Offset term" name="BATT_FL_OFF" documentation="Offset polynomial fit term" user="Advanced">
        <field name="Range">-10 10</field>
      </param>
      <param humanName="Maximum Battery Voltage" name="BATT_MAX_VOLT" documentation="Maximum voltage of battery. Provides scaling of current versus voltage" user="Advanced">
        <field name="Range">7 100</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT_MAX_AMPS" documentation="This controls the maximum current the INS2XX sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="ESC mask" name="BATT_ESC_MASK" documentation="If 0 all connected ESCs will be used. If non-zero, only those selected in will be used." user="Standard">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Battery monitor max current" name="BATT_MAX_AMPS" documentation="This controls the maximum current the INA239 sensor will work with." user="Advanced">
        <field name="Range">1 400</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="Battery monitor shunt resistor" name="BATT_SHUNT" documentation="This sets the shunt resistor used in the device" user="Advanced">
        <field name="Range">0.0001 0.01</field>
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="Battery monitor I2C bus number" name="BATT_I2C_BUS" documentation="Battery monitor I2C bus number" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery monitor I2C address" name="BATT_I2C_ADDR" documentation="Battery monitor I2C address. If this is zero then probe list of supported addresses" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="INA3221 channel" name="BATT_CHANNEL" documentation="INA3221 channel to return data for" user="Advanced">
        <field name="Range">1 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Voltage sensing pin on the AD7091R5 Ic" name="BATT_VOLT_PIN" documentation="Sets the analog input pin that should be used for voltage monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery Current sensing pin" name="BATT_CURR_PIN" documentation="Sets the analog input pin that should be used for Current monitoring on AD7091R5." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage Multiplier" name="BATT_VOLT_MULT" documentation="Used to convert the voltage of the voltage sensing pin (BATT_VOLT_PIN) to the actual battery's voltage (pin_voltage * VOLT_MULT)." user="Advanced">
</param>
      <param humanName="Amps per volt" name="BATT_AMP_PERVLT" documentation="Number of amps that a 1V reading on the current sensor corresponds to." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="AMP offset" name="BATT_AMP_OFFSET" documentation="Voltage offset at zero current on current sensor" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Volage offset" name="BATT_VLT_OFFSET" documentation="Voltage offset on voltage pin. This allows for an offset due to a diode. This voltage is subtracted before the scaling is applied" user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
    </parameters>
    <parameters name="BRD_">
      <param humanName="Serial 1 flow control" name="BRD_SER1_RTSCTS" documentation="Enable flow control on serial 1 (telemetry 1). You must have the RTS and CTS pins connected to your radio. The standard DF13 6 pin connector for a 3DR radio does have those pins connected. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup. Note that the PX4v1 does not have hardware flow control pins on this port, so you should leave this disabled." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
          <value code="3">RS-485 Driver enable RTS pin</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial 2 flow control" name="BRD_SER2_RTSCTS" documentation="Enable flow control on serial 2 (telemetry 2). You must have the RTS and CTS pins connected to your radio. The standard DF13 6 pin connector for a 3DR radio does have those pins connected. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
          <value code="3">RS-485 Driver enable RTS pin</value>
        </values>
      </param>
      <param humanName="Serial 3 flow control" name="BRD_SER3_RTSCTS" documentation="Enable flow control on serial 3. You must have the RTS and CTS pins connected to your radio. The standard DF13 6 pin connector for a 3DR radio does have those pins connected. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
          <value code="3">RS-485 Driver enable RTS pin</value>
        </values>
      </param>
      <param humanName="Serial 4 flow control" name="BRD_SER4_RTSCTS" documentation="Enable flow control on serial 4. You must have the RTS and CTS pins connected to your radio. The standard DF13 6 pin connector for a 3DR radio does have those pins connected. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
          <value code="3">RS-485 Driver enable RTS pin</value>
        </values>
      </param>
      <param humanName="Serial 5 flow control" name="BRD_SER5_RTSCTS" documentation="Enable flow control on serial 5. You must have the RTS and CTS pins connected to your radio. The standard DF13 6 pin connector for a 3DR radio does have those pins connected. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
          <value code="3">RS-485 Driver enable RTS pin</value>
        </values>
      </param>
      <param humanName="Serial 6 flow control" name="BRD_SER6_RTSCTS" documentation="Enable flow control on serial 6. You must have the RTS and CTS pins connected to your radio. The standard DF13 6 pin connector for a 3DR radio does have those pins connected. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
          <value code="3">RS-485 Driver enable RTS pin</value>
        </values>
      </param>
      <param humanName="Serial 7 flow control" name="BRD_SER7_RTSCTS" documentation="Enable flow control on serial 7. You must have the RTS and CTS pins connected to your radio. The standard DF13 6 pin connector for a 3DR radio does have those pins connected. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
          <value code="3">RS-485 Driver enable RTS pin</value>
        </values>
      </param>
      <param humanName="Serial 8 flow control" name="BRD_SER8_RTSCTS" documentation="Enable flow control on serial 8. You must have the RTS and CTS pins connected to your radio. The standard DF13 6 pin connector for a 3DR radio does have those pins connected. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup.">
</param>
      <param humanName="Sets default state of the safety switch" name="BRD_SAFETY_DEFLT" documentation="This controls the default state of the safety switch at startup. When set to 1 the safety switch will start in the safe state (flashing) at boot. When set to zero the safety switch will start in the unsafe state (solid) at startup. Note that if a safety switch is fitted the user can still control the safety state after startup using the switch. The safety state can also be controlled in software using a MAVLink message." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="SBUS output rate" name="BRD_SBUS_OUT" documentation="This sets the SBUS output frame rate in Hz" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">50Hz</value>
          <value code="2">75Hz</value>
          <value code="3">100Hz</value>
          <value code="4">150Hz</value>
          <value code="5">200Hz</value>
          <value code="6">250Hz</value>
          <value code="7">300Hz</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="User-defined serial number" name="BRD_SERIAL_NUM" documentation="User-defined serial number of this vehicle, it can be any arbitrary number you want and has no effect on the autopilot" user="Standard">
        <field name="Range">-8388608 8388607</field>
      </param>
      <param humanName="Outputs which ignore the safety switch state" name="BRD_SAFETY_MASK" documentation="A bitmask which controls what outputs can move while the safety switch has not been pressed" user="Advanced">
        <bitmask>
          <bit code="0">Output1</bit>
          <bit code="1">Output2</bit>
          <bit code="2">Output3</bit>
          <bit code="3">Output4</bit>
          <bit code="4">Output5</bit>
          <bit code="5">Output6</bit>
          <bit code="6">Output7</bit>
          <bit code="7">Output8</bit>
          <bit code="8">Output9</bit>
          <bit code="9">Output10</bit>
          <bit code="10">Output11</bit>
          <bit code="11">Output12</bit>
          <bit code="12">Output13</bit>
          <bit code="13">Output14</bit>
          <bit code="14">Output15</bit>
          <bit code="15">Output16</bit>
          <bit code="16">Output17</bit>
          <bit code="17">Output18</bit>
          <bit code="18">Output19</bit>
          <bit code="19">Output20</bit>
          <bit code="20">Output21</bit>
          <bit code="21">Output22</bit>
          <bit code="22">Output23</bit>
          <bit code="23">Output24</bit>
          <bit code="24">Output25</bit>
          <bit code="25">Output26</bit>
          <bit code="26">Output27</bit>
          <bit code="27">Output28</bit>
          <bit code="28">Output29</bit>
          <bit code="29">Output30</bit>
          <bit code="30">Output31</bit>
          <bit code="31">Output32</bit>
        </bitmask>
        <field name="Bitmask">0:Output1, 1:Output2, 2:Output3, 3:Output4, 4:Output5, 5:Output6, 6:Output7, 7:Output8, 8:Output9, 9:Output10, 10:Output11, 11:Output12, 12:Output13, 13:Output14, 14:Output15, 15:Output16, 16:Output17, 17:Output18, 18:Output19, 19:Output20, 20:Output21, 21:Output22, 22:Output23, 23:Output24, 24:Output25, 25:Output26, 26:Output27, 27:Output28, 28:Output29, 29:Output30, 30:Output31, 31:Output32</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Board heater temperature target" name="BRD_HEAT_TARG" documentation="Board heater target temperature for boards with controllable heating units. Set to -1 to disable the heater, please reboot after setting to -1." user="Advanced">
        <field name="Range">-1 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="Board type" name="BRD_TYPE" documentation="This allows selection of a PX4 or VRBRAIN board type. If set to zero then the board type is auto-detected (PX4)" user="Advanced">
        <values>
          <value code="0">AUTO</value>
          <value code="1">PX4V1</value>
          <value code="2">Pixhawk</value>
          <value code="3">Cube/Pixhawk2</value>
          <value code="5">PixhawkMini</value>
          <value code="6">Pixhawk2Slim</value>
          <value code="13">Intel Aero FC</value>
          <value code="14">Pixhawk Pro</value>
          <value code="20">AUAV2.1</value>
          <value code="39">PX4 FMUV6</value>
          <value code="100">PX4 OLDDRIVERS</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Enable IO co-processor" name="BRD_IO_ENABLE" documentation="This allows for the IO co-processor on boards with an IOMCU to be disabled. Setting to 2 will enable the IOMCU but not attempt to update firmware on startup" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">EnableNoFWUpdate</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Options for safety button behavior" name="BRD_SAFETYOPTION" documentation="This controls the activation of the safety button. It allows you to control if the safety button can be used for safety enable and/or disable, and whether the button is only active when disarmed" user="Standard">
        <bitmask>
          <bit code="0">ActiveForSafetyDisable</bit>
          <bit code="1">ActiveForSafetyEnable</bit>
          <bit code="2">ActiveWhenArmed</bit>
          <bit code="3">Force safety on when the aircraft disarms</bit>
        </bitmask>
        <field name="Bitmask">0:ActiveForSafetyDisable,1:ActiveForSafetyEnable,2:ActiveWhenArmed,3:Force safety on when the aircraft disarms</field>
      </param>
      <param humanName="Autopilot board voltage requirement" name="BRD_VBUS_MIN" documentation="Minimum voltage on the autopilot power rail to allow the aircraft to arm. 0 to disable the check." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Range">4.0 5.5</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Servo voltage requirement" name="BRD_VSERVO_MIN" documentation="Minimum voltage on the servo rail to allow the aircraft to arm. 0 to disable the check." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Range">3.3 12.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="microSD slowdown" name="BRD_SD_SLOWDOWN" documentation="This is a scaling factor to slow down microSD operation. It can be used on flight board and microSD card combinations where full speed is not reliable. For normal full speed operation a value of 0 should be used." user="Advanced">
        <field name="Range">0 32</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Set PWM Out Voltage" name="BRD_PWM_VOLT_SEL" documentation="This sets the voltage max for PWM output pulses. 0 for 3.3V and 1 for 5V output. On boards with an IOMCU that support this parameter this option only affects the 8 main outputs, not the 6 auxiliary outputs. Using 5V output can help to reduce the impact of ESC noise interference corrupting signals to the ESCs." user="Advanced">
        <values>
          <value code="0">3.3V</value>
          <value code="1">5V</value>
        </values>
      </param>
      <param humanName="Board options" name="BRD_OPTIONS" documentation="Board specific option flags" user="Advanced">
        <bitmask>
          <bit code="0">Enable hardware watchdog</bit>
          <bit code="1">Disable MAVftp</bit>
          <bit code="2">Enable set of internal parameters</bit>
          <bit code="3">Enable Debug Pins</bit>
          <bit code="4">Unlock flash on reboot</bit>
          <bit code="5">Write protect firmware flash on reboot</bit>
          <bit code="6">Write protect bootloader flash on reboot</bit>
          <bit code="7">Skip board validation</bit>
          <bit code="8">Disable board arming gpio output change on arm/disarm</bit>
          <bit code="9">Use safety pins as profiled</bit>
        </bitmask>
        <field name="Bitmask">0:Enable hardware watchdog, 1:Disable MAVftp, 2:Enable set of internal parameters, 3:Enable Debug Pins, 4:Unlock flash on reboot, 5:Write protect firmware flash on reboot, 6:Write protect bootloader flash on reboot, 7:Skip board validation, 8:Disable board arming gpio output change on arm/disarm, 9:Use safety pins as profiled</field>
      </param>
      <param humanName="Boot delay" name="BRD_BOOT_DELAY" documentation="This adds a delay in milliseconds to boot to ensure peripherals initialise fully" user="Advanced">
        <field name="Range">0 10000</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="Board Heater P gain" name="BRD_HEAT_P" documentation="Board Heater P gain" user="Advanced">
        <field name="Range">1 500</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Board Heater I gain" name="BRD_HEAT_I" documentation="Board Heater integrator gain" user="Advanced">
        <field name="Range">0 1</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Board Heater IMAX" name="BRD_HEAT_IMAX" documentation="Board Heater integrator maximum" user="Advanced">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Alternative HW config" name="BRD_ALT_CONFIG" documentation="Select an alternative hardware configuration. A value of zero selects the default configuration for this board. Other values are board specific. Please see the documentation for your board for details on any alternative configuration values that may be available." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Board heater temp lower margin" name="BRD_HEAT_LOWMGN" documentation="Arming check will fail if temp is lower than this margin below BRD_HEAT_TARG. 0 disables the low temperature check" user="Advanced">
        <field name="Range">0 20</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="SDCard Mission size" name="BRD_SD_MISSION" documentation="This sets the amount of storage in kilobytes reserved on the microsd card in mission.stg for waypoint storage. Each waypoint uses 15 bytes." user="Advanced">
        <field name="Range">0 64</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="SDCard Fence size" name="BRD_SD_FENCE" documentation="This sets the amount of storage in kilobytes reserved on the microsd card in fence.stg for fence storage." user="Advanced">
        <field name="Range">0 64</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Load DShot FW on IO" name="BRD_IO_DSHOT" documentation="This loads the DShot firmware on the IO co-processor" user="Advanced">
        <values>
          <value code="0">StandardFW</value>
          <value code="1">DshotFW</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Capture and calculate true CPU load using idle threads" name="BRD_IDLE_STATS" documentation="Capture and calculate true CPU load using idle threads" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="BRD_RADIO">
      <param humanName="Set type of direct attached radio" name="BRD_RADIO_TYPE" documentation="This enables support for direct attached radio receivers">
        <values>
          <value code="0">None</value>
          <value code="1">CYRF6936</value>
          <value code="2">CC2500</value>
          <value code="3">BK2425</value>
        </values>
      </param>
      <param humanName="protocol" name="BRD_RADIO_PROT" documentation="Select air protocol" user="Advanced">
        <values>
          <value code="0">Auto</value>
          <value code="1">DSM2</value>
          <value code="2">DSMX</value>
        </values>
      </param>
      <param humanName="debug level" name="BRD_RADIO_DEBUG" documentation="radio debug level" user="Advanced">
        <field name="Range">0 4</field>
      </param>
      <param humanName="disable receive CRC" name="BRD_RADIO_DISCRC" documentation="disable receive CRC (for debug)" user="Advanced">
        <values>
          <value code="0">NotDisabled</value>
          <value code="1">Disabled</value>
        </values>
      </param>
      <param humanName="RSSI signal strength" name="BRD_RADIO_SIGCH" documentation="Channel to show receive RSSI signal strength, or zero for disabled" user="Advanced">
        <field name="Range">0 16</field>
      </param>
      <param humanName="Packet rate channel" name="BRD_RADIO_PPSCH" documentation="Channel to show received packet-per-second rate, or zero for disabled" user="Advanced">
        <field name="Range">0 16</field>
      </param>
      <param humanName="Enable telemetry" name="BRD_RADIO_TELEM" documentation="If this is non-zero then telemetry packets will be sent over DSM" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Telemetry Transmit power" name="BRD_RADIO_TXPOW" documentation="Set telemetry transmit power. This is the power level (from 1 to 8) for telemetry packets sent from the RX to the TX" user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Put radio into FCC test mode" name="BRD_RADIO_FCCTST" documentation="If this is enabled then the radio will continuously transmit as required for FCC testing. The transmit channel is set by the value of the parameter. The radio will not work for RC input while this is enabled" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">MinChannel</value>
          <value code="2">MidChannel</value>
          <value code="3">MaxChannel</value>
          <value code="4">MinChannelCW</value>
          <value code="5">MidChannelCW</value>
          <value code="6">MaxChannelCW</value>
        </values>
      </param>
      <param humanName="Stick input mode" name="BRD_RADIO_STKMD" documentation="This selects between different stick input modes. The default is mode2, which has throttle on the left stick and pitch on the right stick. You can instead set mode1, which has throttle on the right stick and pitch on the left stick." user="Advanced">
        <values>
          <value code="1">Mode1</value>
          <value code="2">Mode2</value>
          <value code="3">Mode3</value>
          <value code="4">Mode4</value>
        </values>
      </param>
      <param humanName="Set radio to factory test channel" name="BRD_RADIO_TESTCH" documentation="This sets the radio to a fixed test channel for factory testing. Using a fixed channel avoids the need for binding in factory testing." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TestChan1</value>
          <value code="2">TestChan2</value>
          <value code="3">TestChan3</value>
          <value code="4">TestChan4</value>
          <value code="5">TestChan5</value>
          <value code="6">TestChan6</value>
          <value code="7">TestChan7</value>
          <value code="8">TestChan8</value>
        </values>
      </param>
      <param humanName="RSSI value channel for telemetry data on transmitter" name="BRD_RADIO_TSIGCH" documentation="Channel to show telemetry RSSI value as received by TX" user="Advanced">
        <field name="Range">0 16</field>
      </param>
      <param humanName="Telemetry PPS channel" name="BRD_RADIO_TPPSCH" documentation="Channel to show telemetry packets-per-second value, as received at TX" user="Advanced">
        <field name="Range">0 16</field>
      </param>
      <param humanName="Transmitter transmit power" name="BRD_RADIO_TXMAX" documentation="Set transmitter maximum transmit power (from 1 to 8)" user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Transmitter buzzer adjustment" name="BRD_RADIO_BZOFS" documentation="Set transmitter buzzer note adjustment (adjust frequency up)" user="Advanced">
        <field name="Range">0 40</field>
      </param>
      <param humanName="Auto-bind time" name="BRD_RADIO_ABTIME" documentation="When non-zero this sets the time with no transmitter packets before we start looking for auto-bind packets." user="Advanced">
        <field name="Range">0 120</field>
      </param>
      <param humanName="Auto-bind level" name="BRD_RADIO_ABLVL" documentation="This sets the minimum RSSI of an auto-bind packet for it to be accepted. This should be set so that auto-bind will only happen at short range to minimise the change of an auto-bind happening accidentially" user="Advanced">
        <field name="Range">0 31</field>
      </param>
    </parameters>
    <parameters name="BRD_RTC">
      <param humanName="Allowed sources of RTC time" name="BRD_RTC_TYPES" documentation="Specifies which sources of UTC time will be accepted" user="Advanced">
        <bitmask>
          <bit code="0">GPS</bit>
          <bit code="1">MAVLINK_SYSTEM_TIME</bit>
          <bit code="2">HW</bit>
        </bitmask>
        <field name="Bitmask">0:GPS,1:MAVLINK_SYSTEM_TIME,2:HW</field>
      </param>
      <param humanName="Timezone offset from UTC" name="BRD_RTC_TZ_MIN" documentation="Adds offset in +- minutes from UTC to calculate local time" user="Advanced">
        <field name="Range">-720 +840</field>
      </param>
    </parameters>
    <parameters name="BTN_">
      <param humanName="Enable button reporting" name="BTN_ENABLE" documentation="This enables the button checking module. When this is disabled the parameters for setting button inputs are not visible" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="First button Pin" name="BTN_PIN1" documentation="Digital pin number for first button input.  Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Second button Pin" name="BTN_PIN2" documentation="Digital pin number for second button input.  Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Third button Pin" name="BTN_PIN3" documentation="Digital pin number for third button input.  Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Fourth button Pin" name="BTN_PIN4" documentation="Digital pin number for fourth button input. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Report send time" name="BTN_REPORT_SEND" documentation="The duration in seconds that a BUTTON_CHANGE report is repeatedly sent to the GCS regarding a button changing state. Note that the BUTTON_CHANGE message is MAVLink2 only." user="Standard">
        <field name="Range">0 3600</field>
      </param>
      <param humanName="Button Pin 1 Options" name="BTN_OPTIONS1" documentation="Options for Pin 1. PWM input detects PWM above or below 1800/1200us instead of logic level. If PWM is not detected or is less than 800us or above 2200us the button will interpreted as low. Invert changes HIGH state to be logic low voltage on pin, or below 1200us, if PWM input." user="Standard">
        <bitmask>
          <bit code="0">PWM Input</bit>
          <bit code="1">InvertInput</bit>
        </bitmask>
        <field name="Bitmask">0:PWM Input,1:InvertInput</field>
      </param>
      <param humanName="Button Pin 2 Options" name="BTN_OPTIONS2" documentation="Options for Pin 2. PWM input detects PWM above or below 1800/1200us instead of logic level. If PWM is not detected or is less than 800us or above 2200us the button will interpreted as low. Invert changes HIGH state to be logic low voltage on pin, or below 1200us, if PWM input." user="Standard">
        <bitmask>
          <bit code="0">PWM Input</bit>
          <bit code="1">InvertInput</bit>
        </bitmask>
        <field name="Bitmask">0:PWM Input,1:InvertInput</field>
      </param>
      <param humanName="Button Pin 3 Options" name="BTN_OPTIONS3" documentation="Options for Pin 3. PWM input detects PWM above or below 1800/1200us instead of logic level. If PWM is not detected or is less than 800us or above 2200us the button will interpreted as low. Invert changes HIGH state to be logic low voltage on pin, or below 1200us, if PWM input.">
        <bitmask>
          <bit code="0">PWM Input</bit>
          <bit code="1">InvertInput</bit>
        </bitmask>
        <field name="Bitmask">0:PWM Input,1:InvertInput</field>
      </param>
      <param humanName="Button Pin 4 Options" name="BTN_OPTIONS4" documentation="Options for Pin 4. PWM input detects PWM above or below 1800/1200us instead of logic level. If PWM is not detected or is less than 800us or above 2200us the button will interpreted as low. Invert changes HIGH state to be logic low voltage on pin, or below 1200us, if PWM input." user="Standard">
        <bitmask>
          <bit code="0">PWM Input</bit>
          <bit code="1">InvertInput</bit>
        </bitmask>
        <field name="Bitmask">0:PWM Input,1:InvertInput</field>
      </param>
      <param humanName="Button Pin 1 RC Channel function" name="BTN_FUNC1" documentation="Auxiliary RC Options function executed on pin change" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
      <param humanName="Button Pin 2 RC Channel function" name="BTN_FUNC2" documentation="Auxiliary RC Options function executed on pin change" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
      <param humanName="Button Pin 3 RC Channel function" name="BTN_FUNC3" documentation="Auxiliary RC Options function executed on pin change" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
      <param humanName="Button Pin 4 RC Channel function" name="BTN_FUNC4" documentation="Auxiliary RC Options function executed on pin change" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="CAM">
      <param humanName="Maximum photo roll angle." name="CAM_MAX_ROLL" documentation="Postpone shooting if roll is greater than limit. (0=Disable, will shoot regardless of roll)." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 180</field>
      </param>
      <param humanName="Distance-trigging in AUTO mode only" name="CAM_AUTO_ONLY" documentation="When enabled, trigging by distance is done in AUTO mode only." user="Standard">
        <values>
          <value code="0">Always</value>
          <value code="1">Only when in AUTO</value>
        </values>
      </param>
    </parameters>
    <parameters name="CAM1">
      <param humanName="Camera shutter (trigger) type" name="CAM1_TYPE" documentation="how to trigger the camera to take a picture" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">Servo</value>
          <value code="2">Relay</value>
          <value code="3">GoPro in Solo Gimbal</value>
          <value code="4">Mount (Siyi/Topotek/Viewpro/Xacti)</value>
          <value code="5">MAVLink</value>
          <value code="6">MAVLinkCamV2 (Gremsy/AVT)</value>
          <value code="7">Scripting</value>
          <value code="8">RunCam</value>
        </values>
      </param>
      <param humanName="Camera shutter duration held open" name="CAM1_DURATION" documentation="Duration in seconds that the camera shutter is held open" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 5</field>
      </param>
      <param humanName="Camera servo ON PWM value" name="CAM1_SERVO_ON" documentation="PWM value in microseconds to move servo to when shutter is activated" user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">1000 2000</field>
      </param>
      <param humanName="Camera servo OFF PWM value" name="CAM1_SERVO_OFF" documentation="PWM value in microseconds to move servo to when shutter is deactivated" user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">1000 2000</field>
      </param>
      <param humanName="Camera trigger distance" name="CAM1_TRIGG_DIST" documentation="Distance in meters between camera triggers. If this value is non-zero then the camera will trigger whenever the position changes by this number of meters regardless of what mode the APM is in. Note that this parameter can also be set in an auto mission using the DO_SET_CAM_TRIGG_DIST command, allowing you to enable/disable the triggering of the camera during the flight." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 1000</field>
      </param>
      <param humanName="Camera relay ON value" name="CAM1_RELAY_ON" documentation="This sets whether the relay goes high or low when it triggers. Note that you should also set RELAY_DEFAULT appropriately for your camera" user="Standard">
        <values>
          <value code="0">Low</value>
          <value code="1">High</value>
        </values>
      </param>
      <param humanName="Camera minimum time interval between photos" name="CAM1_INTRVAL_MIN" documentation="Postpone shooting if previous picture was taken less than this many seconds ago" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 10</field>
      </param>
      <param humanName="Camera feedback pin" name="CAM1_FEEDBAK_PIN" documentation="pin number to use for save accurate camera feedback messages. If set to -1 then don't use a pin flag for this, otherwise this is a pin number which if held high after a picture trigger order, will save camera messages when camera really takes a picture. A universal camera hot shoe is needed. The pin should be held high for at least 2 milliseconds for reliable trigger detection.  Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot. See also the CAMx_FEEDBCK_POL option." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Camera feedback pin polarity" name="CAM1_FEEDBAK_POL" documentation="Polarity for feedback pin. If this is 1 then the feedback pin should go high on trigger. If set to 0 then it should go low" user="Standard">
        <values>
          <value code="0">TriggerLow</value>
          <value code="1">TriggerHigh</value>
        </values>
      </param>
      <param humanName="Camera options" name="CAM1_OPTIONS" documentation="Camera options bitmask" user="Standard">
        <bitmask>
          <bit code="0">Recording Starts at arming and stops at disarming</bit>
        </bitmask>
        <field name="Bitmask">0:Recording Starts at arming and stops at disarming</field>
      </param>
      <param humanName="Camera Mount instance" name="CAM1_MNT_INST" documentation="Mount instance camera is associated with. 0 means camera and mount have identical instance numbers e.g. camera1 and mount1" user="Standard">
</param>
      <param humanName="Camera horizontal field of view" name="CAM1_HFOV" documentation="Camera horizontal field of view. 0 if unknown" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Camera vertical field of view" name="CAM1_VFOV" documentation="Camera vertical field of view. 0 if unknown" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 180</field>
      </param>
    </parameters>
    <parameters name="CAM1_RC_">
      <param humanName="RunCam device type" name="CAM1_RC_TYPE" documentation="RunCam device type used to determine OSD menu structure and shutter options.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">RunCam Split Micro/RunCam with UART</value>
          <value code="2">RunCam Split</value>
          <value code="3">RunCam Split4 4k</value>
          <value code="4">RunCam Hybrid/RunCam Thumb Pro</value>
          <value code="5">Runcam 2 4k</value>
        </values>
      </param>
      <param humanName="RunCam features available" name="CAM1_RC_FEATURES" documentation="The available features of the attached RunCam device. If 0 then the RunCam device will be queried for the features it supports, otherwise this setting is used." user="Advanced">
        <bitmask>
          <bit code="0">Power Button</bit>
          <bit code="1">WiFi Button</bit>
          <bit code="2">Change Mode</bit>
          <bit code="3">5-Key OSD</bit>
          <bit code="4">Settings Access</bit>
          <bit code="5">DisplayPort</bit>
          <bit code="6">Start Recording</bit>
          <bit code="7">Stop Recording</bit>
        </bitmask>
        <field name="Bitmask">0:Power Button,1:WiFi Button,2:Change Mode,3:5-Key OSD,4:Settings Access,5:DisplayPort,6:Start Recording,7:Stop Recording</field>
      </param>
      <param humanName="RunCam boot delay before allowing updates" name="CAM1_RC_BT_DELAY" documentation="Time it takes for the RunCam to become fully ready in ms. If this is too short then commands can get out of sync." user="Advanced">
</param>
      <param humanName="RunCam button delay before allowing further button presses" name="CAM1_RC_BTN_DELY" documentation="Time it takes for the a RunCam button press to be actived in ms. If this is too short then commands can get out of sync." user="Advanced">
</param>
      <param humanName="RunCam mode delay before allowing further button presses" name="CAM1_RC_MDE_DELY" documentation="Time it takes for the a RunCam mode button press to be actived in ms. If a mode change first requires a video recording change then double this value is used. If this is too short then commands can get out of sync." user="Advanced">
</param>
      <param humanName="RunCam control option" name="CAM1_RC_CONTROL" documentation="Specifies the allowed actions required to enter the OSD menu and other option like autorecording" user="Advanced">
        <bitmask>
          <bit code="0">Stick yaw right</bit>
          <bit code="1">Stick roll right</bit>
          <bit code="2">3-position switch</bit>
          <bit code="3">2-position switch</bit>
          <bit code="4">Autorecording enabled</bit>
        </bitmask>
        <field name="Bitmask">0:Stick yaw right,1:Stick roll right,2:3-position switch,3:2-position switch,4:Autorecording enabled</field>
      </param>
    </parameters>
    <parameters name="CAM2">
      <param humanName="Camera shutter (trigger) type" name="CAM2_TYPE" documentation="how to trigger the camera to take a picture" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">Servo</value>
          <value code="2">Relay</value>
          <value code="3">GoPro in Solo Gimbal</value>
          <value code="4">Mount (Siyi/Topotek/Viewpro/Xacti)</value>
          <value code="5">MAVLink</value>
          <value code="6">MAVLinkCamV2 (Gremsy/AVT)</value>
          <value code="7">Scripting</value>
          <value code="8">RunCam</value>
        </values>
      </param>
      <param humanName="Camera shutter duration held open" name="CAM2_DURATION" documentation="Duration in seconds that the camera shutter is held open" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 5</field>
      </param>
      <param humanName="Camera servo ON PWM value" name="CAM2_SERVO_ON" documentation="PWM value in microseconds to move servo to when shutter is activated" user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">1000 2000</field>
      </param>
      <param humanName="Camera servo OFF PWM value" name="CAM2_SERVO_OFF" documentation="PWM value in microseconds to move servo to when shutter is deactivated" user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">1000 2000</field>
      </param>
      <param humanName="Camera trigger distance" name="CAM2_TRIGG_DIST" documentation="Distance in meters between camera triggers. If this value is non-zero then the camera will trigger whenever the position changes by this number of meters regardless of what mode the APM is in. Note that this parameter can also be set in an auto mission using the DO_SET_CAM_TRIGG_DIST command, allowing you to enable/disable the triggering of the camera during the flight." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 1000</field>
      </param>
      <param humanName="Camera relay ON value" name="CAM2_RELAY_ON" documentation="This sets whether the relay goes high or low when it triggers. Note that you should also set RELAY_DEFAULT appropriately for your camera" user="Standard">
        <values>
          <value code="0">Low</value>
          <value code="1">High</value>
        </values>
      </param>
      <param humanName="Camera minimum time interval between photos" name="CAM2_INTRVAL_MIN" documentation="Postpone shooting if previous picture was taken less than this many seconds ago" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 10</field>
      </param>
      <param humanName="Camera feedback pin" name="CAM2_FEEDBAK_PIN" documentation="pin number to use for save accurate camera feedback messages. If set to -1 then don't use a pin flag for this, otherwise this is a pin number which if held high after a picture trigger order, will save camera messages when camera really takes a picture. A universal camera hot shoe is needed. The pin should be held high for at least 2 milliseconds for reliable trigger detection.  Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot. See also the CAMx_FEEDBCK_POL option." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Camera feedback pin polarity" name="CAM2_FEEDBAK_POL" documentation="Polarity for feedback pin. If this is 1 then the feedback pin should go high on trigger. If set to 0 then it should go low" user="Standard">
        <values>
          <value code="0">TriggerLow</value>
          <value code="1">TriggerHigh</value>
        </values>
      </param>
      <param humanName="Camera options" name="CAM2_OPTIONS" documentation="Camera options bitmask" user="Standard">
        <bitmask>
          <bit code="0">Recording Starts at arming and stops at disarming</bit>
        </bitmask>
        <field name="Bitmask">0:Recording Starts at arming and stops at disarming</field>
      </param>
      <param humanName="Camera Mount instance" name="CAM2_MNT_INST" documentation="Mount instance camera is associated with. 0 means camera and mount have identical instance numbers e.g. camera1 and mount1" user="Standard">
</param>
      <param humanName="Camera horizontal field of view" name="CAM2_HFOV" documentation="Camera horizontal field of view. 0 if unknown" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Camera vertical field of view" name="CAM2_VFOV" documentation="Camera vertical field of view. 0 if unknown" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 180</field>
      </param>
    </parameters>
    <parameters name="CAM2_RC_">
      <param humanName="RunCam device type" name="CAM2_RC_TYPE" documentation="RunCam device type used to determine OSD menu structure and shutter options.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">RunCam Split Micro/RunCam with UART</value>
          <value code="2">RunCam Split</value>
          <value code="3">RunCam Split4 4k</value>
          <value code="4">RunCam Hybrid/RunCam Thumb Pro</value>
          <value code="5">Runcam 2 4k</value>
        </values>
      </param>
      <param humanName="RunCam features available" name="CAM2_RC_FEATURES" documentation="The available features of the attached RunCam device. If 0 then the RunCam device will be queried for the features it supports, otherwise this setting is used." user="Advanced">
        <bitmask>
          <bit code="0">Power Button</bit>
          <bit code="1">WiFi Button</bit>
          <bit code="2">Change Mode</bit>
          <bit code="3">5-Key OSD</bit>
          <bit code="4">Settings Access</bit>
          <bit code="5">DisplayPort</bit>
          <bit code="6">Start Recording</bit>
          <bit code="7">Stop Recording</bit>
        </bitmask>
        <field name="Bitmask">0:Power Button,1:WiFi Button,2:Change Mode,3:5-Key OSD,4:Settings Access,5:DisplayPort,6:Start Recording,7:Stop Recording</field>
      </param>
      <param humanName="RunCam boot delay before allowing updates" name="CAM2_RC_BT_DELAY" documentation="Time it takes for the RunCam to become fully ready in ms. If this is too short then commands can get out of sync." user="Advanced">
</param>
      <param humanName="RunCam button delay before allowing further button presses" name="CAM2_RC_BTN_DELY" documentation="Time it takes for the a RunCam button press to be actived in ms. If this is too short then commands can get out of sync." user="Advanced">
</param>
      <param humanName="RunCam mode delay before allowing further button presses" name="CAM2_RC_MDE_DELY" documentation="Time it takes for the a RunCam mode button press to be actived in ms. If a mode change first requires a video recording change then double this value is used. If this is too short then commands can get out of sync." user="Advanced">
</param>
      <param humanName="RunCam control option" name="CAM2_RC_CONTROL" documentation="Specifies the allowed actions required to enter the OSD menu and other option like autorecording" user="Advanced">
        <bitmask>
          <bit code="0">Stick yaw right</bit>
          <bit code="1">Stick roll right</bit>
          <bit code="2">3-position switch</bit>
          <bit code="3">2-position switch</bit>
          <bit code="4">Autorecording enabled</bit>
        </bitmask>
        <field name="Bitmask">0:Stick yaw right,1:Stick roll right,2:3-position switch,3:2-position switch,4:Autorecording enabled</field>
      </param>
    </parameters>
    <parameters name="CAN_">
      <param humanName="Loglevel" name="CAN_LOGLEVEL" documentation="Loglevel for recording initialisation and debug information from CAN Interface" user="Advanced">
        <field name="Range">0 4</field>
        <values>
          <value code="0">Log None</value>
          <value code="1">Log Error</value>
          <value code="2">Log Warning and below</value>
          <value code="3">Log Info and below</value>
          <value code="4">Log Everything</value>
        </values>
      </param>
    </parameters>
    <parameters name="CAN_D1_">
      <param humanName="Enable use of specific protocol over virtual driver" name="CAN_D1_PROTOCOL" documentation="Enabling this option starts selected protocol that will use this virtual driver" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="11">Benewake</value>
          <value code="1">DroneCAN</value>
          <value code="6">EFI_NWPMU</value>
          <value code="8">KDECAN</value>
          <value code="4">PiccoloCAN</value>
          <value code="14">RadarCAN (NanoRadar/Hexsoon)</value>
          <value code="10">Scripting</value>
          <value code="12">Scripting2</value>
          <value code="13">TOFSenseP</value>
          <value code="7">USD1</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Secondary protocol with 11 bit CAN addressing" name="CAN_D1_PROTOCOL2" documentation="Secondary protocol with 11 bit CAN addressing" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="11">Benewake</value>
          <value code="14">RadarCAN (NanoRadar/Hexsoon)</value>
          <value code="10">Scripting</value>
          <value code="12">Scripting2</value>
          <value code="13">TOFSenseP</value>
          <value code="7">USD1</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="CAN_D1_PC_">
      <param humanName="ESC channels" name="CAN_D1_PC_ESC_BM" documentation="Bitmask defining which ESC (motor) channels are to be transmitted over Piccolo CAN" user="Advanced">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="ESC output rate" name="CAN_D1_PC_ESC_RT" documentation="Output rate of ESC command messages" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">1 500</field>
      </param>
      <param humanName="Servo channels" name="CAN_D1_PC_SRV_BM" documentation="Bitmask defining which servo channels are to be transmitted over Piccolo CAN" user="Advanced">
        <bitmask>
          <bit code="0">Servo 1</bit>
          <bit code="1">Servo 2</bit>
          <bit code="2">Servo 3</bit>
          <bit code="3">Servo 4</bit>
          <bit code="4">Servo 5</bit>
          <bit code="5">Servo 6</bit>
          <bit code="6">Servo 7</bit>
          <bit code="7">Servo 8</bit>
          <bit code="8">Servo 9</bit>
          <bit code="9">Servo 10</bit>
          <bit code="10">Servo 11</bit>
          <bit code="11">Servo 12</bit>
          <bit code="12">Servo 13</bit>
          <bit code="13">Servo 14</bit>
          <bit code="14">Servo 15</bit>
          <bit code="15">Servo 16</bit>
        </bitmask>
        <field name="Bitmask">0: Servo 1, 1: Servo 2, 2: Servo 3, 3: Servo 4, 4: Servo 5, 5: Servo 6, 6: Servo 7, 7: Servo 8, 8: Servo 9, 9: Servo 10, 10: Servo 11, 11: Servo 12, 12: Servo 13, 13: Servo 14, 14: Servo 15, 15: Servo 16</field>
      </param>
      <param humanName="Servo command output rate" name="CAN_D1_PC_SRV_RT" documentation="Output rate of servo command messages" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">1 500</field>
      </param>
      <param humanName="ECU Node ID" name="CAN_D1_PC_ECU_ID" documentation="Node ID to send ECU throttle messages to. Set to zero to disable ECU throttle messages. Set to 255 to broadcast to all ECUs." user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="ECU command output rate" name="CAN_D1_PC_ECU_RT" documentation="Output rate of ECU command messages" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">1 500</field>
      </param>
    </parameters>
    <parameters name="CAN_D1_UC_">
      <param humanName="Own node ID" name="CAN_D1_UC_NODE" documentation="DroneCAN node ID used by the driver itself on this network" user="Advanced">
        <field name="Range">1 125</field>
      </param>
      <param humanName="Output channels to be transmitted as servo over DroneCAN" name="CAN_D1_UC_SRV_BM" documentation="Bitmask with one set for channel to be transmitted as a servo command over DroneCAN">
        <bitmask>
          <bit code="0">Servo 1</bit>
          <bit code="1">Servo 2</bit>
          <bit code="2">Servo 3</bit>
          <bit code="3">Servo 4</bit>
          <bit code="4">Servo 5</bit>
          <bit code="5">Servo 6</bit>
          <bit code="6">Servo 7</bit>
          <bit code="7">Servo 8</bit>
          <bit code="8">Servo 9</bit>
          <bit code="9">Servo 10</bit>
          <bit code="10">Servo 11</bit>
          <bit code="11">Servo 12</bit>
          <bit code="12">Servo 13</bit>
          <bit code="13">Servo 14</bit>
          <bit code="14">Servo 15</bit>
          <bit code="15">Servo 16</bit>
          <bit code="16">Servo 17</bit>
          <bit code="17">Servo 18</bit>
          <bit code="18">Servo 19</bit>
          <bit code="19">Servo 20</bit>
          <bit code="20">Servo 21</bit>
          <bit code="21">Servo 22</bit>
          <bit code="22">Servo 23</bit>
          <bit code="23">Servo 24</bit>
          <bit code="24">Servo 25</bit>
          <bit code="25">Servo 26</bit>
          <bit code="26">Servo 27</bit>
          <bit code="27">Servo 28</bit>
          <bit code="28">Servo 29</bit>
          <bit code="29">Servo 30</bit>
          <bit code="30">Servo 31</bit>
          <bit code="31">Servo 32</bit>
        </bitmask>
        <field name="Bitmask">0: Servo 1, 1: Servo 2, 2: Servo 3, 3: Servo 4, 4: Servo 5, 5: Servo 6, 6: Servo 7, 7: Servo 8, 8: Servo 9, 9: Servo 10, 10: Servo 11, 11: Servo 12, 12: Servo 13, 13: Servo 14, 14: Servo 15, 15: Servo 16, 16: Servo 17, 17: Servo 18, 18: Servo 19, 19: Servo 20, 20: Servo 21, 21: Servo 22, 22: Servo 23, 23: Servo 24, 24: Servo 25, 25: Servo 26, 26: Servo 27, 27: Servo 28, 28: Servo 29, 29: Servo 30, 30: Servo 31, 31: Servo 32</field>
      </param>
      <param humanName="Output channels to be transmitted as ESC over DroneCAN" name="CAN_D1_UC_ESC_BM" documentation="Bitmask with one set for channel to be transmitted as a ESC command over DroneCAN" user="Advanced">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Servo output rate" name="CAN_D1_UC_SRV_RT" documentation="Maximum transmit rate for servo outputs" user="Advanced">
        <field name="Range">1 200</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="DroneCAN options" name="CAN_D1_UC_OPTION" documentation="Option flags" user="Advanced">
        <bitmask>
          <bit code="0">ClearDNADatabase</bit>
          <bit code="1">IgnoreDNANodeConflicts</bit>
          <bit code="2">EnableCanfd</bit>
          <bit code="3">IgnoreDNANodeUnhealthy</bit>
          <bit code="4">SendServoAsPWM</bit>
          <bit code="5">SendGNSS</bit>
          <bit code="6">UseHimarkServo</bit>
          <bit code="7">HobbyWingESC</bit>
          <bit code="8">EnableStats</bit>
          <bit code="9">EnableFlexDebug</bit>
          <bit code="10">SecondaryAllowExtendedFrames</bit>
        </bitmask>
        <field name="Bitmask">0:ClearDNADatabase,1:IgnoreDNANodeConflicts,2:EnableCanfd,3:IgnoreDNANodeUnhealthy,4:SendServoAsPWM,5:SendGNSS,6:UseHimarkServo,7:HobbyWingESC,8:EnableStats,9:EnableFlexDebug,10:SecondaryAllowExtendedFrames</field>
      </param>
      <param humanName="Notify State rate" name="CAN_D1_UC_NTF_RT" documentation="Maximum transmit rate for Notify State Message" user="Advanced">
        <field name="Range">1 200</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="ESC Output channels offset" name="CAN_D1_UC_ESC_OF" documentation="Offset for ESC numbering in DroneCAN ESC RawCommand messages. This allows for more efficient packing of ESC command messages. If your ESCs are on servo outputs 5 to 8 and you set this parameter to 4 then the ESC RawCommand will be sent with the first 4 slots filled. This can be used for more efficient usage of CAN bandwidth" user="Advanced">
        <field name="Range">0 18</field>
      </param>
      <param humanName="CAN pool size" name="CAN_D1_UC_POOL" documentation="Amount of memory in bytes to allocate for the DroneCAN memory pool. More memory is needed for higher CAN bus loads" user="Advanced">
        <field name="Range">1024 16384</field>
      </param>
      <param humanName="Bitmask for output channels for reversible ESCs over DroneCAN." name="CAN_D1_UC_ESC_RV" documentation="Bitmask with one set for each output channel that uses a reversible ESC over DroneCAN. Reversible ESCs use both positive and negative values in RawCommands, with positive commanding the forward direction and negative commanding the reverse direction." user="Advanced">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="DroneCAN relay output rate" name="CAN_D1_UC_RLY_RT" documentation="Maximum transmit rate for relay outputs, note that this rate is per message each message does 1 relay, so if with more relays will take longer to update at the same rate, a extra message will be sent when a relay changes state" user="Advanced">
        <field name="Range">0 200</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="DroneCAN Serial enable" name="CAN_D1_UC_SER_EN" documentation="Enable DroneCAN virtual serial ports" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial CAN remote node number" name="CAN_D1_UC_S1_NOD" documentation="CAN remote node number for serial port" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="DroneCAN Serial1 index" name="CAN_D1_UC_S1_IDX" documentation="Serial port number on remote CAN node" user="Advanced">
        <field name="Range">-1 100</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="DroneCAN Serial default baud rate" name="CAN_D1_UC_S1_BD" documentation="Serial baud rate on remote CAN node" user="Advanced">
        <field name="RebootRequired">True</field>
        <field name="Range">1 20000000</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial protocol of DroneCAN serial port" name="CAN_D1_UC_S1_PRO" documentation="Serial protocol of DroneCAN serial port" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial CAN remote node number" name="CAN_D1_UC_S2_NOD" documentation="CAN remote node number for serial port" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial port number on remote CAN node" name="CAN_D1_UC_S2_IDX" documentation="Serial port number on remote CAN node" user="Advanced">
        <field name="Range">-1 100</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
      </param>
      <param humanName="DroneCAN Serial default baud rate" name="CAN_D1_UC_S2_BD" documentation="Serial baud rate on remote CAN node" user="Advanced">
        <field name="Range">1 20000000</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial protocol of DroneCAN serial port" name="CAN_D1_UC_S2_PRO" documentation="Serial protocol of DroneCAN serial port" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial CAN remote node number" name="CAN_D1_UC_S3_NOD" documentation="CAN node number for serial port" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial port number on remote CAN node" name="CAN_D1_UC_S3_IDX" documentation="Serial port number on remote CAN node" user="Advanced">
        <field name="Range">-1 100</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
      </param>
      <param humanName="Serial baud rate on remote CAN node" name="CAN_D1_UC_S3_BD" documentation="Serial baud rate on remote CAN node" user="Advanced">
        <field name="Range">1 20000000</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial protocol of DroneCAN serial port" name="CAN_D1_UC_S3_PRO" documentation="Serial protocol of DroneCAN serial port" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
    </parameters>
    <parameters name="CAN_D2_">
      <param humanName="Enable use of specific protocol over virtual driver" name="CAN_D2_PROTOCOL" documentation="Enabling this option starts selected protocol that will use this virtual driver" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="11">Benewake</value>
          <value code="1">DroneCAN</value>
          <value code="6">EFI_NWPMU</value>
          <value code="8">KDECAN</value>
          <value code="4">PiccoloCAN</value>
          <value code="14">RadarCAN (NanoRadar/Hexsoon)</value>
          <value code="10">Scripting</value>
          <value code="12">Scripting2</value>
          <value code="13">TOFSenseP</value>
          <value code="7">USD1</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Secondary protocol with 11 bit CAN addressing" name="CAN_D2_PROTOCOL2" documentation="Secondary protocol with 11 bit CAN addressing" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="11">Benewake</value>
          <value code="14">RadarCAN (NanoRadar/Hexsoon)</value>
          <value code="10">Scripting</value>
          <value code="12">Scripting2</value>
          <value code="13">TOFSenseP</value>
          <value code="7">USD1</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="CAN_D2_PC_">
      <param humanName="ESC channels" name="CAN_D2_PC_ESC_BM" documentation="Bitmask defining which ESC (motor) channels are to be transmitted over Piccolo CAN" user="Advanced">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="ESC output rate" name="CAN_D2_PC_ESC_RT" documentation="Output rate of ESC command messages" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">1 500</field>
      </param>
      <param humanName="Servo channels" name="CAN_D2_PC_SRV_BM" documentation="Bitmask defining which servo channels are to be transmitted over Piccolo CAN" user="Advanced">
        <bitmask>
          <bit code="0">Servo 1</bit>
          <bit code="1">Servo 2</bit>
          <bit code="2">Servo 3</bit>
          <bit code="3">Servo 4</bit>
          <bit code="4">Servo 5</bit>
          <bit code="5">Servo 6</bit>
          <bit code="6">Servo 7</bit>
          <bit code="7">Servo 8</bit>
          <bit code="8">Servo 9</bit>
          <bit code="9">Servo 10</bit>
          <bit code="10">Servo 11</bit>
          <bit code="11">Servo 12</bit>
          <bit code="12">Servo 13</bit>
          <bit code="13">Servo 14</bit>
          <bit code="14">Servo 15</bit>
          <bit code="15">Servo 16</bit>
        </bitmask>
        <field name="Bitmask">0: Servo 1, 1: Servo 2, 2: Servo 3, 3: Servo 4, 4: Servo 5, 5: Servo 6, 6: Servo 7, 7: Servo 8, 8: Servo 9, 9: Servo 10, 10: Servo 11, 11: Servo 12, 12: Servo 13, 13: Servo 14, 14: Servo 15, 15: Servo 16</field>
      </param>
      <param humanName="Servo command output rate" name="CAN_D2_PC_SRV_RT" documentation="Output rate of servo command messages" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">1 500</field>
      </param>
      <param humanName="ECU Node ID" name="CAN_D2_PC_ECU_ID" documentation="Node ID to send ECU throttle messages to. Set to zero to disable ECU throttle messages. Set to 255 to broadcast to all ECUs." user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="ECU command output rate" name="CAN_D2_PC_ECU_RT" documentation="Output rate of ECU command messages" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">1 500</field>
      </param>
    </parameters>
    <parameters name="CAN_D2_UC_">
      <param humanName="Own node ID" name="CAN_D2_UC_NODE" documentation="DroneCAN node ID used by the driver itself on this network" user="Advanced">
        <field name="Range">1 125</field>
      </param>
      <param humanName="Output channels to be transmitted as servo over DroneCAN" name="CAN_D2_UC_SRV_BM" documentation="Bitmask with one set for channel to be transmitted as a servo command over DroneCAN">
        <bitmask>
          <bit code="0">Servo 1</bit>
          <bit code="1">Servo 2</bit>
          <bit code="2">Servo 3</bit>
          <bit code="3">Servo 4</bit>
          <bit code="4">Servo 5</bit>
          <bit code="5">Servo 6</bit>
          <bit code="6">Servo 7</bit>
          <bit code="7">Servo 8</bit>
          <bit code="8">Servo 9</bit>
          <bit code="9">Servo 10</bit>
          <bit code="10">Servo 11</bit>
          <bit code="11">Servo 12</bit>
          <bit code="12">Servo 13</bit>
          <bit code="13">Servo 14</bit>
          <bit code="14">Servo 15</bit>
          <bit code="15">Servo 16</bit>
          <bit code="16">Servo 17</bit>
          <bit code="17">Servo 18</bit>
          <bit code="18">Servo 19</bit>
          <bit code="19">Servo 20</bit>
          <bit code="20">Servo 21</bit>
          <bit code="21">Servo 22</bit>
          <bit code="22">Servo 23</bit>
          <bit code="23">Servo 24</bit>
          <bit code="24">Servo 25</bit>
          <bit code="25">Servo 26</bit>
          <bit code="26">Servo 27</bit>
          <bit code="27">Servo 28</bit>
          <bit code="28">Servo 29</bit>
          <bit code="29">Servo 30</bit>
          <bit code="30">Servo 31</bit>
          <bit code="31">Servo 32</bit>
        </bitmask>
        <field name="Bitmask">0: Servo 1, 1: Servo 2, 2: Servo 3, 3: Servo 4, 4: Servo 5, 5: Servo 6, 6: Servo 7, 7: Servo 8, 8: Servo 9, 9: Servo 10, 10: Servo 11, 11: Servo 12, 12: Servo 13, 13: Servo 14, 14: Servo 15, 15: Servo 16, 16: Servo 17, 17: Servo 18, 18: Servo 19, 19: Servo 20, 20: Servo 21, 21: Servo 22, 22: Servo 23, 23: Servo 24, 24: Servo 25, 25: Servo 26, 26: Servo 27, 27: Servo 28, 28: Servo 29, 29: Servo 30, 30: Servo 31, 31: Servo 32</field>
      </param>
      <param humanName="Output channels to be transmitted as ESC over DroneCAN" name="CAN_D2_UC_ESC_BM" documentation="Bitmask with one set for channel to be transmitted as a ESC command over DroneCAN" user="Advanced">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Servo output rate" name="CAN_D2_UC_SRV_RT" documentation="Maximum transmit rate for servo outputs" user="Advanced">
        <field name="Range">1 200</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="DroneCAN options" name="CAN_D2_UC_OPTION" documentation="Option flags" user="Advanced">
        <bitmask>
          <bit code="0">ClearDNADatabase</bit>
          <bit code="1">IgnoreDNANodeConflicts</bit>
          <bit code="2">EnableCanfd</bit>
          <bit code="3">IgnoreDNANodeUnhealthy</bit>
          <bit code="4">SendServoAsPWM</bit>
          <bit code="5">SendGNSS</bit>
          <bit code="6">UseHimarkServo</bit>
          <bit code="7">HobbyWingESC</bit>
          <bit code="8">EnableStats</bit>
          <bit code="9">EnableFlexDebug</bit>
          <bit code="10">SecondaryAllowExtendedFrames</bit>
        </bitmask>
        <field name="Bitmask">0:ClearDNADatabase,1:IgnoreDNANodeConflicts,2:EnableCanfd,3:IgnoreDNANodeUnhealthy,4:SendServoAsPWM,5:SendGNSS,6:UseHimarkServo,7:HobbyWingESC,8:EnableStats,9:EnableFlexDebug,10:SecondaryAllowExtendedFrames</field>
      </param>
      <param humanName="Notify State rate" name="CAN_D2_UC_NTF_RT" documentation="Maximum transmit rate for Notify State Message" user="Advanced">
        <field name="Range">1 200</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="ESC Output channels offset" name="CAN_D2_UC_ESC_OF" documentation="Offset for ESC numbering in DroneCAN ESC RawCommand messages. This allows for more efficient packing of ESC command messages. If your ESCs are on servo outputs 5 to 8 and you set this parameter to 4 then the ESC RawCommand will be sent with the first 4 slots filled. This can be used for more efficient usage of CAN bandwidth" user="Advanced">
        <field name="Range">0 18</field>
      </param>
      <param humanName="CAN pool size" name="CAN_D2_UC_POOL" documentation="Amount of memory in bytes to allocate for the DroneCAN memory pool. More memory is needed for higher CAN bus loads" user="Advanced">
        <field name="Range">1024 16384</field>
      </param>
      <param humanName="Bitmask for output channels for reversible ESCs over DroneCAN." name="CAN_D2_UC_ESC_RV" documentation="Bitmask with one set for each output channel that uses a reversible ESC over DroneCAN. Reversible ESCs use both positive and negative values in RawCommands, with positive commanding the forward direction and negative commanding the reverse direction." user="Advanced">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="DroneCAN relay output rate" name="CAN_D2_UC_RLY_RT" documentation="Maximum transmit rate for relay outputs, note that this rate is per message each message does 1 relay, so if with more relays will take longer to update at the same rate, a extra message will be sent when a relay changes state" user="Advanced">
        <field name="Range">0 200</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="DroneCAN Serial enable" name="CAN_D2_UC_SER_EN" documentation="Enable DroneCAN virtual serial ports" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial CAN remote node number" name="CAN_D2_UC_S1_NOD" documentation="CAN remote node number for serial port" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="DroneCAN Serial1 index" name="CAN_D2_UC_S1_IDX" documentation="Serial port number on remote CAN node" user="Advanced">
        <field name="Range">-1 100</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="DroneCAN Serial default baud rate" name="CAN_D2_UC_S1_BD" documentation="Serial baud rate on remote CAN node" user="Advanced">
        <field name="RebootRequired">True</field>
        <field name="Range">1 20000000</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial protocol of DroneCAN serial port" name="CAN_D2_UC_S1_PRO" documentation="Serial protocol of DroneCAN serial port" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial CAN remote node number" name="CAN_D2_UC_S2_NOD" documentation="CAN remote node number for serial port" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial port number on remote CAN node" name="CAN_D2_UC_S2_IDX" documentation="Serial port number on remote CAN node" user="Advanced">
        <field name="Range">-1 100</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
      </param>
      <param humanName="DroneCAN Serial default baud rate" name="CAN_D2_UC_S2_BD" documentation="Serial baud rate on remote CAN node" user="Advanced">
        <field name="Range">1 20000000</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial protocol of DroneCAN serial port" name="CAN_D2_UC_S2_PRO" documentation="Serial protocol of DroneCAN serial port" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial CAN remote node number" name="CAN_D2_UC_S3_NOD" documentation="CAN node number for serial port" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial port number on remote CAN node" name="CAN_D2_UC_S3_IDX" documentation="Serial port number on remote CAN node" user="Advanced">
        <field name="Range">-1 100</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
      </param>
      <param humanName="Serial baud rate on remote CAN node" name="CAN_D2_UC_S3_BD" documentation="Serial baud rate on remote CAN node" user="Advanced">
        <field name="Range">1 20000000</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial protocol of DroneCAN serial port" name="CAN_D2_UC_S3_PRO" documentation="Serial protocol of DroneCAN serial port" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
    </parameters>
    <parameters name="CAN_D3_">
      <param humanName="Enable use of specific protocol over virtual driver" name="CAN_D3_PROTOCOL" documentation="Enabling this option starts selected protocol that will use this virtual driver" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="11">Benewake</value>
          <value code="1">DroneCAN</value>
          <value code="6">EFI_NWPMU</value>
          <value code="8">KDECAN</value>
          <value code="4">PiccoloCAN</value>
          <value code="14">RadarCAN (NanoRadar/Hexsoon)</value>
          <value code="10">Scripting</value>
          <value code="12">Scripting2</value>
          <value code="13">TOFSenseP</value>
          <value code="7">USD1</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Secondary protocol with 11 bit CAN addressing" name="CAN_D3_PROTOCOL2" documentation="Secondary protocol with 11 bit CAN addressing" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="11">Benewake</value>
          <value code="14">RadarCAN (NanoRadar/Hexsoon)</value>
          <value code="10">Scripting</value>
          <value code="12">Scripting2</value>
          <value code="13">TOFSenseP</value>
          <value code="7">USD1</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="CAN_D3_PC_">
      <param humanName="ESC channels" name="CAN_D3_PC_ESC_BM" documentation="Bitmask defining which ESC (motor) channels are to be transmitted over Piccolo CAN" user="Advanced">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="ESC output rate" name="CAN_D3_PC_ESC_RT" documentation="Output rate of ESC command messages" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">1 500</field>
      </param>
      <param humanName="Servo channels" name="CAN_D3_PC_SRV_BM" documentation="Bitmask defining which servo channels are to be transmitted over Piccolo CAN" user="Advanced">
        <bitmask>
          <bit code="0">Servo 1</bit>
          <bit code="1">Servo 2</bit>
          <bit code="2">Servo 3</bit>
          <bit code="3">Servo 4</bit>
          <bit code="4">Servo 5</bit>
          <bit code="5">Servo 6</bit>
          <bit code="6">Servo 7</bit>
          <bit code="7">Servo 8</bit>
          <bit code="8">Servo 9</bit>
          <bit code="9">Servo 10</bit>
          <bit code="10">Servo 11</bit>
          <bit code="11">Servo 12</bit>
          <bit code="12">Servo 13</bit>
          <bit code="13">Servo 14</bit>
          <bit code="14">Servo 15</bit>
          <bit code="15">Servo 16</bit>
        </bitmask>
        <field name="Bitmask">0: Servo 1, 1: Servo 2, 2: Servo 3, 3: Servo 4, 4: Servo 5, 5: Servo 6, 6: Servo 7, 7: Servo 8, 8: Servo 9, 9: Servo 10, 10: Servo 11, 11: Servo 12, 12: Servo 13, 13: Servo 14, 14: Servo 15, 15: Servo 16</field>
      </param>
      <param humanName="Servo command output rate" name="CAN_D3_PC_SRV_RT" documentation="Output rate of servo command messages" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">1 500</field>
      </param>
      <param humanName="ECU Node ID" name="CAN_D3_PC_ECU_ID" documentation="Node ID to send ECU throttle messages to. Set to zero to disable ECU throttle messages. Set to 255 to broadcast to all ECUs." user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="ECU command output rate" name="CAN_D3_PC_ECU_RT" documentation="Output rate of ECU command messages" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">1 500</field>
      </param>
    </parameters>
    <parameters name="CAN_D3_UC_">
      <param humanName="Own node ID" name="CAN_D3_UC_NODE" documentation="DroneCAN node ID used by the driver itself on this network" user="Advanced">
        <field name="Range">1 125</field>
      </param>
      <param humanName="Output channels to be transmitted as servo over DroneCAN" name="CAN_D3_UC_SRV_BM" documentation="Bitmask with one set for channel to be transmitted as a servo command over DroneCAN">
        <bitmask>
          <bit code="0">Servo 1</bit>
          <bit code="1">Servo 2</bit>
          <bit code="2">Servo 3</bit>
          <bit code="3">Servo 4</bit>
          <bit code="4">Servo 5</bit>
          <bit code="5">Servo 6</bit>
          <bit code="6">Servo 7</bit>
          <bit code="7">Servo 8</bit>
          <bit code="8">Servo 9</bit>
          <bit code="9">Servo 10</bit>
          <bit code="10">Servo 11</bit>
          <bit code="11">Servo 12</bit>
          <bit code="12">Servo 13</bit>
          <bit code="13">Servo 14</bit>
          <bit code="14">Servo 15</bit>
          <bit code="15">Servo 16</bit>
          <bit code="16">Servo 17</bit>
          <bit code="17">Servo 18</bit>
          <bit code="18">Servo 19</bit>
          <bit code="19">Servo 20</bit>
          <bit code="20">Servo 21</bit>
          <bit code="21">Servo 22</bit>
          <bit code="22">Servo 23</bit>
          <bit code="23">Servo 24</bit>
          <bit code="24">Servo 25</bit>
          <bit code="25">Servo 26</bit>
          <bit code="26">Servo 27</bit>
          <bit code="27">Servo 28</bit>
          <bit code="28">Servo 29</bit>
          <bit code="29">Servo 30</bit>
          <bit code="30">Servo 31</bit>
          <bit code="31">Servo 32</bit>
        </bitmask>
        <field name="Bitmask">0: Servo 1, 1: Servo 2, 2: Servo 3, 3: Servo 4, 4: Servo 5, 5: Servo 6, 6: Servo 7, 7: Servo 8, 8: Servo 9, 9: Servo 10, 10: Servo 11, 11: Servo 12, 12: Servo 13, 13: Servo 14, 14: Servo 15, 15: Servo 16, 16: Servo 17, 17: Servo 18, 18: Servo 19, 19: Servo 20, 20: Servo 21, 21: Servo 22, 22: Servo 23, 23: Servo 24, 24: Servo 25, 25: Servo 26, 26: Servo 27, 27: Servo 28, 28: Servo 29, 29: Servo 30, 30: Servo 31, 31: Servo 32</field>
      </param>
      <param humanName="Output channels to be transmitted as ESC over DroneCAN" name="CAN_D3_UC_ESC_BM" documentation="Bitmask with one set for channel to be transmitted as a ESC command over DroneCAN" user="Advanced">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="Servo output rate" name="CAN_D3_UC_SRV_RT" documentation="Maximum transmit rate for servo outputs" user="Advanced">
        <field name="Range">1 200</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="DroneCAN options" name="CAN_D3_UC_OPTION" documentation="Option flags" user="Advanced">
        <bitmask>
          <bit code="0">ClearDNADatabase</bit>
          <bit code="1">IgnoreDNANodeConflicts</bit>
          <bit code="2">EnableCanfd</bit>
          <bit code="3">IgnoreDNANodeUnhealthy</bit>
          <bit code="4">SendServoAsPWM</bit>
          <bit code="5">SendGNSS</bit>
          <bit code="6">UseHimarkServo</bit>
          <bit code="7">HobbyWingESC</bit>
          <bit code="8">EnableStats</bit>
          <bit code="9">EnableFlexDebug</bit>
          <bit code="10">SecondaryAllowExtendedFrames</bit>
        </bitmask>
        <field name="Bitmask">0:ClearDNADatabase,1:IgnoreDNANodeConflicts,2:EnableCanfd,3:IgnoreDNANodeUnhealthy,4:SendServoAsPWM,5:SendGNSS,6:UseHimarkServo,7:HobbyWingESC,8:EnableStats,9:EnableFlexDebug,10:SecondaryAllowExtendedFrames</field>
      </param>
      <param humanName="Notify State rate" name="CAN_D3_UC_NTF_RT" documentation="Maximum transmit rate for Notify State Message" user="Advanced">
        <field name="Range">1 200</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="ESC Output channels offset" name="CAN_D3_UC_ESC_OF" documentation="Offset for ESC numbering in DroneCAN ESC RawCommand messages. This allows for more efficient packing of ESC command messages. If your ESCs are on servo outputs 5 to 8 and you set this parameter to 4 then the ESC RawCommand will be sent with the first 4 slots filled. This can be used for more efficient usage of CAN bandwidth" user="Advanced">
        <field name="Range">0 18</field>
      </param>
      <param humanName="CAN pool size" name="CAN_D3_UC_POOL" documentation="Amount of memory in bytes to allocate for the DroneCAN memory pool. More memory is needed for higher CAN bus loads" user="Advanced">
        <field name="Range">1024 16384</field>
      </param>
      <param humanName="Bitmask for output channels for reversible ESCs over DroneCAN." name="CAN_D3_UC_ESC_RV" documentation="Bitmask with one set for each output channel that uses a reversible ESC over DroneCAN. Reversible ESCs use both positive and negative values in RawCommands, with positive commanding the forward direction and negative commanding the reverse direction." user="Advanced">
        <bitmask>
          <bit code="0">ESC 1</bit>
          <bit code="1">ESC 2</bit>
          <bit code="2">ESC 3</bit>
          <bit code="3">ESC 4</bit>
          <bit code="4">ESC 5</bit>
          <bit code="5">ESC 6</bit>
          <bit code="6">ESC 7</bit>
          <bit code="7">ESC 8</bit>
          <bit code="8">ESC 9</bit>
          <bit code="9">ESC 10</bit>
          <bit code="10">ESC 11</bit>
          <bit code="11">ESC 12</bit>
          <bit code="12">ESC 13</bit>
          <bit code="13">ESC 14</bit>
          <bit code="14">ESC 15</bit>
          <bit code="15">ESC 16</bit>
          <bit code="16">ESC 17</bit>
          <bit code="17">ESC 18</bit>
          <bit code="18">ESC 19</bit>
          <bit code="19">ESC 20</bit>
          <bit code="20">ESC 21</bit>
          <bit code="21">ESC 22</bit>
          <bit code="22">ESC 23</bit>
          <bit code="23">ESC 24</bit>
          <bit code="24">ESC 25</bit>
          <bit code="25">ESC 26</bit>
          <bit code="26">ESC 27</bit>
          <bit code="27">ESC 28</bit>
          <bit code="28">ESC 29</bit>
          <bit code="29">ESC 30</bit>
          <bit code="30">ESC 31</bit>
          <bit code="31">ESC 32</bit>
        </bitmask>
        <field name="Bitmask">0: ESC 1, 1: ESC 2, 2: ESC 3, 3: ESC 4, 4: ESC 5, 5: ESC 6, 6: ESC 7, 7: ESC 8, 8: ESC 9, 9: ESC 10, 10: ESC 11, 11: ESC 12, 12: ESC 13, 13: ESC 14, 14: ESC 15, 15: ESC 16, 16: ESC 17, 17: ESC 18, 18: ESC 19, 19: ESC 20, 20: ESC 21, 21: ESC 22, 22: ESC 23, 23: ESC 24, 24: ESC 25, 25: ESC 26, 26: ESC 27, 27: ESC 28, 28: ESC 29, 29: ESC 30, 30: ESC 31, 31: ESC 32</field>
      </param>
      <param humanName="DroneCAN relay output rate" name="CAN_D3_UC_RLY_RT" documentation="Maximum transmit rate for relay outputs, note that this rate is per message each message does 1 relay, so if with more relays will take longer to update at the same rate, a extra message will be sent when a relay changes state" user="Advanced">
        <field name="Range">0 200</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="DroneCAN Serial enable" name="CAN_D3_UC_SER_EN" documentation="Enable DroneCAN virtual serial ports" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial CAN remote node number" name="CAN_D3_UC_S1_NOD" documentation="CAN remote node number for serial port" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="DroneCAN Serial1 index" name="CAN_D3_UC_S1_IDX" documentation="Serial port number on remote CAN node" user="Advanced">
        <field name="Range">-1 100</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="DroneCAN Serial default baud rate" name="CAN_D3_UC_S1_BD" documentation="Serial baud rate on remote CAN node" user="Advanced">
        <field name="RebootRequired">True</field>
        <field name="Range">1 20000000</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial protocol of DroneCAN serial port" name="CAN_D3_UC_S1_PRO" documentation="Serial protocol of DroneCAN serial port" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial CAN remote node number" name="CAN_D3_UC_S2_NOD" documentation="CAN remote node number for serial port" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial port number on remote CAN node" name="CAN_D3_UC_S2_IDX" documentation="Serial port number on remote CAN node" user="Advanced">
        <field name="Range">-1 100</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
      </param>
      <param humanName="DroneCAN Serial default baud rate" name="CAN_D3_UC_S2_BD" documentation="Serial baud rate on remote CAN node" user="Advanced">
        <field name="Range">1 20000000</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial protocol of DroneCAN serial port" name="CAN_D3_UC_S2_PRO" documentation="Serial protocol of DroneCAN serial port" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial CAN remote node number" name="CAN_D3_UC_S3_NOD" documentation="CAN node number for serial port" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial port number on remote CAN node" name="CAN_D3_UC_S3_IDX" documentation="Serial port number on remote CAN node" user="Advanced">
        <field name="Range">-1 100</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
      </param>
      <param humanName="Serial baud rate on remote CAN node" name="CAN_D3_UC_S3_BD" documentation="Serial baud rate on remote CAN node" user="Advanced">
        <field name="Range">1 20000000</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial protocol of DroneCAN serial port" name="CAN_D3_UC_S3_PRO" documentation="Serial protocol of DroneCAN serial port" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
    </parameters>
    <parameters name="CAN_P1_">
      <param humanName="Index of virtual driver to be used with physical CAN interface" name="CAN_P1_DRIVER" documentation="Enabling this option enables use of CAN buses." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">First driver</value>
          <value code="2">Second driver</value>
          <value code="3">Third driver</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitrate of CAN interface" name="CAN_P1_BITRATE" documentation="Bit rate can be set up to from 10000 to 1000000" user="Advanced">
        <field name="Range">10000 1000000</field>
      </param>
      <param humanName="Bitrate of CANFD interface" name="CAN_P1_FDBITRATE" documentation="Bit rate can be set up to from 1000000 to 8000000" user="Advanced">
        <values>
          <value code="1">1M</value>
          <value code="2">2M</value>
          <value code="4">4M</value>
          <value code="5">5M</value>
          <value code="8">8M</value>
        </values>
      </param>
      <param humanName="CAN per-interface options" name="CAN_P1_OPTIONS" documentation="CAN per-interface options" user="Advanced">
        <bitmask>
          <bit code="0">LogAllFrames</bit>
        </bitmask>
        <field name="Bitmask">0:LogAllFrames</field>
      </param>
    </parameters>
    <parameters name="CAN_P2_">
      <param humanName="Index of virtual driver to be used with physical CAN interface" name="CAN_P2_DRIVER" documentation="Enabling this option enables use of CAN buses." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">First driver</value>
          <value code="2">Second driver</value>
          <value code="3">Third driver</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitrate of CAN interface" name="CAN_P2_BITRATE" documentation="Bit rate can be set up to from 10000 to 1000000" user="Advanced">
        <field name="Range">10000 1000000</field>
      </param>
      <param humanName="Bitrate of CANFD interface" name="CAN_P2_FDBITRATE" documentation="Bit rate can be set up to from 1000000 to 8000000" user="Advanced">
        <values>
          <value code="1">1M</value>
          <value code="2">2M</value>
          <value code="4">4M</value>
          <value code="5">5M</value>
          <value code="8">8M</value>
        </values>
      </param>
      <param humanName="CAN per-interface options" name="CAN_P2_OPTIONS" documentation="CAN per-interface options" user="Advanced">
        <bitmask>
          <bit code="0">LogAllFrames</bit>
        </bitmask>
        <field name="Bitmask">0:LogAllFrames</field>
      </param>
    </parameters>
    <parameters name="CAN_P3_">
      <param humanName="Index of virtual driver to be used with physical CAN interface" name="CAN_P3_DRIVER" documentation="Enabling this option enables use of CAN buses." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">First driver</value>
          <value code="2">Second driver</value>
          <value code="3">Third driver</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitrate of CAN interface" name="CAN_P3_BITRATE" documentation="Bit rate can be set up to from 10000 to 1000000" user="Advanced">
        <field name="Range">10000 1000000</field>
      </param>
      <param humanName="Bitrate of CANFD interface" name="CAN_P3_FDBITRATE" documentation="Bit rate can be set up to from 1000000 to 8000000" user="Advanced">
        <values>
          <value code="1">1M</value>
          <value code="2">2M</value>
          <value code="4">4M</value>
          <value code="5">5M</value>
          <value code="8">8M</value>
        </values>
      </param>
      <param humanName="CAN per-interface options" name="CAN_P3_OPTIONS" documentation="CAN per-interface options" user="Advanced">
        <bitmask>
          <bit code="0">LogAllFrames</bit>
        </bitmask>
        <field name="Bitmask">0:LogAllFrames</field>
      </param>
    </parameters>
    <parameters name="CAN_SLCAN_">
      <param humanName="SLCAN Route" name="CAN_SLCAN_CPORT" documentation="CAN Interface ID to be routed to SLCAN, 0 means no routing" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">First interface</value>
          <value code="2">Second interface</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="SLCAN Serial Port" name="CAN_SLCAN_SERNUM" documentation="Serial Port ID to be used for temporary SLCAN iface, -1 means no temporary serial. This parameter is automatically reset on reboot or on timeout. See CAN_SLCAN_TIMOUT for timeout details" user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
      </param>
      <param humanName="SLCAN Timeout" name="CAN_SLCAN_TIMOUT" documentation="Duration of inactivity after which SLCAN is switched back to original driver in seconds." user="Standard">
        <field name="Range">0 127</field>
      </param>
      <param humanName="SLCAN Start Delay" name="CAN_SLCAN_SDELAY" documentation="Duration after which slcan starts after setting SERNUM in seconds." user="Standard">
        <field name="Range">0 127</field>
      </param>
    </parameters>
    <parameters name="CHUTE_">
      <param humanName="Parachute release enabled or disabled" name="CHUTE_ENABLED" documentation="Parachute release enabled or disabled" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Parachute release mechanism type (relay or servo)" name="CHUTE_TYPE" documentation="Parachute release mechanism type (relay number in versions prior to 4.5, or servo). Values 0-3 all are relay. Relay number used for release is set by RELAYx_FUNCTION in 4.5 or later.">
        <values>
          <value code="0">Relay</value>
          <value code="10">Servo</value>
        </values>
      </param>
      <param humanName="Parachute Servo ON PWM value" name="CHUTE_SERVO_ON" documentation="Parachute Servo PWM value in microseconds when parachute is released" user="Standard">
        <field name="Range">1000 2000</field>
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo OFF PWM value" name="CHUTE_SERVO_OFF" documentation="Parachute Servo PWM value in microseconds when parachute is not released" user="Standard">
        <field name="Range">1000 2000</field>
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Parachute min altitude in meters above home" name="CHUTE_ALT_MIN" documentation="Parachute min altitude above home.  Parachute will not be released below this altitude.  0 to disable alt check." user="Standard">
        <field name="Range">0 32000</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Parachute release delay" name="CHUTE_DELAY_MS" documentation="Delay in millseconds between motor stop and chute release" user="Standard">
        <field name="Range">0 5000</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Critical sink speed rate in m/s to trigger emergency parachute" name="CHUTE_CRT_SINK" documentation="Release parachute when critical sink rate is reached" user="Standard">
        <field name="Range">0 15</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Parachute options" name="CHUTE_OPTIONS" documentation="Optional behaviour for parachute" user="Standard">
        <bitmask>
          <bit code="0">hold open forever after release</bit>
          <bit code="1">skip disarm before parachute release</bit>
        </bitmask>
        <field name="Bitmask">0:hold open forever after release,1:skip disarm before parachute release</field>
      </param>
    </parameters>
    <parameters name="COMPASS_">
      <param humanName="Compass offsets in milligauss on the X axis" name="COMPASS_OFS_X" documentation="Offset to be added to the compass x-axis values to compensate for metal in the frame" user="Advanced" calibration="1">
        <field name="Range">-400 400</field>
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass offsets in milligauss on the Y axis" name="COMPASS_OFS_Y" documentation="Offset to be added to the compass y-axis values to compensate for metal in the frame" user="Advanced" calibration="1">
        <field name="Range">-400 400</field>
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass offsets in milligauss on the Z axis" name="COMPASS_OFS_Z" documentation="Offset to be added to the compass z-axis values to compensate for metal in the frame" user="Advanced" calibration="1">
        <field name="Range">-400 400</field>
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass declination" name="COMPASS_DEC" documentation="An angle to compensate between the true north and magnetic north" user="Standard">
        <field name="Range">-3.142 3.142</field>
        <field name="Units">rad</field>
        <field name="UnitText">radians</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Learn compass offsets automatically" name="COMPASS_LEARN" documentation="Enable or disable the automatic learning of compass offsets. You can enable learning either using a compass-only method that is suitable only for fixed wing aircraft or using the offsets learnt by the active EKF state estimator. If this option is enabled then the learnt offsets are saved when you disarm the vehicle. If InFlight learning is enabled then the compass with automatically start learning once a flight starts (must be armed). While InFlight learning is running you cannot use position control modes." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="2">EKF-Learning</value>
          <value code="3">InFlight-Learning</value>
        </values>
      </param>
      <param humanName="Use compass for yaw" name="COMPASS_USE" documentation="Enable or disable the use of the compass (instead of the GPS) for determining heading" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Auto Declination" name="COMPASS_AUTODEC" documentation="Enable or disable the automatic calculation of the declination based on gps location" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Motor interference compensation type" name="COMPASS_MOTCT" documentation="Set motor interference compensation type to disabled, throttle or current.  Do not change manually." user="Advanced" calibration="1">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Use Throttle</value>
          <value code="2">Use Current</value>
        </values>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Motor interference compensation for body frame X axis" name="COMPASS_MOT_X" documentation="Multiplied by the current throttle and added to the compass's x-axis values to compensate for motor interference (Offset per Amp or at Full Throttle)" user="Advanced" calibration="1">
        <field name="Range">-1000 1000</field>
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Motor interference compensation for body frame Y axis" name="COMPASS_MOT_Y" documentation="Multiplied by the current throttle and added to the compass's y-axis values to compensate for motor interference (Offset per Amp or at Full Throttle)" user="Advanced" calibration="1">
        <field name="Range">-1000 1000</field>
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Motor interference compensation for body frame Z axis" name="COMPASS_MOT_Z" documentation="Multiplied by the current throttle and added to the compass's z-axis values to compensate for motor interference (Offset per Amp or at Full Throttle)" user="Advanced" calibration="1">
        <field name="Range">-1000 1000</field>
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass orientation" name="COMPASS_ORIENT" documentation="The orientation of the first external compass relative to the vehicle frame. This value will be ignored unless this compass is set as an external compass. When set correctly in the northern hemisphere, pointing the nose and right side down should increase the MagX and MagY values respectively. Rolling the vehicle upside down should decrease the MagZ value. For southern hemisphere, switch increase and decrease. NOTE: For internal compasses, AHRS_ORIENT is used. The label for each option is specified in the order of rotations for that orientation. Firmware versions 4.2 and prior can use a CUSTOM (100) rotation to set the COMPASS_CUS_ROLL/PIT/YAW angles for Compass orientation. Later versions provide two general custom rotations which can be used, Custom 1 and Custom 2, with CUST_1_ROLL/PIT/YAW or CUST_2_ROLL/PIT/YAW angles." user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Yaw45</value>
          <value code="2">Yaw90</value>
          <value code="3">Yaw135</value>
          <value code="4">Yaw180</value>
          <value code="5">Yaw225</value>
          <value code="6">Yaw270</value>
          <value code="7">Yaw315</value>
          <value code="8">Roll180</value>
          <value code="9">Yaw45Roll180</value>
          <value code="10">Yaw90Roll180</value>
          <value code="11">Yaw135Roll180</value>
          <value code="12">Pitch180</value>
          <value code="13">Yaw225Roll180</value>
          <value code="14">Yaw270Roll180</value>
          <value code="15">Yaw315Roll180</value>
          <value code="16">Roll90</value>
          <value code="17">Yaw45Roll90</value>
          <value code="18">Yaw90Roll90</value>
          <value code="19">Yaw135Roll90</value>
          <value code="20">Roll270</value>
          <value code="21">Yaw45Roll270</value>
          <value code="22">Yaw90Roll270</value>
          <value code="23">Yaw135Roll270</value>
          <value code="24">Pitch90</value>
          <value code="25">Pitch270</value>
          <value code="26">Yaw90Pitch180</value>
          <value code="27">Yaw270Pitch180</value>
          <value code="28">Pitch90Roll90</value>
          <value code="29">Pitch90Roll180</value>
          <value code="30">Pitch90Roll270</value>
          <value code="31">Pitch180Roll90</value>
          <value code="32">Pitch180Roll270</value>
          <value code="33">Pitch270Roll90</value>
          <value code="34">Pitch270Roll180</value>
          <value code="35">Pitch270Roll270</value>
          <value code="36">Yaw90Pitch180Roll90</value>
          <value code="37">Yaw270Roll90</value>
          <value code="38">Yaw293Pitch68Roll180</value>
          <value code="39">Pitch315</value>
          <value code="40">Pitch315Roll90</value>
          <value code="42">Roll45</value>
          <value code="43">Roll315</value>
          <value code="100">Custom 4.1 and older</value>
          <value code="101">Custom 1</value>
          <value code="102">Custom 2</value>
        </values>
      </param>
      <param humanName="Compass is attached via an external cable" name="COMPASS_EXTERNAL" documentation="Configure compass so it is attached externally. This is auto-detected on most boards. Set to 1 if the compass is externally connected. When externally connected the COMPASS_ORIENT option operates independently of the AHRS_ORIENTATION board orientation option. If set to 0 or 1 then auto-detection by bus connection can override the value. If set to 2 then auto-detection will be disabled." user="Advanced">
        <values>
          <value code="0">Internal</value>
          <value code="1">External</value>
          <value code="2">ForcedExternal</value>
        </values>
      </param>
      <param humanName="Compass2 offsets in milligauss on the X axis" name="COMPASS_OFS2_X" documentation="Offset to be added to compass2's x-axis values to compensate for metal in the frame" user="Advanced" calibration="1">
        <field name="Range">-400 400</field>
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass2 offsets in milligauss on the Y axis" name="COMPASS_OFS2_Y" documentation="Offset to be added to compass2's y-axis values to compensate for metal in the frame" user="Advanced" calibration="1">
        <field name="Range">-400 400</field>
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass2 offsets in milligauss on the Z axis" name="COMPASS_OFS2_Z" documentation="Offset to be added to compass2's z-axis values to compensate for metal in the frame" user="Advanced" calibration="1">
        <field name="Range">-400 400</field>
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Motor interference compensation to compass2 for body frame X axis" name="COMPASS_MOT2_X" documentation="Multiplied by the current throttle and added to compass2's x-axis values to compensate for motor interference (Offset per Amp or at Full Throttle)" user="Advanced" calibration="1">
        <field name="Range">-1000 1000</field>
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Motor interference compensation to compass2 for body frame Y axis" name="COMPASS_MOT2_Y" documentation="Multiplied by the current throttle and added to compass2's y-axis values to compensate for motor interference (Offset per Amp or at Full Throttle)" user="Advanced" calibration="1">
        <field name="Range">-1000 1000</field>
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Motor interference compensation to compass2 for body frame Z axis" name="COMPASS_MOT2_Z" documentation="Multiplied by the current throttle and added to compass2's z-axis values to compensate for motor interference (Offset per Amp or at Full Throttle)" user="Advanced" calibration="1">
        <field name="Range">-1000 1000</field>
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass3 offsets in milligauss on the X axis" name="COMPASS_OFS3_X" documentation="Offset to be added to compass3's x-axis values to compensate for metal in the frame" user="Advanced" calibration="1">
        <field name="Range">-400 400</field>
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass3 offsets in milligauss on the Y axis" name="COMPASS_OFS3_Y" documentation="Offset to be added to compass3's y-axis values to compensate for metal in the frame" user="Advanced" calibration="1">
        <field name="Range">-400 400</field>
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass3 offsets in milligauss on the Z axis" name="COMPASS_OFS3_Z" documentation="Offset to be added to compass3's z-axis values to compensate for metal in the frame" user="Advanced" calibration="1">
        <field name="Range">-400 400</field>
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Motor interference compensation to compass3 for body frame X axis" name="COMPASS_MOT3_X" documentation="Multiplied by the current throttle and added to compass3's x-axis values to compensate for motor interference (Offset per Amp or at Full Throttle)" user="Advanced" calibration="1">
        <field name="Range">-1000 1000</field>
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Motor interference compensation to compass3 for body frame Y axis" name="COMPASS_MOT3_Y" documentation="Multiplied by the current throttle and added to compass3's y-axis values to compensate for motor interference (Offset per Amp or at Full Throttle)" user="Advanced" calibration="1">
        <field name="Range">-1000 1000</field>
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Motor interference compensation to compass3 for body frame Z axis" name="COMPASS_MOT3_Z" documentation="Multiplied by the current throttle and added to compass3's z-axis values to compensate for motor interference (Offset per Amp or at Full Throttle)" user="Advanced" calibration="1">
        <field name="Range">-1000 1000</field>
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
        <field name="Increment">1</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass device id" name="COMPASS_DEV_ID" documentation="Compass device id.  Automatically detected, do not set manually" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Compass2 device id" name="COMPASS_DEV_ID2" documentation="Second compass's device id.  Automatically detected, do not set manually" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Compass3 device id" name="COMPASS_DEV_ID3" documentation="Third compass's device id.  Automatically detected, do not set manually" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Compass2 used for yaw" name="COMPASS_USE2" documentation="Enable or disable the secondary compass for determining heading." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Compass2 orientation" name="COMPASS_ORIENT2" documentation="The orientation of a second external compass relative to the vehicle frame. This value will be ignored unless this compass is set as an external compass. When set correctly in the northern hemisphere, pointing the nose and right side down should increase the MagX and MagY values respectively. Rolling the vehicle upside down should decrease the MagZ value. For southern hemisphere, switch increase and decrease. NOTE: For internal compasses, AHRS_ORIENT is used. The label for each option is specified in the order of rotations for that orientation. Firmware versions 4.2 and prior can use a CUSTOM (100) rotation to set the COMPASS_CUS_ROLL/PIT/YAW angles for Compass orientation. Later versions provide two general custom rotations which can be used, Custom 1 and Custom 2, with CUST_1_ROLL/PIT/YAW or CUST_2_ROLL/PIT/YAW angles." user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Yaw45</value>
          <value code="2">Yaw90</value>
          <value code="3">Yaw135</value>
          <value code="4">Yaw180</value>
          <value code="5">Yaw225</value>
          <value code="6">Yaw270</value>
          <value code="7">Yaw315</value>
          <value code="8">Roll180</value>
          <value code="9">Yaw45Roll180</value>
          <value code="10">Yaw90Roll180</value>
          <value code="11">Yaw135Roll180</value>
          <value code="12">Pitch180</value>
          <value code="13">Yaw225Roll180</value>
          <value code="14">Yaw270Roll180</value>
          <value code="15">Yaw315Roll180</value>
          <value code="16">Roll90</value>
          <value code="17">Yaw45Roll90</value>
          <value code="18">Yaw90Roll90</value>
          <value code="19">Yaw135Roll90</value>
          <value code="20">Roll270</value>
          <value code="21">Yaw45Roll270</value>
          <value code="22">Yaw90Roll270</value>
          <value code="23">Yaw135Roll270</value>
          <value code="24">Pitch90</value>
          <value code="25">Pitch270</value>
          <value code="26">Yaw90Pitch180</value>
          <value code="27">Yaw270Pitch180</value>
          <value code="28">Pitch90Roll90</value>
          <value code="29">Pitch90Roll180</value>
          <value code="30">Pitch90Roll270</value>
          <value code="31">Pitch180Roll90</value>
          <value code="32">Pitch180Roll270</value>
          <value code="33">Pitch270Roll90</value>
          <value code="34">Pitch270Roll180</value>
          <value code="35">Pitch270Roll270</value>
          <value code="36">Yaw90Pitch180Roll90</value>
          <value code="37">Yaw270Roll90</value>
          <value code="38">Yaw293Pitch68Roll180</value>
          <value code="39">Pitch315</value>
          <value code="40">Pitch315Roll90</value>
          <value code="42">Roll45</value>
          <value code="43">Roll315</value>
          <value code="100">Custom 4.1 and older</value>
          <value code="101">Custom 1</value>
          <value code="102">Custom 2</value>
        </values>
      </param>
      <param humanName="Compass2 is attached via an external cable" name="COMPASS_EXTERN2" documentation="Configure second compass so it is attached externally. This is auto-detected on most boards. If set to 0 or 1 then auto-detection by bus connection can override the value. If set to 2 then auto-detection will be disabled." user="Advanced">
        <values>
          <value code="0">Internal</value>
          <value code="1">External</value>
          <value code="2">ForcedExternal</value>
        </values>
      </param>
      <param humanName="Compass3 used for yaw" name="COMPASS_USE3" documentation="Enable or disable the tertiary compass for determining heading." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Compass3 orientation" name="COMPASS_ORIENT3" documentation="The orientation of a third external compass relative to the vehicle frame. This value will be ignored unless this compass is set as an external compass. When set correctly in the northern hemisphere, pointing the nose and right side down should increase the MagX and MagY values respectively. Rolling the vehicle upside down should decrease the MagZ value. For southern hemisphere, switch increase and decrease. NOTE: For internal compasses, AHRS_ORIENT is used. The label for each option is specified in the order of rotations for that orientation. Firmware versions 4.2 and prior can use a CUSTOM (100) rotation to set the COMPASS_CUS_ROLL/PIT/YAW angles for Compass orientation. Later versions provide two general custom rotations which can be used, Custom 1 and Custom 2, with CUST_1_ROLL/PIT/YAW or CUST_2_ROLL/PIT/YAW angles." user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Yaw45</value>
          <value code="2">Yaw90</value>
          <value code="3">Yaw135</value>
          <value code="4">Yaw180</value>
          <value code="5">Yaw225</value>
          <value code="6">Yaw270</value>
          <value code="7">Yaw315</value>
          <value code="8">Roll180</value>
          <value code="9">Yaw45Roll180</value>
          <value code="10">Yaw90Roll180</value>
          <value code="11">Yaw135Roll180</value>
          <value code="12">Pitch180</value>
          <value code="13">Yaw225Roll180</value>
          <value code="14">Yaw270Roll180</value>
          <value code="15">Yaw315Roll180</value>
          <value code="16">Roll90</value>
          <value code="17">Yaw45Roll90</value>
          <value code="18">Yaw90Roll90</value>
          <value code="19">Yaw135Roll90</value>
          <value code="20">Roll270</value>
          <value code="21">Yaw45Roll270</value>
          <value code="22">Yaw90Roll270</value>
          <value code="23">Yaw135Roll270</value>
          <value code="24">Pitch90</value>
          <value code="25">Pitch270</value>
          <value code="26">Yaw90Pitch180</value>
          <value code="27">Yaw270Pitch180</value>
          <value code="28">Pitch90Roll90</value>
          <value code="29">Pitch90Roll180</value>
          <value code="30">Pitch90Roll270</value>
          <value code="31">Pitch180Roll90</value>
          <value code="32">Pitch180Roll270</value>
          <value code="33">Pitch270Roll90</value>
          <value code="34">Pitch270Roll180</value>
          <value code="35">Pitch270Roll270</value>
          <value code="36">Yaw90Pitch180Roll90</value>
          <value code="37">Yaw270Roll90</value>
          <value code="38">Yaw293Pitch68Roll180</value>
          <value code="39">Pitch315</value>
          <value code="40">Pitch315Roll90</value>
          <value code="42">Roll45</value>
          <value code="43">Roll315</value>
          <value code="100">Custom 4.1 and older</value>
          <value code="101">Custom 1</value>
          <value code="102">Custom 2</value>
        </values>
      </param>
      <param humanName="Compass3 is attached via an external cable" name="COMPASS_EXTERN3" documentation="Configure third compass so it is attached externally. This is auto-detected on most boards. If set to 0 or 1 then auto-detection by bus connection can override the value. If set to 2 then auto-detection will be disabled." user="Advanced">
        <values>
          <value code="0">Internal</value>
          <value code="1">External</value>
          <value code="2">ForcedExternal</value>
        </values>
      </param>
      <param humanName="Compass soft-iron diagonal X component" name="COMPASS_DIA_X" documentation="DIA_X in the compass soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass soft-iron diagonal Y component" name="COMPASS_DIA_Y" documentation="DIA_Y in the compass soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass soft-iron diagonal Z component" name="COMPASS_DIA_Z" documentation="DIA_Z in the compass soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass soft-iron off-diagonal X component" name="COMPASS_ODI_X" documentation="ODI_X in the compass soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass soft-iron off-diagonal Y component" name="COMPASS_ODI_Y" documentation="ODI_Y in the compass soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass soft-iron off-diagonal Z component" name="COMPASS_ODI_Z" documentation="ODI_Z in the compass soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass2 soft-iron diagonal X component" name="COMPASS_DIA2_X" documentation="DIA_X in the compass2 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass2 soft-iron diagonal Y component" name="COMPASS_DIA2_Y" documentation="DIA_Y in the compass2 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass2 soft-iron diagonal Z component" name="COMPASS_DIA2_Z" documentation="DIA_Z in the compass2 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass2 soft-iron off-diagonal X component" name="COMPASS_ODI2_X" documentation="ODI_X in the compass2 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass2 soft-iron off-diagonal Y component" name="COMPASS_ODI2_Y" documentation="ODI_Y in the compass2 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass2 soft-iron off-diagonal Z component" name="COMPASS_ODI2_Z" documentation="ODI_Z in the compass2 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass3 soft-iron diagonal X component" name="COMPASS_DIA3_X" documentation="DIA_X in the compass3 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass3 soft-iron diagonal Y component" name="COMPASS_DIA3_Y" documentation="DIA_Y in the compass3 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass3 soft-iron diagonal Z component" name="COMPASS_DIA3_Z" documentation="DIA_Z in the compass3 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass3 soft-iron off-diagonal X component" name="COMPASS_ODI3_X" documentation="ODI_X in the compass3 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass3 soft-iron off-diagonal Y component" name="COMPASS_ODI3_Y" documentation="ODI_Y in the compass3 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass3 soft-iron off-diagonal Z component" name="COMPASS_ODI3_Z" documentation="ODI_Z in the compass3 soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Compass calibration fitness" name="COMPASS_CAL_FIT" documentation="This controls the fitness level required for a successful compass calibration. A lower value makes for a stricter fit (less likely to pass). This is the value used for the primary magnetometer. Other magnetometers get double the value." user="Advanced">
        <field name="Range">4 32</field>
        <values>
          <value code="4">Very Strict</value>
          <value code="8">Strict</value>
          <value code="16">Default</value>
          <value code="32">Relaxed</value>
        </values>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Compass maximum offset" name="COMPASS_OFFS_MAX" documentation="This sets the maximum allowed compass offset in calibration and arming checks" user="Advanced">
        <field name="Range">500 3000</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Compass disable driver type mask" name="COMPASS_DISBLMSK" documentation="This is a bitmask of driver types to disable. If a driver type is set in this mask then that driver will not try to find a sensor at startup" user="Advanced">
        <bitmask>
          <bit code="0">HMC5883</bit>
          <bit code="1">LSM303D</bit>
          <bit code="2">AK8963</bit>
          <bit code="3">BMM150</bit>
          <bit code="4">LSM9DS1</bit>
          <bit code="5">LIS3MDL</bit>
          <bit code="6">AK0991x</bit>
          <bit code="7">IST8310</bit>
          <bit code="8">ICM20948</bit>
          <bit code="9">MMC3416</bit>
          <bit code="11">DroneCAN</bit>
          <bit code="12">QMC5883</bit>
          <bit code="14">MAG3110</bit>
          <bit code="15">IST8308</bit>
          <bit code="16">RM3100</bit>
          <bit code="17">MSP</bit>
          <bit code="18">ExternalAHRS</bit>
          <bit code="19">MMC5XX3</bit>
          <bit code="20">QMC5883P</bit>
          <bit code="21">BMM350</bit>
          <bit code="22">IIS2MDC or LIS2MDL</bit>
        </bitmask>
        <field name="Bitmask">0:HMC5883,1:LSM303D,2:AK8963,3:BMM150,4:LSM9DS1,5:LIS3MDL,6:AK0991x,7:IST8310,8:ICM20948,9:MMC3416,11:DroneCAN,12:QMC5883,14:MAG3110,15:IST8308,16:RM3100,17:MSP,18:ExternalAHRS,19:MMC5XX3,20:QMC5883P,21:BMM350,22:IIS2MDC or LIS2MDL</field>
      </param>
      <param humanName="Range in which sample is accepted" name="COMPASS_FLTR_RNG" documentation="This sets the range around the average value that new samples must be within to be accepted. This can help reduce the impact of noise on sensors that are on long I2C cables. The value is a percentage from the average value. A value of zero disables this filter.">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Automatically check orientation" name="COMPASS_AUTO_ROT" documentation="When enabled this will automatically check the orientation of compasses on successful completion of compass calibration. If set to 2 then external compasses will have their orientation automatically corrected.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">CheckOnly</value>
          <value code="2">CheckAndFix</value>
          <value code="3">use same tolerance to auto rotate 45 deg rotations</value>
        </values>
      </param>
      <param humanName="Compass device id with 1st order priority" name="COMPASS_PRIO1_ID" documentation="Compass device id with 1st order priority, set automatically if 0. Reboot required after change." user="Advanced">
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Compass device id with 2nd order priority" name="COMPASS_PRIO2_ID" documentation="Compass device id with 2nd order priority, set automatically if 0. Reboot required after change." user="Advanced">
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Compass device id with 3rd order priority" name="COMPASS_PRIO3_ID" documentation="Compass device id with 3rd order priority, set automatically if 0. Reboot required after change." user="Advanced">
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Enable Compass" name="COMPASS_ENABLE" documentation="Setting this to Enabled(1) will enable the compass. Setting this to Disabled(0) will disable the compass. Note that this is separate from COMPASS_USE. This will enable the low level senor, and will enable logging of magnetometer data. To use the compass for navigation you must also set COMPASS_USE to 1." user="Standard">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Compass1 scale factor" name="COMPASS_SCALE" documentation="Scaling factor for first compass to compensate for sensor scaling errors. If this is 0 then no scaling is done" user="Standard">
        <field name="Range">0 1.3</field>
      </param>
      <param humanName="Compass2 scale factor" name="COMPASS_SCALE2" documentation="Scaling factor for 2nd compass to compensate for sensor scaling errors. If this is 0 then no scaling is done" user="Standard">
        <field name="Range">0 1.3</field>
      </param>
      <param humanName="Compass3 scale factor" name="COMPASS_SCALE3" documentation="Scaling factor for 3rd compass to compensate for sensor scaling errors. If this is 0 then no scaling is done" user="Standard">
        <field name="Range">0 1.3</field>
      </param>
      <param humanName="Compass options" name="COMPASS_OPTIONS" documentation="This sets options to change the behaviour of the compass" user="Advanced">
        <bitmask>
          <bit code="0">CalRequireGPS</bit>
          <bit code="1">Allow missing DroneCAN compasses to be automaticaly replaced (calibration still required)</bit>
        </bitmask>
        <field name="Bitmask">0:CalRequireGPS, 1: Allow missing DroneCAN compasses to be automaticaly replaced (calibration still required)</field>
      </param>
      <param humanName="Compass4 device id" name="COMPASS_DEV_ID4" documentation="Extra 4th compass's device id.  Automatically detected, do not set manually" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Compass5 device id" name="COMPASS_DEV_ID5" documentation="Extra 5th compass's device id.  Automatically detected, do not set manually" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Compass6 device id" name="COMPASS_DEV_ID6" documentation="Extra 6th compass's device id.  Automatically detected, do not set manually" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Compass7 device id" name="COMPASS_DEV_ID7" documentation="Extra 7th compass's device id.  Automatically detected, do not set manually" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Compass8 device id" name="COMPASS_DEV_ID8" documentation="Extra 8th compass's device id.  Automatically detected, do not set manually" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Custom orientation roll offset" name="COMPASS_CUS_ROLL" documentation="Compass mounting position roll offset. Positive values = roll right, negative values = roll left. This parameter is only used when COMPASS_ORIENT/2/3 is set to CUSTOM." user="Advanced">
        <field name="Range">-180 180</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Custom orientation pitch offset" name="COMPASS_CUS_PIT" documentation="Compass mounting position pitch offset. Positive values = pitch up, negative values = pitch down. This parameter is only used when COMPASS_ORIENT/2/3 is set to CUSTOM." user="Advanced">
        <field name="Range">-180 180</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Custom orientation yaw offset" name="COMPASS_CUS_YAW" documentation="Compass mounting position yaw offset. Positive values = yaw right, negative values = yaw left. This parameter is only used when COMPASS_ORIENT/2/3 is set to CUSTOM." user="Advanced">
        <field name="Range">-180 180</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="COMPASS_PMOT">
      <param humanName="per-motor compass correction enable" name="COMPASS_PMOT_EN" documentation="This enables per-motor compass corrections" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="per-motor exponential correction" name="COMPASS_PMOT_EXP" documentation="This is the exponential correction for the power output of the motor for per-motor compass correction" user="Advanced">
        <field name="Range">0 2</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Compass per-motor1 X" name="COMPASS_PMOT1_X" documentation="Compensation for X axis of motor1" user="Advanced">
</param>
      <param humanName="Compass per-motor1 Y" name="COMPASS_PMOT1_Y" documentation="Compensation for Y axis of motor1" user="Advanced">
</param>
      <param humanName="Compass per-motor1 Z" name="COMPASS_PMOT1_Z" documentation="Compensation for Z axis of motor1" user="Advanced">
</param>
      <param humanName="Compass per-motor2 X" name="COMPASS_PMOT2_X" documentation="Compensation for X axis of motor2" user="Advanced">
</param>
      <param humanName="Compass per-motor2 Y" name="COMPASS_PMOT2_Y" documentation="Compensation for Y axis of motor2" user="Advanced">
</param>
      <param humanName="Compass per-motor2 Z" name="COMPASS_PMOT2_Z" documentation="Compensation for Z axis of motor2" user="Advanced">
</param>
      <param humanName="Compass per-motor3 X" name="COMPASS_PMOT3_X" documentation="Compensation for X axis of motor3" user="Advanced">
</param>
      <param humanName="Compass per-motor3 Y" name="COMPASS_PMOT3_Y" documentation="Compensation for Y axis of motor3" user="Advanced">
</param>
      <param humanName="Compass per-motor3 Z" name="COMPASS_PMOT3_Z" documentation="Compensation for Z axis of motor3" user="Advanced">
</param>
      <param humanName="Compass per-motor4 X" name="COMPASS_PMOT4_X" documentation="Compensation for X axis of motor4" user="Advanced">
</param>
      <param humanName="Compass per-motor4 Y" name="COMPASS_PMOT4_Y" documentation="Compensation for Y axis of motor4" user="Advanced">
</param>
      <param humanName="Compass per-motor4 Z" name="COMPASS_PMOT4_Z" documentation="Compensation for Z axis of motor4" user="Advanced">
</param>
    </parameters>
    <parameters name="CUST_ROT">
      <param humanName="Enable Custom rotations" name="CUST_ROT_ENABLE" documentation="This enables custom rotations" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="CUST_ROT1_">
      <param humanName="Custom roll" name="CUST_ROT1_ROLL" documentation="Custom euler roll, euler 321 (yaw, pitch, roll) ordering">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Custom pitch" name="CUST_ROT1_PITCH" documentation="Custom euler pitch, euler 321 (yaw, pitch, roll) ordering">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Custom yaw" name="CUST_ROT1_YAW" documentation="Custom euler yaw, euler 321 (yaw, pitch, roll) ordering">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="CUST_ROT2_">
      <param humanName="Custom roll" name="CUST_ROT2_ROLL" documentation="Custom euler roll, euler 321 (yaw, pitch, roll) ordering">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Custom pitch" name="CUST_ROT2_PITCH" documentation="Custom euler pitch, euler 321 (yaw, pitch, roll) ordering">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Custom yaw" name="CUST_ROT2_YAW" documentation="Custom euler yaw, euler 321 (yaw, pitch, roll) ordering">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="DDS">
      <param humanName="DDS enable" name="DDS_ENABLE" documentation="Enable DDS subsystem" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="DDS UDP port" name="DDS_UDP_PORT" documentation="UDP port number for DDS" user="Standard">
        <field name="Range">1 65535</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="DDS DOMAIN ID" name="DDS_DOMAIN_ID" documentation="Set the ROS_DOMAIN_ID" user="Standard">
        <field name="Range">0 232</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="DDS ping timeout" name="DDS_TIMEOUT_MS" documentation="The time in milliseconds the DDS client will wait for a response from the XRCE agent before reattempting." user="Standard">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="Range">1 10000</field>
        <field name="RebootRequired">True</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="DDS ping max attempts" name="DDS_MAX_RETRY" documentation="The maximum number of times the DDS client will attempt to ping the XRCE agent before exiting. Set to 0 to allow unlimited retries." user="Standard">
        <field name="Range">0 100</field>
        <field name="RebootRequired">True</field>
        <field name="Increment">1</field>
      </param>
    </parameters>
    <parameters name="DDS_IP">
      <param humanName="IPv4 Address 1st byte" name="DDS_IP0" documentation="IPv4 address. Example: 192.xxx.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 2nd byte" name="DDS_IP1" documentation="IPv4 address. Example: xxx.168.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 3rd byte" name="DDS_IP2" documentation="IPv4 address. Example: xxx.xxx.144.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 4th byte" name="DDS_IP3" documentation="IPv4 address. Example: xxx.xxx.xxx.14">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="DID_">
      <param humanName="Enable ODID subsystem" name="DID_ENABLE" documentation="Enable ODID subsystem">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="MAVLink serial port" name="DID_MAVPORT" documentation="Serial port number to send OpenDroneID MAVLink messages to. Can be -1 if using DroneCAN.">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
      </param>
      <param humanName="DroneCAN driver number" name="DID_CANDRIVER" documentation="DroneCAN driver index, 0 to disable DroneCAN">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Driver1</value>
          <value code="2">Driver2</value>
        </values>
      </param>
      <param humanName="OpenDroneID options" name="DID_OPTIONS" documentation="Options for OpenDroneID subsystem">
        <bitmask>
          <bit code="0">EnforcePreArmChecks</bit>
          <bit code="1">AllowNonGPSPosition</bit>
          <bit code="2">LockUASIDOnFirstBasicIDRx</bit>
        </bitmask>
        <field name="Bitmask">0:EnforcePreArmChecks, 1:AllowNonGPSPosition, 2:LockUASIDOnFirstBasicIDRx</field>
      </param>
      <param humanName="Barometer vertical accuraacy" name="DID_BARO_ACC" documentation="Barometer Vertical Accuracy when installed in the vehicle. Note this is dependent upon installation conditions and thus disabled by default" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
    </parameters>
    <parameters name="EAHRS">
      <param humanName="AHRS type" name="EAHRS_TYPE" documentation="Type of AHRS device" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">VectorNav</value>
          <value code="2">MicroStrain5</value>
          <value code="5">InertialLabs</value>
          <value code="6">Trimble GSOF</value>
          <value code="7">MicroStrain7</value>
          <value code="8">SBG</value>
          <value code="11">SensAItion</value>
        </values>
      </param>
      <param humanName="AHRS data rate" name="EAHRS_RATE" documentation="Requested rate for AHRS device" user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="External AHRS options" name="EAHRS_OPTIONS" documentation="External AHRS options bitmask" user="Standard">
        <bitmask>
          <bit code="0">Vector Nav use uncompensated values for accel gyro and mag</bit>
          <bit code="1">SBG uses EKF as GNSS</bit>
          <bit code="2">SensAItion used as AHRS</bit>
        </bitmask>
        <field name="Bitmask">0:Vector Nav use uncompensated values for accel gyro and mag, 1:SBG uses EKF as GNSS, 2:SensAItion used as AHRS</field>
      </param>
      <param humanName="External AHRS sensors" name="EAHRS_SENSORS" documentation="External AHRS sensors bitmask" user="Advanced">
        <bitmask>
          <bit code="0">GPS</bit>
          <bit code="1">IMU</bit>
          <bit code="2">Baro</bit>
          <bit code="3">Compass</bit>
        </bitmask>
        <field name="Bitmask">0:GPS,1:IMU,2:Baro,3:Compass</field>
      </param>
      <param humanName="AHRS logging rate" name="EAHRS_LOG_RATE" documentation="Logging rate for EAHRS devices" user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
    </parameters>
    <parameters name="EFI">
      <param humanName="EFI communication type" name="EFI_TYPE" documentation="What method of communication is used for EFI #1" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Serial-MS</value>
          <value code="2">NWPMU</value>
          <value code="3">Serial-Lutan</value>
          <value code="4">Loweheiser</value>
          <value code="5">DroneCAN</value>
          <value code="6">Currawong-ECU</value>
          <value code="7">Scripting</value>
          <value code="8">Hirth</value>
          <value code="9">MAVLink</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="EFI Calibration Coefficient 1" name="EFI_COEF1" documentation="Used to calibrate fuel flow for MS protocol (Slope). This should be calculated from a log at constant fuel usage rate. Plot (ECYL[0].InjT*EFI.Rpm)/600.0 to get the duty_cycle. Measure actual fuel usage in cm^3/min, and set EFI_COEF1 = fuel_usage_cm3permin / duty_cycle" user="Advanced">
        <field name="Range">0 1</field>
      </param>
      <param humanName="EFI Calibration Coefficient 2" name="EFI_COEF2" documentation="Used to calibrate fuel flow for MS protocol (Offset). This can be used to correct for a non-zero offset in the fuel consumption calculation of EFI_COEF1" user="Advanced">
        <field name="Range">0 10</field>
      </param>
      <param humanName="ECU Fuel Density" name="EFI_FUEL_DENS" documentation="Used to calculate fuel consumption" user="Advanced">
        <field name="Units">kg/m/m/m</field>
        <field name="UnitText">kilograms per cubic meter</field>
        <field name="Range">0 10000</field>
      </param>
    </parameters>
    <parameters name="EFI_THRLIN">
      <param humanName="Enable throttle linearisation" name="EFI_THRLIN_EN" documentation="Enable EFI throttle linearisation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Throttle linearisation - First Order" name="EFI_THRLIN_COEF1" documentation="First Order Polynomial Coefficient. (=1, if throttle is first order polynomial trendline)" user="Advanced">
        <field name="Range">-1 1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Throttle linearisation - Second Order" name="EFI_THRLIN_COEF2" documentation="Second Order Polynomial Coefficient (=0, if throttle is second order polynomial trendline)" user="Advanced">
        <field name="Range">-1 1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Throttle linearisation - Third Order" name="EFI_THRLIN_COEF3" documentation="Third Order Polynomial Coefficient. (=0, if throttle is third order polynomial trendline)" user="Advanced">
        <field name="Range">-1 1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="throttle linearization offset" name="EFI_THRLIN_OFS" documentation="Offset for throttle linearization" user="Advanced">
        <field name="Range">0 100</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="EK2_">
      <param humanName="Enable EKF2" name="EK2_ENABLE" documentation="This enables EKF2. Enabling EKF2 only makes the maths run, it does not mean it will be used for flight control. To use it for flight control set AHRS_EKF_TYPE=2. A reboot or restart will need to be performed after changing the value of EK2_ENABLE for it to take effect." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GPS mode control" name="EK2_GPS_TYPE" documentation="This controls use of GPS measurements : 0 = use 3D velocity &amp; 2D position, 1 = use 2D velocity and 2D position, 2 = use 2D position, 3 = Inhibit GPS use - this can be useful when flying with an optical flow sensor in an environment where GPS quality is poor and subject to large multipath errors." user="Advanced">
        <values>
          <value code="0">GPS 3D Vel and 2D Pos</value>
          <value code="1">GPS 2D vel and 2D pos</value>
          <value code="2">GPS 2D pos</value>
          <value code="3">No GPS</value>
        </values>
      </param>
      <param humanName="GPS horizontal velocity measurement noise (m/s)" name="EK2_VELNE_M_NSE" documentation="This sets a lower limit on the speed accuracy reported by the GPS receiver that is used to set horizontal velocity observation noise. If the model of receiver used does not provide a speed accurcy estimate, then the parameter value will be used. Increasing it reduces the weighting of the GPS horizontal velocity measurements." user="Advanced">
        <field name="Range">0.05 5.0</field>
        <field name="Increment">0.05</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS vertical velocity measurement noise (m/s)" name="EK2_VELD_M_NSE" documentation="This sets a lower limit on the speed accuracy reported by the GPS receiver that is used to set vertical velocity observation noise. If the model of receiver used does not provide a speed accurcy estimate, then the parameter value will be used. Increasing it reduces the weighting of the GPS vertical velocity measurements." user="Advanced">
        <field name="Range">0.05 5.0</field>
        <field name="Increment">0.05</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS velocity innovation gate size" name="EK2_VEL_I_GATE" documentation="This sets the percentage number of standard deviations applied to the GPS velocity measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="GPS horizontal position measurement noise (m)" name="EK2_POSNE_M_NSE" documentation="This sets the GPS horizontal position observation noise. Increasing it reduces the weighting of GPS horizontal position measurements." user="Advanced">
        <field name="Range">0.1 10.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS position measurement gate size" name="EK2_POS_I_GATE" documentation="This sets the percentage number of standard deviations applied to the GPS position measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="GPS glitch radius gate size (m)" name="EK2_GLITCH_RAD" documentation="This controls the maximum radial uncertainty in position between the value predicted by the filter and the value measured by the GPS before the filter position and velocity states are reset to the GPS. Making this value larger allows the filter to ignore larger GPS glitches but also means that non-GPS errors such as IMU and compass can create a larger error in position before the filter is forced back to the GPS position." user="Advanced">
        <field name="Range">10 100</field>
        <field name="Increment">5</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Primary altitude sensor source" name="EK2_ALT_SOURCE" documentation="Primary height sensor used by the EKF. If a sensor other than Baro is selected and becomes unavailable, then the Baro sensor will be used as a fallback. NOTE: The EK2_RNG_USE_HGT parameter can be used to switch to range-finder when close to the ground in conjunction with EK2_ALT_SOURCE = 0 or 2 (Baro or GPS)." user="Advanced">
        <values>
          <value code="0">Use Baro</value>
          <value code="1">Use Range Finder</value>
          <value code="2">Use GPS</value>
          <value code="3">Use Range Beacon</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Altitude measurement noise (m)" name="EK2_ALT_M_NSE" documentation="This is the RMS value of noise in the altitude measurement. Increasing it reduces the weighting of the baro measurement and will make the filter respond more slowly to baro measurement errors, but will make it more sensitive to GPS and accelerometer errors." user="Advanced">
        <field name="Range">0.1 10.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Height measurement gate size" name="EK2_HGT_I_GATE" documentation="This sets the percentage number of standard deviations applied to the height measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Height measurement delay (msec)" name="EK2_HGT_DELAY" documentation="This is the number of msec that the Height measurements lag behind the inertial measurements." user="Advanced">
        <field name="Range">0 250</field>
        <field name="Increment">10</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Magnetometer measurement noise (Gauss)" name="EK2_MAG_M_NSE" documentation="This is the RMS value of noise in magnetometer measurements. Increasing it reduces the weighting on these measurements." user="Advanced">
        <field name="Range">0.01 0.5</field>
        <field name="Increment">0.01</field>
        <field name="Units">Gauss</field>
        <field name="UnitText">gauss</field>
      </param>
      <param humanName="Magnetometer default fusion mode" name="EK2_MAG_CAL" documentation="This determines when the filter will use the 3-axis magnetometer fusion model that estimates both earth and body fixed magnetic field states, when it will use a simpler magnetic heading fusion model that does not use magnetic field states and when it will use an alternative method of yaw determination to the magnetometer. The 3-axis magnetometer fusion is only suitable for use when the external magnetic field environment is stable. EK2_MAG_CAL = 0 uses heading fusion on ground, 3-axis fusion in-flight, and is the default setting for Plane users. EK2_MAG_CAL = 1 uses 3-axis fusion only when manoeuvring. EK2_MAG_CAL = 2 uses heading fusion at all times, is recommended if the external magnetic field is varying and is the default for rovers. EK2_MAG_CAL = 3 uses heading fusion on the ground and 3-axis fusion after the first in-air field and yaw reset has completed, and is the default for copters. EK2_MAG_CAL = 4 uses 3-axis fusion at all times. NOTE: The fusion mode can be forced to 2 for specific EKF cores using the EK2_MAG_MASK parameter. NOTE: limited operation without a magnetometer or any other yaw sensor is possible by setting all COMPASS_USE, COMPASS_USE2, COMPASS_USE3, etc parameters to 0 with COMPASS_ENABLE set to 1. If this is done, the EK2_GSF_RUN and EK2_GSF_USE masks must be set to the same as EK2_IMU_MASK." user="Advanced">
        <values>
          <value code="0">When flying</value>
          <value code="1">When manoeuvring</value>
          <value code="2">Never</value>
          <value code="3">After first climb yaw reset</value>
          <value code="4">Always</value>
        </values>
      </param>
      <param humanName="Magnetometer measurement gate size" name="EK2_MAG_I_GATE" documentation="This sets the percentage number of standard deviations applied to the magnetometer measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Equivalent airspeed measurement noise (m/s)" name="EK2_EAS_M_NSE" documentation="This is the RMS value of noise in equivalent airspeed measurements used by planes. Increasing it reduces the weighting of airspeed measurements and will make wind speed estimates less noisy and slower to converge. Increasing also increases navigation errors when dead-reckoning without GPS measurements." user="Advanced">
        <field name="Range">0.5 5.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Airspeed measurement gate size" name="EK2_EAS_I_GATE" documentation="This sets the percentage number of standard deviations applied to the airspeed measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Range finder measurement noise (m)" name="EK2_RNG_M_NSE" documentation="This is the RMS value of noise in the range finder measurement. Increasing it reduces the weighting on this measurement." user="Advanced">
        <field name="Range">0.1 10.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Range finder measurement gate size" name="EK2_RNG_I_GATE" documentation="This sets the percentage number of standard deviations applied to the range finder innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Maximum valid optical flow rate" name="EK2_MAX_FLOW" documentation="This sets the magnitude maximum optical flow rate in rad/sec that will be accepted by the filter" user="Advanced">
        <field name="Range">1.0 4.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Optical flow measurement noise (rad/s)" name="EK2_FLOW_M_NSE" documentation="This is the RMS value of noise and errors in optical flow measurements. Increasing it reduces the weighting on these measurements." user="Advanced">
        <field name="Range">0.05 1.0</field>
        <field name="Increment">0.05</field>
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Optical Flow measurement gate size" name="EK2_FLOW_I_GATE" documentation="This sets the percentage number of standard deviations applied to the optical flow innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Optical Flow measurement delay (msec)" name="EK2_FLOW_DELAY" documentation="This is the number of msec that the optical flow measurements lag behind the inertial measurements. It is the time from the end of the optical flow averaging period and does not include the time delay due to the 100msec of averaging within the flow sensor." user="Advanced">
        <field name="Range">0 127</field>
        <field name="Increment">10</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Rate gyro noise (rad/s)" name="EK2_GYRO_P_NSE" documentation="This control disturbance noise controls the growth of estimated error due to gyro measurement errors excluding bias. Increasing it makes the flter trust the gyro measurements less and other measurements more." user="Advanced">
        <field name="Range">0.0001 0.1</field>
        <field name="Increment">0.0001</field>
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Accelerometer noise (m/s^2)" name="EK2_ACC_P_NSE" documentation="This control disturbance noise controls the growth of estimated error due to accelerometer measurement errors excluding bias. Increasing it makes the flter trust the accelerometer measurements less and other measurements more." user="Advanced">
        <field name="Range">0.01 1.0</field>
        <field name="Increment">0.01</field>
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Rate gyro bias stability (rad/s/s)" name="EK2_GBIAS_P_NSE" documentation="This state  process noise controls growth of the gyro delta angle bias state error estimate. Increasing it makes rate gyro bias estimation faster and noisier." user="Advanced">
        <field name="Range">0.00001 0.001</field>
        <field name="Units">rad/s/s</field>
        <field name="UnitText">radians per square second</field>
      </param>
      <param humanName="Rate gyro scale factor stability (1/s)" name="EK2_GSCL_P_NSE" documentation="This noise controls the rate of gyro scale factor learning. Increasing it makes rate gyro scale factor estimation faster and noisier." user="Advanced">
        <field name="Range">0.000001 0.001</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Accelerometer bias stability (m/s^3)" name="EK2_ABIAS_P_NSE" documentation="This noise controls the growth of the vertical accelerometer delta velocity bias state error estimate. Increasing it makes accelerometer bias estimation faster and noisier." user="Advanced">
        <field name="Range">0.00001 0.005</field>
        <field name="Units">m/s/s/s</field>
        <field name="UnitText">meters per cubic second</field>
      </param>
      <param humanName="Wind velocity process noise (m/s^2)" name="EK2_WIND_P_NSE" documentation="This state process noise controls the growth of wind state error estimates. Increasing it makes wind estimation faster and noisier." user="Advanced">
        <field name="Range">0.01 1.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Height rate to wind process noise scaler" name="EK2_WIND_PSCALE" documentation="This controls how much the process noise on the wind states is increased when gaining or losing altitude to take into account changes in wind speed and direction with altitude. Increasing this parameter increases how rapidly the wind states adapt when changing altitude, but does make wind velocity estimation noiser." user="Advanced">
        <field name="Range">0.0 1.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="GPS preflight check" name="EK2_GPS_CHECK" documentation="This is a 1 byte bitmap controlling which GPS preflight checks are performed. Set to 0 to bypass all checks. Set to 255 perform all checks. Set to 3 to check just the number of satellites and HDoP. Set to 31 for the most rigorous checks that will still allow checks to pass when the copter is moving, eg launch from a boat." user="Advanced">
        <bitmask>
          <bit code="0">NSats</bit>
          <bit code="1">HDoP</bit>
          <bit code="2">speed error</bit>
          <bit code="3">position error</bit>
          <bit code="4">yaw error</bit>
          <bit code="5">pos drift</bit>
          <bit code="6">vert speed</bit>
          <bit code="7">horiz speed</bit>
        </bitmask>
        <field name="Bitmask">0:NSats,1:HDoP,2:speed error,3:position error,4:yaw error,5:pos drift,6:vert speed,7:horiz speed</field>
      </param>
      <param humanName="Bitmask of active IMUs" name="EK2_IMU_MASK" documentation="1 byte bitmap of IMUs to use in EKF2. A separate instance of EKF2 will be started for each IMU selected. Set to 1 to use the first IMU only (default), set to 2 to use the second IMU only, set to 3 to use the first and second IMU. Additional IMU's can be used up to a maximum of 6 if memory and processing resources permit. There may be insufficient memory and processing resources to run multiple instances. If this occurs EKF2 will fail to start." user="Advanced">
        <bitmask>
          <bit code="0">FirstIMU</bit>
          <bit code="1">SecondIMU</bit>
          <bit code="2">ThirdIMU</bit>
          <bit code="3">FourthIMU</bit>
          <bit code="4">FifthIMU</bit>
          <bit code="5">SixthIMU</bit>
        </bitmask>
        <field name="Bitmask">0:FirstIMU,1:SecondIMU,2:ThirdIMU,3:FourthIMU,4:FifthIMU,5:SixthIMU</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GPS accuracy check scaler (%)" name="EK2_CHECK_SCALE" documentation="This scales the thresholds that are used to check GPS accuracy before it is used by the EKF. A value of 100 is the default. Values greater than 100 increase and values less than 100 reduce the maximum GPS error the EKF will accept. A value of 200 will double the allowable GPS error." user="Advanced">
        <field name="Range">50 200</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Non-GPS operation position uncertainty (m)" name="EK2_NOAID_M_NSE" documentation="This sets the amount of position variation that the EKF allows for when operating without external measurements (eg GPS or optical flow). Increasing this parameter makes the EKF attitude estimate less sensitive to vehicle manoeuvres but more sensitive to IMU errors." user="Advanced">
        <field name="Range">0.5 50.0</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Yaw measurement noise (rad)" name="EK2_YAW_M_NSE" documentation="This is the RMS value of noise in yaw measurements from the magnetometer. Increasing it reduces the weighting on these measurements." user="Advanced">
        <field name="Range">0.05 1.0</field>
        <field name="Increment">0.05</field>
        <field name="Units">rad</field>
        <field name="UnitText">radians</field>
      </param>
      <param humanName="Yaw measurement gate size" name="EK2_YAW_I_GATE" documentation="This sets the percentage number of standard deviations applied to the magnetometer yaw measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Output complementary filter time constant (centi-sec)" name="EK2_TAU_OUTPUT" documentation="Sets the time constant of the output complementary filter/predictor in centi-seconds." user="Advanced">
        <field name="Range">10 50</field>
        <field name="Increment">5</field>
        <field name="Units">cs</field>
        <field name="UnitText">centiseconds</field>
      </param>
      <param humanName="Earth magnetic field process noise (gauss/s)" name="EK2_MAGE_P_NSE" documentation="This state process noise controls the growth of earth magnetic field state error estimates. Increasing it makes earth magnetic field estimation faster and noisier." user="Advanced">
        <field name="Range">0.00001 0.01</field>
        <field name="Units">Gauss/s</field>
        <field name="UnitText">gauss per second</field>
      </param>
      <param humanName="Body magnetic field process noise (gauss/s)" name="EK2_MAGB_P_NSE" documentation="This state process noise controls the growth of body magnetic field state error estimates. Increasing it makes magnetometer bias error estimation faster and noisier." user="Advanced">
        <field name="Range">0.00001 0.01</field>
        <field name="Units">Gauss/s</field>
        <field name="UnitText">gauss per second</field>
      </param>
      <param humanName="Range finder switch height percentage" name="EK2_RNG_USE_HGT" documentation="Range finder can be used as the primary height source when below this percentage of its maximum range (see RNGFND*_MAX). This will not work unless Baro or GPS height is selected as the primary height source vis EK2_ALT_SOURCE = 0 or 2 respectively.  This feature should not be used for terrain following as it is designed  for vertical takeoff and landing with climb above  the range finder use height before commencing the mission, and with horizontal position changes below that height being limited to a flat region around the takeoff and landing point." user="Advanced">
        <field name="Range">-1 70</field>
        <field name="Increment">1</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Maximum terrain gradient" name="EK2_TERR_GRAD" documentation="Specifies the maximum gradient of the terrain below the vehicle assumed when it is fusing range finder or optical flow to estimate terrain height." user="Advanced">
        <field name="Range">0 0.2</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Range beacon measurement noise (m)" name="EK2_BCN_M_NSE" documentation="This is the RMS value of noise in the range beacon measurement. Increasing it reduces the weighting on this measurement." user="Advanced">
        <field name="Range">0.1 10.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Range beacon measurement gate size" name="EK2_BCN_I_GTE" documentation="This sets the percentage number of standard deviations applied to the range beacon measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Range beacon measurement delay (msec)" name="EK2_BCN_DELAY" documentation="This is the number of msec that the range beacon measurements lag behind the inertial measurements. It is the time from the end of the optical flow averaging period and does not include the time delay due to the 100msec of averaging within the flow sensor." user="Advanced">
        <field name="Range">0 127</field>
        <field name="Increment">10</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Range finder max ground speed" name="EK2_RNG_USE_SPD" documentation="The range finder will not be used as the primary height source when the horizontal ground speed is greater than this value." user="Advanced">
        <field name="Range">2.0 6.0</field>
        <field name="Increment">0.5</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Bitmask of active EKF cores that will always use heading fusion" name="EK2_MAG_MASK" documentation="1 byte bitmap of EKF cores that will disable magnetic field states and use simple magnetic heading fusion at all times. This parameter enables specified cores to be used as a backup for flight into an environment with high levels of external magnetic interference which may degrade the EKF attitude estimate when using 3-axis magnetometer fusion. NOTE : Use of a different magnetometer fusion algorithm on different cores makes unwanted EKF core switches due to magnetometer errors more likely." user="Advanced">
        <bitmask>
          <bit code="0">FirstEKF</bit>
          <bit code="1">SecondEKF</bit>
          <bit code="2">ThirdEKF</bit>
          <bit code="3">FourthEKF</bit>
          <bit code="4">FifthEKF</bit>
          <bit code="5">SixthEKF</bit>
        </bitmask>
        <field name="Bitmask">0:FirstEKF,1:SecondEKF,2:ThirdEKF,3:FourthEKF,4:FifthEKF,5:SixthEKF</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask control of EKF reference height correction" name="EK2_OGN_HGT_MASK" documentation="When a height sensor other than GPS is used as the primary height source by the EKF, the position of the zero height datum is defined by that sensor and its frame of reference. If a GPS height measurement is also available, then the height of the WGS-84 height datum used by the EKF can be corrected so that the height returned by the getLLH() function is compensated for primary height sensor drift and change in datum over time. The first two bit positions control when the height datum will be corrected. Correction is performed using a Bayes filter and only operates when GPS quality permits. The third bit position controls where the corrections to the GPS reference datum are applied. Corrections can be applied to the local vertical position or to the reported EKF origin height (default)." user="Advanced">
        <bitmask>
          <bit code="0">Correct when using Baro height</bit>
          <bit code="1">Correct when using range finder height</bit>
          <bit code="2">Apply corrections to local position</bit>
        </bitmask>
        <field name="Bitmask">0:Correct when using Baro height,1:Correct when using range finder height,2:Apply corrections to local position</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Optical flow use bitmask" name="EK2_FLOW_USE" documentation="Controls if the optical flow data is fused into the 24-state navigation estimator OR the 1-state terrain height estimator." user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Navigation</value>
          <value code="2">Terrain</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="EarthField error limit" name="EK2_MAG_EF_LIM" documentation="This limits the difference between the learned earth magnetic field and the earth field from the world magnetic model tables. A value of zero means to disable the use of the WMM tables." user="Advanced">
        <field name="Range">0 500</field>
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
      </param>
      <param humanName="Height rate filter crossover frequency" name="EK2_HRT_FILT" documentation="Specifies the crossover frequency of the complementary filter used to calculate the output predictor height rate derivative.">
        <field name="Range">0.1 30.0</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Bitmask of which EKF-GSF yaw estimators run" name="EK2_GSF_RUN_MASK" documentation="A bitmask of which EKF2 instances run an independant EKF-GSF yaw estimator to provide a backup yaw estimate that doesn't rely on magnetometer data. This estimator uses IMU, GPS and, if available, airspeed data. EKF-GSF yaw estimator data for the primary EKF2 instance will be logged as GSF0 and GSF1 messages. Use of the yaw estimate generated by this algorithm is controlled by the EK2_GSF_USE_MASK and EK2_GSF_RST_MAX parameters. To run the EKF-GSF yaw estimator in ride-along and logging only, set EK2_GSF_USE_MASK to 0." user="Advanced">
        <bitmask>
          <bit code="0">FirstEKF</bit>
          <bit code="1">SecondEKF</bit>
          <bit code="2">ThirdEKF</bit>
          <bit code="3">FourthEKF</bit>
          <bit code="4">FifthEKF</bit>
          <bit code="5">SixthEKF</bit>
        </bitmask>
        <field name="Bitmask">0:FirstEKF,1:SecondEKF,2:ThirdEKF,3:FourthEKF,4:FifthEKF,5:SixthEKF</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask of which EKF-GSF yaw estimators are used" name="EK2_GSF_USE_MASK" documentation="1 byte bitmap of which EKF2 instances will use the output from the EKF-GSF yaw estimator that has been turned on by the EK2_GSF_RUN_MASK parameter. If the inertial navigation calculation stops following the GPS, then the vehicle code can request EKF2 to attempt to resolve the issue, either by performing a yaw reset if enabled by this parameter by switching to another EKF2 instance." user="Advanced">
        <bitmask>
          <bit code="0">FirstEKF</bit>
          <bit code="1">SecondEKF</bit>
          <bit code="2">ThirdEKF</bit>
          <bit code="3">FourthEKF</bit>
          <bit code="4">FifthEKF</bit>
          <bit code="5">SixthEKF</bit>
        </bitmask>
        <field name="Bitmask">0:FirstEKF,1:SecondEKF,2:ThirdEKF,3:FourthEKF,4:FifthEKF,5:SixthEKF</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Maximum number of resets to the EKF-GSF yaw estimate allowed" name="EK2_GSF_RST_MAX" documentation="Sets the maximum number of times the EKF2 will be allowed to reset its yaw to the estimate from the EKF-GSF yaw estimator. No resets will be allowed unless the use of the EKF-GSF yaw estimate is enabled via the EK2_GSF_USE_MASK parameter." user="Advanced">
        <field name="Range">1 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Optional EKF behaviour" name="EK2_OPTIONS" documentation="optional EKF2 behaviour. Disabling external navigation prevents use of external vision data in the EKF2 solution" user="Advanced">
        <bitmask>
          <bit code="0">DisableExternalNavigation</bit>
        </bitmask>
        <field name="Bitmask">0:DisableExternalNavigation</field>
      </param>
    </parameters>
    <parameters name="EK3_">
      <param humanName="Enable EKF3" name="EK3_ENABLE" documentation="This enables EKF3. Enabling EKF3 only makes the maths run, it does not mean it will be used for flight control. To use it for flight control set AHRS_EKF_TYPE=3. A reboot or restart will need to be performed after changing the value of EK3_ENABLE for it to take effect." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GPS horizontal velocity measurement noise (m/s)" name="EK3_VELNE_M_NSE" documentation="This sets a lower limit on the speed accuracy reported by the GPS receiver that is used to set horizontal velocity observation noise. If the model of receiver used does not provide a speed accurcy estimate, then the parameter value will be used. Increasing it reduces the weighting of the GPS horizontal velocity measurements." user="Advanced">
        <field name="Range">0.05 5.0</field>
        <field name="Increment">0.05</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS vertical velocity measurement noise (m/s)" name="EK3_VELD_M_NSE" documentation="This sets a lower limit on the speed accuracy reported by the GPS receiver that is used to set vertical velocity observation noise. If the model of receiver used does not provide a speed accurcy estimate, then the parameter value will be used. Increasing it reduces the weighting of the GPS vertical velocity measurements." user="Advanced">
        <field name="Range">0.05 5.0</field>
        <field name="Increment">0.05</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS velocity innovation gate size" name="EK3_VEL_I_GATE" documentation="This sets the percentage number of standard deviations applied to the GPS velocity measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted. If EK3_GLITCH_RAD set to 0 the velocity innovations will be clipped instead of rejected if they exceed the gate size and a smaller value of EK3_VEL_I_GATE not exceeding 300 is recommended to limit the effect of GPS transient errors." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="GPS horizontal position measurement noise (m)" name="EK3_POSNE_M_NSE" documentation="This sets the GPS horizontal position observation noise. Increasing it reduces the weighting of GPS horizontal position measurements." user="Advanced">
        <field name="Range">0.1 10.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS position measurement gate size" name="EK3_POS_I_GATE" documentation="This sets the percentage number of standard deviations applied to the GPS position measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted. If EK3_GLITCH_RAD has been set to 0 the horizontal position innovations will be clipped instead of rejected if they exceed the gate size so a smaller value of EK3_POS_I_GATE not exceeding 300 is recommended to limit the effect of GPS transient errors." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="GPS glitch radius gate size (m)" name="EK3_GLITCH_RAD" documentation="This controls the maximum radial uncertainty in position between the value predicted by the filter and the value measured by the GPS before the filter position and velocity states are reset to the GPS. Making this value larger allows the filter to ignore larger GPS glitches but also means that non-GPS errors such as IMU and compass can create a larger error in position before the filter is forced back to the GPS position. If EK3_GLITCH_RAD set to 0 the GPS innovations will be clipped instead of rejected if they exceed the gate size set by EK3_VEL_I_GATE and EK3_POS_I_GATE which can be useful if poor quality sensor data is causing GPS rejection and loss of navigation but does make the EKF more susceptible to GPS glitches. If setting EK3_GLITCH_RAD to 0 it is recommended to reduce EK3_VEL_I_GATE and EK3_POS_I_GATE to 300." user="Advanced">
        <field name="Range">10 100</field>
        <field name="Increment">5</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Altitude measurement noise (m)" name="EK3_ALT_M_NSE" documentation="This is the RMS value of noise in the altitude measurement. Increasing it reduces the weighting of the baro measurement and will make the filter respond more slowly to baro measurement errors, but will make it more sensitive to GPS and accelerometer errors. A larger value for EK3_ALT_M_NSE may be required when operating with EK3_SRCx_POSZ = 0. This parameter also sets the noise for the 'synthetic' zero height measurement that is used when EK3_SRCx_POSZ = 0." user="Advanced">
        <field name="Range">0.1 100.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Height measurement gate size" name="EK3_HGT_I_GATE" documentation="This sets the percentage number of standard deviations applied to the height measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted.  If EK3_GLITCH_RAD set to 0 the vertical position innovations will be clipped instead of rejected if they exceed the gate size and a smaller value of EK3_HGT_I_GATE not exceeding 300 is recommended to limit the effect of height sensor transient errors." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Height measurement delay (msec)" name="EK3_HGT_DELAY" documentation="This is the number of msec that the Height measurements lag behind the inertial measurements." user="Advanced">
        <field name="Range">0 250</field>
        <field name="Increment">10</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Magnetometer measurement noise (Gauss)" name="EK3_MAG_M_NSE" documentation="This is the RMS value of noise in magnetometer measurements. Increasing it reduces the weighting on these measurements." user="Advanced">
        <field name="Range">0.01 0.5</field>
        <field name="Increment">0.01</field>
        <field name="Units">Gauss</field>
        <field name="UnitText">gauss</field>
      </param>
      <param humanName="Magnetometer default fusion mode" name="EK3_MAG_CAL" documentation="This determines when the filter will use the 3-axis magnetometer fusion model that estimates both earth and body fixed magnetic field states and when it will use a simpler magnetic heading fusion model that does not use magnetic field states. The 3-axis magnetometer fusion is only suitable for use when the external magnetic field environment is stable. EK3_MAG_CAL = 0 uses heading fusion on ground, 3-axis fusion in-flight, and is the default setting for Plane users. EK3_MAG_CAL = 1 uses 3-axis fusion only when manoeuvring. EK3_MAG_CAL = 2 uses heading fusion at all times, is recommended if the external magnetic field is varying and is the default for rovers. EK3_MAG_CAL = 3 uses heading fusion on the ground and 3-axis fusion after the first in-air field and yaw reset has completed, and is the default for copters. EK3_MAG_CAL = 4 uses 3-axis fusion at all times. EK3_MAG_CAL = 5 uses an external yaw sensor with simple heading fusion. NOTE : Use of simple heading magnetometer fusion makes vehicle compass calibration and alignment errors harder for the EKF to detect which reduces the sensitivity of the Copter EKF failsafe algorithm. NOTE: The fusion mode can be forced to 2 for specific EKF cores using the EK3_MAG_MASK parameter. EK3_MAG_CAL = 6 uses an external yaw sensor with fallback to compass when the external sensor is not available if we are flying. NOTE: The fusion mode can be forced to 2 for specific EKF cores using the EK3_MAG_MASK parameter. NOTE: limited operation without a magnetometer or any other yaw sensor is possible by setting all COMPASS_USE, COMPASS_USE2, COMPASS_USE3, etc parameters to 0 and setting COMPASS_ENABLE to 0. If this is done, the EK3_GSF_RUN and EK3_GSF_USE masks must be set to the same as EK3_IMU_MASK. A yaw angle derived from IMU and GPS velocity data using a Gaussian Sum Filter (GSF) will then be used to align the yaw when flight commences and there is sufficient movement." user="Advanced">
        <values>
          <value code="0">When flying</value>
          <value code="1">When manoeuvring</value>
          <value code="2">Never</value>
          <value code="3">After first climb yaw reset</value>
          <value code="4">Always</value>
          <value code="5">Use external yaw sensor (Deprecated in 4.1+ see EK3_SRCn_YAW)</value>
          <value code="6">External yaw sensor with compass fallback (Deprecated in 4.1+ see EK3_SRCn_YAW)</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Magnetometer measurement gate size" name="EK3_MAG_I_GATE" documentation="This sets the percentage number of standard deviations applied to the magnetometer measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Equivalent airspeed measurement noise (m/s)" name="EK3_EAS_M_NSE" documentation="This is the RMS value of noise in equivalent airspeed measurements used by planes. Increasing it reduces the weighting of airspeed measurements and will make wind speed estimates less noisy and slower to converge. Increasing also increases navigation errors when dead-reckoning without GPS measurements." user="Advanced">
        <field name="Range">0.5 5.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Airspeed measurement gate size" name="EK3_EAS_I_GATE" documentation="This sets the percentage number of standard deviations applied to the airspeed measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Range finder measurement noise (m)" name="EK3_RNG_M_NSE" documentation="This is the RMS value of noise in the range finder measurement. Increasing it reduces the weighting on this measurement." user="Advanced">
        <field name="Range">0.1 10.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Range finder measurement gate size" name="EK3_RNG_I_GATE" documentation="This sets the percentage number of standard deviations applied to the range finder innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Optical flow rate maximum" name="EK3_FLOW_MAX" documentation="The maximum optical flow rate in rad/sec that will be accepted by the filter.  Flow rates above this value will not be fused." user="Advanced">
        <field name="Range">1.0 4.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Optical flow measurement noise (rad/s)" name="EK3_FLOW_M_NSE" documentation="This is the RMS value of noise and errors in optical flow measurements. Increasing it reduces the weighting on these measurements." user="Advanced">
        <field name="Range">0.05 1.0</field>
        <field name="Increment">0.05</field>
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Optical Flow measurement gate size" name="EK3_FLOW_I_GATE" documentation="This sets the percentage number of standard deviations applied to the optical flow innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Optical Flow measurement delay (msec)" name="EK3_FLOW_DELAY" documentation="This is the number of msec that the optical flow measurements lag behind the inertial measurements. It is the time from the end of the optical flow averaging period and does not include the time delay due to the 100msec of averaging within the flow sensor." user="Advanced">
        <field name="Range">0 250</field>
        <field name="Increment">10</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Rate gyro noise (rad/s)" name="EK3_GYRO_P_NSE" documentation="This control disturbance noise controls the growth of estimated error due to gyro measurement errors excluding bias. Increasing it makes the flter trust the gyro measurements less and other measurements more." user="Advanced">
        <field name="Range">0.0001 0.1</field>
        <field name="Increment">0.0001</field>
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Accelerometer noise (m/s^2)" name="EK3_ACC_P_NSE" documentation="This control disturbance noise controls the growth of estimated error due to accelerometer measurement errors excluding bias. Increasing it makes the flter trust the accelerometer measurements less and other measurements more." user="Advanced">
        <field name="Range">0.01 1.0</field>
        <field name="Increment">0.01</field>
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Rate gyro bias stability (rad/s/s)" name="EK3_GBIAS_P_NSE" documentation="This state  process noise controls growth of the gyro delta angle bias state error estimate. Increasing it makes rate gyro bias estimation faster and noisier." user="Advanced">
        <field name="Range">0.00001 0.001</field>
        <field name="Units">rad/s/s</field>
        <field name="UnitText">radians per square second</field>
      </param>
      <param humanName="Accelerometer bias stability (m/s^3)" name="EK3_ABIAS_P_NSE" documentation="This noise controls the growth of the vertical accelerometer delta velocity bias state error estimate. Increasing it makes accelerometer bias estimation faster and noisier." user="Advanced">
        <field name="Range">0.00001 0.02</field>
        <field name="Units">m/s/s/s</field>
        <field name="UnitText">meters per cubic second</field>
      </param>
      <param humanName="Wind velocity process noise (m/s^2)" name="EK3_WIND_P_NSE" documentation="This state process noise controls the growth of wind state error estimates. Increasing it makes wind estimation faster and noisier." user="Advanced">
        <field name="Range">0.01 2.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Height rate to wind process noise scaler" name="EK3_WIND_PSCALE" documentation="This controls how much the process noise on the wind states is increased when gaining or losing altitude to take into account changes in wind speed and direction with altitude. Increasing this parameter increases how rapidly the wind states adapt when changing altitude, but does make wind velocity estimation noiser." user="Advanced">
        <field name="Range">0.0 2.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="GPS preflight check" name="EK3_GPS_CHECK" documentation="This is a 1 byte bitmap controlling which GPS preflight checks are performed. Set to 0 to bypass all checks. Set to 255 perform all checks. Set to 3 to check just the number of satellites and HDoP. Set to 31 for the most rigorous checks that will still allow checks to pass when the copter is moving, eg launch from a boat." user="Advanced">
        <bitmask>
          <bit code="0">NSats</bit>
          <bit code="1">HDoP</bit>
          <bit code="2">speed error</bit>
          <bit code="3">position error</bit>
          <bit code="4">yaw error</bit>
          <bit code="5">pos drift</bit>
          <bit code="6">vert speed</bit>
          <bit code="7">horiz speed</bit>
        </bitmask>
        <field name="Bitmask">0:NSats,1:HDoP,2:speed error,3:position error,4:yaw error,5:pos drift,6:vert speed,7:horiz speed</field>
      </param>
      <param humanName="Bitmask of active IMUs" name="EK3_IMU_MASK" documentation="1 byte bitmap of IMUs to use in EKF3. A separate instance of EKF3 will be started for each IMU selected. Set to 1 to use the first IMU only (default), set to 2 to use the second IMU only, set to 3 to use the first and second IMU. Additional IMU's can be used up to a maximum of 6 if memory and processing resources permit. There may be insufficient memory and processing resources to run multiple instances. If this occurs EKF3 will fail to start." user="Advanced">
        <bitmask>
          <bit code="0">FirstIMU</bit>
          <bit code="1">SecondIMU</bit>
          <bit code="2">ThirdIMU</bit>
          <bit code="3">FourthIMU</bit>
          <bit code="4">FifthIMU</bit>
          <bit code="5">SixthIMU</bit>
        </bitmask>
        <field name="Bitmask">0:FirstIMU,1:SecondIMU,2:ThirdIMU,3:FourthIMU,4:FifthIMU,5:SixthIMU</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GPS accuracy check scaler (%)" name="EK3_CHECK_SCALE" documentation="This scales the thresholds that are used to check GPS accuracy before it is used by the EKF. A value of 100 is the default. Values greater than 100 increase and values less than 100 reduce the maximum GPS error the EKF will accept. A value of 200 will double the allowable GPS error." user="Advanced">
        <field name="Range">50 200</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Non-GPS operation position uncertainty (m)" name="EK3_NOAID_M_NSE" documentation="This sets the amount of position variation that the EKF allows for when operating without external measurements (eg GPS or optical flow). Increasing this parameter makes the EKF attitude estimate less sensitive to vehicle manoeuvres but more sensitive to IMU errors." user="Advanced">
        <field name="Range">0.5 50.0</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Bitmask controlling sidelip angle fusion" name="EK3_BETA_MASK" documentation="1 byte bitmap controlling use of sideslip angle fusion for estimation of non wind states during operation of 'fly forward' vehicle types such as fixed wing planes. By assuming that the angle of sideslip is small, the wind velocity state estimates are corrected  whenever the EKF is not dead reckoning (e.g. has an independent velocity or position sensor such as GPS). This behaviour is on by default and cannot be disabled. When the EKF is dead reckoning, the wind states are used as a reference, enabling use of the small angle of sideslip assumption to correct non wind velocity states (eg attitude, velocity, position, etc) and improve navigation accuracy. This behaviour is on by default and cannot be disabled. The behaviour controlled by this parameter is the use of the small angle of sideslip assumption to correct non wind velocity states when the EKF is NOT dead reckoning. This is primarily of benefit to reduce the buildup of yaw angle errors during straight and level flight without a yaw sensor (e.g. magnetometer or dual antenna GPS yaw) provided aerobatic flight maneuvers with large sideslip angles are not performed. The 'always' option might be used where the yaw sensor is intentionally not fitted or disabled. The 'WhenNoYawSensor' option might be used if a yaw sensor is fitted, but protection against in-flight failure and continual rejection by the EKF is desired. For vehicles operated within visual range of the operator performing frequent turning maneuvers, setting this parameter is unnecessary." user="Advanced">
        <bitmask>
          <bit code="0">Always</bit>
          <bit code="1">WhenNoYawSensor</bit>
        </bitmask>
        <field name="Bitmask">0:Always,1:WhenNoYawSensor</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Yaw measurement noise (rad)" name="EK3_YAW_M_NSE" documentation="This is the RMS value of noise in yaw measurements from the magnetometer. Increasing it reduces the weighting on these measurements." user="Advanced">
        <field name="Range">0.05 1.0</field>
        <field name="Increment">0.05</field>
        <field name="Units">rad</field>
        <field name="UnitText">radians</field>
      </param>
      <param humanName="Yaw measurement gate size" name="EK3_YAW_I_GATE" documentation="This sets the percentage number of standard deviations applied to the magnetometer yaw measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Output complementary filter time constant (centi-sec)" name="EK3_TAU_OUTPUT" documentation="Sets the time constant of the output complementary filter/predictor in centi-seconds." user="Advanced">
        <field name="Range">10 50</field>
        <field name="Increment">5</field>
        <field name="Units">cs</field>
        <field name="UnitText">centiseconds</field>
      </param>
      <param humanName="Earth magnetic field process noise (gauss/s)" name="EK3_MAGE_P_NSE" documentation="This state process noise controls the growth of earth magnetic field state error estimates. Increasing it makes earth magnetic field estimation faster and noisier." user="Advanced">
        <field name="Range">0.00001 0.01</field>
        <field name="Units">Gauss/s</field>
        <field name="UnitText">gauss per second</field>
      </param>
      <param humanName="Body magnetic field process noise (gauss/s)" name="EK3_MAGB_P_NSE" documentation="This state process noise controls the growth of body magnetic field state error estimates. Increasing it makes magnetometer bias error estimation faster and noisier." user="Advanced">
        <field name="Range">0.00001 0.01</field>
        <field name="Units">Gauss/s</field>
        <field name="UnitText">gauss per second</field>
      </param>
      <param humanName="Range finder switch height percentage" name="EK3_RNG_USE_HGT" documentation="Range finder can be used as the primary height source when below this percentage of its maximum range (see RNGFNDx_MAX) and the primary height source is Baro or GPS (see EK3_SRCx_POSZ).  This feature should not be used for terrain following as it is designed for vertical takeoff and landing with climb above the range finder use height before commencing the mission, and with horizontal position changes below that height being limited to a flat region around the takeoff and landing point." user="Advanced">
        <field name="Range">-1 70</field>
        <field name="Increment">1</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Maximum terrain gradient" name="EK3_TERR_GRAD" documentation="Specifies the maximum gradient of the terrain below the vehicle when it is using range finder as a height reference" user="Advanced">
        <field name="Range">0 0.2</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Range beacon measurement noise (m)" name="EK3_BCN_M_NSE" documentation="This is the RMS value of noise in the range beacon measurement. Increasing it reduces the weighting on this measurement." user="Advanced">
        <field name="Range">0.1 10.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Range beacon measurement gate size" name="EK3_BCN_I_GTE" documentation="This sets the percentage number of standard deviations applied to the range beacon measurement innovation consistency check. Decreasing it makes it more likely that good measurements will be rejected. Increasing it makes it more likely that bad measurements will be accepted." user="Advanced">
        <field name="Range">100 1000</field>
        <field name="Increment">25</field>
      </param>
      <param humanName="Range beacon measurement delay (msec)" name="EK3_BCN_DELAY" documentation="This is the number of msec that the range beacon measurements lag behind the inertial measurements." user="Advanced">
        <field name="Range">0 250</field>
        <field name="Increment">10</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Range finder max ground speed" name="EK3_RNG_USE_SPD" documentation="The range finder will not be used as the primary height source when the horizontal ground speed is greater than this value." user="Advanced">
        <field name="Range">2.0 6.0</field>
        <field name="Increment">0.5</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Accelerometer bias limit" name="EK3_ACC_BIAS_LIM" documentation="The accelerometer bias state will be limited to +- this value" user="Advanced">
        <field name="Range">0.5 2.5</field>
        <field name="Increment">0.1</field>
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Bitmask of active EKF cores that will always use heading fusion" name="EK3_MAG_MASK" documentation="1 byte bitmap of EKF cores that will disable magnetic field states and use simple magnetic heading fusion at all times. This parameter enables specified cores to be used as a backup for flight into an environment with high levels of external magnetic interference which may degrade the EKF attitude estimate when using 3-axis magnetometer fusion. NOTE : Use of a different magnetometer fusion algorithm on different cores makes unwanted EKF core switches due to magnetometer errors more likely." user="Advanced">
        <bitmask>
          <bit code="0">FirstEKF</bit>
          <bit code="1">SecondEKF</bit>
          <bit code="2">ThirdEKF</bit>
          <bit code="3">FourthEKF</bit>
          <bit code="4">FifthEKF</bit>
          <bit code="5">SixthEKF</bit>
        </bitmask>
        <field name="Bitmask">0:FirstEKF,1:SecondEKF,2:ThirdEKF,3:FourthEKF,4:FifthEKF,5:SixthEKF</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask control of EKF reference height correction" name="EK3_OGN_HGT_MASK" documentation="When a height sensor other than GPS is used as the primary height source by the EKF, the position of the zero height datum is defined by that sensor and its frame of reference. If a GPS height measurement is also available, then the height of the WGS-84 height datum used by the EKF can be corrected so that the height returned by the getLLH() function is compensated for primary height sensor drift and change in datum over time. The first two bit positions control when the height datum will be corrected. Correction is performed using a Bayes filter and only operates when GPS quality permits. The third bit position controls where the corrections to the GPS reference datum are applied. Corrections can be applied to the local vertical position or to the reported EKF origin height (default)." user="Advanced">
        <bitmask>
          <bit code="0">Correct when using Baro height</bit>
          <bit code="1">Correct when using range finder height</bit>
          <bit code="2">Apply corrections to local position</bit>
        </bitmask>
        <field name="Bitmask">0:Correct when using Baro height,1:Correct when using range finder height,2:Apply corrections to local position</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Visual odometry minimum velocity error" name="EK3_VIS_VERR_MIN" documentation="This is the 1-STD odometry velocity observation error that will be assumed when maximum quality is reported by the sensor. When quality is between max and min, the error will be calculated using linear interpolation between VIS_VERR_MIN and VIS_VERR_MAX." user="Advanced">
        <field name="Range">0.05 0.5</field>
        <field name="Increment">0.05</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Visual odometry maximum velocity error" name="EK3_VIS_VERR_MAX" documentation="This is the 1-STD odometry velocity observation error that will be assumed when minimum quality is reported by the sensor. When quality is between max and min, the error will be calculated using linear interpolation between VIS_VERR_MIN and VIS_VERR_MAX." user="Advanced">
        <field name="Range">0.5 5.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Wheel odometry velocity error" name="EK3_WENC_VERR" documentation="This is the 1-STD odometry velocity observation error that will be assumed when wheel encoder data is being fused." user="Advanced">
        <field name="Range">0.01 1.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Optical flow use bitmask" name="EK3_FLOW_USE" documentation="Controls if the optical flow data is fused into the 24-state navigation estimator OR the 1-state terrain height estimator." user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Navigation</value>
          <value code="2">Terrain</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Height rate filter crossover frequency" name="EK3_HRT_FILT" documentation="Specifies the crossover frequency of the complementary filter used to calculate the output predictor height rate derivative.">
        <field name="Range">0.1 30.0</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="EarthField error limit" name="EK3_MAG_EF_LIM" documentation="This limits the difference between the learned earth magnetic field and the earth field from the world magnetic model tables. A value of zero means to disable the use of the WMM tables." user="Advanced">
        <field name="Range">0 500</field>
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
      </param>
      <param humanName="Bitmask of which EKF-GSF yaw estimators run" name="EK3_GSF_RUN_MASK" documentation="1 byte bitmap of which EKF3 instances run an independent EKF-GSF yaw estimator to provide a backup yaw estimate that doesn't rely on magnetometer data. This estimator uses IMU, GPS and, if available, airspeed data. EKF-GSF yaw estimator data for the primary EKF3 instance will be logged as GSF0 and GSF1 messages. Use of the yaw estimate generated by this algorithm is controlled by the EK3_GSF_USE_MASK and EK3_GSF_RST_MAX parameters. To run the EKF-GSF yaw estimator in ride-along and logging only, set EK3_GSF_USE to 0." user="Advanced">
        <bitmask>
          <bit code="0">FirstEKF</bit>
          <bit code="1">SecondEKF</bit>
          <bit code="2">ThirdEKF</bit>
          <bit code="3">FourthEKF</bit>
          <bit code="4">FifthEKF</bit>
          <bit code="5">SixthEKF</bit>
        </bitmask>
        <field name="Bitmask">0:FirstEKF,1:SecondEKF,2:ThirdEKF,3:FourthEKF,4:FifthEKF,5:SixthEKF</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask of which EKF-GSF yaw estimators are used" name="EK3_GSF_USE_MASK" documentation="A bitmask of which EKF3 instances will use the output from the EKF-GSF yaw estimator that has been turned on by the EK3_GSF_RUN_MASK parameter. If the inertial navigation calculation stops following the GPS, then the vehicle code can request EKF3 to attempt to resolve the issue, either by performing a yaw reset if enabled by this parameter by switching to another EKF3 instance." user="Advanced">
        <bitmask>
          <bit code="0">FirstEKF</bit>
          <bit code="1">SecondEKF</bit>
          <bit code="2">ThirdEKF</bit>
          <bit code="3">FourthEKF</bit>
          <bit code="4">FifthEKF</bit>
          <bit code="5">SixthEKF</bit>
        </bitmask>
        <field name="Bitmask">0:FirstEKF,1:SecondEKF,2:ThirdEKF,3:FourthEKF,4:FifthEKF,5:SixthEKF</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Maximum number of resets to the EKF-GSF yaw estimate allowed" name="EK3_GSF_RST_MAX" documentation="Sets the maximum number of times the EKF3 will be allowed to reset its yaw to the estimate from the EKF-GSF yaw estimator. No resets will be allowed unless the use of the EKF-GSF yaw estimate is enabled via the EK3_GSF_USE_MASK parameter." user="Advanced">
        <field name="Range">1 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="EKF3 Lane Relative Error Sensitivity Threshold" name="EK3_ERR_THRESH" documentation="lanes have to be consistently better than the primary by at least this threshold to reduce their overall relativeCoreError, lowering this makes lane switching more sensitive to smaller error differences" user="Advanced">
        <field name="Range">0.05 1</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="EKF3 Sensor Affinity Options" name="EK3_AFFINITY" documentation="These options control the affinity between sensor instances and EKF cores" user="Advanced">
        <bitmask>
          <bit code="0">EnableGPSAffinity</bit>
          <bit code="1">EnableBaroAffinity</bit>
          <bit code="2">EnableCompassAffinity</bit>
          <bit code="3">EnableAirspeedAffinity</bit>
        </bitmask>
        <field name="Bitmask">0:EnableGPSAffinity,1:EnableBaroAffinity,2:EnableCompassAffinity,3:EnableAirspeedAffinity</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Ballistic coefficient for X axis drag" name="EK3_DRAG_BCOEF_X" documentation="Ratio of mass to drag coefficient measured along the X body axis. This parameter enables estimation of wind drift for vehicles with bluff bodies and without propulsion forces in the X and Y direction (eg multicopters). The drag produced by this effect scales with speed squared. Set to a positive value &gt; 1.0 to enable. A starting value is the mass in Kg divided by the frontal area. The predicted drag from the rotors is specified separately by the EK3_DRAG_MCOEF parameter." user="Advanced">
        <field name="Range">0.0 1000.0</field>
        <field name="Units">kg/m/m</field>
        <field name="UnitText">kilograms per square meter</field>
      </param>
      <param humanName="Ballistic coefficient for Y axis drag" name="EK3_DRAG_BCOEF_Y" documentation="Ratio of mass to drag coefficient measured along the Y body axis. This parameter enables estimation of wind drift for vehicles with bluff bodies and without propulsion forces in the X and Y direction (eg multicopters). The drag produced by this effect scales with speed squared. Set to a positive value &gt; 1.0 to enable. A starting value is the mass in Kg divided by the side area. The predicted drag from the rotors is specified separately by the EK3_DRAG_MCOEF parameter." user="Advanced">
        <field name="Range">50.0 1000.0</field>
        <field name="Units">kg/m/m</field>
        <field name="UnitText">kilograms per square meter</field>
      </param>
      <param humanName="Observation noise for drag acceleration" name="EK3_DRAG_M_NSE" documentation="This sets the amount of noise used when fusing X and Y acceleration as an observation that enables estimation of wind velocity for multi-rotor vehicles. This feature is enabled by the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters" user="Advanced">
        <field name="Range">0.1 2.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Momentum coefficient for propeller drag" name="EK3_DRAG_MCOEF" documentation="This parameter is used to predict the drag produced by the rotors when flying a multi-copter, enabling estimation of wind drift. The drag produced by this effect scales with speed not speed squared and is produced because some of the air velocity normal to the rotors axis of rotation is lost when passing through the rotor disc which changes the momentum of the airflow causing drag. For unducted rotors the effect is roughly proportional to the area of the propeller blades when viewed side on and changes with different propellers. It is higher for ducted rotors. For example if flying at 15 m/s at sea level conditions produces a rotor induced drag acceleration of 1.5 m/s/s, then EK3_DRAG_MCOEF would be set to 0.1 = (1.5/15.0). Set EK3_MCOEF to a positive value to enable wind estimation using this drag effect. To account for the drag produced by the body which scales with speed squared, see documentation for the EK3_DRAG_BCOEF_X and EK3_DRAG_BCOEF_Y parameters." user="Advanced">
        <field name="Range">0.0 1.0</field>
        <field name="Increment">0.01</field>
        <field name="Units">1/s</field>
        <field name="UnitText">per second</field>
      </param>
      <param humanName="On ground not moving test scale factor" name="EK3_OGNM_TEST_SF" documentation="This parameter is adjust the sensitivity of the on ground not moving test which is used to assist with learning the yaw gyro bias and stopping yaw drift before flight when operating without a yaw sensor. Bigger values allow the detection of a not moving condition with noiser IMU data. Check the XKFM data logged when the vehicle is on ground not moving and adjust the value of OGNM_TEST_SF to be slightly higher than the maximum value of the XKFM.ADR, XKFM.ALR, XKFM.GDR and XKFM.GLR test levels." user="Advanced">
        <field name="Range">1.0 10.0</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Baro height ground effect dead zone" name="EK3_GND_EFF_DZ" documentation="This parameter sets the size of the dead zone that is applied to negative baro height spikes that can occur when taking off or landing when a vehicle with lift rotors is operating in ground effect ground effect. Set to about 0.5m less than the amount of negative offset in baro height that occurs just prior to takeoff when lift motors are spooling up. Set to 0 if no ground effect is present." user="Advanced">
        <field name="Range">0.0 10.0</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Primary core number" name="EK3_PRIMARY" documentation="The core number (index in IMU mask) that will be used as the primary EKF core on startup. While disarmed the EKF will force the use of this core. A value of 0 corresponds to the first IMU in EK3_IMU_MASK." user="Advanced">
        <field name="Range">0 2</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Logging Level" name="EK3_LOG_LEVEL" documentation="Determines how verbose the EKF3 streaming logging is. A value of 0 provides full logging(default), a value of 1 only XKF4 scaled innovations are logged, a value of 2 both XKF4 and GSF are logged, and a value of 3 disables all streaming logging of EKF3." user="Advanced">
        <field name="Range">0 3</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="GPS vertical accuracy threshold" name="EK3_GPS_VACC_MAX" documentation="Vertical accuracy threshold for GPS as the altitude source. The GPS will not be used as an altitude source if the reported vertical accuracy of the GPS is larger than this threshold, falling back to baro instead. Set to zero to deactivate the threshold check." user="Advanced">
        <field name="Range">0.0 10.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Optional EKF behaviour" name="EK3_OPTIONS" documentation="EKF optional behaviour. Bit 0 (JammingExpected): Setting JammingExpected will change the EKF behaviour such that if dead reckoning navigation is possible it will require the preflight alignment GPS quality checks controlled by EK3_GPS_CHECK and EK3_CHECK_SCALE to pass before resuming GPS use if GPS lock is lost for more than 2 seconds to prevent bad position estimate. Bit 1 (Manual lane switching): DANGEROUS – If enabled, this disables automatic lane switching. If the active lane becomes unhealthy, no automatic switching will occur. Users must manually set EK3_PRIMARY to change lanes. No health checks will be performed on the selected lane. Use with extreme caution.  Bit 2 (Optflow may use terrain alt): Terrain SRTM data will be used if the vehicle climbs above the rangefinder's range allowing optical flow to be used at higher altitudes." user="Advanced">
        <bitmask>
          <bit code="0">JammingExpected</bit>
          <bit code="1">ManualLaneSwitching</bit>
          <bit code="2">Optflow may use terrain alt</bit>
        </bitmask>
        <field name="Bitmask">0:JammingExpected, 1:ManualLaneSwitching, 2:Optflow may use terrain alt</field>
      </param>
    </parameters>
    <parameters name="EK3_SRC">
      <param humanName="Position Horizontal Source (Primary)" name="EK3_SRC1_POSXY" documentation="Position Horizontal Source (Primary)" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="6">ExternalNav</value>
        </values>
      </param>
      <param humanName="Velocity Horizontal Source" name="EK3_SRC1_VELXY" documentation="Velocity Horizontal Source" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="5">OpticalFlow</value>
          <value code="6">ExternalNav</value>
          <value code="7">WheelEncoder</value>
        </values>
      </param>
      <param humanName="Position Vertical Source" name="EK3_SRC1_POSZ" documentation="Position Vertical Source" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Baro</value>
          <value code="2">RangeFinder</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="6">ExternalNav</value>
        </values>
      </param>
      <param humanName="Velocity Vertical Source" name="EK3_SRC1_VELZ" documentation="Velocity Vertical Source" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="6">ExternalNav</value>
        </values>
      </param>
      <param humanName="Yaw Source" name="EK3_SRC1_YAW" documentation="Yaw Source" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Compass</value>
          <value code="2">GPS</value>
          <value code="3">GPS with Compass Fallback</value>
          <value code="6">ExternalNav</value>
          <value code="8">GSF</value>
        </values>
      </param>
      <param humanName="Position Horizontal Source (Secondary)" name="EK3_SRC2_POSXY" documentation="Position Horizontal Source (Secondary)" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="6">ExternalNav</value>
        </values>
      </param>
      <param humanName="Velocity Horizontal Source (Secondary)" name="EK3_SRC2_VELXY" documentation="Velocity Horizontal Source (Secondary)" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="5">OpticalFlow</value>
          <value code="6">ExternalNav</value>
          <value code="7">WheelEncoder</value>
        </values>
      </param>
      <param humanName="Position Vertical Source (Secondary)" name="EK3_SRC2_POSZ" documentation="Position Vertical Source (Secondary)" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Baro</value>
          <value code="2">RangeFinder</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="6">ExternalNav</value>
        </values>
      </param>
      <param humanName="Velocity Vertical Source (Secondary)" name="EK3_SRC2_VELZ" documentation="Velocity Vertical Source (Secondary)" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="6">ExternalNav</value>
        </values>
      </param>
      <param humanName="Yaw Source (Secondary)" name="EK3_SRC2_YAW" documentation="Yaw Source (Secondary)" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Compass</value>
          <value code="2">GPS</value>
          <value code="3">GPS with Compass Fallback</value>
          <value code="6">ExternalNav</value>
          <value code="8">GSF</value>
        </values>
      </param>
      <param humanName="Position Horizontal Source (Tertiary)" name="EK3_SRC3_POSXY" documentation="Position Horizontal Source (Tertiary)" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="6">ExternalNav</value>
        </values>
      </param>
      <param humanName="Velocity Horizontal Source (Tertiary)" name="EK3_SRC3_VELXY" documentation="Velocity Horizontal Source (Tertiary)" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="5">OpticalFlow</value>
          <value code="6">ExternalNav</value>
          <value code="7">WheelEncoder</value>
        </values>
      </param>
      <param humanName="Position Vertical Source (Tertiary)" name="EK3_SRC3_POSZ" documentation="Position Vertical Source (Tertiary)" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Baro</value>
          <value code="2">RangeFinder</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="6">ExternalNav</value>
        </values>
      </param>
      <param humanName="Velocity Vertical Source (Tertiary)" name="EK3_SRC3_VELZ" documentation="Velocity Vertical Source (Tertiary)" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="3">GPS</value>
          <value code="4">Beacon</value>
          <value code="6">ExternalNav</value>
        </values>
      </param>
      <param humanName="Yaw Source (Tertiary)" name="EK3_SRC3_YAW" documentation="Yaw Source (Tertiary)" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Compass</value>
          <value code="2">GPS</value>
          <value code="3">GPS with Compass Fallback</value>
          <value code="6">ExternalNav</value>
          <value code="8">GSF</value>
        </values>
      </param>
      <param humanName="EKF Source Options" name="EK3_SRC_OPTIONS" documentation="EKF Source Options. Bit 0: Fuse all velocity sources present in EK3_SRCx_VEL_. Bit 1: Align external navigation position when using optical flow. Bit 3: Use SRC per core. By default, EKF source selection is controlled via the EK3_SRC parameters, allowing only one source to be active at a time across all cores (switchable via MAVLink, Lua, or RC). Enabling this bit maps EKF core 1 to SRC1, core 2 to SRC2, etc., allowing each core to run independently with a dedicated source." user="Advanced">
        <bitmask>
          <bit code="0">FuseAllVelocities</bit>
          <bit code="1">AlignExtNavPosWhenUsingOptFlow</bit>
          <bit code="3">UsePerCoreEKFSources</bit>
        </bitmask>
        <field name="Bitmask">0:FuseAllVelocities, 1:AlignExtNavPosWhenUsingOptFlow, 3: UsePerCoreEKFSources</field>
      </param>
    </parameters>
    <parameters name="ESC_TLM">
      <param humanName="ESC Telemetry mavlink offset" name="ESC_TLM_MAV_OFS" documentation="Offset to apply to ESC numbers when reporting as ESC_TELEMETRY packets over MAVLink. This allows high numbered motors to be displayed as low numbered ESCs for convenience on GCS displays. A value of 4 would send ESC on output 5 as ESC number 1 in ESC_TELEMETRY packets" user="Standard">
        <field name="Increment">1</field>
        <field name="Range">0 31</field>
      </param>
    </parameters>
    <parameters name="FENCE_">
      <param humanName="Fence enable/disable" name="FENCE_ENABLE" documentation="Allows you to enable (1) or disable (0) the fence functionality. Fences can still be enabled and disabled via mavlink or an RC option, but these changes are not persisted." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Fence Type" name="FENCE_TYPE" documentation="Configured fence types held as bitmask. Max altitide, Circle and Polygon fences will be immediately enabled if configured. Min altitude fence will only be enabled once the minimum altitude is reached." user="Standard">
        <bitmask>
          <bit code="0">Max altitude</bit>
          <bit code="1">Circle Centered on Home</bit>
          <bit code="2">Inclusion/Exclusion Circles+Polygons</bit>
          <bit code="3">Min altitude</bit>
        </bitmask>
        <field name="Bitmask">0:Max altitude,1:Circle Centered on Home,2:Inclusion/Exclusion Circles+Polygons,3:Min altitude</field>
      </param>
      <param humanName="Fence Action" name="FENCE_ACTION" documentation="What action should be taken when fence is breached" user="Standard">
        <values>
          <value code="0">Report Only</value>
          <value code="1">RTL</value>
          <value code="6">Guided</value>
          <value code="7">GuidedThrottlePass</value>
          <value code="8">AUTOLAND if possible else RTL</value>
        </values>
      </param>
      <param humanName="Fence Maximum Altitude" name="FENCE_ALT_MAX" documentation="Maximum altitude allowed before geofence triggers. See FENCE_ALT_MAX_TP for reference frame." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">10 1000</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Circular Fence Radius" name="FENCE_RADIUS" documentation="Circle fence radius which when breached will cause an RTL" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">30 10000</field>
      </param>
      <param humanName="Fence Margin" name="FENCE_MARGIN" documentation="Distance that autopilot's should maintain from the fence to avoid a breach" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">1 10</field>
      </param>
      <param humanName="Fence polygon point total" name="FENCE_TOTAL" documentation="Number of polygon points saved in eeprom (do not update manually)" user="Standard">
        <field name="Range">1 20</field>
      </param>
      <param humanName="Fence Minimum Altitude" name="FENCE_ALT_MIN" documentation="Minimum altitude allowed before geofence triggers. See FENCE_ALT_MIN_TP for reference frame." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-100 100</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Fence Return to Rally" name="FENCE_RET_RALLY" documentation="Should the vehicle return to fence return point or rally point" user="Standard">
        <values>
          <value code="0">Fence Return Point</value>
          <value code="1">Nearest Rally Point</value>
        </values>
        <field name="Range">0 1</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Fence Return Altitude" name="FENCE_RET_ALT" documentation="Altitude the vehicle will transit to when a fence breach occurs" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Fence Auto-Enable" name="FENCE_AUTOENABLE" documentation="Auto-enable of fences. AutoEnableOnTakeoff enables all configured fences, except the minimum altitude fence (which is enabled when the minimum altitude is reached), after autotakeoffs reach altitude. During autolandings the fences will be disabled.  AutoEnableDisableFloorOnLanding enables all configured fences, except the minimum altitude fence (which is enabled when the minimum altitude is reached), after autotakeoffs reach altitude. During autolandings only the Minimum Altitude fence will be disabled. AutoEnableOnlyWhenArmed enables all configured fences on arming, except the minimum altitude fence (which is enabled when the minimum altitude is reached), but no fences are disabled during autolandings. However, fence breaches are ignored while executing prior breach recovery actions which may include autolandings." user="Standard">
        <field name="Range">0 3</field>
        <field name="Increment">1</field>
        <values>
          <value code="0">AutoEnableOff</value>
          <value code="1">AutoEnableOnTakeoff</value>
          <value code="2">AutoEnableDisableFloorOnLanding</value>
          <value code="3">AutoEnableOnlyWhenArmed</value>
        </values>
      </param>
      <param humanName="Fence options" name="FENCE_OPTIONS" documentation="When bit 0 is set disable mode change following fence action until fence breach is cleared. When bit 1 is set the allowable flight areas is the union of all polygon and circle fence areas instead of the intersection, which means a fence breach occurs only if you are outside all of the fence areas." user="Standard">
        <bitmask>
          <bit code="0">Disable mode change following fence action until fence breach is cleared</bit>
          <bit code="1">Allow union of inclusion areas</bit>
          <bit code="2">Notify on margin breaches</bit>
        </bitmask>
        <field name="Bitmask">0:Disable mode change following fence action until fence breach is cleared, 1:Allow union of inclusion areas, 2:Notify on margin breaches</field>
      </param>
      <param humanName="Fence margin notification frequency in hz" name="FENCE_NTF_FREQ" documentation="When bit 2 of FENCE_OPTIONS is set this parameter controls the frequency of margin breach notifications. If set to 0 only new margin breaches are notified." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Fence Horizontal Margin" name="FENCE_MARGIN_XY" documentation="Distance that autopilot's should maintain from the fence in the horizontal plane to avoid a breach. If set to 0 then FENCE_MARGIN is used." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 50</field>
      </param>
      <param humanName="Altitude max frame type" name="FENCE_ALT_MAX_TP" documentation="The altitude reference frame for the maximum altitude fence. Can be AMSL, home-relative, origin relative or AGL." user="Advanced">
        <values>
          <value code="0">Above sea level</value>
          <value code="1">Above Home</value>
          <value code="2">Above Origin</value>
          <value code="3">Above Terrain</value>
        </values>
      </param>
      <param humanName="Altitude min frame type" name="FENCE_ALT_MIN_TP" documentation="The altitude reference frame for the minimum altitude fence. Can be AMSL, home-relative, origin relative or AGL." user="Advanced">
        <values>
          <value code="0">Above sea level</value>
          <value code="1">Above Home</value>
          <value code="2">Above Origin</value>
          <value code="3">Above Terrain</value>
        </values>
      </param>
    </parameters>
    <parameters name="FFT_">
      <param humanName="Enable" name="FFT_ENABLE" documentation="Enable Gyro FFT analyser" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Minimum Frequency" name="FFT_MINHZ" documentation="Lower bound of FFT frequency detection in Hz. On larger vehicles the minimum motor frequency is likely to be significantly lower than for smaller vehicles." user="Advanced">
        <field name="Range">20 400</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Maximum Frequency" name="FFT_MAXHZ" documentation="Upper bound of FFT frequency detection in Hz. On smaller vehicles the maximum motor frequency is likely to be significantly higher than for larger vehicles." user="Advanced">
        <field name="Range">20 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Sample Mode" name="FFT_SAMPLE_MODE" documentation="Sampling mode (and therefore rate). 0: Gyro rate sampling, 1: Fast loop rate sampling, 2: Fast loop rate / 2 sampling, 3: Fast loop rate / 3 sampling. Takes effect on reboot." user="Advanced">
        <field name="Range">0 4</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="FFT window size" name="FFT_WINDOW_SIZE" documentation="Size of window to be used in FFT calculations. Takes effect on reboot. Must be a power of 2 and between 32 and 512. Larger windows give greater frequency resolution but poorer time resolution, consume more CPU time and may not be appropriate for all vehicles. Time and frequency resolution are given by the sample-rate / window-size. Windows of 256 are only really recommended for F7 class boards, windows of 512 or more H7 class." user="Advanced">
        <field name="Range">32 1024</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="FFT window overlap" name="FFT_WINDOW_OLAP" documentation="Percentage of window to be overlapped before another frame is process. Takes effect on reboot. A good default is 50% overlap. Higher overlap results in more processed frames but not necessarily more temporal resolution. Lower overlap results in lost information at the frame edges." user="Advanced">
        <field name="Range">0 0.9</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="FFT learned hover frequency" name="FFT_FREQ_HOVER" documentation="The learned hover noise frequency" user="Advanced">
        <field name="Range">0 250</field>
      </param>
      <param humanName="FFT learned thrust reference" name="FFT_THR_REF" documentation="FFT learned thrust reference for the hover frequency and FFT minimum frequency." user="Advanced">
        <field name="Range">0.01 0.9</field>
      </param>
      <param humanName="FFT SNR reference threshold" name="FFT_SNR_REF" documentation="FFT SNR reference threshold in dB at which a signal is determined to be present." user="Advanced">
        <field name="Range">0.0 100.0</field>
      </param>
      <param humanName="FFT attenuation for bandwidth calculation" name="FFT_ATT_REF" documentation="FFT attenuation level in dB for bandwidth calculation and peak detection. The bandwidth is calculated by comparing peak power output with the attenuated version. The default of 15 has shown to be a good compromise in both simulations and real flight." user="Advanced">
        <field name="Range">0 100</field>
      </param>
      <param humanName="FFT learned bandwidth at hover" name="FFT_BW_HOVER" documentation="FFT learned bandwidth at hover for the attenuation frequencies." user="Advanced">
        <field name="Range">0 200</field>
      </param>
      <param humanName="FFT harmonic fit frequency threshold" name="FFT_HMNC_FIT" documentation="FFT harmonic fit frequency threshold percentage at which a signal of the appropriate frequency is determined to be the harmonic of another. Signals that have a harmonic relationship that varies at most by this percentage are considered harmonics of each other for the purpose of selecting the harmonic notch frequency. If a match is found then the lower frequency harmonic is always used as the basis for the dynamic harmonic notch. A value of zero completely disables harmonic matching." user="Advanced">
        <field name="Range">0 100</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="FFT harmonic peak target" name="FFT_HMNC_PEAK" documentation="The FFT harmonic peak target that should be returned by FTN1.PkAvg. The resulting value will be used by the harmonic notch if configured to track the FFT frequency. By default the appropriate peak is auto-detected based on the harmonic fit between peaks and the energy-weighted average frequency on roll on pitch is used. Setting this to 1 will always target the highest energy peak. Setting this to 2 will target the highest energy peak that is lower in frequency than the highest energy peak. Setting this to 3 will target the highest energy peak that is higher in frequency than the highest energy peak. Setting this to 4 will target the highest energy peak on the roll axis only and only the roll frequency will be used (some vehicles have a much more pronounced peak on roll). Setting this to 5 will target the highest energy peak on the pitch axis only and only the pitch frequency will be used (some vehicles have a much more pronounced peak on roll)." user="Advanced">
        <values>
          <value code="0">Auto</value>
          <value code="1">Center Frequency</value>
          <value code="2">Lower-Shoulder Frequency</value>
          <value code="3">Upper-Shoulder Frequency</value>
          <value code="4">Roll-Axis</value>
          <value code="5">Pitch-Axis</value>
        </values>
      </param>
      <param humanName="FFT output frames to retain and average" name="FFT_NUM_FRAMES" documentation="Number of output frequency frames to retain and average in order to calculate final frequencies. Averaging output frames can drastically reduce noise and jitter at the cost of latency as long as the input is stable. The default is to perform no averaging. For rapidly changing frequencies (e.g. smaller aircraft) fewer frames should be averaged." user="Advanced">
        <field name="Range">0 8</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="FFT options" name="FFT_OPTIONS" documentation="FFT configuration options. Values: 1:Apply the FFT *after* the filter bank,2:Check noise at the motor frequencies using ESC data as a reference" user="Advanced">
        <bitmask>
          <bit code="0">Enable post-filter FFT</bit>
          <bit code="1">Check motor noise</bit>
        </bitmask>
        <field name="Bitmask">0:Enable post-filter FFT,1:Check motor noise</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="FILT1_">
      <param humanName="Filter Type" name="FILT1_TYPE" documentation="Filter Type" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Notch Filter</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Notch Filter center frequency" name="FILT1_NOTCH_FREQ" documentation="Notch Filter center frequency in Hz." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Notch Filter quality factor" name="FILT1_NOTCH_Q" documentation="Notch Filter quality factor given by the notch centre frequency divided by its bandwidth." user="Advanced">
        <field name="Range">1 10</field>
      </param>
      <param humanName="Notch Filter attenuation" name="FILT1_NOTCH_ATT" documentation="Notch Filter attenuation in dB." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
    </parameters>
    <parameters name="FILT2_">
      <param humanName="Filter Type" name="FILT2_TYPE" documentation="Filter Type" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Notch Filter</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Notch Filter center frequency" name="FILT2_NOTCH_FREQ" documentation="Notch Filter center frequency in Hz." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Notch Filter quality factor" name="FILT2_NOTCH_Q" documentation="Notch Filter quality factor given by the notch centre frequency divided by its bandwidth." user="Advanced">
        <field name="Range">1 10</field>
      </param>
      <param humanName="Notch Filter attenuation" name="FILT2_NOTCH_ATT" documentation="Notch Filter attenuation in dB." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
    </parameters>
    <parameters name="FILT3_">
      <param humanName="Filter Type" name="FILT3_TYPE" documentation="Filter Type" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Notch Filter</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Notch Filter center frequency" name="FILT3_NOTCH_FREQ" documentation="Notch Filter center frequency in Hz." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Notch Filter quality factor" name="FILT3_NOTCH_Q" documentation="Notch Filter quality factor given by the notch centre frequency divided by its bandwidth." user="Advanced">
        <field name="Range">1 10</field>
      </param>
      <param humanName="Notch Filter attenuation" name="FILT3_NOTCH_ATT" documentation="Notch Filter attenuation in dB." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
    </parameters>
    <parameters name="FILT4_">
      <param humanName="Filter Type" name="FILT4_TYPE" documentation="Filter Type" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Notch Filter</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Notch Filter center frequency" name="FILT4_NOTCH_FREQ" documentation="Notch Filter center frequency in Hz." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Notch Filter quality factor" name="FILT4_NOTCH_Q" documentation="Notch Filter quality factor given by the notch centre frequency divided by its bandwidth." user="Advanced">
        <field name="Range">1 10</field>
      </param>
      <param humanName="Notch Filter attenuation" name="FILT4_NOTCH_ATT" documentation="Notch Filter attenuation in dB." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
    </parameters>
    <parameters name="FILT5_">
      <param humanName="Filter Type" name="FILT5_TYPE" documentation="Filter Type" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Notch Filter</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Notch Filter center frequency" name="FILT5_NOTCH_FREQ" documentation="Notch Filter center frequency in Hz." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Notch Filter quality factor" name="FILT5_NOTCH_Q" documentation="Notch Filter quality factor given by the notch centre frequency divided by its bandwidth." user="Advanced">
        <field name="Range">1 10</field>
      </param>
      <param humanName="Notch Filter attenuation" name="FILT5_NOTCH_ATT" documentation="Notch Filter attenuation in dB." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
    </parameters>
    <parameters name="FILT6_">
      <param humanName="Filter Type" name="FILT6_TYPE" documentation="Filter Type" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Notch Filter</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Notch Filter center frequency" name="FILT6_NOTCH_FREQ" documentation="Notch Filter center frequency in Hz." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Notch Filter quality factor" name="FILT6_NOTCH_Q" documentation="Notch Filter quality factor given by the notch centre frequency divided by its bandwidth." user="Advanced">
        <field name="Range">1 10</field>
      </param>
      <param humanName="Notch Filter attenuation" name="FILT6_NOTCH_ATT" documentation="Notch Filter attenuation in dB." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
    </parameters>
    <parameters name="FILT7_">
      <param humanName="Filter Type" name="FILT7_TYPE" documentation="Filter Type" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Notch Filter</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Notch Filter center frequency" name="FILT7_NOTCH_FREQ" documentation="Notch Filter center frequency in Hz." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Notch Filter quality factor" name="FILT7_NOTCH_Q" documentation="Notch Filter quality factor given by the notch centre frequency divided by its bandwidth." user="Advanced">
        <field name="Range">1 10</field>
      </param>
      <param humanName="Notch Filter attenuation" name="FILT7_NOTCH_ATT" documentation="Notch Filter attenuation in dB." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
    </parameters>
    <parameters name="FILT8_">
      <param humanName="Filter Type" name="FILT8_TYPE" documentation="Filter Type" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Notch Filter</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Notch Filter center frequency" name="FILT8_NOTCH_FREQ" documentation="Notch Filter center frequency in Hz." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Notch Filter quality factor" name="FILT8_NOTCH_Q" documentation="Notch Filter quality factor given by the notch centre frequency divided by its bandwidth." user="Advanced">
        <field name="Range">1 10</field>
      </param>
      <param humanName="Notch Filter attenuation" name="FILT8_NOTCH_ATT" documentation="Notch Filter attenuation in dB." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
    </parameters>
    <parameters name="FLOW">
      <param humanName="Optical flow sensor type" name="FLOW_TYPE" documentation="Optical flow sensor type" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="3">Bebop</value>
          <value code="4">CXOF</value>
          <value code="6">DroneCAN</value>
          <value code="5">MAVLink</value>
          <value code="7">MSP</value>
          <value code="1">PX4Flow</value>
          <value code="2">Pixart</value>
          <value code="10">SITL</value>
          <value code="8">UPFLOW</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="X axis optical flow scale factor correction" name="FLOW_FXSCALER" documentation="This sets the parts per thousand scale factor correction applied to the flow sensor X axis optical rate. It can be used to correct for variations in effective focal length. Each positive increment of 1 increases the scale factor applied to the X axis optical flow reading by 0.1%. Negative values reduce the scale factor." user="Standard">
        <field name="Range">-800 +800</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Y axis optical flow scale factor correction" name="FLOW_FYSCALER" documentation="This sets the parts per thousand scale factor correction applied to the flow sensor Y axis optical rate. It can be used to correct for variations in effective focal length. Each positive increment of 1 increases the scale factor applied to the Y axis optical flow reading by 0.1%. Negative values reduce the scale factor." user="Standard">
        <field name="Range">-800 +800</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Flow sensor yaw alignment" name="FLOW_ORIENT_YAW" documentation="Specifies the number of centi-degrees that the flow sensor is yawed relative to the vehicle. A sensor with its X-axis pointing to the right of the vehicle X axis has a positive yaw angle." user="Standard">
        <field name="Units">cdeg</field>
        <field name="UnitText">centidegrees</field>
        <field name="Range">-17999 +18000</field>
        <field name="Increment">10</field>
      </param>
      <param humanName="X position offset" name="FLOW_POS_X" documentation="X position of the optical flow sensor focal point in body frame. Positive X is forward of the origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Y position offset" name="FLOW_POS_Y" documentation="Y position of the optical flow sensor focal point in body frame. Positive Y is to the right of the origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Z position offset" name="FLOW_POS_Z" documentation="Z position of the optical flow sensor focal point in body frame. Positive Z is down from the origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Address on the bus" name="FLOW_ADDR" documentation="This is used to select between multiple possible I2C addresses for some sensor types. For PX4Flow you can choose 0 to 7 for the 8 possible addresses on the I2C bus." user="Advanced">
        <field name="Range">0 127</field>
      </param>
      <param humanName="Optical flow options" name="FLOW_OPTIONS" documentation="Optical flow options. Bit 0 should be set if the sensor is stabilised (e.g. mounted on a gimbal)" user="Standard">
        <bitmask>
          <bit code="0">Roll/Pitch stabilised</bit>
        </bitmask>
        <field name="Bitmask">0:Roll/Pitch stabilised</field>
      </param>
    </parameters>
    <parameters name="FOLL">
      <param humanName="Follow enable/disable" name="FOLL_ENABLE" documentation="Enabled/disable following a target" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Follow target's mavlink system id" name="FOLL_SYSID" documentation="Follow target's mavlink system id" user="Standard">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Follow distance maximum" name="FOLL_DIST_MAX" documentation="Follow distance maximum. If exceeded, the follow estimate will be considered invalid. If zero there is no maximum." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 1000</field>
      </param>
      <param humanName="Follow offset type" name="FOLL_OFS_TYPE" documentation="Follow offset type" user="Standard">
        <values>
          <value code="0">North-East-Down</value>
          <value code="1">Relative to lead vehicle heading</value>
        </values>
      </param>
      <param humanName="Follow offsets in meters north/forward" name="FOLL_OFS_X" documentation="Follow offsets in meters north/forward. If positive, this vehicle fly ahead or north of lead vehicle.  Depends on FOLL_OFS_TYPE" user="Standard">
        <field name="Range">-100 100</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Follow offsets in meters east/right" name="FOLL_OFS_Y" documentation="Follow offsets in meters east/right. If positive, this vehicle will fly to the right or east of lead vehicle.  Depends on FOLL_OFS_TYPE" user="Standard">
        <field name="Range">-100 100</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Follow offsets in meters down" name="FOLL_OFS_Z" documentation="Follow offsets in meters down. If positive, this vehicle will fly below the lead vehicle" user="Standard">
        <field name="Range">-100 100</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Follow yaw behaviour" name="FOLL_YAW_BEHAVE" documentation="Follow yaw behaviour" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">Face Lead Vehicle</value>
          <value code="2">Same as Lead vehicle</value>
          <value code="3">Direction of Flight</value>
        </values>
      </param>
      <param humanName="Follow position error P gain" name="FOLL_POS_P" documentation="Follow position error P gain. Converts the difference between desired vertical speed and actual speed into a desired acceleration that is passed to the throttle acceleration controller" user="Standard">
        <field name="Range">0.01 1.00</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Follow altitude type" name="FOLL_ALT_TYPE" documentation="Follow altitude type" user="Standard">
        <values>
          <value code="0">absolute</value>
          <value code="1">relative</value>
          <value code="3">terrain</value>
        </values>
      </param>
      <param humanName="Follow options" name="FOLL_OPTIONS" documentation="Follow options bitmask" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">Mount Follows lead vehicle on mode enter</value>
        </values>
      </param>
      <param humanName="Acceleration limit for the horizontal kinematic input shaping" name="FOLL_ACCEL_NE" documentation="Acceleration limit of the horizontal kinematic path generation used to determine how quickly the estimate varies in velocity" user="Advanced">
        <field name="Range">0 5</field>
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Jerk limit for the horizontal kinematic input shaping" name="FOLL_JERK_NE" documentation="Jerk limit of the horizontal kinematic path generation used to determine how quickly the estimate varies in acceleration" user="Advanced">
        <field name="Range">0 20</field>
        <field name="Units">m/s/s/s</field>
        <field name="UnitText">meters per cubic second</field>
      </param>
      <param humanName="Acceleration limit for the vertical kinematic input shaping" name="FOLL_ACCEL_D" documentation="Acceleration limit of the vertical kinematic path generation used to determine how quickly the estimate varies in velocity" user="Advanced">
        <field name="Range">0 2.5</field>
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Jerk limit for the vertical kinematic input shaping" name="FOLL_JERK_D" documentation="Jerk limit of the vertical kinematic path generation used to determine how quickly the estimate varies in acceleration" user="Advanced">
        <field name="Range">0 5</field>
        <field name="Units">m/s/s/s</field>
        <field name="UnitText">meters per cubic second</field>
      </param>
      <param humanName="Angular acceleration limit for the heading kinematic input shaping" name="FOLL_ACCEL_H" documentation="Angular acceleration limit of the heading kinematic path generation used to determine how quickly the estimate varies in angular velocity" user="Advanced">
        <field name="Range">0 90</field>
        <field name="Units">deg/s/s</field>
        <field name="UnitText">degrees per square second</field>
      </param>
      <param humanName="Angular jerk limit for the heading kinematic input shaping" name="FOLL_JERK_H" documentation="Angular jerk limit of the heading kinematic path generation used to determine how quickly the estimate varies in angular acceleration" user="Advanced">
        <field name="Range">0 360</field>
        <field name="Units">deg/s/s/s</field>
        <field name="UnitText">degrees per cube second</field>
      </param>
      <param humanName="Follow timeout" name="FOLL_TIMEOUT" documentation="Follow position update from lead - timeout after x seconds" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
    </parameters>
    <parameters name="FRSKY_">
      <param humanName="Uplink sensor id" name="FRSKY_UPLINK_ID" documentation="Change the uplink sensor id (SPort only)" user="Advanced">
        <values>
          <value code="-1">Disable</value>
          <value code="7">7</value>
          <value code="8">8</value>
          <value code="9">9</value>
          <value code="10">10</value>
          <value code="11">11</value>
          <value code="12">12</value>
          <value code="13">13</value>
          <value code="14">14</value>
          <value code="15">15</value>
          <value code="16">16</value>
          <value code="17">17</value>
          <value code="18">18</value>
          <value code="19">19</value>
          <value code="20">20</value>
          <value code="21">21</value>
          <value code="22">22</value>
          <value code="23">23</value>
          <value code="24">24</value>
          <value code="25">25</value>
          <value code="26">26</value>
        </values>
      </param>
      <param humanName="First downlink sensor id" name="FRSKY_DNLINK1_ID" documentation="Change the first extra downlink sensor id (SPort only)" user="Advanced">
        <values>
          <value code="-1">Disable</value>
          <value code="7">7</value>
          <value code="8">8</value>
          <value code="9">9</value>
          <value code="10">10</value>
          <value code="11">11</value>
          <value code="12">12</value>
          <value code="13">13</value>
          <value code="14">14</value>
          <value code="15">15</value>
          <value code="16">16</value>
          <value code="17">17</value>
          <value code="18">18</value>
          <value code="19">19</value>
          <value code="20">20</value>
          <value code="21">21</value>
          <value code="22">22</value>
          <value code="23">23</value>
          <value code="24">24</value>
          <value code="25">25</value>
          <value code="26">26</value>
        </values>
      </param>
      <param humanName="Second downlink sensor id" name="FRSKY_DNLINK2_ID" documentation="Change the second extra downlink sensor id (SPort only)" user="Advanced">
        <values>
          <value code="-1">Disable</value>
          <value code="7">7</value>
          <value code="8">8</value>
          <value code="9">9</value>
          <value code="10">10</value>
          <value code="11">11</value>
          <value code="12">12</value>
          <value code="13">13</value>
          <value code="14">14</value>
          <value code="15">15</value>
          <value code="16">16</value>
          <value code="17">17</value>
          <value code="18">18</value>
          <value code="19">19</value>
          <value code="20">20</value>
          <value code="21">21</value>
          <value code="22">22</value>
          <value code="23">23</value>
          <value code="24">24</value>
          <value code="25">25</value>
          <value code="26">26</value>
        </values>
      </param>
      <param humanName="Default downlink sensor id" name="FRSKY_DNLINK_ID" documentation="Change the default downlink sensor id (SPort only)" user="Advanced">
        <values>
          <value code="-1">Disable</value>
          <value code="7">7</value>
          <value code="8">8</value>
          <value code="9">9</value>
          <value code="10">10</value>
          <value code="11">11</value>
          <value code="12">12</value>
          <value code="13">13</value>
          <value code="14">14</value>
          <value code="15">15</value>
          <value code="16">16</value>
          <value code="17">17</value>
          <value code="18">18</value>
          <value code="19">19</value>
          <value code="20">20</value>
          <value code="21">21</value>
          <value code="22">22</value>
          <value code="23">23</value>
          <value code="24">24</value>
          <value code="25">25</value>
          <value code="26">26</value>
          <value code="27">27</value>
        </values>
      </param>
      <param humanName="FRSky Telemetry Options" name="FRSKY_OPTIONS" documentation="A bitmask to set some FRSky Telemetry specific options" user="Standard">
        <bitmask>
          <bit code="0">EnableAirspeedAndGroundspeed</bit>
        </bitmask>
        <field name="Bitmask">0:EnableAirspeedAndGroundspeed</field>
      </param>
    </parameters>
    <parameters name="GEN_">
      <param humanName="Generator type" name="GEN_TYPE" documentation="Generator type" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">IE 650w 800w Fuel Cell</value>
          <value code="2">IE 2.4kW Fuel Cell</value>
          <value code="3">Richenpower</value>
          <value code="4">Loweheiser</value>
          <value code="5">CORTEX</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Generator Options" name="GEN_OPTIONS" documentation="Bitmask of options for generators" user="Standard">
        <bitmask>
          <bit code="0">Suppress Maintenance-Required Warnings</bit>
        </bitmask>
        <field name="Bitmask">0:Suppress Maintenance-Required Warnings</field>
      </param>
    </parameters>
    <parameters name="GEN_L_">
      <param humanName="Seconds until maintenance required" name="GEN_L_MNT_TIME" documentation="Seconds until maintenance required" user="Advanced">
</param>
      <param humanName="Total runtime" name="GEN_L_RUNTIME" documentation="Total time this generator has run in seconds" user="Advanced">
</param>
      <param humanName="High Idle throttle" name="GEN_L_IDLE_TH_H" documentation="throttle value to use when warming up or cooling down" user="Advanced">
</param>
      <param humanName="Idle throttle" name="GEN_L_IDLE_TH" documentation="throttle value to use when idling" user="Advanced">
</param>
      <param humanName="Run Temperature" name="GEN_L_RUN_TEMP" documentation="temperature required for generator to start producing power in deg celsius" user="Advanced">
</param>
      <param humanName="Idle Temperature" name="GEN_L_IDLE_TEMP" documentation="temperature required for generator to return to idle after having run" user="Advanced">
</param>
      <param humanName="Cylinder Head Over Temperature Warning Level" name="GEN_L_OVER_TEMP" documentation="threshold temperature for the cylinder head above which the mavlink over temperature message gets sent" user="Advanced">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
    </parameters>
    <parameters name="GPS">
      <param humanName="Navigation filter setting" name="GPS_NAVFILTER" documentation="Navigation filter engine setting" user="Advanced">
        <values>
          <value code="0">Portable</value>
          <value code="2">Stationary</value>
          <value code="3">Pedestrian</value>
          <value code="4">Automotive</value>
          <value code="5">Sea</value>
          <value code="6">Airborne1G</value>
          <value code="7">Airborne2G</value>
          <value code="8">Airborne4G</value>
        </values>
      </param>
      <param humanName="Automatic Switchover Setting" name="GPS_AUTO_SWITCH" documentation="Automatic switchover to GPS reporting best lock, 1:UseBest selects the GPS with highest status, if both are equal the GPS with highest satellite count is used 4:Use primary if 3D fix or better, will revert to 'UseBest' behaviour if 3D fix is lost on primary" user="Advanced">
        <values>
          <value code="0">Use primary</value>
          <value code="1">UseBest</value>
          <value code="2">Blend</value>
          <value code="4">Use primary if 3D fix or better</value>
        </values>
      </param>
      <param humanName="SBAS Mode" name="GPS_SBAS_MODE" documentation="This sets the SBAS (satellite based augmentation system) mode if available on this GPS. If set to 2 then the SBAS mode is not changed in the GPS. Otherwise the GPS will be reconfigured to enable/disable SBAS. Disabling SBAS may be worthwhile in some parts of the world where an SBAS signal is available but the baseline is too long to be useful." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Minimum elevation" name="GPS_MIN_ELEV" documentation="This sets the minimum elevation of satellites above the horizon for them to be used for navigation. Setting this to -100 leaves the minimum elevation set to the GPS modules default." user="Advanced">
        <field name="Range">-100 90</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Destination for GPS_INJECT_DATA MAVLink packets" name="GPS_INJECT_TO" documentation="The GGS can send raw serial packets to inject data to multiple GPSes." user="Advanced">
        <values>
          <value code="0">send to first GPS</value>
          <value code="1">send to 2nd GPS</value>
          <value code="127">send to all</value>
        </values>
      </param>
      <param humanName="Swift Binary Protocol Logging Mask" name="GPS_SBP_LOGMASK" documentation="Masked with the SBP msg_type field to determine whether SBR1/SBR2 data is logged" user="Advanced">
        <values>
          <value code="0">None (0x0000)</value>
          <value code="-1">All (0xFFFF)</value>
          <value code="-256">External only (0xFF00)</value>
        </values>
      </param>
      <param humanName="Raw data logging" name="GPS_RAW_DATA" documentation="Handles logging raw data; on uBlox chips that support raw data this will log RXM messages into logger; on Septentrio this will log on the equipment's SD card and when set to 2, the autopilot will try to stop logging after disarming and restart after arming" user="Advanced">
        <values>
          <value code="0">Ignore</value>
          <value code="1">Always log</value>
          <value code="2">Stop logging when disarmed (SBF only)</value>
          <value code="5">Only log every five samples (uBlox only)</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Save GPS configuration" name="GPS_SAVE_CFG" documentation="Determines whether the configuration for this GPS should be written to non-volatile memory on the GPS. Currently working for UBlox 6 series and above." user="Advanced">
        <values>
          <value code="0">Do not save config</value>
          <value code="1">Save config</value>
          <value code="2">Save only when needed</value>
        </values>
      </param>
      <param humanName="Automatic GPS configuration" name="GPS_AUTO_CONFIG" documentation="Controls if the autopilot should automatically configure the GPS based on the parameters and default settings" user="Advanced">
        <values>
          <value code="0">Disables automatic configuration</value>
          <value code="1">Enable automatic configuration for Serial GPSes only</value>
          <value code="2">Enable automatic configuration for DroneCAN as well</value>
          <value code="3">Clear all configurations not set by ardupilot (UBlox only)</value>
        </values>
      </param>
      <param humanName="Multi GPS Blending Mask" name="GPS_BLEND_MASK" documentation="Determines which of the accuracy measures Horizontal position, Vertical Position and Speed are used to calculate the weighting on each GPS receiver when soft switching has been selected by setting GPS_AUTO_SWITCH to 2(Blend)" user="Advanced">
        <bitmask>
          <bit code="0">Horiz Pos</bit>
          <bit code="1">Vert Pos</bit>
          <bit code="2">Speed</bit>
        </bitmask>
        <field name="Bitmask">0:Horiz Pos,1:Vert Pos,2:Speed</field>
      </param>
      <param humanName="driver options" name="GPS_DRV_OPTIONS" documentation="Additional backend specific options" user="Advanced">
        <bitmask>
          <bit code="0">Use UART2 for moving baseline on ublox</bit>
          <bit code="1">Use base station for GPS yaw on SBF</bit>
          <bit code="2">Use baudrate 115200 on ublox</bit>
          <bit code="3">Use dedicated CAN port b/w GPSes for moving baseline</bit>
          <bit code="4">Use ellipsoid height instead of AMSL</bit>
          <bit code="5">Override GPS satellite health of L5 band from L1 health</bit>
          <bit code="6">Enable RTCM full parse even for a single channel</bit>
          <bit code="7">Disable automatic full RTCM parsing when RTCM seen on more than one channel</bit>
          <bit code="8">Force UBlox Config Get/Set for configuration then automatic configuration for Serial GPSes only</bit>
        </bitmask>
        <field name="Bitmask">0:Use UART2 for moving baseline on ublox,1:Use base station for GPS yaw on SBF,2:Use baudrate 115200 on ublox,3:Use dedicated CAN port b/w GPSes for moving baseline,4:Use ellipsoid height instead of AMSL, 5:Override GPS satellite health of L5 band from L1 health, 6:Enable RTCM full parse even for a single channel, 7:Disable automatic full RTCM parsing when RTCM seen on more than one channel, 8:Force UBlox Config Get/Set for configuration then automatic configuration for Serial GPSes only</field>
      </param>
      <param humanName="Primary GPS" name="GPS_PRIMARY" documentation="This GPS will be used when GPS_AUTO_SWITCH is 0 and used preferentially with GPS_AUTO_SWITCH = 4." user="Advanced">
        <field name="Increment">1</field>
        <values>
          <value code="0">FirstGPS</value>
          <value code="1">SecondGPS</value>
        </values>
      </param>
      <param humanName="1st GPS type" name="GPS_TYPE" documentation="GPS type of 1st GPS.Renamed in 4.6 and later to GPS1_TYPE" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">AUTO</value>
          <value code="2">uBlox</value>
          <value code="5">NMEA</value>
          <value code="6">SiRF</value>
          <value code="7">HIL</value>
          <value code="8">SwiftNav</value>
          <value code="9">DroneCAN</value>
          <value code="10">SBF</value>
          <value code="11">GSOF</value>
          <value code="13">ERB</value>
          <value code="14">MAV</value>
          <value code="15">NOVA</value>
          <value code="16">HemisphereNMEA</value>
          <value code="17">uBlox-MovingBaseline-Base</value>
          <value code="18">uBlox-MovingBaseline-Rover</value>
          <value code="19">MSP</value>
          <value code="20">AllyStar</value>
          <value code="21">ExternalAHRS</value>
          <value code="22">DroneCAN-MovingBaseline-Base</value>
          <value code="23">DroneCAN-MovingBaseline-Rover</value>
          <value code="24">UnicoreNMEA</value>
          <value code="25">UnicoreMovingBaselineNMEA</value>
          <value code="26">SBF-DualAntenna</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="2nd GPS type.Renamed in 4.6 to GPS2_TYPE" name="GPS_TYPE2" documentation="GPS type of 2nd GPS" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">None</value>
          <value code="1">AUTO</value>
          <value code="2">uBlox</value>
          <value code="5">NMEA</value>
          <value code="6">SiRF</value>
          <value code="7">HIL</value>
          <value code="8">SwiftNav</value>
          <value code="9">DroneCAN</value>
          <value code="10">SBF</value>
          <value code="11">GSOF</value>
          <value code="13">ERB</value>
          <value code="14">MAV</value>
          <value code="15">NOVA</value>
          <value code="16">HemisphereNMEA</value>
          <value code="17">uBlox-MovingBaseline-Base</value>
          <value code="18">uBlox-MovingBaseline-Rover</value>
          <value code="19">MSP</value>
          <value code="20">AllyStar</value>
          <value code="21">ExternalAHRS</value>
          <value code="22">DroneCAN-MovingBaseline-Base</value>
          <value code="23">DroneCAN-MovingBaseline-Rover</value>
          <value code="24">UnicoreNMEA</value>
          <value code="25">UnicoreMovingBaselineNMEA</value>
          <value code="26">SBF-DualAntenna</value>
        </values>
      </param>
      <param humanName="GNSS system configuration" name="GPS_GNSS_MODE" documentation="Bitmask for what GNSS system to use on the first GPS (all unchecked or zero to leave GPS as configured).Renamed in 4.6 and later to GPS1_GNSS_MODE." user="Advanced">
        <bitmask>
          <bit code="0">GPS</bit>
          <bit code="1">SBAS</bit>
          <bit code="2">Galileo</bit>
          <bit code="3">Beidou</bit>
          <bit code="4">IMES</bit>
          <bit code="5">QZSS</bit>
          <bit code="6">GLONASS</bit>
        </bitmask>
        <field name="Bitmask">0:GPS,1:SBAS,2:Galileo,3:Beidou,4:IMES,5:QZSS,6:GLONASS</field>
      </param>
      <param humanName="GNSS system configuration." name="GPS_GNSS_MODE2" documentation="Bitmask for what GNSS system to use on the second GPS (all unchecked or zero to leave GPS as configured). Renamed in 4.6 and later to GPS2_GNSS_MODE" user="Advanced">
        <bitmask>
          <bit code="0">GPS</bit>
          <bit code="1">SBAS</bit>
          <bit code="2">Galileo</bit>
          <bit code="3">Beidou</bit>
          <bit code="4">IMES</bit>
          <bit code="5">QZSS</bit>
          <bit code="6">GLONASS</bit>
        </bitmask>
        <field name="Bitmask">0:GPS,1:SBAS,2:Galileo,3:Beidou,4:IMES,5:QZSS,6:GLONASS</field>
      </param>
      <param humanName="GPS update rate in milliseconds" name="GPS_RATE_MS" documentation="Controls how often the GPS should provide a position update. Lowering below 5Hz(default) is not allowed. Raising the rate above 5Hz usually provides little benefit and for some GPS (eg Ublox M9N) can severely impact performance.Renamed in 4.6 and later to GPS1_RATE_MS" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <values>
          <value code="100">10Hz</value>
          <value code="125">8Hz</value>
          <value code="200">5Hz</value>
        </values>
        <field name="Range">50 200</field>
      </param>
      <param humanName="GPS 2 update rate in milliseconds" name="GPS_RATE_MS2" documentation="Controls how often the GPS should provide a position update. Lowering below 5Hz(default) is not allowed. Raising the rate above 5Hz usually provides little benefit and for some GPS (eg Ublox M9N) can severely impact performance.Renamed in 4.6 and later to GPS2_RATE_MS" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <values>
          <value code="100">10Hz</value>
          <value code="125">8Hz</value>
          <value code="200">5Hz</value>
        </values>
        <field name="Range">50 200</field>
      </param>
      <param humanName="Antenna X position offset" name="GPS_POS1_X" documentation="X position of the first GPS antenna in body frame. Positive X is forward of the origin. Use antenna phase centroid location if provided by the manufacturer.Renamed in 4.6 and later to GPS1_POS_X." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Antenna Y position offset" name="GPS_POS1_Y" documentation="Y position of the first GPS antenna in body frame. Positive Y is to the right of the origin. Use antenna phase centroid location if provided by the manufacturer.Renamed in 4.6 and later to GPS1_POS_Y." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Antenna Z position offset" name="GPS_POS1_Z" documentation="Z position of the first GPS antenna in body frame. Positive Z is down from the origin. Use antenna phase centroid location if provided by the manufacturer.Renamed in 4.6 and later to GPS1_POS_Z." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Antenna X position offset" name="GPS_POS2_X" documentation="X position of the second GPS antenna in body frame. Positive X is forward of the origin. Use antenna phase centroid location if provided by the manufacturer.Renamed in 4.6 and later to GPS2_POS_X." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Antenna Y position offset" name="GPS_POS2_Y" documentation="Y position of the second GPS antenna in body frame. Positive Y is to the right of the origin. Use antenna phase centroid location if provided by the manufacturer.Renamed in 4.6 and later to GPS2_POS_Y." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Antenna Z position offset" name="GPS_POS2_Z" documentation="Z position of the second GPS antenna in body frame. Positive Z is down from the origin. Use antenna phase centroid location if provided by the manufacturer.Renamed in 4.6 and later to GPS2_POS_Z." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="GPS delay in milliseconds" name="GPS_DELAY_MS" documentation="Controls the amount of GPS  measurement delay that the autopilot compensates for. Set to zero to use the default delay for the detected GPS type.Renamed in 4.6 and later to GPS1_DELAY_MS." user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="Range">0 250</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GPS 2 delay in milliseconds" name="GPS_DELAY_MS2" documentation="Controls the amount of GPS  measurement delay that the autopilot compensates for. Set to zero to use the default delay for the detected GPS type.Renamed in 4.6 and later to GPS2_DELAY_MS." user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="Range">0 250</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GPS physical COM port" name="GPS_COM_PORT" documentation="The physical COM port on the connected device, currently only applies to SBF and GSOF GPS,Renamed in 4.6 and later to GPS1_COM_PORT." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <values>
          <value code="0">COM1(RS232) on GSOF</value>
          <value code="1">COM2(TTL) on GSOF</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GPS physical COM port" name="GPS_COM_PORT2" documentation="The physical COM port on the connected device, currently only applies to SBF and GSOF GPS.Renamed in 4.6 and later to GPS1_COM_PORT." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GPS Node ID 1" name="GPS_CAN_NODEID1" documentation="GPS Node id for first-discovered GPS.Renamed in 4.6 and later to GPS1_CAN_NODEID." user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="GPS Node ID 2" name="GPS_CAN_NODEID2" documentation="GPS Node id for second-discovered GPS.Renamed in 4.6 and later to GPS2_CAN_NODEID." user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
    </parameters>
    <parameters name="GPS1_">
      <param humanName="GPS type" name="GPS1_TYPE" documentation="GPS type" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">AUTO</value>
          <value code="2">uBlox</value>
          <value code="5">NMEA</value>
          <value code="6">SiRF</value>
          <value code="7">HIL</value>
          <value code="8">SwiftNav</value>
          <value code="9">DroneCAN</value>
          <value code="10">Septentrio(SBF)</value>
          <value code="11">Trimble(GSOF)</value>
          <value code="13">ERB</value>
          <value code="14">MAVLink</value>
          <value code="15">NOVA</value>
          <value code="16">HemisphereNMEA</value>
          <value code="17">uBlox-MovingBaseline-Base</value>
          <value code="18">uBlox-MovingBaseline-Rover</value>
          <value code="19">MSP</value>
          <value code="20">AllyStar</value>
          <value code="21">ExternalAHRS</value>
          <value code="22">DroneCAN-MovingBaseline-Base</value>
          <value code="23">DroneCAN-MovingBaseline-Rover</value>
          <value code="24">UnicoreNMEA</value>
          <value code="25">UnicoreMovingBaselineNMEA</value>
          <value code="26">Septentrio-DualAntenna(SBF)</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GNSS system configuration" name="GPS1_GNSS_MODE" documentation="Bitmask for what GNSS system to use (all unchecked or zero to leave GPS as configured)" user="Advanced">
        <bitmask>
          <bit code="0">GPS</bit>
          <bit code="1">SBAS</bit>
          <bit code="2">Galileo</bit>
          <bit code="3">Beidou</bit>
          <bit code="4">IMES</bit>
          <bit code="5">QZSS</bit>
          <bit code="6">GLONASS</bit>
          <bit code="7">NAVIC</bit>
        </bitmask>
        <field name="Bitmask">0:GPS,1:SBAS,2:Galileo,3:Beidou,4:IMES,5:QZSS,6:GLONASS,7:NAVIC</field>
      </param>
      <param humanName="GPS update rate in milliseconds" name="GPS1_RATE_MS" documentation="Controls how often the GPS should provide a position update. Lowering below 5Hz(default) is not allowed. Raising the rate above 5Hz usually provides little benefit and for some GPS (eg Ublox M9N) can severely impact performance." user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <values>
          <value code="100">10Hz</value>
          <value code="125">8Hz</value>
          <value code="200">5Hz</value>
        </values>
        <field name="Range">50 200</field>
      </param>
      <param humanName="Antenna X position offset" name="GPS1_POS_X" documentation="X position of the first GPS antenna in body frame. Positive X is forward of the origin. Use antenna phase centroid location if provided by the manufacturer." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Antenna Y position offset" name="GPS1_POS_Y" documentation="Y position of the first GPS antenna in body frame. Positive Y is to the right of the origin. Use antenna phase centroid location if provided by the manufacturer." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Antenna Z position offset" name="GPS1_POS_Z" documentation="Z position of the first GPS antenna in body frame. Positive Z is down from the origin. Use antenna phase centroid location if provided by the manufacturer." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="GPS delay in milliseconds" name="GPS1_DELAY_MS" documentation="Controls the amount of GPS  measurement delay that the autopilot compensates for. Set to zero to use the default delay for the detected GPS type." user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="Range">0 250</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GPS physical COM port" name="GPS1_COM_PORT" documentation="The physical COM port on the connected device, currently only applies to SBF and GSOF GPS" user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <values>
          <value code="0">COM1(RS232) on GSOF</value>
          <value code="1">COM2(TTL) on GSOF</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Detected CAN Node ID for GPS" name="GPS1_CAN_NODEID" documentation="GPS Node id for GPS.  Detected node unless CAN_OVRIDE is set" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="DroneCAN GPS NODE ID" name="GPS1_CAN_OVRIDE" documentation="GPS Node id for GPS. If 0 the gps will be automatically selected on a first-come-first-GPS basis." user="Advanced">
</param>
    </parameters>
    <parameters name="GPS1_MB_">
      <param humanName="Moving base type" name="GPS1_MB_TYPE" documentation="Controls the type of moving base used if using moving base.This is renamed in 4.6 and later to GPSx_MB_TYPE." user="Advanced">
        <values>
          <value code="0">Relative to alternate GPS instance</value>
          <value code="1">RelativeToCustomBase</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Base antenna X position offset" name="GPS1_MB_OFS_X" documentation="X position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive X is forward of the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_X." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Base antenna Y position offset" name="GPS1_MB_OFS_Y" documentation="Y position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive Y is to the right of the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_Y." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Base antenna Z position offset" name="GPS1_MB_OFS_Z" documentation="Z position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive Z is down from the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_Z." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
    </parameters>
    <parameters name="GPS2_">
      <param humanName="GPS type" name="GPS2_TYPE" documentation="GPS type" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">AUTO</value>
          <value code="2">uBlox</value>
          <value code="5">NMEA</value>
          <value code="6">SiRF</value>
          <value code="7">HIL</value>
          <value code="8">SwiftNav</value>
          <value code="9">DroneCAN</value>
          <value code="10">Septentrio(SBF)</value>
          <value code="11">Trimble(GSOF)</value>
          <value code="13">ERB</value>
          <value code="14">MAVLink</value>
          <value code="15">NOVA</value>
          <value code="16">HemisphereNMEA</value>
          <value code="17">uBlox-MovingBaseline-Base</value>
          <value code="18">uBlox-MovingBaseline-Rover</value>
          <value code="19">MSP</value>
          <value code="20">AllyStar</value>
          <value code="21">ExternalAHRS</value>
          <value code="22">DroneCAN-MovingBaseline-Base</value>
          <value code="23">DroneCAN-MovingBaseline-Rover</value>
          <value code="24">UnicoreNMEA</value>
          <value code="25">UnicoreMovingBaselineNMEA</value>
          <value code="26">Septentrio-DualAntenna(SBF)</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GNSS system configuration" name="GPS2_GNSS_MODE" documentation="Bitmask for what GNSS system to use (all unchecked or zero to leave GPS as configured)" user="Advanced">
        <bitmask>
          <bit code="0">GPS</bit>
          <bit code="1">SBAS</bit>
          <bit code="2">Galileo</bit>
          <bit code="3">Beidou</bit>
          <bit code="4">IMES</bit>
          <bit code="5">QZSS</bit>
          <bit code="6">GLONASS</bit>
          <bit code="7">NAVIC</bit>
        </bitmask>
        <field name="Bitmask">0:GPS,1:SBAS,2:Galileo,3:Beidou,4:IMES,5:QZSS,6:GLONASS,7:NAVIC</field>
      </param>
      <param humanName="GPS update rate in milliseconds" name="GPS2_RATE_MS" documentation="Controls how often the GPS should provide a position update. Lowering below 5Hz(default) is not allowed. Raising the rate above 5Hz usually provides little benefit and for some GPS (eg Ublox M9N) can severely impact performance." user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <values>
          <value code="100">10Hz</value>
          <value code="125">8Hz</value>
          <value code="200">5Hz</value>
        </values>
        <field name="Range">50 200</field>
      </param>
      <param humanName="Antenna X position offset" name="GPS2_POS_X" documentation="X position of the first GPS antenna in body frame. Positive X is forward of the origin. Use antenna phase centroid location if provided by the manufacturer." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Antenna Y position offset" name="GPS2_POS_Y" documentation="Y position of the first GPS antenna in body frame. Positive Y is to the right of the origin. Use antenna phase centroid location if provided by the manufacturer." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Antenna Z position offset" name="GPS2_POS_Z" documentation="Z position of the first GPS antenna in body frame. Positive Z is down from the origin. Use antenna phase centroid location if provided by the manufacturer." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="GPS delay in milliseconds" name="GPS2_DELAY_MS" documentation="Controls the amount of GPS  measurement delay that the autopilot compensates for. Set to zero to use the default delay for the detected GPS type." user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="Range">0 250</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="GPS physical COM port" name="GPS2_COM_PORT" documentation="The physical COM port on the connected device, currently only applies to SBF and GSOF GPS" user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <values>
          <value code="0">COM1(RS232) on GSOF</value>
          <value code="1">COM2(TTL) on GSOF</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Detected CAN Node ID for GPS" name="GPS2_CAN_NODEID" documentation="GPS Node id for GPS.  Detected node unless CAN_OVRIDE is set" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="DroneCAN GPS NODE ID" name="GPS2_CAN_OVRIDE" documentation="GPS Node id for GPS. If 0 the gps will be automatically selected on a first-come-first-GPS basis." user="Advanced">
</param>
    </parameters>
    <parameters name="GPS2_MB_">
      <param humanName="Moving base type" name="GPS2_MB_TYPE" documentation="Controls the type of moving base used if using moving base.This is renamed in 4.6 and later to GPSx_MB_TYPE." user="Advanced">
        <values>
          <value code="0">Relative to alternate GPS instance</value>
          <value code="1">RelativeToCustomBase</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Base antenna X position offset" name="GPS2_MB_OFS_X" documentation="X position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive X is forward of the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_X." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Base antenna Y position offset" name="GPS2_MB_OFS_Y" documentation="Y position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive Y is to the right of the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_Y." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Base antenna Z position offset" name="GPS2_MB_OFS_Z" documentation="Z position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive Z is down from the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_Z." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
    </parameters>
    <parameters name="GPS_MB1_">
      <param humanName="Moving base type" name="GPS_MB1_TYPE" documentation="Controls the type of moving base used if using moving base.This is renamed in 4.6 and later to GPSx_MB_TYPE." user="Advanced">
        <values>
          <value code="0">Relative to alternate GPS instance</value>
          <value code="1">RelativeToCustomBase</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Base antenna X position offset" name="GPS_MB1_OFS_X" documentation="X position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive X is forward of the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_X." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Base antenna Y position offset" name="GPS_MB1_OFS_Y" documentation="Y position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive Y is to the right of the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_Y." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Base antenna Z position offset" name="GPS_MB1_OFS_Z" documentation="Z position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive Z is down from the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_Z." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
    </parameters>
    <parameters name="GPS_MB2_">
      <param humanName="Moving base type" name="GPS_MB2_TYPE" documentation="Controls the type of moving base used if using moving base.This is renamed in 4.6 and later to GPSx_MB_TYPE." user="Advanced">
        <values>
          <value code="0">Relative to alternate GPS instance</value>
          <value code="1">RelativeToCustomBase</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Base antenna X position offset" name="GPS_MB2_OFS_X" documentation="X position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive X is forward of the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_X." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Base antenna Y position offset" name="GPS_MB2_OFS_Y" documentation="Y position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive Y is to the right of the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_Y." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Base antenna Z position offset" name="GPS_MB2_OFS_Z" documentation="Z position of the base (primary) GPS antenna in body frame from the position of the 2nd antenna. Positive Z is down from the 2nd antenna. Use antenna phase centroid location if provided by the manufacturer.This is renamed in 4.6 and later to GPSx_MB_OFS_Z." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
    </parameters>
    <parameters name="GRIP_">
      <param humanName="Gripper Enable/Disable" name="GRIP_ENABLE" documentation="Gripper enable/disable" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Gripper Type" name="GRIP_TYPE" documentation="Gripper enable/disable" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">Servo</value>
          <value code="2">EPM</value>
        </values>
      </param>
      <param humanName="Gripper Grab PWM" name="GRIP_GRAB" documentation="PWM value in microseconds sent to Gripper to initiate grabbing the cargo" user="Advanced">
        <field name="Range">1000 2000</field>
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
      </param>
      <param humanName="Gripper Release PWM" name="GRIP_RELEASE" documentation="PWM value in microseconds sent to Gripper to release the cargo" user="Advanced">
        <field name="Range">1000 2000</field>
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
      </param>
      <param humanName="Neutral PWM" name="GRIP_NEUTRAL" documentation="PWM value in microseconds sent to grabber when not grabbing or releasing" user="Advanced">
        <field name="Range">1000 2000</field>
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
      </param>
      <param humanName="EPM Gripper Regrab interval" name="GRIP_REGRAB" documentation="Time in seconds that EPM gripper will regrab the cargo to ensure grip has not weakened; 0 to disable" user="Advanced">
        <field name="Range">0 255</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="EPM UAVCAN Hardpoint ID" name="GRIP_CAN_ID" documentation="Refer to https://docs.zubax.com/opengrab_epm_v3#UAVCAN_interface" user="Standard">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Gripper Autoclose time" name="GRIP_AUTOCLOSE" documentation="Time in seconds that gripper close the gripper after opening; 0 to disable" user="Advanced">
        <field name="Range">0.25 255</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
    </parameters>
    <parameters name="GUIDED_">
      <param humanName="PID Proportional Gain" name="GUIDED_P" documentation="P Gain which produces an output value that is proportional to the current error value">
</param>
      <param humanName="PID Integral Gain" name="GUIDED_I" documentation="I Gain which produces an output that is proportional to both the magnitude and the duration of the error">
</param>
      <param humanName="PID Derivative Gain" name="GUIDED_D" documentation="D Gain which produces an output that is proportional to the rate of change of the error">
</param>
      <param humanName="FF FeedForward Gain" name="GUIDED_FF" documentation="FF Gain which produces an output value that is proportional to the demanded input">
</param>
      <param humanName="PID Integral Maximum" name="GUIDED_IMAX" documentation="The maximum/minimum value that the I term can output">
</param>
      <param humanName="PID Target filter frequency in Hz" name="GUIDED_FLTT" documentation="Low-pass filter frequency applied to the target input (Hz)">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="PID Error filter frequency in Hz" name="GUIDED_FLTE" documentation="Low-pass filter frequency applied to the error (Hz)">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="PID Derivative term filter frequency in Hz" name="GUIDED_FLTD" documentation="Low-pass filter frequency applied to the derivative (Hz)">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Slew rate limit" name="GUIDED_SMAX" documentation="Sets an upper limit on the slew rate produced by the combined P and D gains. If the amplitude of the control action produced by the rate feedback exceeds this value, then the D+P gain is reduced to respect the limit. This limits the amplitude of high frequency oscillations caused by an excessive gain. The limit should be set to no more than 25% of the actuators maximum slew rate to allow for load effects. Note: The gain will not be reduced to less than 10% of the nominal value. A value of zero will disable this feature." user="Advanced">
        <field name="Range">0 200</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="PD sum maximum" name="GUIDED_PDMX" documentation="The maximum/minimum value that the sum of the P and D term can output" user="Advanced">
</param>
      <param humanName="PID Derivative FeedForward Gain" name="GUIDED_D_FF" documentation="FF D Gain which produces an output that is proportional to the rate of change of the target" user="Advanced">
        <field name="Range">0 0.02</field>
        <field name="Increment">0.0001</field>
      </param>
      <param humanName="PID Target notch filter index" name="GUIDED_NTF" documentation="PID Target notch filter index" user="Advanced">
        <field name="Range">0 8</field>
      </param>
      <param humanName="PID Error notch filter index" name="GUIDED_NEF" documentation="PID Error notch filter index" user="Advanced">
        <field name="Range">0 8</field>
      </param>
    </parameters>
    <parameters name="ICE_">
      <param humanName="Enable ICEngine control" name="ICE_ENABLE" documentation="This enables internal combustion engine control" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Input channel for engine start" name="ICE_START_CHAN" documentation="This is an RC input channel for requesting engine start. Engine will try to start when channel is at or above 1700. Engine will stop when channel is at or below 1300. Between 1301 and 1699 the engine will not change state unless a MAVLink command or mission item commands a state change, or the vehicle is disarmed. See ICE_STARTCHN_MIN parameter to change engine stop PWM value and/or to enable debouncing of the START_CH to avoid accidental engine kills due to noise on channel." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">Chan1</value>
          <value code="2">Chan2</value>
          <value code="3">Chan3</value>
          <value code="4">Chan4</value>
          <value code="5">Chan5</value>
          <value code="6">Chan6</value>
          <value code="7">Chan7</value>
          <value code="8">Chan8</value>
          <value code="9">Chan9</value>
          <value code="10">Chan10</value>
          <value code="11">Chan11</value>
          <value code="12">Chan12</value>
          <value code="13">Chan13</value>
          <value code="14">Chan14</value>
          <value code="15">Chan15</value>
          <value code="16">Chan16</value>
        </values>
      </param>
      <param humanName="Time to run starter" name="ICE_STARTER_TIME" documentation="This is the number of seconds to run the starter when trying to start the engine" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0.1 5</field>
      </param>
      <param humanName="Time to wait between starts" name="ICE_START_DELAY" documentation="Delay between start attempts" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">1 10</field>
      </param>
      <param humanName="RPM threshold" name="ICE_RPM_THRESH" documentation="This is the measured RPM above which the engine is considered to be running" user="Standard">
        <field name="Range">100 100000</field>
      </param>
      <param humanName="PWM value for ignition on" name="ICE_PWM_IGN_ON" documentation="This is the value sent to the ignition channel when on" user="Standard">
        <field name="Range">1000 2000</field>
      </param>
      <param humanName="PWM value for ignition off" name="ICE_PWM_IGN_OFF" documentation="This is the value sent to the ignition channel when off" user="Standard">
        <field name="Range">1000 2000</field>
      </param>
      <param humanName="PWM value for starter on" name="ICE_PWM_STRT_ON" documentation="This is the value sent to the starter channel when on" user="Standard">
        <field name="Range">1000 2000</field>
      </param>
      <param humanName="PWM value for starter off" name="ICE_PWM_STRT_OFF" documentation="This is the value sent to the starter channel when off" user="Standard">
        <field name="Range">1000 2000</field>
      </param>
      <param humanName="RPM instance channel to use" name="ICE_RPM_CHAN" documentation="This is which of the RPM instances to use for detecting the RPM of the engine" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">RPM1</value>
          <value code="2">RPM2</value>
        </values>
      </param>
      <param humanName="Throttle percentage for engine start" name="ICE_START_PCT" documentation="This is the percentage throttle output for engine start" user="Standard">
        <field name="Range">0 100</field>
      </param>
      <param humanName="Throttle percentage for engine idle" name="ICE_IDLE_PCT" documentation="This is the minimum percentage throttle output while running, this includes being disarmed, but not safe" user="Standard">
        <field name="Range">0 100</field>
      </param>
      <param humanName="RPM Setpoint for Idle Governor" name="ICE_IDLE_RPM" documentation="This configures the RPM that will be commanded by the idle governor. Set to -1 to disable" user="Advanced">
</param>
      <param humanName="Deadband for Idle Governor" name="ICE_IDLE_DB" documentation="This configures the deadband that is tolerated before adjusting the idle setpoint">
</param>
      <param humanName="Slew Rate for idle control" name="ICE_IDLE_SLEW" documentation="This configures the slewrate used to adjust the idle setpoint in percentage points per second">
</param>
      <param humanName="ICE options" name="ICE_OPTIONS" documentation="Options for ICE control. The Disable ignition in RC failsafe option will cause the ignition to be set off on any R/C failsafe. If Throttle while disarmed is set then throttle control will be allowed while disarmed for planes when in MANUAL mode. If disable while disarmed is set the engine will not start while the vehicle is disarmed unless overriden by the MAVLink DO_ENGINE_CONTROL command.">
        <bitmask>
          <bit code="0">Disable ignition in RC failsafe</bit>
          <bit code="1">Disable redline governor</bit>
          <bit code="2">Throttle control in MANUAL while disarmed with safety off</bit>
          <bit code="3">Disable while disarmed</bit>
          <bit code="4">Crank direction Reverse</bit>
        </bitmask>
        <field name="Bitmask">0:Disable ignition in RC failsafe,1:Disable redline governor,2:Throttle control in MANUAL while disarmed with safety off,3:Disable while disarmed,4:Crank direction Reverse</field>
      </param>
      <param humanName="Input channel for engine start minimum PWM" name="ICE_STARTCHN_MIN" documentation="This is a minimum PWM value for engine start channel for an engine stop to be commanded. Setting this value will avoid RC input glitches with low PWM values from causing an unwanted engine stop. A value of zero means any PWM above 800 and below 1300 triggers an engine stop. To stop the engine start channel must above the larger of this value and 800 and below 1300." user="Standard">
        <field name="Range">0 1300</field>
      </param>
      <param humanName="RPM of the redline limit for the engine" name="ICE_REDLINE_RPM" documentation="Maximum RPM for the engine provided by the manufacturer. A value of 0 disables this feature. See ICE_OPTIONS to enable or disable the governor." user="Advanced">
        <field name="Range">0 2000000</field>
        <field name="Units">RPM</field>
        <field name="UnitText">Revolutions Per Minute</field>
      </param>
      <param humanName="Maximum number of retries" name="ICE_STRT_MX_RTRY" documentation="If set 0 then there is no limit to retrials. If set to a value greater than 0 then the engine will retry starting the engine this many times before giving up." user="Standard">
        <field name="Range">0 127</field>
      </param>
    </parameters>
    <parameters name="INS">
      <param humanName="Gyro offsets of X axis" name="INS_GYROFFS_X" documentation="Gyro sensor offsets of X axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro offsets of Y axis" name="INS_GYROFFS_Y" documentation="Gyro sensor offsets of Y axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro offsets of Z axis" name="INS_GYROFFS_Z" documentation="Gyro sensor offsets of Z axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro2 offsets of X axis" name="INS_GYR2OFFS_X" documentation="Gyro2 sensor offsets of X axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro2 offsets of Y axis" name="INS_GYR2OFFS_Y" documentation="Gyro2 sensor offsets of Y axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro2 offsets of Z axis" name="INS_GYR2OFFS_Z" documentation="Gyro2 sensor offsets of Z axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro3 offsets of X axis" name="INS_GYR3OFFS_X" documentation="Gyro3 sensor offsets of X axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro3 offsets of Y axis" name="INS_GYR3OFFS_Y" documentation="Gyro3 sensor offsets of Y axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro3 offsets of Z axis" name="INS_GYR3OFFS_Z" documentation="Gyro3 sensor offsets of Z axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer scaling of X axis" name="INS_ACCSCAL_X" documentation="Accelerometer scaling of X axis.  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer scaling of Y axis" name="INS_ACCSCAL_Y" documentation="Accelerometer scaling of Y axis  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer scaling of Z axis" name="INS_ACCSCAL_Z" documentation="Accelerometer scaling of Z axis  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer offsets of X axis" name="INS_ACCOFFS_X" documentation="Accelerometer offsets of X axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer offsets of Y axis" name="INS_ACCOFFS_Y" documentation="Accelerometer offsets of Y axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer offsets of Z axis" name="INS_ACCOFFS_Z" documentation="Accelerometer offsets of Z axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer2 scaling of X axis" name="INS_ACC2SCAL_X" documentation="Accelerometer2 scaling of X axis.  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer2 scaling of Y axis" name="INS_ACC2SCAL_Y" documentation="Accelerometer2 scaling of Y axis  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer2 scaling of Z axis" name="INS_ACC2SCAL_Z" documentation="Accelerometer2 scaling of Z axis  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer2 offsets of X axis" name="INS_ACC2OFFS_X" documentation="Accelerometer2 offsets of X axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer2 offsets of Y axis" name="INS_ACC2OFFS_Y" documentation="Accelerometer2 offsets of Y axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer2 offsets of Z axis" name="INS_ACC2OFFS_Z" documentation="Accelerometer2 offsets of Z axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer3 scaling of X axis" name="INS_ACC3SCAL_X" documentation="Accelerometer3 scaling of X axis.  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer3 scaling of Y axis" name="INS_ACC3SCAL_Y" documentation="Accelerometer3 scaling of Y axis  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer3 scaling of Z axis" name="INS_ACC3SCAL_Z" documentation="Accelerometer3 scaling of Z axis  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer3 offsets of X axis" name="INS_ACC3OFFS_X" documentation="Accelerometer3 offsets of X axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer3 offsets of Y axis" name="INS_ACC3OFFS_Y" documentation="Accelerometer3 offsets of Y axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer3 offsets of Z axis" name="INS_ACC3OFFS_Z" documentation="Accelerometer3 offsets of Z axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro filter cutoff frequency" name="INS_GYRO_FILTER" documentation="Filter cutoff frequency for gyroscopes. This can be set to a lower value to try to cope with very high vibration levels in aircraft. A value of zero means no filtering (not recommended!)" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 256</field>
      </param>
      <param humanName="Accel filter cutoff frequency" name="INS_ACCEL_FILTER" documentation="Filter cutoff frequency for accelerometers. This can be set to a lower value to try to cope with very high vibration levels in aircraft. A value of zero means no filtering (not recommended!)" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 256</field>
      </param>
      <param humanName="Use first IMU for attitude, velocity and position estimates" name="INS_USE" documentation="Use first IMU for attitude, velocity and position estimates" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Use second IMU for attitude, velocity and position estimates" name="INS_USE2" documentation="Use second IMU for attitude, velocity and position estimates" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Use third IMU for attitude, velocity and position estimates" name="INS_USE3" documentation="Use third IMU for attitude, velocity and position estimates" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Stillness threshold for detecting if we are moving" name="INS_STILL_THRESH" documentation="Threshold to tolerate vibration to determine if vehicle is motionless. This depends on the frame type and if there is a constant vibration due to motors before launch or after landing. Total motionless is about 0.05. Suggested values: Planes/rover use 0.1, multirotors use 1, tradHeli uses 5" user="Advanced">
        <field name="Range">0.05 50</field>
      </param>
      <param humanName="Gyro Calibration scheme" name="INS_GYR_CAL" documentation="Conrols when automatic gyro calibration is performed" user="Advanced">
        <values>
          <value code="0">Never</value>
          <value code="1">Start-up only</value>
        </values>
      </param>
      <param humanName="Accel cal trim option" name="INS_TRIM_OPTION" documentation="Specifies how the accel cal routine determines the trims" user="Advanced">
        <values>
          <value code="0">Don't adjust the trims</value>
          <value code="1">Assume first orientation was level</value>
          <value code="2">Assume ACC_BODYFIX is perfectly aligned to the vehicle</value>
        </values>
      </param>
      <param humanName="Body-fixed accelerometer" name="INS_ACC_BODYFIX" documentation="The body-fixed accelerometer to be used for trim calculation" user="Advanced">
        <values>
          <value code="1">IMU 1</value>
          <value code="2">IMU 2</value>
          <value code="3">IMU 3</value>
        </values>
      </param>
      <param humanName="IMU accelerometer X position" name="INS_POS1_X" documentation="X position of the first IMU Accelerometer in body frame. Positive X is forward of the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="IMU accelerometer Y position" name="INS_POS1_Y" documentation="Y position of the first IMU accelerometer in body frame. Positive Y is to the right of the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="IMU accelerometer Z position" name="INS_POS1_Z" documentation="Z position of the first IMU accelerometer in body frame. Positive Z is down from the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="IMU accelerometer X position" name="INS_POS2_X" documentation="X position of the second IMU accelerometer in body frame. Positive X is forward of the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="IMU accelerometer Y position" name="INS_POS2_Y" documentation="Y position of the second IMU accelerometer in body frame. Positive Y is to the right of the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="IMU accelerometer Z position" name="INS_POS2_Z" documentation="Z position of the second IMU accelerometer in body frame. Positive Z is down from the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="IMU accelerometer X position" name="INS_POS3_X" documentation="X position of the third IMU accelerometer in body frame. Positive X is forward of the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-10 10</field>
      </param>
      <param humanName="IMU accelerometer Y position" name="INS_POS3_Y" documentation="Y position of the third IMU accelerometer in body frame. Positive Y is to the right of the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="IMU accelerometer Z position" name="INS_POS3_Z" documentation="Z position of the third IMU accelerometer in body frame. Positive Z is down from the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Gyro ID" name="INS_GYR_ID" documentation="Gyro sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Gyro2 ID" name="INS_GYR2_ID" documentation="Gyro2 sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Gyro3 ID" name="INS_GYR3_ID" documentation="Gyro3 sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Accelerometer ID" name="INS_ACC_ID" documentation="Accelerometer sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Accelerometer2 ID" name="INS_ACC2_ID" documentation="Accelerometer2 sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Accelerometer3 ID" name="INS_ACC3_ID" documentation="Accelerometer3 sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Fast sampling mask" name="INS_FAST_SAMPLE" documentation="Mask of IMUs to enable fast sampling on, if available" user="Advanced">
        <bitmask>
          <bit code="0">FirstIMU</bit>
          <bit code="1">SecondIMU</bit>
          <bit code="2">ThirdIMU</bit>
        </bitmask>
        <field name="Bitmask">0:FirstIMU,1:SecondIMU,2:ThirdIMU</field>
      </param>
      <param humanName="IMU enable mask" name="INS_ENABLE_MASK" documentation="Bitmask of IMUs to enable. It can be used to prevent startup of specific detected IMUs" user="Advanced">
        <bitmask>
          <bit code="0">FirstIMU</bit>
          <bit code="1">SecondIMU</bit>
          <bit code="2">ThirdIMU</bit>
          <bit code="3">FourthIMU</bit>
          <bit code="4">FifthIMU</bit>
          <bit code="5">SixthIMU</bit>
          <bit code="6">SeventhIMU</bit>
        </bitmask>
        <field name="Bitmask">0:FirstIMU,1:SecondIMU,2:ThirdIMU,3:FourthIMU,4:FifthIMU,5:SixthIMU,6:SeventhIMU</field>
      </param>
      <param humanName="Gyro rate for IMUs with Fast Sampling enabled" name="INS_GYRO_RATE" documentation="Gyro rate for IMUs with fast sampling enabled. The gyro rate is the sample rate at which the IMU filters operate and needs to be at least double the maximum filter frequency. If the sensor does not support the selected rate the next highest supported rate will be used. For IMUs which do not support fast sampling this setting is ignored and the default gyro rate of 1Khz is used." user="Advanced">
        <values>
          <value code="0">1kHz</value>
          <value code="1">2kHz</value>
          <value code="2">4kHz</value>
          <value code="3">8kHz</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Calibration temperature for 1st accelerometer" name="INS_ACC1_CALTEMP" documentation="Temperature that the 1st accelerometer was calibrated at" user="Advanced" calibration="1">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Calibration temperature for 1st gyroscope" name="INS_GYR1_CALTEMP" documentation="Temperature that the 1st gyroscope was calibrated at" user="Advanced" calibration="1">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Calibration temperature for 2nd accelerometer" name="INS_ACC2_CALTEMP" documentation="Temperature that the 2nd accelerometer was calibrated at" user="Advanced" calibration="1">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Calibration temperature for 2nd gyroscope" name="INS_GYR2_CALTEMP" documentation="Temperature that the 2nd gyroscope was calibrated at" user="Advanced" calibration="1">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Calibration temperature for 3rd accelerometer" name="INS_ACC3_CALTEMP" documentation="Temperature that the 3rd accelerometer was calibrated at" user="Advanced" calibration="1">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Calibration temperature for 3rd gyroscope" name="INS_GYR3_CALTEMP" documentation="Temperature that the 3rd gyroscope was calibrated at" user="Advanced" calibration="1">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Options for temperature calibration" name="INS_TCAL_OPTIONS" documentation="This enables optional temperature calibration features. Setting of the Persist bits will save the temperature and/or accelerometer calibration parameters in the bootloader sector on the next update of the bootloader." user="Advanced">
        <bitmask>
          <bit code="0">PersistTemps</bit>
          <bit code="1">PersistAccels</bit>
        </bitmask>
        <field name="Bitmask">0:PersistTemps, 1:PersistAccels</field>
      </param>
      <param humanName="Raw logging options" name="INS_RAW_LOG_OPT" documentation="Raw logging options bitmask" user="Advanced">
        <bitmask>
          <bit code="0">Log primary gyro only</bit>
          <bit code="1">Log all gyros</bit>
          <bit code="2">Post filter</bit>
          <bit code="3">Pre and post filter</bit>
        </bitmask>
        <field name="Bitmask">0:Log primary gyro only, 1:Log all gyros, 2:Post filter, 3: Pre and post filter</field>
      </param>
    </parameters>
    <parameters name="INS4_">
      <param humanName="Use first IMU for attitude, velocity and position estimates" name="INS4_USE" documentation="Use first IMU for attitude, velocity and position estimates" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Accelerometer ID" name="INS4_ACC_ID" documentation="Accelerometer sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Accelerometer scaling of X axis" name="INS4_ACCSCAL_X" documentation="Accelerometer scaling of X axis.  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer scaling of Y axis" name="INS4_ACCSCAL_Y" documentation="Accelerometer scaling of Y axis  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer scaling of Z axis" name="INS4_ACCSCAL_Z" documentation="Accelerometer scaling of Z axis  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer offsets of X axis" name="INS4_ACCOFFS_X" documentation="Accelerometer offsets of X axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer offsets of Y axis" name="INS4_ACCOFFS_Y" documentation="Accelerometer offsets of Y axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer offsets of Z axis" name="INS4_ACCOFFS_Z" documentation="Accelerometer offsets of Z axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="IMU accelerometer X position" name="INS4_POS_X" documentation="X position of the first IMU Accelerometer in body frame. Positive X is forward of the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="IMU accelerometer Y position" name="INS4_POS_Y" documentation="Y position of the first IMU accelerometer in body frame. Positive Y is to the right of the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="IMU accelerometer Z position" name="INS4_POS_Z" documentation="Z position of the first IMU accelerometer in body frame. Positive Z is down from the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Calibration temperature for accelerometer" name="INS4_ACC_CALTEMP" documentation="Temperature that the accelerometer was calibrated at" user="Advanced" calibration="1">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro ID" name="INS4_GYR_ID" documentation="Gyro sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Gyro offsets of X axis" name="INS4_GYROFFS_X" documentation="Gyro sensor offsets of X axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro offsets of Y axis" name="INS4_GYROFFS_Y" documentation="Gyro sensor offsets of Y axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro offsets of Z axis" name="INS4_GYROFFS_Z" documentation="Gyro sensor offsets of Z axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Calibration temperature for gyroscope" name="INS4_GYR_CALTEMP" documentation="Temperature that the gyroscope was calibrated at" user="Advanced" calibration="1">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
    </parameters>
    <parameters name="INS4_TCAL_">
      <param humanName="Enable temperature calibration" name="INS4_TCAL_ENABLE" documentation="Enable the use of temperature calibration parameters for this IMU. For automatic learning set to 2 and also set the INS_TCALn_TMAX to the target temperature, then reboot" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">LearnCalibration</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature calibration min" name="INS4_TCAL_TMIN" documentation="The minimum temperature that the calibration is valid for" user="Advanced" calibration="1">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Temperature calibration max" name="INS4_TCAL_TMAX" documentation="The maximum temperature that the calibration is valid for. This must be at least 10 degrees above TMIN for calibration" user="Advanced" calibration="1">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient X axis" name="INS4_TCAL_ACC1_X" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient Y axis" name="INS4_TCAL_ACC1_Y" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient Z axis" name="INS4_TCAL_ACC1_Z" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient X axis" name="INS4_TCAL_ACC2_X" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient Y axis" name="INS4_TCAL_ACC2_Y" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient Z axis" name="INS4_TCAL_ACC2_Z" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient X axis" name="INS4_TCAL_ACC3_X" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient Y axis" name="INS4_TCAL_ACC3_Y" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient Z axis" name="INS4_TCAL_ACC3_Z" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient X axis" name="INS4_TCAL_GYR1_X" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient Y axis" name="INS4_TCAL_GYR1_Y" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient Z axis" name="INS4_TCAL_GYR1_Z" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient X axis" name="INS4_TCAL_GYR2_X" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient Y axis" name="INS4_TCAL_GYR2_Y" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient Z axis" name="INS4_TCAL_GYR2_Z" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient X axis" name="INS4_TCAL_GYR3_X" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient Y axis" name="INS4_TCAL_GYR3_Y" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient Z axis" name="INS4_TCAL_GYR3_Z" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
    </parameters>
    <parameters name="INS5_">
      <param humanName="Use first IMU for attitude, velocity and position estimates" name="INS5_USE" documentation="Use first IMU for attitude, velocity and position estimates" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Accelerometer ID" name="INS5_ACC_ID" documentation="Accelerometer sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Accelerometer scaling of X axis" name="INS5_ACCSCAL_X" documentation="Accelerometer scaling of X axis.  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer scaling of Y axis" name="INS5_ACCSCAL_Y" documentation="Accelerometer scaling of Y axis  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer scaling of Z axis" name="INS5_ACCSCAL_Z" documentation="Accelerometer scaling of Z axis  Calculated during acceleration calibration routine" user="Advanced" calibration="1">
        <field name="Range">0.8 1.2</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer offsets of X axis" name="INS5_ACCOFFS_X" documentation="Accelerometer offsets of X axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer offsets of Y axis" name="INS5_ACCOFFS_Y" documentation="Accelerometer offsets of Y axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer offsets of Z axis" name="INS5_ACCOFFS_Z" documentation="Accelerometer offsets of Z axis. This is setup using the acceleration calibration or level operations" user="Advanced" calibration="1">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">-3.5 3.5</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="IMU accelerometer X position" name="INS5_POS_X" documentation="X position of the first IMU Accelerometer in body frame. Positive X is forward of the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="IMU accelerometer Y position" name="INS5_POS_Y" documentation="Y position of the first IMU accelerometer in body frame. Positive Y is to the right of the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="IMU accelerometer Z position" name="INS5_POS_Z" documentation="Z position of the first IMU accelerometer in body frame. Positive Z is down from the origin. Attention: The IMU should be located as close to the vehicle c.g. as practical so that the value of this parameter is minimised. Failure to do so can result in noisy navigation velocity measurements due to vibration and IMU gyro noise. If the IMU cannot be moved and velocity noise is a problem, a location closer to the IMU can be used as the body frame origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Calibration temperature for accelerometer" name="INS5_ACC_CALTEMP" documentation="Temperature that the accelerometer was calibrated at" user="Advanced" calibration="1">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro ID" name="INS5_GYR_ID" documentation="Gyro sensor ID, taking into account its type, bus and instance" user="Advanced">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Gyro offsets of X axis" name="INS5_GYROFFS_X" documentation="Gyro sensor offsets of X axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro offsets of Y axis" name="INS5_GYROFFS_Y" documentation="Gyro sensor offsets of Y axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyro offsets of Z axis" name="INS5_GYROFFS_Z" documentation="Gyro sensor offsets of Z axis. This is setup on each boot during gyro calibrations" user="Advanced" calibration="1">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Calibration temperature for gyroscope" name="INS5_GYR_CALTEMP" documentation="Temperature that the gyroscope was calibrated at" user="Advanced" calibration="1">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
    </parameters>
    <parameters name="INS5_TCAL_">
      <param humanName="Enable temperature calibration" name="INS5_TCAL_ENABLE" documentation="Enable the use of temperature calibration parameters for this IMU. For automatic learning set to 2 and also set the INS_TCALn_TMAX to the target temperature, then reboot" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">LearnCalibration</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature calibration min" name="INS5_TCAL_TMIN" documentation="The minimum temperature that the calibration is valid for" user="Advanced" calibration="1">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Temperature calibration max" name="INS5_TCAL_TMAX" documentation="The maximum temperature that the calibration is valid for. This must be at least 10 degrees above TMIN for calibration" user="Advanced" calibration="1">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient X axis" name="INS5_TCAL_ACC1_X" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient Y axis" name="INS5_TCAL_ACC1_Y" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient Z axis" name="INS5_TCAL_ACC1_Z" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient X axis" name="INS5_TCAL_ACC2_X" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient Y axis" name="INS5_TCAL_ACC2_Y" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient Z axis" name="INS5_TCAL_ACC2_Z" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient X axis" name="INS5_TCAL_ACC3_X" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient Y axis" name="INS5_TCAL_ACC3_Y" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient Z axis" name="INS5_TCAL_ACC3_Z" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient X axis" name="INS5_TCAL_GYR1_X" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient Y axis" name="INS5_TCAL_GYR1_Y" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient Z axis" name="INS5_TCAL_GYR1_Z" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient X axis" name="INS5_TCAL_GYR2_X" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient Y axis" name="INS5_TCAL_GYR2_Y" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient Z axis" name="INS5_TCAL_GYR2_Z" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient X axis" name="INS5_TCAL_GYR3_X" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient Y axis" name="INS5_TCAL_GYR3_Y" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient Z axis" name="INS5_TCAL_GYR3_Z" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
    </parameters>
    <parameters name="INS_HNTC2_">
      <param humanName="Harmonic Notch Filter enable" name="INS_HNTC2_ENABLE" documentation="Harmonic Notch Filter enable" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Harmonic Notch Filter base frequency" name="INS_HNTC2_FREQ" documentation="Harmonic Notch Filter base center frequency in Hz. This is the center frequency for static notches, the center frequency for Throttle based notches at the reference thrust value, and the minimum limit of center frequency variation for all other notch types. This should always be set lower than half the backend gyro rate (which is typically 1Khz)." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Harmonic Notch Filter bandwidth" name="INS_HNTC2_BW" documentation="Harmonic Notch Filter bandwidth in Hz. This is typically set to half the base frequency. The ratio of base frequency to bandwidth determines the notch quality factor and is fixed across harmonics." user="Advanced">
        <field name="Range">5 250</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Harmonic Notch Filter attenuation" name="INS_HNTC2_ATT" documentation="Harmonic Notch Filter attenuation in dB. Values greater than 40dB will typically produce a hard notch rather than a modest attenuation of motor noise." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
      <param humanName="Harmonic Notch Filter harmonics" name="INS_HNTC2_HMNCS" documentation="Bitmask of harmonic frequencies to apply Harmonic Notch Filter to. This option takes effect on the next reboot. A value of 0 disables this filter. The first harmonic refers to the base frequency." user="Advanced">
        <bitmask>
          <bit code="0">1st harmonic</bit>
          <bit code="1">2nd harmonic</bit>
          <bit code="2">3rd harmonic</bit>
          <bit code="3">4th harmonic</bit>
          <bit code="4">5th harmonic</bit>
          <bit code="5">6th harmonic</bit>
          <bit code="6">7th harmonic</bit>
          <bit code="7">8th harmonic</bit>
          <bit code="8">9th harmonic</bit>
          <bit code="9">10th harmonic</bit>
          <bit code="10">11th harmonic</bit>
          <bit code="11">12th harmonic</bit>
          <bit code="12">13th harmonic</bit>
          <bit code="13">14th harmonic</bit>
          <bit code="14">15th harmonic</bit>
          <bit code="15">16th harmonic</bit>
        </bitmask>
        <field name="Bitmask">0:  1st harmonic, 1:  2nd harmonic, 2:  3rd harmonic, 3:  4th harmonic, 4:  5th harmonic, 5:  6th harmonic, 6:  7th harmonic, 7:  8th harmonic, 8:  9th harmonic, 9:  10th harmonic, 10: 11th harmonic, 11: 12th harmonic, 12: 13th harmonic, 13: 14th harmonic, 14: 15th harmonic, 15: 16th harmonic</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Harmonic Notch Filter reference value" name="INS_HNTC2_REF" documentation="A reference value of zero disables dynamic updates on the Harmonic Notch Filter and a positive value enables dynamic updates on the Harmonic Notch Filter.  For throttle-based scaling, this parameter is the reference value associated with the specified frequency to facilitate frequency scaling of the Harmonic Notch Filter. For RPM and ESC telemetry based tracking, this parameter is set to 1 to enable the Harmonic Notch Filter using the RPM sensor or ESC telemetry set to measure rotor speed.  The sensor data is converted to Hz automatically for use in the Harmonic Notch Filter.  This reference value may also be used to scale the sensor data, if required.  For example, rpm sensor data is required to measure heli motor RPM. Therefore the reference value can be used to scale the RPM sensor to the rotor RPM." user="Advanced">
        <field name="Range">0.0 1.0</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Harmonic Notch Filter dynamic frequency tracking mode" name="INS_HNTC2_MODE" documentation="Harmonic Notch Filter dynamic frequency tracking mode. Dynamic updates can be throttle, RPM sensor, ESC telemetry or dynamic FFT based. Throttle-based harmonic notch cannot be used on fixed wing only planes. It can for Copters, QuadPlane(while in VTOL modes), and Rovers." user="Advanced">
        <field name="Range">0 5</field>
        <values>
          <value code="0">Fixed</value>
          <value code="1">Throttle</value>
          <value code="2">RPM Sensor</value>
          <value code="3">ESC Telemetry</value>
          <value code="4">Dynamic FFT</value>
          <value code="5">Second RPM Sensor</value>
        </values>
      </param>
      <param humanName="Harmonic Notch Filter options" name="INS_HNTC2_OPTS" documentation="Harmonic Notch Filter options. Triple and double-notches can provide deeper attenuation across a wider bandwidth with reduced latency than single notches and are suitable for larger aircraft. Multi-Source attaches a harmonic notch to each detected noise frequency instead of simply being multiples of the base frequency, in the case of FFT it will attach notches to each of three detected noise peaks, in the case of ESC it will attach notches to each of four motor RPM values. Loop rate update changes the notch center frequency at the scheduler loop rate rather than at the default of 200Hz. If both double and triple notches are specified only double notches will take effect." user="Advanced">
        <bitmask>
          <bit code="0">Double notch</bit>
          <bit code="1">Multi-Source</bit>
          <bit code="2">Update at loop rate</bit>
          <bit code="3">EnableOnAllIMUs</bit>
          <bit code="4">Triple notch</bit>
          <bit code="5">Use min freq on RPM source failure</bit>
          <bit code="6">Quintuple notch</bit>
        </bitmask>
        <field name="Bitmask">0:Double notch,1:Multi-Source,2:Update at loop rate,3:EnableOnAllIMUs,4:Triple notch, 5:Use min freq on RPM source failure, 6:Quintuple notch</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Throttle notch min frequency ratio" name="INS_HNTC2_FM_RAT" documentation="The minimum ratio below the configured frequency to take throttle based notch filters when flying at a throttle level below the reference throttle. Note that lower frequency notch filters will have more phase lag. If you want throttle based notch filtering to be effective at a throttle up to 30% below the configured notch frequency then set this parameter to 0.7. The default of 1.0 means the notch will not go below the frequency in the FREQ parameter." user="Advanced">
        <field name="Range">0.1 1.0</field>
      </param>
    </parameters>
    <parameters name="INS_HNTC3_">
      <param humanName="Harmonic Notch Filter enable" name="INS_HNTC3_ENABLE" documentation="Harmonic Notch Filter enable" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Harmonic Notch Filter base frequency" name="INS_HNTC3_FREQ" documentation="Harmonic Notch Filter base center frequency in Hz. This is the center frequency for static notches, the center frequency for Throttle based notches at the reference thrust value, and the minimum limit of center frequency variation for all other notch types. This should always be set lower than half the backend gyro rate (which is typically 1Khz)." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Harmonic Notch Filter bandwidth" name="INS_HNTC3_BW" documentation="Harmonic Notch Filter bandwidth in Hz. This is typically set to half the base frequency. The ratio of base frequency to bandwidth determines the notch quality factor and is fixed across harmonics." user="Advanced">
        <field name="Range">5 250</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Harmonic Notch Filter attenuation" name="INS_HNTC3_ATT" documentation="Harmonic Notch Filter attenuation in dB. Values greater than 40dB will typically produce a hard notch rather than a modest attenuation of motor noise." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
      <param humanName="Harmonic Notch Filter harmonics" name="INS_HNTC3_HMNCS" documentation="Bitmask of harmonic frequencies to apply Harmonic Notch Filter to. This option takes effect on the next reboot. A value of 0 disables this filter. The first harmonic refers to the base frequency." user="Advanced">
        <bitmask>
          <bit code="0">1st harmonic</bit>
          <bit code="1">2nd harmonic</bit>
          <bit code="2">3rd harmonic</bit>
          <bit code="3">4th harmonic</bit>
          <bit code="4">5th harmonic</bit>
          <bit code="5">6th harmonic</bit>
          <bit code="6">7th harmonic</bit>
          <bit code="7">8th harmonic</bit>
          <bit code="8">9th harmonic</bit>
          <bit code="9">10th harmonic</bit>
          <bit code="10">11th harmonic</bit>
          <bit code="11">12th harmonic</bit>
          <bit code="12">13th harmonic</bit>
          <bit code="13">14th harmonic</bit>
          <bit code="14">15th harmonic</bit>
          <bit code="15">16th harmonic</bit>
        </bitmask>
        <field name="Bitmask">0:  1st harmonic, 1:  2nd harmonic, 2:  3rd harmonic, 3:  4th harmonic, 4:  5th harmonic, 5:  6th harmonic, 6:  7th harmonic, 7:  8th harmonic, 8:  9th harmonic, 9:  10th harmonic, 10: 11th harmonic, 11: 12th harmonic, 12: 13th harmonic, 13: 14th harmonic, 14: 15th harmonic, 15: 16th harmonic</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Harmonic Notch Filter reference value" name="INS_HNTC3_REF" documentation="A reference value of zero disables dynamic updates on the Harmonic Notch Filter and a positive value enables dynamic updates on the Harmonic Notch Filter.  For throttle-based scaling, this parameter is the reference value associated with the specified frequency to facilitate frequency scaling of the Harmonic Notch Filter. For RPM and ESC telemetry based tracking, this parameter is set to 1 to enable the Harmonic Notch Filter using the RPM sensor or ESC telemetry set to measure rotor speed.  The sensor data is converted to Hz automatically for use in the Harmonic Notch Filter.  This reference value may also be used to scale the sensor data, if required.  For example, rpm sensor data is required to measure heli motor RPM. Therefore the reference value can be used to scale the RPM sensor to the rotor RPM." user="Advanced">
        <field name="Range">0.0 1.0</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Harmonic Notch Filter dynamic frequency tracking mode" name="INS_HNTC3_MODE" documentation="Harmonic Notch Filter dynamic frequency tracking mode. Dynamic updates can be throttle, RPM sensor, ESC telemetry or dynamic FFT based. Throttle-based harmonic notch cannot be used on fixed wing only planes. It can for Copters, QuadPlane(while in VTOL modes), and Rovers." user="Advanced">
        <field name="Range">0 5</field>
        <values>
          <value code="0">Fixed</value>
          <value code="1">Throttle</value>
          <value code="2">RPM Sensor</value>
          <value code="3">ESC Telemetry</value>
          <value code="4">Dynamic FFT</value>
          <value code="5">Second RPM Sensor</value>
        </values>
      </param>
      <param humanName="Harmonic Notch Filter options" name="INS_HNTC3_OPTS" documentation="Harmonic Notch Filter options. Triple and double-notches can provide deeper attenuation across a wider bandwidth with reduced latency than single notches and are suitable for larger aircraft. Multi-Source attaches a harmonic notch to each detected noise frequency instead of simply being multiples of the base frequency, in the case of FFT it will attach notches to each of three detected noise peaks, in the case of ESC it will attach notches to each of four motor RPM values. Loop rate update changes the notch center frequency at the scheduler loop rate rather than at the default of 200Hz. If both double and triple notches are specified only double notches will take effect." user="Advanced">
        <bitmask>
          <bit code="0">Double notch</bit>
          <bit code="1">Multi-Source</bit>
          <bit code="2">Update at loop rate</bit>
          <bit code="3">EnableOnAllIMUs</bit>
          <bit code="4">Triple notch</bit>
          <bit code="5">Use min freq on RPM source failure</bit>
          <bit code="6">Quintuple notch</bit>
        </bitmask>
        <field name="Bitmask">0:Double notch,1:Multi-Source,2:Update at loop rate,3:EnableOnAllIMUs,4:Triple notch, 5:Use min freq on RPM source failure, 6:Quintuple notch</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Throttle notch min frequency ratio" name="INS_HNTC3_FM_RAT" documentation="The minimum ratio below the configured frequency to take throttle based notch filters when flying at a throttle level below the reference throttle. Note that lower frequency notch filters will have more phase lag. If you want throttle based notch filtering to be effective at a throttle up to 30% below the configured notch frequency then set this parameter to 0.7. The default of 1.0 means the notch will not go below the frequency in the FREQ parameter." user="Advanced">
        <field name="Range">0.1 1.0</field>
      </param>
    </parameters>
    <parameters name="INS_HNTC4_">
      <param humanName="Harmonic Notch Filter enable" name="INS_HNTC4_ENABLE" documentation="Harmonic Notch Filter enable" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Harmonic Notch Filter base frequency" name="INS_HNTC4_FREQ" documentation="Harmonic Notch Filter base center frequency in Hz. This is the center frequency for static notches, the center frequency for Throttle based notches at the reference thrust value, and the minimum limit of center frequency variation for all other notch types. This should always be set lower than half the backend gyro rate (which is typically 1Khz)." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Harmonic Notch Filter bandwidth" name="INS_HNTC4_BW" documentation="Harmonic Notch Filter bandwidth in Hz. This is typically set to half the base frequency. The ratio of base frequency to bandwidth determines the notch quality factor and is fixed across harmonics." user="Advanced">
        <field name="Range">5 250</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Harmonic Notch Filter attenuation" name="INS_HNTC4_ATT" documentation="Harmonic Notch Filter attenuation in dB. Values greater than 40dB will typically produce a hard notch rather than a modest attenuation of motor noise." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
      <param humanName="Harmonic Notch Filter harmonics" name="INS_HNTC4_HMNCS" documentation="Bitmask of harmonic frequencies to apply Harmonic Notch Filter to. This option takes effect on the next reboot. A value of 0 disables this filter. The first harmonic refers to the base frequency." user="Advanced">
        <bitmask>
          <bit code="0">1st harmonic</bit>
          <bit code="1">2nd harmonic</bit>
          <bit code="2">3rd harmonic</bit>
          <bit code="3">4th harmonic</bit>
          <bit code="4">5th harmonic</bit>
          <bit code="5">6th harmonic</bit>
          <bit code="6">7th harmonic</bit>
          <bit code="7">8th harmonic</bit>
          <bit code="8">9th harmonic</bit>
          <bit code="9">10th harmonic</bit>
          <bit code="10">11th harmonic</bit>
          <bit code="11">12th harmonic</bit>
          <bit code="12">13th harmonic</bit>
          <bit code="13">14th harmonic</bit>
          <bit code="14">15th harmonic</bit>
          <bit code="15">16th harmonic</bit>
        </bitmask>
        <field name="Bitmask">0:  1st harmonic, 1:  2nd harmonic, 2:  3rd harmonic, 3:  4th harmonic, 4:  5th harmonic, 5:  6th harmonic, 6:  7th harmonic, 7:  8th harmonic, 8:  9th harmonic, 9:  10th harmonic, 10: 11th harmonic, 11: 12th harmonic, 12: 13th harmonic, 13: 14th harmonic, 14: 15th harmonic, 15: 16th harmonic</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Harmonic Notch Filter reference value" name="INS_HNTC4_REF" documentation="A reference value of zero disables dynamic updates on the Harmonic Notch Filter and a positive value enables dynamic updates on the Harmonic Notch Filter.  For throttle-based scaling, this parameter is the reference value associated with the specified frequency to facilitate frequency scaling of the Harmonic Notch Filter. For RPM and ESC telemetry based tracking, this parameter is set to 1 to enable the Harmonic Notch Filter using the RPM sensor or ESC telemetry set to measure rotor speed.  The sensor data is converted to Hz automatically for use in the Harmonic Notch Filter.  This reference value may also be used to scale the sensor data, if required.  For example, rpm sensor data is required to measure heli motor RPM. Therefore the reference value can be used to scale the RPM sensor to the rotor RPM." user="Advanced">
        <field name="Range">0.0 1.0</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Harmonic Notch Filter dynamic frequency tracking mode" name="INS_HNTC4_MODE" documentation="Harmonic Notch Filter dynamic frequency tracking mode. Dynamic updates can be throttle, RPM sensor, ESC telemetry or dynamic FFT based. Throttle-based harmonic notch cannot be used on fixed wing only planes. It can for Copters, QuadPlane(while in VTOL modes), and Rovers." user="Advanced">
        <field name="Range">0 5</field>
        <values>
          <value code="0">Fixed</value>
          <value code="1">Throttle</value>
          <value code="2">RPM Sensor</value>
          <value code="3">ESC Telemetry</value>
          <value code="4">Dynamic FFT</value>
          <value code="5">Second RPM Sensor</value>
        </values>
      </param>
      <param humanName="Harmonic Notch Filter options" name="INS_HNTC4_OPTS" documentation="Harmonic Notch Filter options. Triple and double-notches can provide deeper attenuation across a wider bandwidth with reduced latency than single notches and are suitable for larger aircraft. Multi-Source attaches a harmonic notch to each detected noise frequency instead of simply being multiples of the base frequency, in the case of FFT it will attach notches to each of three detected noise peaks, in the case of ESC it will attach notches to each of four motor RPM values. Loop rate update changes the notch center frequency at the scheduler loop rate rather than at the default of 200Hz. If both double and triple notches are specified only double notches will take effect." user="Advanced">
        <bitmask>
          <bit code="0">Double notch</bit>
          <bit code="1">Multi-Source</bit>
          <bit code="2">Update at loop rate</bit>
          <bit code="3">EnableOnAllIMUs</bit>
          <bit code="4">Triple notch</bit>
          <bit code="5">Use min freq on RPM source failure</bit>
          <bit code="6">Quintuple notch</bit>
        </bitmask>
        <field name="Bitmask">0:Double notch,1:Multi-Source,2:Update at loop rate,3:EnableOnAllIMUs,4:Triple notch, 5:Use min freq on RPM source failure, 6:Quintuple notch</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Throttle notch min frequency ratio" name="INS_HNTC4_FM_RAT" documentation="The minimum ratio below the configured frequency to take throttle based notch filters when flying at a throttle level below the reference throttle. Note that lower frequency notch filters will have more phase lag. If you want throttle based notch filtering to be effective at a throttle up to 30% below the configured notch frequency then set this parameter to 0.7. The default of 1.0 means the notch will not go below the frequency in the FREQ parameter." user="Advanced">
        <field name="Range">0.1 1.0</field>
      </param>
    </parameters>
    <parameters name="INS_HNTCH_">
      <param humanName="Harmonic Notch Filter enable" name="INS_HNTCH_ENABLE" documentation="Harmonic Notch Filter enable" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Harmonic Notch Filter base frequency" name="INS_HNTCH_FREQ" documentation="Harmonic Notch Filter base center frequency in Hz. This is the center frequency for static notches, the center frequency for Throttle based notches at the reference thrust value, and the minimum limit of center frequency variation for all other notch types. This should always be set lower than half the backend gyro rate (which is typically 1Khz)." user="Advanced">
        <field name="Range">10 495</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Harmonic Notch Filter bandwidth" name="INS_HNTCH_BW" documentation="Harmonic Notch Filter bandwidth in Hz. This is typically set to half the base frequency. The ratio of base frequency to bandwidth determines the notch quality factor and is fixed across harmonics." user="Advanced">
        <field name="Range">5 250</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Harmonic Notch Filter attenuation" name="INS_HNTCH_ATT" documentation="Harmonic Notch Filter attenuation in dB. Values greater than 40dB will typically produce a hard notch rather than a modest attenuation of motor noise." user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">dB</field>
        <field name="UnitText">decibel</field>
      </param>
      <param humanName="Harmonic Notch Filter harmonics" name="INS_HNTCH_HMNCS" documentation="Bitmask of harmonic frequencies to apply Harmonic Notch Filter to. This option takes effect on the next reboot. A value of 0 disables this filter. The first harmonic refers to the base frequency." user="Advanced">
        <bitmask>
          <bit code="0">1st harmonic</bit>
          <bit code="1">2nd harmonic</bit>
          <bit code="2">3rd harmonic</bit>
          <bit code="3">4th harmonic</bit>
          <bit code="4">5th harmonic</bit>
          <bit code="5">6th harmonic</bit>
          <bit code="6">7th harmonic</bit>
          <bit code="7">8th harmonic</bit>
          <bit code="8">9th harmonic</bit>
          <bit code="9">10th harmonic</bit>
          <bit code="10">11th harmonic</bit>
          <bit code="11">12th harmonic</bit>
          <bit code="12">13th harmonic</bit>
          <bit code="13">14th harmonic</bit>
          <bit code="14">15th harmonic</bit>
          <bit code="15">16th harmonic</bit>
        </bitmask>
        <field name="Bitmask">0:  1st harmonic, 1:  2nd harmonic, 2:  3rd harmonic, 3:  4th harmonic, 4:  5th harmonic, 5:  6th harmonic, 6:  7th harmonic, 7:  8th harmonic, 8:  9th harmonic, 9:  10th harmonic, 10: 11th harmonic, 11: 12th harmonic, 12: 13th harmonic, 13: 14th harmonic, 14: 15th harmonic, 15: 16th harmonic</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Harmonic Notch Filter reference value" name="INS_HNTCH_REF" documentation="A reference value of zero disables dynamic updates on the Harmonic Notch Filter and a positive value enables dynamic updates on the Harmonic Notch Filter.  For throttle-based scaling, this parameter is the reference value associated with the specified frequency to facilitate frequency scaling of the Harmonic Notch Filter. For RPM and ESC telemetry based tracking, this parameter is set to 1 to enable the Harmonic Notch Filter using the RPM sensor or ESC telemetry set to measure rotor speed.  The sensor data is converted to Hz automatically for use in the Harmonic Notch Filter.  This reference value may also be used to scale the sensor data, if required.  For example, rpm sensor data is required to measure heli motor RPM. Therefore the reference value can be used to scale the RPM sensor to the rotor RPM." user="Advanced">
        <field name="Range">0.0 1.0</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Harmonic Notch Filter dynamic frequency tracking mode" name="INS_HNTCH_MODE" documentation="Harmonic Notch Filter dynamic frequency tracking mode. Dynamic updates can be throttle, RPM sensor, ESC telemetry or dynamic FFT based. Throttle-based harmonic notch cannot be used on fixed wing only planes. It can for Copters, QuadPlane(while in VTOL modes), and Rovers." user="Advanced">
        <field name="Range">0 5</field>
        <values>
          <value code="0">Fixed</value>
          <value code="1">Throttle</value>
          <value code="2">RPM Sensor</value>
          <value code="3">ESC Telemetry</value>
          <value code="4">Dynamic FFT</value>
          <value code="5">Second RPM Sensor</value>
        </values>
      </param>
      <param humanName="Harmonic Notch Filter options" name="INS_HNTCH_OPTS" documentation="Harmonic Notch Filter options. Triple and double-notches can provide deeper attenuation across a wider bandwidth with reduced latency than single notches and are suitable for larger aircraft. Multi-Source attaches a harmonic notch to each detected noise frequency instead of simply being multiples of the base frequency, in the case of FFT it will attach notches to each of three detected noise peaks, in the case of ESC it will attach notches to each of four motor RPM values. Loop rate update changes the notch center frequency at the scheduler loop rate rather than at the default of 200Hz. If both double and triple notches are specified only double notches will take effect." user="Advanced">
        <bitmask>
          <bit code="0">Double notch</bit>
          <bit code="1">Multi-Source</bit>
          <bit code="2">Update at loop rate</bit>
          <bit code="3">EnableOnAllIMUs</bit>
          <bit code="4">Triple notch</bit>
          <bit code="5">Use min freq on RPM source failure</bit>
          <bit code="6">Quintuple notch</bit>
        </bitmask>
        <field name="Bitmask">0:Double notch,1:Multi-Source,2:Update at loop rate,3:EnableOnAllIMUs,4:Triple notch, 5:Use min freq on RPM source failure, 6:Quintuple notch</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Throttle notch min frequency ratio" name="INS_HNTCH_FM_RAT" documentation="The minimum ratio below the configured frequency to take throttle based notch filters when flying at a throttle level below the reference throttle. Note that lower frequency notch filters will have more phase lag. If you want throttle based notch filtering to be effective at a throttle up to 30% below the configured notch frequency then set this parameter to 0.7. The default of 1.0 means the notch will not go below the frequency in the FREQ parameter." user="Advanced">
        <field name="Range">0.1 1.0</field>
      </param>
    </parameters>
    <parameters name="INS_LOG_">
      <param humanName="sample count per batch" name="INS_LOG_BAT_CNT" documentation="Number of samples to take when logging streams of IMU sensor readings.  Will be rounded down to a multiple of 32. This option takes effect on the next reboot." user="Advanced">
        <field name="Increment">32</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Bitmask" name="INS_LOG_BAT_MASK" documentation="Bitmap of which IMUs to log batch data for. This option takes effect on the next reboot." user="Advanced">
        <bitmask>
          <bit code="0">IMU1</bit>
          <bit code="1">IMU2</bit>
          <bit code="2">IMU3</bit>
        </bitmask>
        <field name="Bitmask">0:IMU1,1:IMU2,2:IMU3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Batch Logging Options Mask" name="INS_LOG_BAT_OPT" documentation="Options for the BatchSampler." user="Advanced">
        <bitmask>
          <bit code="0">Sensor-Rate Logging (sample at full sensor rate seen by AP)</bit>
          <bit code="1">Sample post-filtering</bit>
          <bit code="2">Sample pre- and post-filter</bit>
        </bitmask>
        <field name="Bitmask">0:Sensor-Rate Logging (sample at full sensor rate seen by AP), 1: Sample post-filtering, 2: Sample pre- and post-filter</field>
      </param>
      <param humanName="logging interval" name="INS_LOG_BAT_LGIN" documentation="Interval between pushing samples to the AP_Logger log">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="Increment">10</field>
      </param>
      <param humanName="logging count" name="INS_LOG_BAT_LGCT" documentation="Number of samples to push to count every INS_LOG_BAT_LGIN">
        <field name="Increment">1</field>
      </param>
    </parameters>
    <parameters name="INS_TCAL1_">
      <param humanName="Enable temperature calibration" name="INS_TCAL1_ENABLE" documentation="Enable the use of temperature calibration parameters for this IMU. For automatic learning set to 2 and also set the INS_TCALn_TMAX to the target temperature, then reboot" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">LearnCalibration</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature calibration min" name="INS_TCAL1_TMIN" documentation="The minimum temperature that the calibration is valid for" user="Advanced" calibration="1">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Temperature calibration max" name="INS_TCAL1_TMAX" documentation="The maximum temperature that the calibration is valid for. This must be at least 10 degrees above TMIN for calibration" user="Advanced" calibration="1">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient X axis" name="INS_TCAL1_ACC1_X" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient Y axis" name="INS_TCAL1_ACC1_Y" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient Z axis" name="INS_TCAL1_ACC1_Z" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient X axis" name="INS_TCAL1_ACC2_X" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient Y axis" name="INS_TCAL1_ACC2_Y" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient Z axis" name="INS_TCAL1_ACC2_Z" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient X axis" name="INS_TCAL1_ACC3_X" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient Y axis" name="INS_TCAL1_ACC3_Y" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient Z axis" name="INS_TCAL1_ACC3_Z" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient X axis" name="INS_TCAL1_GYR1_X" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient Y axis" name="INS_TCAL1_GYR1_Y" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient Z axis" name="INS_TCAL1_GYR1_Z" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient X axis" name="INS_TCAL1_GYR2_X" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient Y axis" name="INS_TCAL1_GYR2_Y" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient Z axis" name="INS_TCAL1_GYR2_Z" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient X axis" name="INS_TCAL1_GYR3_X" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient Y axis" name="INS_TCAL1_GYR3_Y" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient Z axis" name="INS_TCAL1_GYR3_Z" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
    </parameters>
    <parameters name="INS_TCAL2_">
      <param humanName="Enable temperature calibration" name="INS_TCAL2_ENABLE" documentation="Enable the use of temperature calibration parameters for this IMU. For automatic learning set to 2 and also set the INS_TCALn_TMAX to the target temperature, then reboot" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">LearnCalibration</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature calibration min" name="INS_TCAL2_TMIN" documentation="The minimum temperature that the calibration is valid for" user="Advanced" calibration="1">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Temperature calibration max" name="INS_TCAL2_TMAX" documentation="The maximum temperature that the calibration is valid for. This must be at least 10 degrees above TMIN for calibration" user="Advanced" calibration="1">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient X axis" name="INS_TCAL2_ACC1_X" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient Y axis" name="INS_TCAL2_ACC1_Y" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient Z axis" name="INS_TCAL2_ACC1_Z" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient X axis" name="INS_TCAL2_ACC2_X" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient Y axis" name="INS_TCAL2_ACC2_Y" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient Z axis" name="INS_TCAL2_ACC2_Z" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient X axis" name="INS_TCAL2_ACC3_X" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient Y axis" name="INS_TCAL2_ACC3_Y" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient Z axis" name="INS_TCAL2_ACC3_Z" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient X axis" name="INS_TCAL2_GYR1_X" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient Y axis" name="INS_TCAL2_GYR1_Y" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient Z axis" name="INS_TCAL2_GYR1_Z" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient X axis" name="INS_TCAL2_GYR2_X" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient Y axis" name="INS_TCAL2_GYR2_Y" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient Z axis" name="INS_TCAL2_GYR2_Z" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient X axis" name="INS_TCAL2_GYR3_X" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient Y axis" name="INS_TCAL2_GYR3_Y" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient Z axis" name="INS_TCAL2_GYR3_Z" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
    </parameters>
    <parameters name="INS_TCAL3_">
      <param humanName="Enable temperature calibration" name="INS_TCAL3_ENABLE" documentation="Enable the use of temperature calibration parameters for this IMU. For automatic learning set to 2 and also set the INS_TCALn_TMAX to the target temperature, then reboot" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">LearnCalibration</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature calibration min" name="INS_TCAL3_TMIN" documentation="The minimum temperature that the calibration is valid for" user="Advanced" calibration="1">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Temperature calibration max" name="INS_TCAL3_TMAX" documentation="The maximum temperature that the calibration is valid for. This must be at least 10 degrees above TMIN for calibration" user="Advanced" calibration="1">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient X axis" name="INS_TCAL3_ACC1_X" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient Y axis" name="INS_TCAL3_ACC1_Y" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 1st order temperature coefficient Z axis" name="INS_TCAL3_ACC1_Z" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient X axis" name="INS_TCAL3_ACC2_X" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient Y axis" name="INS_TCAL3_ACC2_Y" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 2nd order temperature coefficient Z axis" name="INS_TCAL3_ACC2_Z" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient X axis" name="INS_TCAL3_ACC3_X" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient Y axis" name="INS_TCAL3_ACC3_Y" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Accelerometer 3rd order temperature coefficient Z axis" name="INS_TCAL3_ACC3_Z" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient X axis" name="INS_TCAL3_GYR1_X" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient Y axis" name="INS_TCAL3_GYR1_Y" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 1st order temperature coefficient Z axis" name="INS_TCAL3_GYR1_Z" documentation="This is the 1st order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient X axis" name="INS_TCAL3_GYR2_X" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient Y axis" name="INS_TCAL3_GYR2_Y" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 2nd order temperature coefficient Z axis" name="INS_TCAL3_GYR2_Z" documentation="This is the 2nd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient X axis" name="INS_TCAL3_GYR3_X" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient Y axis" name="INS_TCAL3_GYR3_Y" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
      <param humanName="Gyroscope 3rd order temperature coefficient Z axis" name="INS_TCAL3_GYR3_Z" documentation="This is the 3rd order temperature coefficient from a temperature calibration" user="Advanced" calibration="1">
        <field name="Calibration">1</field>
      </param>
    </parameters>
    <parameters name="KDE_">
      <param humanName="Number of motor poles" name="KDE_NPOLE" documentation="Sets the number of motor poles to calculate the correct RPM value">
</param>
    </parameters>
    <parameters name="LAND_">
      <param humanName="Landing slope re-calc threshold" name="LAND_SLOPE_RCALC" documentation="This parameter is used when using a rangefinder during landing for altitude correction from baro drift (RNGFND_LANDING=1) and the altitude correction indicates your altitude is lower than the intended slope path. This value is the threshold of the correction to re-calculate the landing approach slope. Set to zero to keep the original slope all the way down and any detected baro drift will be corrected by pitching/throttling up to snap back to resume the original slope path. Otherwise, when a rangefinder altitude correction exceeds this threshold it will trigger a slope re-calculate to give a shallower slope. This also smoothes out the approach when flying over objects such as trees. Recommend a value of 2m." user="Advanced">
        <field name="Range">0 5</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Landing auto-abort slope threshold" name="LAND_ABORT_DEG" documentation="This parameter is used when using a rangefinder during landing for altitude correction from baro drift (RNGFND_LANDING=1) and the altitude correction indicates your actual altitude is higher than the intended slope path. Normally it would pitch down steeply but that can result in a crash with high airspeed so this allows remembering the baro offset and self-abort the landing and come around for another landing with the correct baro offset applied for a perfect slope. An auto-abort go-around will only happen once, next attempt will not auto-abort again. This operation happens entirely automatically in AUTO mode. This value is the delta degrees threshold to trigger the go-around compared to the original slope. Example: if set to 5 deg and the mission planned slope is 15 deg then if the new slope is 21 then it will go-around. Set to 0 to disable. Requires LAND_SLOPE_RCALC &gt; 0." user="Advanced">
        <field name="Range">0 90</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Landing Pitch" name="LAND_PITCH_DEG" documentation="Used in autoland to give the minimum pitch in the final stage of landing (after the flare). This parameter can be used to ensure that the final landing attitude is appropriate for the type of undercarriage on the aircraft. Note that it is a minimum pitch only - the landing code will control pitch above this value to try to achieve the configured landing sink rate." user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-20 20</field>
        <field name="Increment">10</field>
      </param>
      <param humanName="Landing flare altitude" name="LAND_FLARE_ALT" documentation="Altitude in autoland at which to lock heading and flare to the LAND_PITCH_DEG pitch. Note that this option is secondary to LAND_FLARE_SEC. For a good landing it preferable that the flare is triggered by LAND_FLARE_SEC." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 30</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Landing flare time" name="LAND_FLARE_SEC" documentation="Vertical time before landing point at which to lock heading and flare with the motor stopped. This is vertical time, and is calculated based solely on the current height above the ground and the current descent rate.  Set to 0 if you only wish to flare based on altitude (see LAND_FLARE_ALT)." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 10</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Landing pre-flare altitude" name="LAND_PF_ALT" documentation="Altitude to trigger pre-flare flight stage where LAND_PF_ARSPD controls airspeed. The pre-flare flight stage trigger works just like LAND_FLARE_ALT but higher. Disabled when LAND_PF_ARSPD is 0." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 30</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Landing pre-flare time" name="LAND_PF_SEC" documentation="Vertical time to ground to trigger pre-flare flight stage where LAND_PF_ARSPD controls airspeed. This pre-flare flight stage trigger works just like LAND_FLARE_SEC but earlier. Disabled when LAND_PF_ARSPD is 0." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 10</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Landing pre-flare airspeed" name="LAND_PF_ARSPD" documentation="Desired airspeed during pre-flare flight stage. This is useful to reduce airspeed just before the flare. Use 0 to disable." user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0 30</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Landing throttle slew rate" name="LAND_THR_SLEW" documentation="This parameter sets the slew rate for the throttle during auto landing. When this is zero the THR_SLEWRATE parameter is used during landing. The value is a percentage throttle change per second, so a value of 20 means to advance the throttle over 5 seconds on landing. Values below 50 are not recommended as it may cause a stall when airspeed is low and you can not throttle up fast enough." user="Standard">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Landing disarm delay" name="LAND_DISARMDELAY" documentation="After a landing has completed using a LAND waypoint, automatically disarm after this many seconds have passed. Use 0 to not disarm." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">1</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Set servos to neutral after landing" name="LAND_THEN_NEUTRL" documentation="When enabled, after an autoland and auto-disarm via LAND_DISARMDELAY happens then set all servos to neutral. This is helpful when an aircraft has a rough landing upside down or a crazy angle causing the servos to strain." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Servos to Neutral</value>
          <value code="2">Servos to Zero PWM</value>
        </values>
      </param>
      <param humanName="Landing abort using throttle" name="LAND_ABORT_THR" documentation="Allow a landing abort to trigger with an input throttle &gt;= 90%. This works with or without stick-mixing enabled." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Landing flap percentage" name="LAND_FLAP_PERCNT" documentation="The amount of flaps (as a percentage) to apply in the landing approach and flare of an automatic landing" user="Advanced">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Landing options bitmask" name="LAND_OPTIONS" documentation="Bitmask of options to use with landing." user="Advanced">
        <bitmask>
          <bit code="0">honor min throttle during landing flare</bit>
          <bit code="1">Increase Target landing airspeed constraint From Trim Airspeed to AIRSPEED_MAX</bit>
        </bitmask>
        <field name="Bitmask">0: honor min throttle during landing flare,1: Increase Target landing airspeed constraint From Trim Airspeed to AIRSPEED_MAX</field>
      </param>
      <param humanName="Flare aim point adjustment percentage." name="LAND_FLARE_AIM" documentation="This parameter controls how much the aim point is moved to allow for the time spent in the flare manoeuvre. When set to 100% the aim point is adjusted on the assumption that the flare sink rate controller instantly achieves the sink rate set by TECS_LAND_SINK. when set to 0%, no aim point adjustment is made. If the plane consistently touches down short of the aim point reduce the parameter and vice verse." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Headwind Compensation when Landing" name="LAND_WIND_COMP" documentation="This param controls how much headwind compensation is used when landing.  Headwind speed component multiplied by this parameter is added to TECS_LAND_ARSPD command.  Set to Zero to disable.  Note:  The target landing airspeed command is still limited to AIRSPEED_MAX." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Auto-landing type" name="LAND_TYPE" documentation="Specifies the auto-landing type to use" user="Standard">
        <values>
          <value code="0">Standard Glide Slope</value>
          <value code="1">Deepstall</value>
        </values>
      </param>
    </parameters>
    <parameters name="LAND_DS_">
      <param humanName="Deepstall forward velocity" name="LAND_DS_V_FWD" documentation="The forward velocity of the aircraft while stalled" user="Advanced">
        <field name="Range">0 20</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Deepstall slope a" name="LAND_DS_SLOPE_A" documentation="The a component of distance = a*wind + b" user="Advanced">
</param>
      <param humanName="Deepstall slope b" name="LAND_DS_SLOPE_B" documentation="The a component of distance = a*wind + b" user="Advanced">
</param>
      <param humanName="Deepstall approach extension" name="LAND_DS_APP_EXT" documentation="The horizontal distance from which the aircraft will approach before the stall" user="Advanced">
        <field name="Range">10 200</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Deepstall velocity down" name="LAND_DS_V_DWN" documentation="The downward velocity of the aircraft while stalled" user="Advanced">
        <field name="Range">0 20</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Deepstall slew speed" name="LAND_DS_SLEW_SPD" documentation="The speed at which the elevator slews to deepstall" user="Advanced">
        <field name="Range">0 2</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Deepstall elevator PWM" name="LAND_DS_ELEV_PWM" documentation="The PWM value in microseconds for the elevator at full deflection in deepstall" user="Advanced">
        <field name="Range">900 2100</field>
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
      </param>
      <param humanName="Deepstall enabled airspeed" name="LAND_DS_ARSP_MAX" documentation="The maximum aispeed where the deepstall steering controller is allowed to have control" user="Advanced">
        <field name="Range">5 20</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Deepstall minimum derating airspeed" name="LAND_DS_ARSP_MIN" documentation="Deepstall lowest airspeed where the deepstall controller isn't allowed full control" user="Advanced">
        <field name="Range">5 20</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Deepstall L1 period" name="LAND_DS_L1" documentation="Deepstall L1 navigational controller period" user="Advanced">
        <field name="Range">5 50</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Deepstall L1 I gain" name="LAND_DS_L1_I" documentation="Deepstall L1 integratior gain" user="Advanced">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Deepstall yaw rate limit" name="LAND_DS_YAW_LIM" documentation="The yaw rate limit while navigating in deepstall" user="Advanced">
        <field name="Range">0 90</field>
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
      </param>
      <param humanName="Deepstall L1 time constant" name="LAND_DS_L1_TCON" documentation="Time constant for deepstall L1 control" user="Advanced">
        <field name="Range">0 1</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="P gain" name="LAND_DS_P" documentation="P gain" user="Standard">
</param>
      <param humanName="I gain" name="LAND_DS_I" documentation="I gain" user="Standard">
</param>
      <param humanName="D gain" name="LAND_DS_D" documentation="D gain" user="Standard">
</param>
      <param humanName="IMax" name="LAND_DS_IMAX" documentation="Maximum integrator value" user="Standard">
</param>
      <param humanName="Deepstall minimum abort altitude" name="LAND_DS_ABORTALT" documentation="The minimum altitude which the aircraft must be above to abort a deepstall landing" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Aileron landing gain scalaing" name="LAND_DS_AIL_SCL" documentation="A scalar to reduce or increase the aileron control" user="Advanced">
        <field name="Range">0 2.0</field>
      </param>
    </parameters>
    <parameters name="LGR_">
      <param humanName="Enable landing gear" name="LGR_ENABLE" documentation="Enable landing gear control" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Landing Gear Startup position" name="LGR_STARTUP" documentation="Landing Gear Startup behaviour control" user="Standard">
        <values>
          <value code="0">WaitForPilotInput</value>
          <value code="1">Retract</value>
          <value code="2">Deploy</value>
        </values>
      </param>
      <param humanName="Chassis deployment feedback pin" name="LGR_DEPLOY_PIN" documentation="Pin number to use for detection of gear deployment. If set to -1 feedback is disabled. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Chassis deployment feedback pin polarity" name="LGR_DEPLOY_POL" documentation="Polarity for feedback pin. If this is 1 then the pin should be high when gear are deployed. If set to 0 then then deployed gear level is low." user="Standard">
        <values>
          <value code="0">Low</value>
          <value code="1">High</value>
        </values>
      </param>
      <param humanName="Weight on wheels feedback pin" name="LGR_WOW_PIN" documentation="Pin number to use for feedback of weight on wheels condition. If set to -1 feedback is disabled. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Weight on wheels feedback pin polarity" name="LGR_WOW_POL" documentation="Polarity for feedback pin. If this is 1 then the pin should be high when there is weight on wheels. If set to 0 then then weight on wheels level is low." user="Standard">
        <values>
          <value code="0">Low</value>
          <value code="1">High</value>
        </values>
      </param>
      <param humanName="Landing gear deployment altitude" name="LGR_DEPLOY_ALT" documentation="Altitude where the landing gear will be deployed. This should be lower than the RETRACT_ALT. If zero then altitude is not used for deploying landing gear. Only applies when vehicle is armed." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 1000</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Landing gear retract altitude" name="LGR_RETRACT_ALT" documentation="Altitude where the landing gear will be retracted. This should be higher than the DEPLOY_ALT. If zero then altitude is not used for retracting landing gear. Only applies when vehicle is armed." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 1000</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Landing gear auto retract/deploy options" name="LGR_OPTIONS" documentation="Options to retract or deploy landing gear in Auto, Takeoff and Autoland modes" user="Standard">
        <bitmask>
          <bit code="0">Retract after Takeoff</bit>
          <bit code="1">Deploy during Land</bit>
        </bitmask>
        <field name="Bitmask">0:Retract after Takeoff,1:Deploy during Land</field>
      </param>
    </parameters>
    <parameters name="LOG">
      <param humanName="AP_Logger Backend Storage type" name="LOG_BACKEND_TYPE" documentation="Bitmap of what Logger backend types to enable. Block-based logging is available on SITL and boards with dataflash chips. Multiple backends can be selected." user="Standard">
        <bitmask>
          <bit code="0">File</bit>
          <bit code="1">MAVLink</bit>
          <bit code="2">Block</bit>
        </bitmask>
        <field name="Bitmask">0:File,1:MAVLink,2:Block</field>
      </param>
      <param humanName="Logging File and Block Backend buffer size max (in kibibytes)" name="LOG_FILE_BUFSIZE" documentation="The File and Block backends use a buffer to store data before writing to the block device.  Raising this value may reduce &quot;gaps&quot; in your SD card logging but increases memory usage.  This buffer size may be reduced to free up available memory" user="Standard">
        <field name="Units">KiB</field>
        <field name="UnitText">kibibytes</field>
        <field name="Range">4 200</field>
      </param>
      <param humanName="Enable logging while disarmed" name="LOG_DISARMED" documentation="If LOG_DISARMED is set to 1 then logging will be enabled at all times including when disarmed. Logging before arming can make for very large logfiles but can help a lot when tracking down startup issues and is necessary if logging of EKF replay data is selected via the LOG_REPLAY parameter. If LOG_DISARMED is set to 2, then logging will be enabled when disarmed, but not if a USB connection is detected. This can be used to prevent unwanted data logs being generated when the vehicle is connected via USB for log downloading or parameter changes. If LOG_DISARMED is set to 3 then logging will happen while disarmed, but if the vehicle never arms then the logs using the filesystem backend will be discarded on the next boot." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Disabled on USB connection</value>
          <value code="3">Discard log on reboot if never armed</value>
        </values>
      </param>
      <param humanName="Enable logging of information needed for Replay" name="LOG_REPLAY" documentation="If LOG_REPLAY is set to 1 then the EKF2 and EKF3 state estimators will log detailed information needed for diagnosing problems with the Kalman filter. LOG_DISARMED must be set to 1 or 2 or else the log will not contain the pre-flight data required for replay testing of the EKF's. It is suggested that you also raise LOG_FILE_BUFSIZE to give more buffer space for logging and use a high quality microSD card to ensure no sensor data is lost." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Stop logging to current file on disarm" name="LOG_FILE_DSRMROT" documentation="When set, the current log file is closed when the vehicle is disarmed.  If LOG_DISARMED is set then a fresh log will be opened. Applies to the File and Block logging backends." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Maximum AP_Logger MAVLink Backend buffer size" name="LOG_MAV_BUFSIZE" documentation="Maximum amount of memory to allocate to AP_Logger-over-mavlink" user="Advanced">
        <field name="Units">kB</field>
        <field name="UnitText">kilobytes</field>
      </param>
      <param humanName="Timeout before giving up on file writes" name="LOG_FILE_TIMEOUT" documentation="This controls the amount of time before failing writes to a log file cause the file to be closed and logging stopped." user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Old logs on the SD card will be deleted to maintain this amount of free space" name="LOG_FILE_MB_FREE" documentation="Set this such that the free space is larger than your largest typical flight log" user="Standard">
        <field name="Units">MB</field>
        <field name="UnitText">megabyte</field>
        <field name="Range">2 1000</field>
      </param>
      <param humanName="Maximum logging rate for file backend" name="LOG_FILE_RATEMAX" documentation="This sets the maximum rate that streaming log messages will be logged to the file backend. A value of zero means that rate limiting is disabled." user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 1000</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Maximum logging rate for mavlink backend" name="LOG_MAV_RATEMAX" documentation="This sets the maximum rate that streaming log messages will be logged to the mavlink backend. A value of zero means that rate limiting is disabled." user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 1000</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Maximum logging rate for block backend" name="LOG_BLK_RATEMAX" documentation="This sets the maximum rate that streaming log messages will be logged to the block backend. A value of zero means that rate limiting is disabled." user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 1000</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Maximum logging rate when disarmed" name="LOG_DARM_RATEMAX" documentation="This sets the maximum rate that streaming log messages will be logged to any backend when disarmed. A value of zero means that the normal backend rate limit is applied." user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 1000</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Maximum number of log files" name="LOG_MAX_FILES" documentation="This sets the maximum number of log file that will be written on dataflash or sd card before starting to rotate log number. Limit is capped at 500 logs." user="Advanced">
        <field name="Range">2 500</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="MAV">
      <param humanName="MAVLink system ID of this vehicle" name="MAV_SYSID" documentation="Allows setting an individual MAVLink system id for this vehicle to distinguish it from others on the same network." user="Advanced">
        <field name="Range">1 255</field>
      </param>
      <param humanName="My ground station number" name="MAV_GCS_SYSID" documentation="This sets what MAVLink source system IDs are accepted for GCS failsafe handling, RC overrides and manual control. When MAV_GCS_SYSID_HI is less than MAV_GCS_SYSID then only this value is considered to be a GCS. When MAV_GCS_SYSID_HI is greater than or equal to MAV_GCS_SYSID then the range of values between MAV_GCS_SYSID and MAV_GCS_SYSID_HI (inclusive) are all treated as valid GCS MAVLink system IDs" user="Advanced">
        <field name="Range">1 255</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="ground station system ID, maximum" name="MAV_GCS_SYSID_HI" documentation="Upper limit of MAVLink source system IDs considered to be from the GCS. When this is less than MAV_GCS_SYSID then only MAV_GCS_SYSID is used as GCS ID. When this is greater than or equal to MAV_GCS_SYSID then the range of values from MAV_GCS_SYSID to MAV_GCS_SYSID_HI (inclusive) is treated as a GCS ID." user="Advanced">
        <field name="Range">0 255</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="MAVLink Options" name="MAV_OPTIONS" documentation="Alters various behaviour of the MAVLink interface" user="Advanced">
        <bitmask>
          <bit code="0">Accept MAVLink only from system IDs given by MAV_SYSID_GCS and MAV_SYSID_GCS_HI</bit>
        </bitmask>
        <field name="Bitmask">0:Accept MAVLink only from system IDs given by MAV_SYSID_GCS and MAV_SYSID_GCS_HI</field>
      </param>
      <param humanName="Telemetry startup delay" name="MAV_TELEM_DELAY" documentation="The amount of time (in seconds) to delay radio telemetry to prevent an Xbee bricking on power up" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 30</field>
        <field name="Increment">1</field>
      </param>
    </parameters>
    <parameters name="MAV1">
      <param humanName="Raw sensor stream rate" name="MAV1_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV1_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV1_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV1_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV1_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV1_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV1_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV1_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV1_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV1_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV1_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV2">
      <param humanName="Raw sensor stream rate" name="MAV2_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV2_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV2_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV2_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV2_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV2_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV2_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV2_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV2_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV2_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV2_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV3">
      <param humanName="Raw sensor stream rate" name="MAV3_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV3_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV3_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV3_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV3_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV3_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV3_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV3_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV3_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV3_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV3_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV4">
      <param humanName="Raw sensor stream rate" name="MAV4_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV4_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV4_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV4_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV4_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV4_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV4_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV4_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV4_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV4_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV4_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV5">
      <param humanName="Raw sensor stream rate" name="MAV5_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV5_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV5_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV5_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV5_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV5_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV5_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV5_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV5_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV5_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV5_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV6">
      <param humanName="Raw sensor stream rate" name="MAV6_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV6_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV6_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV6_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV6_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV6_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV6_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV6_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV6_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV6_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV6_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV7">
      <param humanName="Raw sensor stream rate" name="MAV7_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV7_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV7_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV7_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV7_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV7_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV7_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV7_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV7_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV7_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV7_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV8">
      <param humanName="Raw sensor stream rate" name="MAV8_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV8_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV8_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV8_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV8_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV8_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV8_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV8_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV8_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV8_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV8_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV9">
      <param humanName="Raw sensor stream rate" name="MAV9_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV9_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV9_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV9_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV9_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV9_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV9_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV9_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV9_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV9_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV9_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV10">
      <param humanName="Raw sensor stream rate" name="MAV10_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV10_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV10_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV10_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV10_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV10_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV10_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV10_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV10_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV10_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV10_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV11">
      <param humanName="Raw sensor stream rate" name="MAV11_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV11_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV11_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV11_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV11_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV11_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV11_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV11_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV11_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV11_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV11_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV12">
      <param humanName="Raw sensor stream rate" name="MAV12_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV12_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV12_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV12_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV12_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV12_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV12_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV12_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV12_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV12_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV12_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV13">
      <param humanName="Raw sensor stream rate" name="MAV13_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV13_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV13_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV13_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV13_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV13_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV13_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV13_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV13_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV13_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV13_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV14">
      <param humanName="Raw sensor stream rate" name="MAV14_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV14_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV14_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV14_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV14_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV14_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV14_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV14_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV14_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV14_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV14_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV15">
      <param humanName="Raw sensor stream rate" name="MAV15_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV15_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV15_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV15_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV15_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV15_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV15_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV15_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV15_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV15_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV15_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV16">
      <param humanName="Raw sensor stream rate" name="MAV16_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV16_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV16_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV16_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV16_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV16_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV16_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV16_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV16_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV16_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV16_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV17">
      <param humanName="Raw sensor stream rate" name="MAV17_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV17_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV17_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV17_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV17_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV17_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV17_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV17_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV17_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV17_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV17_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV18">
      <param humanName="Raw sensor stream rate" name="MAV18_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV18_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV18_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV18_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV18_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV18_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV18_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV18_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV18_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV18_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV18_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV19">
      <param humanName="Raw sensor stream rate" name="MAV19_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV19_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV19_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV19_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV19_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV19_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV19_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV19_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV19_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV19_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV19_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV20">
      <param humanName="Raw sensor stream rate" name="MAV20_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV20_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV20_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV20_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV20_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV20_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV20_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV20_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV20_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV20_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV20_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV21">
      <param humanName="Raw sensor stream rate" name="MAV21_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV21_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV21_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV21_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV21_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV21_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV21_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV21_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV21_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV21_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV21_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV22">
      <param humanName="Raw sensor stream rate" name="MAV22_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV22_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV22_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV22_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV22_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV22_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV22_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV22_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV22_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV22_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV22_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV23">
      <param humanName="Raw sensor stream rate" name="MAV23_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV23_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV23_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV23_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV23_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV23_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV23_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV23_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV23_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV23_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV23_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV24">
      <param humanName="Raw sensor stream rate" name="MAV24_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV24_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV24_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV24_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV24_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV24_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV24_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV24_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV24_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV24_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV24_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV25">
      <param humanName="Raw sensor stream rate" name="MAV25_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV25_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV25_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV25_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV25_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV25_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV25_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV25_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV25_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV25_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV25_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV26">
      <param humanName="Raw sensor stream rate" name="MAV26_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV26_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV26_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV26_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV26_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV26_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV26_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV26_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV26_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV26_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV26_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV27">
      <param humanName="Raw sensor stream rate" name="MAV27_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV27_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV27_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV27_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV27_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV27_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV27_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV27_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV27_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV27_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV27_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV28">
      <param humanName="Raw sensor stream rate" name="MAV28_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV28_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV28_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV28_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV28_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV28_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV28_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV28_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV28_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV28_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV28_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV29">
      <param humanName="Raw sensor stream rate" name="MAV29_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV29_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV29_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV29_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV29_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV29_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV29_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV29_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV29_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV29_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV29_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV30">
      <param humanName="Raw sensor stream rate" name="MAV30_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV30_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV30_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV30_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV30_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV30_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV30_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV30_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV30_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV30_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV30_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV31">
      <param humanName="Raw sensor stream rate" name="MAV31_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV31_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV31_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV31_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV31_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV31_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV31_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV31_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV31_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV31_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV31_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MAV32">
      <param humanName="Raw sensor stream rate" name="MAV32_RAW_SENS" documentation="MAVLink Stream rate of RAW_IMU, SCALED_IMU2, SCALED_IMU3, SCALED_PRESSURE, SCALED_PRESSURE2, SCALED_PRESSURE3 and AIRSPEED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extended status stream rate" name="MAV32_EXT_STAT" documentation="MAVLink Stream rate of SYS_STATUS, POWER_STATUS, MCU_STATUS, MEMINFO, CURRENT_WAYPOINT, GPS_RAW_INT, GPS_RTK (if available), GPS2_RAW_INT (if available), GPS2_RTK (if available), NAV_CONTROLLER_OUTPUT, FENCE_STATUS, and GLOBAL_TARGET_POS_INT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC Channel stream rate" name="MAV32_RC_CHAN" documentation="MAVLink Stream rate of SERVO_OUTPUT_RAW and RC_CHANNELS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Raw Control stream rate" name="MAV32_RAW_CTRL" documentation="MAVLink Raw Control stream rate of SERVO_OUT" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Position stream rate" name="MAV32_POSITION" documentation="MAVLink Stream rate of GLOBAL_POSITION_INT and LOCAL_POSITION_NED" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 1 stream rate" name="MAV32_EXTRA1" documentation="MAVLink Stream rate of ATTITUDE, SIMSTATE (SIM only), AHRS2, RPM, AOA_SSA, LANDING,ESC_TELEMETRY,EFI_STATUS, and PID_TUNING" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 2 stream rate" name="MAV32_EXTRA2" documentation="MAVLink Stream rate of VFR_HUD" user="Advanced">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Extra data type 3 stream rate" name="MAV32_EXTRA3" documentation="MAVLink Stream rate of AHRS, SYSTEM_TIME, WIND, RANGEFINDER, DISTANCE_SENSOR, TERRAIN_REQUEST, TERRAIN_REPORT, GIMBAL_DEVICE_ATTITUDE_STATUS, OPTICAL_FLOW, MAG_CAL_REPORT, MAG_CAL_PROGRESS, EKF_STATUS_REPORT, VIBRATION, and BATTERY_STATUS" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Parameter stream rate" name="MAV32_PARAMS" documentation="MAVLink Stream rate of PARAM_VALUE" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ADSB stream rate" name="MAV32_ADSB" documentation="MAVLink ADSB stream rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitmask for configuring this telemetry channel" name="MAV32_OPTIONS" documentation="Bitmask for configuring this telemetry channel. For having effect on all channels, set the relevant mask in all MAVx_OPTIONS parameters. Keep in mind that part of the flags may require a reboot to take action." user="Standard">
        <field name="RebootRequired">True</field>
        <bitmask>
          <bit code="0">Accept unsigned MAVLink2 messages</bit>
          <bit code="1">Don't forward mavlink to/from</bit>
          <bit code="2">Ignore Streamrate</bit>
          <bit code="3">forward mavlink packets that don't pass CRC</bit>
        </bitmask>
        <field name="Bitmask">0:Accept unsigned MAVLink2 messages, 1:Don't forward mavlink to/from, 2:Ignore Streamrate, 3:forward mavlink packets that don't pass CRC</field>
      </param>
    </parameters>
    <parameters name="MIS_">
      <param humanName="Total mission commands" name="MIS_TOTAL" documentation="The number of mission mission items that has been loaded by the ground station. Do not change this manually." user="Advanced">
        <field name="Range">0 32766</field>
        <field name="Increment">1</field>
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Mission Restart when entering Auto mode" name="MIS_RESTART" documentation="Controls mission starting point when entering Auto mode (either restart from beginning of mission or resume from last command run)" user="Advanced">
        <values>
          <value code="0">Resume Mission</value>
          <value code="1">Restart Mission</value>
        </values>
      </param>
      <param humanName="Mission options bitmask" name="MIS_OPTIONS" documentation="Bitmask of what options to use in missions. If the DontZeroCounter counter option is set than on completion of a jump loop the counter is left at zero, so the jump will not happen again if the loop is re-entered." user="Advanced">
        <bitmask>
          <bit code="0">Clear Mission on reboot</bit>
          <bit code="1">Use distance to land calc on battery failsafe</bit>
          <bit code="2">ContinueAfterLand</bit>
          <bit code="3">DontZeroCounter</bit>
        </bitmask>
        <field name="Bitmask">0:Clear Mission on reboot, 1:Use distance to land calc on battery failsafe,2:ContinueAfterLand, 3:DontZeroCounter</field>
      </param>
    </parameters>
    <parameters name="MNT1">
      <param humanName="Mount Type" name="MNT1_TYPE" documentation="Mount Type" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="2">3DR Solo</value>
          <value code="3">Alexmos Serial</value>
          <value code="7">BrushlessPWM</value>
          <value code="13">CADDX</value>
          <value code="6">MAVLink (Gremsy/AVT)</value>
          <value code="4">SToRM32 MAVLink</value>
          <value code="5">SToRM32 Serial</value>
          <value code="9">Scripting</value>
          <value code="1">Servo</value>
          <value code="8">Siyi</value>
          <value code="12">Topotek</value>
          <value code="11">Viewpro</value>
          <value code="14">XFRobot</value>
          <value code="10">Xacti</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Mount default operating mode" name="MNT1_DEFLT_MODE" documentation="Mount default operating mode on startup and after control is returned from autopilot" user="Standard">
        <values>
          <value code="0">Retracted</value>
          <value code="1">Neutral</value>
          <value code="2">MavLink Targeting</value>
          <value code="3">RC Targeting</value>
          <value code="4">GPS Point</value>
          <value code="5">SysID Target</value>
          <value code="6">Home Location</value>
        </values>
      </param>
      <param humanName="Mount RC Rate" name="MNT1_RC_RATE" documentation="Pilot rate control's maximum rate.  Set to zero to use angle control" user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">0 90</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Roll angle minimum" name="MNT1_ROLL_MIN" documentation="Mount Roll angle minimum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Roll angle maximum" name="MNT1_ROLL_MAX" documentation="Mount Roll angle maximum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Pitch angle minimum" name="MNT1_PITCH_MIN" documentation="Mount Pitch angle minimum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-90 90</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Pitch angle maximum" name="MNT1_PITCH_MAX" documentation="Mount Pitch angle maximum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-90 90</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Yaw angle minimum" name="MNT1_YAW_MIN" documentation="Mount Yaw angle minimum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Yaw angle maximum" name="MNT1_YAW_MAX" documentation="Mount Yaw angle maximum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount roll angle when in retracted position" name="MNT1_RETRACT_X" documentation="Mount roll angle when in retracted position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount pitch angle when in retracted position" name="MNT1_RETRACT_Y" documentation="Mount pitch angle when in retracted position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount yaw angle when in retracted position" name="MNT1_RETRACT_Z" documentation="Mount yaw angle when in retracted position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount roll angle when in neutral position" name="MNT1_NEUTRAL_X" documentation="Mount roll angle when in neutral position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount pitch angle when in neutral position" name="MNT1_NEUTRAL_Y" documentation="Mount pitch angle when in neutral position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount yaw angle when in neutral position" name="MNT1_NEUTRAL_Z" documentation="Mount yaw angle when in neutral position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Roll stabilization lead time" name="MNT1_LEAD_RLL" documentation="Servo mount roll angle output leads the vehicle angle by this amount of time based on current roll rate. Increase until the servo is responsive but does not overshoot" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0.0 0.2</field>
        <field name="Increment">0.005</field>
      </param>
      <param humanName="Mount Pitch stabilization lead time" name="MNT1_LEAD_PTCH" documentation="Servo mount pitch angle output leads the vehicle angle by this amount of time based on current pitch rate. Increase until the servo is responsive but does not overshoot" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0.0 0.2</field>
        <field name="Increment">0.005</field>
      </param>
      <param humanName="Mount Target sysID" name="MNT1_SYSID_DFLT" documentation="Default Target sysID for the mount to point to" user="Standard">
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Mount Device ID" name="MNT1_DEVID" documentation="Mount device ID, taking into account its type, bus and instance" user="Advanced">
</param>
      <param humanName="Mount options" name="MNT1_OPTIONS" documentation="Mount options bitmask, note bit 2 only impacts RC targetting mode" user="Standard">
        <bitmask>
          <bit code="0">RC lock state from previous mode</bit>
          <bit code="1">Return to neutral angles on RC failsafe</bit>
          <bit code="2">Force FPV (bf) lock on roll and pitch</bit>
        </bitmask>
        <field name="Bitmask">0:RC lock state from previous mode, 1:Return to neutral angles on RC failsafe, 2:Force FPV (bf) lock on roll and pitch</field>
      </param>
    </parameters>
    <parameters name="MNT2">
      <param humanName="Mount Type" name="MNT2_TYPE" documentation="Mount Type" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="2">3DR Solo</value>
          <value code="3">Alexmos Serial</value>
          <value code="7">BrushlessPWM</value>
          <value code="13">CADDX</value>
          <value code="6">MAVLink (Gremsy/AVT)</value>
          <value code="4">SToRM32 MAVLink</value>
          <value code="5">SToRM32 Serial</value>
          <value code="9">Scripting</value>
          <value code="1">Servo</value>
          <value code="8">Siyi</value>
          <value code="12">Topotek</value>
          <value code="11">Viewpro</value>
          <value code="14">XFRobot</value>
          <value code="10">Xacti</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Mount default operating mode" name="MNT2_DEFLT_MODE" documentation="Mount default operating mode on startup and after control is returned from autopilot" user="Standard">
        <values>
          <value code="0">Retracted</value>
          <value code="1">Neutral</value>
          <value code="2">MavLink Targeting</value>
          <value code="3">RC Targeting</value>
          <value code="4">GPS Point</value>
          <value code="5">SysID Target</value>
          <value code="6">Home Location</value>
        </values>
      </param>
      <param humanName="Mount RC Rate" name="MNT2_RC_RATE" documentation="Pilot rate control's maximum rate.  Set to zero to use angle control" user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">0 90</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Roll angle minimum" name="MNT2_ROLL_MIN" documentation="Mount Roll angle minimum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Roll angle maximum" name="MNT2_ROLL_MAX" documentation="Mount Roll angle maximum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Pitch angle minimum" name="MNT2_PITCH_MIN" documentation="Mount Pitch angle minimum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-90 90</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Pitch angle maximum" name="MNT2_PITCH_MAX" documentation="Mount Pitch angle maximum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-90 90</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Yaw angle minimum" name="MNT2_YAW_MIN" documentation="Mount Yaw angle minimum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Yaw angle maximum" name="MNT2_YAW_MAX" documentation="Mount Yaw angle maximum" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount roll angle when in retracted position" name="MNT2_RETRACT_X" documentation="Mount roll angle when in retracted position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount pitch angle when in retracted position" name="MNT2_RETRACT_Y" documentation="Mount pitch angle when in retracted position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount yaw angle when in retracted position" name="MNT2_RETRACT_Z" documentation="Mount yaw angle when in retracted position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount roll angle when in neutral position" name="MNT2_NEUTRAL_X" documentation="Mount roll angle when in neutral position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount pitch angle when in neutral position" name="MNT2_NEUTRAL_Y" documentation="Mount pitch angle when in neutral position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount yaw angle when in neutral position" name="MNT2_NEUTRAL_Z" documentation="Mount yaw angle when in neutral position" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180.0 180.0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Mount Roll stabilization lead time" name="MNT2_LEAD_RLL" documentation="Servo mount roll angle output leads the vehicle angle by this amount of time based on current roll rate. Increase until the servo is responsive but does not overshoot" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0.0 0.2</field>
        <field name="Increment">0.005</field>
      </param>
      <param humanName="Mount Pitch stabilization lead time" name="MNT2_LEAD_PTCH" documentation="Servo mount pitch angle output leads the vehicle angle by this amount of time based on current pitch rate. Increase until the servo is responsive but does not overshoot" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0.0 0.2</field>
        <field name="Increment">0.005</field>
      </param>
      <param humanName="Mount Target sysID" name="MNT2_SYSID_DFLT" documentation="Default Target sysID for the mount to point to" user="Standard">
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Mount Device ID" name="MNT2_DEVID" documentation="Mount device ID, taking into account its type, bus and instance" user="Advanced">
</param>
      <param humanName="Mount options" name="MNT2_OPTIONS" documentation="Mount options bitmask, note bit 2 only impacts RC targetting mode" user="Standard">
        <bitmask>
          <bit code="0">RC lock state from previous mode</bit>
          <bit code="1">Return to neutral angles on RC failsafe</bit>
          <bit code="2">Force FPV (bf) lock on roll and pitch</bit>
        </bitmask>
        <field name="Bitmask">0:RC lock state from previous mode, 1:Return to neutral angles on RC failsafe, 2:Force FPV (bf) lock on roll and pitch</field>
      </param>
    </parameters>
    <parameters name="MSP">
      <param humanName="Cell count override" name="MSP_OSD_NCELLS" documentation="Used for average cell voltage calculation" user="Standard">
        <values>
          <value code="0">Auto</value>
          <value code="1">1</value>
          <value code="2">2</value>
          <value code="3">3</value>
          <value code="4">4</value>
          <value code="5">5</value>
          <value code="6">6</value>
          <value code="7">7</value>
          <value code="8">8</value>
          <value code="9">9</value>
          <value code="10">10</value>
          <value code="11">11</value>
          <value code="12">12</value>
          <value code="13">13</value>
          <value code="14">14</value>
        </values>
      </param>
      <param humanName="MSP OSD Options" name="MSP_OPTIONS" documentation="A bitmask to set some MSP specific options: EnableTelemetryMode-allows &quot;push&quot; mode telemetry when only rx line of OSD ic connected to autopilot,  EnableBTFLFonts-uses indexes corresponding to Betaflight fonts if OSD uses those instead of ArduPilot fonts. EnableINAVFonts uses INAV fonts and overrides EnableBTFLFonts if that option is enabled." user="Standard">
        <bitmask>
          <bit code="0">EnableTelemetryMode</bit>
          <bit code="1">unused</bit>
          <bit code="2">EnableBTFLFonts</bit>
          <bit code="3">EnableINAVFonts</bit>
        </bitmask>
        <field name="Bitmask">0:EnableTelemetryMode, 1: unused, 2:EnableBTFLFonts, 3:EnableINAVFonts</field>
      </param>
    </parameters>
    <parameters name="NAVL1_">
      <param humanName="L1 control period" name="NAVL1_PERIOD" documentation="Period in seconds of L1 tracking loop. This parameter is the primary control for aggressiveness of turns in auto mode. This needs to be larger for less responsive airframes. The default is quite conservative, but for most RC aircraft will lead to reasonable flight. For smaller more agile aircraft a value closer to 15 is appropriate, or even as low as 10 for some very agile aircraft. When tuning, change this value in small increments, as a value that is much too small (say 5 or 10 below the right value) can lead to very radical turns, and a risk of stalling." user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">1 60</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="L1 control damping ratio" name="NAVL1_DAMPING" documentation="Damping ratio for L1 control. Increase this in increments of 0.05 if you are getting overshoot in path tracking. You should not need a value below 0.7 or above 0.85." user="Advanced">
        <field name="Range">0.6 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="L1 control crosstrack integrator gain" name="NAVL1_XTRACK_I" documentation="Crosstrack error integrator gain. This gain is applied to the crosstrack error to ensure it converges to zero. Set to zero to disable. Smaller values converge slower, higher values will cause crosstrack error oscillation." user="Advanced">
        <field name="Range">0 0.1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Loiter Radius Bank Angle Limit" name="NAVL1_LIM_BANK" documentation="The sealevel bank angle limit for a continuous loiter. (Used to calculate airframe loading limits at higher altitudes). Setting to 0, will instead just scale the loiter radius directly" user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 89</field>
      </param>
    </parameters>
    <parameters name="NET_">
      <param humanName="Networking Enable" name="NET_ENABLE" documentation="Networking Enable" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IP Subnet mask" name="NET_NETMASK" documentation="Allows setting static subnet mask. The value is a count of consecutive bits. Examples: 24 = 255.255.255.0, 16 = 255.255.0.0" user="Advanced">
        <field name="Range">0 32</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="DHCP client" name="NET_DHCP" documentation="Enable/Disable DHCP client" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Test enable flags" name="NET_TESTS" documentation="Enable/Disable networking tests" user="Advanced">
        <bitmask>
          <bit code="0">UDP echo test</bit>
          <bit code="1">TCP echo test</bit>
          <bit code="2">TCP discard test</bit>
          <bit code="3">TCP reflect test</bit>
        </bitmask>
        <field name="Bitmask">0:UDP echo test,1:TCP echo test, 2:TCP discard test, 3:TCP reflect test</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Networking options" name="NET_OPTIONS" documentation="Networking options" user="Advanced">
        <bitmask>
          <bit code="0">EnablePPP Ethernet gateway</bit>
          <bit code="1">Enable CAN1 multicast endpoint</bit>
          <bit code="2">Enable CAN2 multicast endpoint</bit>
          <bit code="3">Enable CAN1 multicast bridged</bit>
          <bit code="4">Enable CAN2 multicast bridged</bit>
          <bit code="5">DisablePPPTimeout</bit>
          <bit code="6">DisablePPPEchoLimit</bit>
          <bit code="7">Capture to file</bit>
        </bitmask>
        <field name="Bitmask">0:EnablePPP Ethernet gateway, 1:Enable CAN1 multicast endpoint, 2:Enable CAN2 multicast endpoint, 3:Enable CAN1 multicast bridged, 4:Enable CAN2 multicast bridged, 5:DisablePPPTimeout, 6:DisablePPPEchoLimit, 7:Capture to file</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_GWADDR">
      <param humanName="IPv4 Address 1st byte" name="NET_GWADDR0" documentation="IPv4 address. Example: 192.xxx.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 2nd byte" name="NET_GWADDR1" documentation="IPv4 address. Example: xxx.168.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 3rd byte" name="NET_GWADDR2" documentation="IPv4 address. Example: xxx.xxx.144.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 4th byte" name="NET_GWADDR3" documentation="IPv4 address. Example: xxx.xxx.xxx.14">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_IPADDR">
      <param humanName="IPv4 Address 1st byte" name="NET_IPADDR0" documentation="IPv4 address. Example: 192.xxx.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 2nd byte" name="NET_IPADDR1" documentation="IPv4 address. Example: xxx.168.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 3rd byte" name="NET_IPADDR2" documentation="IPv4 address. Example: xxx.xxx.144.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 4th byte" name="NET_IPADDR3" documentation="IPv4 address. Example: xxx.xxx.xxx.14">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_MACADDR">
      <param humanName="MAC Address 1st byte" name="NET_MACADDR0" documentation="MAC address 1st byte" user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="MAC Address 2nd byte" name="NET_MACADDR1" documentation="MAC address 2nd byte" user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="MAC Address 3rd byte" name="NET_MACADDR2" documentation="MAC address 3rd byte" user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="MAC Address 4th byte" name="NET_MACADDR3" documentation="MAC address 4th byte" user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="MAC Address 5th byte" name="NET_MACADDR4" documentation="MAC address 5th byte" user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="MAC Address 6th byte" name="NET_MACADDR5" documentation="MAC address 6th byte" user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P1_">
      <param humanName="Port type" name="NET_P1_TYPE" documentation="Port type for network serial port. For the two client types a valid destination IP address must be set. For the two server types either 0.0.0.0 or a local address can be used. The UDP client type will use broadcast if the IP is set to 255.255.255.255 and will use UDP multicast if the IP is in the multicast address range." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">UDP client</value>
          <value code="2">UDP server</value>
          <value code="3">TCP client</value>
          <value code="4">TCP server</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Protocol" name="NET_P1_PROTOCOL" documentation="Networked serial port protocol" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Port number" name="NET_P1_PORT" documentation="Port number" user="Advanced">
        <field name="Range">0 65535</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P1_IP">
      <param humanName="IPv4 Address 1st byte" name="NET_P1_IP0" documentation="IPv4 address. Example: 192.xxx.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 2nd byte" name="NET_P1_IP1" documentation="IPv4 address. Example: xxx.168.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 3rd byte" name="NET_P1_IP2" documentation="IPv4 address. Example: xxx.xxx.144.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 4th byte" name="NET_P1_IP3" documentation="IPv4 address. Example: xxx.xxx.xxx.14">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P2_">
      <param humanName="Port type" name="NET_P2_TYPE" documentation="Port type for network serial port. For the two client types a valid destination IP address must be set. For the two server types either 0.0.0.0 or a local address can be used. The UDP client type will use broadcast if the IP is set to 255.255.255.255 and will use UDP multicast if the IP is in the multicast address range." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">UDP client</value>
          <value code="2">UDP server</value>
          <value code="3">TCP client</value>
          <value code="4">TCP server</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Protocol" name="NET_P2_PROTOCOL" documentation="Networked serial port protocol" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Port number" name="NET_P2_PORT" documentation="Port number" user="Advanced">
        <field name="Range">0 65535</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P2_IP">
      <param humanName="IPv4 Address 1st byte" name="NET_P2_IP0" documentation="IPv4 address. Example: 192.xxx.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 2nd byte" name="NET_P2_IP1" documentation="IPv4 address. Example: xxx.168.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 3rd byte" name="NET_P2_IP2" documentation="IPv4 address. Example: xxx.xxx.144.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 4th byte" name="NET_P2_IP3" documentation="IPv4 address. Example: xxx.xxx.xxx.14">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P3_">
      <param humanName="Port type" name="NET_P3_TYPE" documentation="Port type for network serial port. For the two client types a valid destination IP address must be set. For the two server types either 0.0.0.0 or a local address can be used. The UDP client type will use broadcast if the IP is set to 255.255.255.255 and will use UDP multicast if the IP is in the multicast address range." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">UDP client</value>
          <value code="2">UDP server</value>
          <value code="3">TCP client</value>
          <value code="4">TCP server</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Protocol" name="NET_P3_PROTOCOL" documentation="Networked serial port protocol" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Port number" name="NET_P3_PORT" documentation="Port number" user="Advanced">
        <field name="Range">0 65535</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P3_IP">
      <param humanName="IPv4 Address 1st byte" name="NET_P3_IP0" documentation="IPv4 address. Example: 192.xxx.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 2nd byte" name="NET_P3_IP1" documentation="IPv4 address. Example: xxx.168.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 3rd byte" name="NET_P3_IP2" documentation="IPv4 address. Example: xxx.xxx.144.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 4th byte" name="NET_P3_IP3" documentation="IPv4 address. Example: xxx.xxx.xxx.14">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P4_">
      <param humanName="Port type" name="NET_P4_TYPE" documentation="Port type for network serial port. For the two client types a valid destination IP address must be set. For the two server types either 0.0.0.0 or a local address can be used. The UDP client type will use broadcast if the IP is set to 255.255.255.255 and will use UDP multicast if the IP is in the multicast address range." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">UDP client</value>
          <value code="2">UDP server</value>
          <value code="3">TCP client</value>
          <value code="4">TCP server</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Protocol" name="NET_P4_PROTOCOL" documentation="Networked serial port protocol" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Port number" name="NET_P4_PORT" documentation="Port number" user="Advanced">
        <field name="Range">0 65535</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P4_IP">
      <param humanName="IPv4 Address 1st byte" name="NET_P4_IP0" documentation="IPv4 address. Example: 192.xxx.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 2nd byte" name="NET_P4_IP1" documentation="IPv4 address. Example: xxx.168.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 3rd byte" name="NET_P4_IP2" documentation="IPv4 address. Example: xxx.xxx.144.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 4th byte" name="NET_P4_IP3" documentation="IPv4 address. Example: xxx.xxx.xxx.14">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_REMPPP_IP">
      <param humanName="IPv4 Address 1st byte" name="NET_REMPPP_IP0" documentation="IPv4 address. Example: 192.xxx.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 2nd byte" name="NET_REMPPP_IP1" documentation="IPv4 address. Example: xxx.168.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 3rd byte" name="NET_REMPPP_IP2" documentation="IPv4 address. Example: xxx.xxx.144.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 4th byte" name="NET_REMPPP_IP3" documentation="IPv4 address. Example: xxx.xxx.xxx.14">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_TEST_IP">
      <param humanName="IPv4 Address 1st byte" name="NET_TEST_IP0" documentation="IPv4 address. Example: 192.xxx.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 2nd byte" name="NET_TEST_IP1" documentation="IPv4 address. Example: xxx.168.xxx.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 3rd byte" name="NET_TEST_IP2" documentation="IPv4 address. Example: xxx.xxx.144.xxx">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="IPv4 Address 4th byte" name="NET_TEST_IP3" documentation="IPv4 address. Example: xxx.xxx.xxx.14">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NMEA_">
      <param humanName="NMEA Output rate" name="NMEA_RATE_MS" documentation="NMEA Output rate. This controls the interval at which all the enabled NMEA messages are sent. Most NMEA systems expect 100ms (10Hz) or slower." user="Standard">
        <field name="Range">20 2000</field>
        <field name="Increment">1</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="Messages Enable bitmask" name="NMEA_MSG_EN" documentation="This is a bitmask of enabled NMEA messages. All messages will be sent consecutively at the same rate interval" user="Standard">
        <bitmask>
          <bit code="0">GPGGA</bit>
          <bit code="1">GPRMC</bit>
          <bit code="2">PASHR</bit>
        </bitmask>
        <field name="Bitmask">0:GPGGA,1:GPRMC,2:PASHR</field>
      </param>
    </parameters>
    <parameters name="NTF_">
      <param humanName="LED Brightness" name="NTF_LED_BRIGHT" documentation="Select the RGB LED brightness level. When USB is connected brightness will never be higher than low regardless of the setting." user="Advanced">
        <values>
          <value code="0">Off</value>
          <value code="1">Low</value>
          <value code="2">Medium</value>
          <value code="3">High</value>
        </values>
      </param>
      <param humanName="Buzzer Driver Types" name="NTF_BUZZ_TYPES" documentation="Controls what types of Buzzer will be enabled" user="Advanced">
        <bitmask>
          <bit code="0">Built-in buzzer</bit>
          <bit code="1">DShot</bit>
          <bit code="2">DroneCAN</bit>
        </bitmask>
        <field name="Bitmask">0:Built-in buzzer, 1:DShot, 2:DroneCAN</field>
      </param>
      <param humanName="Specifies colour source for the RGBLed" name="NTF_LED_OVERRIDE" documentation="Specifies the source for the colours and brightness for the LED.  OutbackChallenge conforms to the MedicalExpress (https://uavchallenge.org/medical-express/) rules, essentially &quot;Green&quot; is disarmed (safe-to-approach), &quot;Red&quot; is armed (not safe-to-approach). Traffic light is a simplified color set, red when armed, yellow when the safety switch is not surpressing outputs (but disarmed), and green when outputs are surpressed and disarmed, the LED will blink faster if disarmed and failing arming checks." user="Advanced">
        <values>
          <value code="0">Standard</value>
          <value code="1">MAVLink/Scripting/AP_Periph</value>
          <value code="2">OutbackChallenge</value>
          <value code="3">TrafficLight</value>
        </values>
      </param>
      <param humanName="Type of on-board I2C display" name="NTF_DISPLAY_TYPE" documentation="This sets up the type of on-board I2C display. Disabled by default." user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">ssd1306</value>
          <value code="2">sh1106</value>
          <value code="10">SITL</value>
        </values>
      </param>
      <param humanName="OreoLED Theme" name="NTF_OREO_THEME" documentation="Enable/Disable Solo Oreo LED driver, 0 to disable, 1 for Aircraft theme, 2 for Rover theme" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Aircraft</value>
          <value code="2">Rover</value>
        </values>
      </param>
      <param humanName="Buzzer pin" name="NTF_BUZZ_PIN" documentation="Enables to connect active buzzer to arbitrary pin. Requires 3-pin buzzer or additional MOSFET! Some the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
        </values>
      </param>
      <param humanName="LED Driver Types" name="NTF_LED_TYPES" documentation="Controls what types of LEDs will be enabled" user="Advanced">
        <bitmask>
          <bit code="0">Built-in LED</bit>
          <bit code="1">Internal ToshibaLED</bit>
          <bit code="2">External ToshibaLED</bit>
          <bit code="3">External PCA9685</bit>
          <bit code="4">Oreo LED</bit>
          <bit code="5">DroneCAN</bit>
          <bit code="6">NCP5623 External</bit>
          <bit code="7">NCP5623 Internal</bit>
          <bit code="8">NeoPixel</bit>
          <bit code="9">ProfiLED</bit>
          <bit code="10">Scripting</bit>
          <bit code="11">DShot</bit>
          <bit code="12">ProfiLED_SPI</bit>
          <bit code="13">LP5562 External</bit>
          <bit code="14">LP5562 Internal</bit>
          <bit code="15">IS31FL3195 External</bit>
          <bit code="16">IS31FL3195 Internal</bit>
          <bit code="17">DiscreteRGB</bit>
          <bit code="18">NeoPixelRGB</bit>
          <bit code="19">ProfiLED_IOMCU</bit>
        </bitmask>
        <field name="Bitmask">0:Built-in LED, 1:Internal ToshibaLED, 2:External ToshibaLED, 3:External PCA9685, 4:Oreo LED, 5:DroneCAN, 6:NCP5623 External, 7:NCP5623 Internal, 8:NeoPixel, 9:ProfiLED, 10:Scripting, 11:DShot, 12:ProfiLED_SPI, 13:LP5562 External, 14: LP5562 Internal, 15:IS31FL3195 External, 16: IS31FL3195 Internal, 17: DiscreteRGB, 18: NeoPixelRGB, 19:ProfiLED_IOMCU</field>
      </param>
      <param humanName="Buzzer-on pin logic level" name="NTF_BUZZ_ON_LVL" documentation="Specifies pin level that indicates buzzer should play" user="Advanced">
        <values>
          <value code="0">LowIsOn</value>
          <value code="1">HighIsOn</value>
        </values>
      </param>
      <param humanName="Buzzer volume" name="NTF_BUZZ_VOLUME" documentation="Control the volume of the buzzer">
        <field name="Range">0 100</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Serial LED String Length" name="NTF_LED_LEN" documentation="The number of Serial LED's to use for notifications (NeoPixel's and ProfiLED)" user="Advanced">
        <field name="Range">1 32</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OSD">
      <param humanName="OSD type" name="OSD_TYPE" documentation="OSD type. TXONLY makes the OSD parameter selection available to other modules even if there is no native OSD support on the board, for instance CRSF." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">MAX7456</value>
          <value code="2">SITL</value>
          <value code="3">MSP</value>
          <value code="4">TXONLY</value>
          <value code="5">MSP_DISPLAYPORT</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Screen switch transmitter channel" name="OSD_CHAN" documentation="This sets the channel used to switch different OSD screens." user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="5">Chan5</value>
          <value code="6">Chan6</value>
          <value code="7">Chan7</value>
          <value code="8">Chan8</value>
          <value code="9">Chan9</value>
          <value code="10">Chan10</value>
          <value code="11">Chan11</value>
          <value code="12">Chan12</value>
          <value code="13">Chan13</value>
          <value code="14">Chan14</value>
          <value code="15">Chan15</value>
          <value code="16">Chan16</value>
        </values>
      </param>
      <param humanName="Screen switch method" name="OSD_SW_METHOD" documentation="This sets the method used to switch different OSD screens." user="Standard">
        <values>
          <value code="0">switch to next screen if channel value was changed</value>
          <value code="1">select screen based on pwm ranges specified for each screen</value>
          <value code="2">switch to next screen after low to high transition and every 1s while channel value is high</value>
        </values>
      </param>
      <param humanName="OSD Options" name="OSD_OPTIONS" documentation="This sets options that change the display" user="Standard">
        <bitmask>
          <bit code="0">UseDecimalPack</bit>
          <bit code="1">InvertedWindArrow</bit>
          <bit code="2">InvertedAHRoll</bit>
          <bit code="3">Convert feet to miles at 5280ft instead of 10000ft</bit>
          <bit code="4">DisableCrosshair</bit>
          <bit code="5">TranslateArrows</bit>
          <bit code="6">AviationStyleAH</bit>
          <bit code="7">Prefix LQ with RF Mode</bit>
        </bitmask>
        <field name="Bitmask">0:UseDecimalPack, 1:InvertedWindArrow, 2:InvertedAHRoll, 3:Convert feet to miles at 5280ft instead of 10000ft, 4:DisableCrosshair, 5:TranslateArrows, 6:AviationStyleAH, 7:Prefix LQ with RF Mode</field>
      </param>
      <param humanName="OSD Font" name="OSD_FONT" documentation="This sets which OSD font to use. It is an integer from 0 to the number of fonts available" user="Standard">
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="OSD vertical offset" name="OSD_V_OFFSET" documentation="Sets vertical offset of the osd inside image" user="Standard">
        <field name="Range">0 31</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="OSD horizontal offset" name="OSD_H_OFFSET" documentation="Sets horizontal offset of the osd inside image" user="Standard">
        <field name="Range">0 63</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RSSI warn level (in %)" name="OSD_W_RSSI" documentation="Set level at which RSSI item will flash (in positive % or negative dBm values as applicable). 30% or -100dBm are defaults." user="Standard">
        <field name="Range">-128 100</field>
      </param>
      <param humanName="NSAT warn level" name="OSD_W_NSAT" documentation="Set level at which NSAT item will flash" user="Standard">
        <field name="Range">1 30</field>
      </param>
      <param humanName="BAT_VOLT warn level" name="OSD_W_BATVOLT" documentation="Set level at which BAT_VOLT item will flash" user="Standard">
        <field name="Range">0 100</field>
      </param>
      <param humanName="Display Units" name="OSD_UNITS" documentation="Sets the units to use in displaying items" user="Standard">
        <values>
          <value code="0">Metric</value>
          <value code="1">Imperial</value>
          <value code="2">SI</value>
          <value code="3">Aviation</value>
        </values>
      </param>
      <param humanName="Message display duration in seconds" name="OSD_MSG_TIME" documentation="Sets message duration seconds" user="Standard">
        <field name="Range">1 20</field>
      </param>
      <param humanName="Arm screen" name="OSD_ARM_SCR" documentation="Screen to be shown on Arm event. Zero to disable the feature." user="Standard">
        <field name="Range">0 4</field>
      </param>
      <param humanName="Disarm screen" name="OSD_DSARM_SCR" documentation="Screen to be shown on disarm event. Zero to disable the feature." user="Standard">
        <field name="Range">0 4</field>
      </param>
      <param humanName="Failsafe screen" name="OSD_FS_SCR" documentation="Screen to be shown on failsafe event. Zero to disable the feature." user="Standard">
        <field name="Range">0 4</field>
      </param>
      <param humanName="Button delay" name="OSD_BTN_DELAY" documentation="Debounce time in ms for stick commanded parameter navigation." user="Advanced">
        <field name="Range">0 3000</field>
      </param>
      <param humanName="Terrain warn level" name="OSD_W_TERR" documentation="Set level below which TER_HGT item will flash. -1 disables." user="Standard">
        <field name="Range">-1 3000</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="AVGCELLV warn level" name="OSD_W_AVGCELLV" documentation="Set level at which AVGCELLV item will flash" user="Standard">
        <field name="Range">0 100</field>
      </param>
      <param humanName="Battery cell count" name="OSD_CELL_COUNT" documentation="Used for average cell voltage display. -1 disables, 0 uses cell count autodetection for well charged LIPO/LIION batteries at connection, other values manually select cell count used." user="Advanced">
        <field name="Increment">1</field>
      </param>
      <param humanName="RESTVOLT warn level" name="OSD_W_RESTVOLT" documentation="Set level at which RESTVOLT item will flash" user="Standard">
        <field name="Range">0 100</field>
      </param>
      <param humanName="Avg Cell Resting Volt warn level" name="OSD_W_ACRVOLT" documentation="Set level at which ACRVOLT item will flash" user="Standard">
        <field name="Range">0 100</field>
      </param>
      <param humanName="RC link quality warn level (in %)" name="OSD_W_LQ" documentation="Set level at which RC_LQ item will flash (%)" user="Standard">
        <field name="Range">0 100</field>
      </param>
      <param humanName="RC link SNR warn level (in %)" name="OSD_W_SNR" documentation="Set level at which RC_SNR item will flash (in db)" user="Standard">
        <field name="Range">-20 10</field>
      </param>
      <param humanName="Sidebar horizontal offset" name="OSD_SB_H_OFS" documentation="Extends the spacing between the sidebar elements by this amount of columns. Positive values increases the width to the right of the screen." user="Standard">
        <field name="Range">0 20</field>
      </param>
      <param humanName="Sidebar vertical extension" name="OSD_SB_V_EXT" documentation="Increase of vertical length of the sidebar itens by this amount of lines. Applied equally both above and below the default setting." user="Standard">
        <field name="Range">0 10</field>
      </param>
      <param humanName="OSD type 2" name="OSD_TYPE2" documentation="OSD type 2. TXONLY makes the OSD parameter selection available to other modules even if there is no native OSD support on the board, for instance CRSF." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">MAX7456</value>
          <value code="2">SITL</value>
          <value code="3">MSP</value>
          <value code="4">TXONLY</value>
          <value code="5">MSP_DISPLAYPORT</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OSD1_">
      <param humanName="Enable screen" name="OSD1_ENABLE" documentation="Enable this screen" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Transmitter switch screen minimum pwm" name="OSD1_CHAN_MIN" documentation="This sets the PWM lower limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="Transmitter switch screen maximum pwm" name="OSD1_CHAN_MAX" documentation="This sets the PWM upper limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="ALTITUDE_EN" name="OSD1_ALTITUDE_EN" documentation="Enables display of altitude AGL">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ALTITUDE_X" name="OSD1_ALTITUDE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ALTITUDE_Y" name="OSD1_ALTITUDE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATVOLT_EN" name="OSD1_BAT_VOLT_EN" documentation="Displays main battery voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATVOLT_X" name="OSD1_BAT_VOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATVOLT_Y" name="OSD1_BAT_VOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RSSI_EN" name="OSD1_RSSI_EN" documentation="Displays RC signal strength">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RSSI_X" name="OSD1_RSSI_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RSSI_Y" name="OSD1_RSSI_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CURRENT_EN" name="OSD1_CURRENT_EN" documentation="Displays main battery current">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CURRENT_X" name="OSD1_CURRENT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CURRENT_Y" name="OSD1_CURRENT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATUSED_EN" name="OSD1_BATUSED_EN" documentation="Displays primary battery mAh consumed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATUSED_X" name="OSD1_BATUSED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATUSED_Y" name="OSD1_BATUSED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="SATS_EN" name="OSD1_SATS_EN" documentation="Displays number of acquired satellites">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="SATS_X" name="OSD1_SATS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="SATS_Y" name="OSD1_SATS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FLTMODE_EN" name="OSD1_FLTMODE_EN" documentation="Displays flight mode">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FLTMODE_X" name="OSD1_FLTMODE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FLTMODE_Y" name="OSD1_FLTMODE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="MESSAGE_EN" name="OSD1_MESSAGE_EN" documentation="Displays Mavlink messages">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="MESSAGE_X" name="OSD1_MESSAGE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="MESSAGE_Y" name="OSD1_MESSAGE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GSPEED_EN" name="OSD1_GSPEED_EN" documentation="Displays GPS ground speed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GSPEED_X" name="OSD1_GSPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GSPEED_Y" name="OSD1_GSPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HORIZON_EN" name="OSD1_HORIZON_EN" documentation="Displays artificial horizon">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HORIZON_X" name="OSD1_HORIZON_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HORIZON_Y" name="OSD1_HORIZON_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOME_EN" name="OSD1_HOME_EN" documentation="Displays distance and relative direction to HOME">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOME_X" name="OSD1_HOME_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOME_Y" name="OSD1_HOME_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HEADING_EN" name="OSD1_HEADING_EN" documentation="Displays heading">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HEADING_X" name="OSD1_HEADING_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HEADING_Y" name="OSD1_HEADING_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="THROTTLE_EN" name="OSD1_THROTTLE_EN" documentation="Displays actual throttle percentage being sent to motor(s)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="THROTTLE_X" name="OSD1_THROTTLE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="THROTTLE_Y" name="OSD1_THROTTLE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="COMPASS_EN" name="OSD1_COMPASS_EN" documentation="Enables display of compass rose">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="COMPASS_X" name="OSD1_COMPASS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="COMPASS_Y" name="OSD1_COMPASS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="WIND_EN" name="OSD1_WIND_EN" documentation="Displays wind speed and relative direction, on Rover this is the apparent wind speed and direction from the windvane, if fitted">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="WIND_X" name="OSD1_WIND_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="WIND_Y" name="OSD1_WIND_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPEED_EN" name="OSD1_ASPEED_EN" documentation="Displays airspeed value being used by TECS (fused value)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPEED_X" name="OSD1_ASPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPEED_Y" name="OSD1_ASPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="VSPEED_EN" name="OSD1_VSPEED_EN" documentation="Displays climb rate">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="VSPEED_X" name="OSD1_VSPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="VSPEED_Y" name="OSD1_VSPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCTEMP_EN" name="OSD1_ESCTEMP_EN" documentation="Displays highest temp of all active ESCs, or of a specific ECS if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCTEMP_X" name="OSD1_ESCTEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCTEMP_Y" name="OSD1_ESCTEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCRPM_EN" name="OSD1_ESCRPM_EN" documentation="Displays highest rpm of all active ESCs, or of a specific ESC if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCRPM_X" name="OSD1_ESCRPM_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCRPM_Y" name="OSD1_ESCRPM_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCAMPS_EN" name="OSD1_ESCAMPS_EN" documentation="Displays the current of the ESC with the highest rpm of all active ESCs, or of a specific ESC if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCAMPS_X" name="OSD1_ESCAMPS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCAMPS_Y" name="OSD1_ESCAMPS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GPSLAT_EN" name="OSD1_GPSLAT_EN" documentation="Displays GPS latitude">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPSLAT_X" name="OSD1_GPSLAT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GPSLAT_Y" name="OSD1_GPSLAT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GPSLONG_EN" name="OSD1_GPSLONG_EN" documentation="Displays GPS longitude">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPSLONG_X" name="OSD1_GPSLONG_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GPSLONG_Y" name="OSD1_GPSLONG_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ROLL_EN" name="OSD1_ROLL_EN" documentation="Displays degrees of roll from level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ROLL_X" name="OSD1_ROLL_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ROLL_Y" name="OSD1_ROLL_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="PITCH_EN" name="OSD1_PITCH_EN" documentation="Displays degrees of pitch from level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="PITCH_X" name="OSD1_PITCH_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="PITCH_Y" name="OSD1_PITCH_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="TEMP_EN" name="OSD1_TEMP_EN" documentation="Displays temperature reported by primary barometer">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="TEMP_X" name="OSD1_TEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="TEMP_Y" name="OSD1_TEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HDOP_EN" name="OSD1_HDOP_EN" documentation="Displays Horizontal Dilution Of Position">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HDOP_X" name="OSD1_HDOP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HDOP_Y" name="OSD1_HDOP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="WAYPOINT_EN" name="OSD1_WAYPOINT_EN" documentation="Displays bearing and distance to next waypoint">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="WAYPOINT_X" name="OSD1_WAYPOINT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="WAYPOINT_Y" name="OSD1_WAYPOINT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="XTRACK_EN" name="OSD1_XTRACK_EN" documentation="Displays crosstrack error">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="XTRACK_X" name="OSD1_XTRACK_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="XTRACK_Y" name="OSD1_XTRACK_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="DIST_EN" name="OSD1_DIST_EN" documentation="Displays total distance flown">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="DIST_X" name="OSD1_DIST_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="DIST_Y" name="OSD1_DIST_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="STATS_EN" name="OSD1_STATS_EN" documentation="Displays flight stats">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="STATS_X" name="OSD1_STATS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="STATS_Y" name="OSD1_STATS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FLTIME_EN" name="OSD1_FLTIME_EN" documentation="Displays total flight time">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FLTIME_X" name="OSD1_FLTIME_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FLTIME_Y" name="OSD1_FLTIME_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CLIMBEFF_EN" name="OSD1_CLIMBEFF_EN" documentation="Displays climb efficiency (climb rate/current)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CLIMBEFF_X" name="OSD1_CLIMBEFF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CLIMBEFF_Y" name="OSD1_CLIMBEFF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="EFF_EN" name="OSD1_EFF_EN" documentation="Displays flight efficiency (mAh/km or /mi)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="EFF_X" name="OSD1_EFF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="EFF_Y" name="OSD1_EFF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BTEMP_EN" name="OSD1_BTEMP_EN" documentation="Displays temperature reported by secondary barometer">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BTEMP_X" name="OSD1_BTEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BTEMP_Y" name="OSD1_BTEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ATEMP_EN" name="OSD1_ATEMP_EN" documentation="Displays temperature reported by primary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ATEMP_X" name="OSD1_ATEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ATEMP_Y" name="OSD1_ATEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BAT2VLT_EN" name="OSD1_BAT2_VLT_EN" documentation="Displays battery2 voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BAT2VLT_X" name="OSD1_BAT2_VLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BAT2VLT_Y" name="OSD1_BAT2_VLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BAT2USED_EN" name="OSD1_BAT2USED_EN" documentation="Displays secondary battery mAh consumed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BAT2USED_X" name="OSD1_BAT2USED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BAT2USED_Y" name="OSD1_BAT2USED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPD2_EN" name="OSD1_ASPD2_EN" documentation="Displays airspeed reported directly from secondary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPD2_X" name="OSD1_ASPD2_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPD2_Y" name="OSD1_ASPD2_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPD1_EN" name="OSD1_ASPD1_EN" documentation="Displays airspeed reported directly from primary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPD1_X" name="OSD1_ASPD1_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPD1_Y" name="OSD1_ASPD1_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CLK_EN" name="OSD1_CLK_EN" documentation="Displays a clock panel based on AP_RTC local time">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CLK_X" name="OSD1_CLK_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CLK_Y" name="OSD1_CLK_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="SIDEBARS_EN" name="OSD1_SIDEBARS_EN" documentation="Displays artificial horizon side bars">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="SIDEBARS_X" name="OSD1_SIDEBARS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="SIDEBARS_Y" name="OSD1_SIDEBARS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CRSSHAIR_EN" name="OSD1_CRSSHAIR_EN" documentation="Displays artificial horizon crosshair (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CRSSHAIR_X" name="OSD1_CRSSHAIR_X" documentation="Horizontal position on screen (MSP OSD only)">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CRSSHAIR_Y" name="OSD1_CRSSHAIR_Y" documentation="Vertical position on screen (MSP OSD only)">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOMEDIST_EN" name="OSD1_HOMEDIST_EN" documentation="Displays distance from HOME (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOMEDIST_X" name="OSD1_HOMEDIST_X" documentation="Horizontal position on screen (MSP OSD only)">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOMEDIST_Y" name="OSD1_HOMEDIST_Y" documentation="Vertical position on screen (MSP OSD only)">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOMEDIR_EN" name="OSD1_HOMEDIR_EN" documentation="Displays relative direction to HOME (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOMEDIR_X" name="OSD1_HOMEDIR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOMEDIR_Y" name="OSD1_HOMEDIR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="POWER_EN" name="OSD1_POWER_EN" documentation="Displays power (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="POWER_X" name="OSD1_POWER_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="POWER_Y" name="OSD1_POWER_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CELL_VOLT_EN" name="OSD1_CELLVOLT_EN" documentation="Displays average cell voltage (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CELL_VOLT_X" name="OSD1_CELLVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CELL_VOLT_Y" name="OSD1_CELLVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATT_BAR_EN" name="OSD1_BATTBAR_EN" documentation="Displays battery usage bar (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATT_BAR_X" name="OSD1_BATTBAR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATT_BAR_Y" name="OSD1_BATTBAR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ARMING_EN" name="OSD1_ARMING_EN" documentation="Displays arming status (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ARMING_X" name="OSD1_ARMING_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ARMING_Y" name="OSD1_ARMING_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="PLUSCODE_EN" name="OSD1_PLUSCODE_EN" documentation="Displays pluscode (OLC) element">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="PLUSCODE_X" name="OSD1_PLUSCODE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="PLUSCODE_Y" name="OSD1_PLUSCODE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CALLSIGN_EN" name="OSD1_CALLSIGN_EN" documentation="Displays callsign from callsign.txt on microSD card">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CALLSIGN_X" name="OSD1_CALLSIGN_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CALLSIGN_Y" name="OSD1_CALLSIGN_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CURRENT2_EN" name="OSD1_CURRENT2_EN" documentation="Displays 2nd battery current">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CURRENT2_X" name="OSD1_CURRENT2_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CURRENT2_Y" name="OSD1_CURRENT2_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="VTX_PWR_EN" name="OSD1_VTX_PWR_EN" documentation="Displays VTX Power">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="VTX_PWR_X" name="OSD1_VTX_PWR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="VTX_PWR_Y" name="OSD1_VTX_PWR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="TER_HGT_EN" name="OSD1_TER_HGT_EN" documentation="Displays Height above terrain">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="TER_HGT_X" name="OSD1_TER_HGT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="TER_HGT_Y" name="OSD1_TER_HGT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="AVGCELLV_EN" name="OSD1_AVGCELLV_EN" documentation="Displays average cell voltage. WARNING: this can be inaccurate if the cell count is not detected or set properly. If the  the battery is far from fully charged the detected cell count might not be accurate if auto cell count detection is used (OSD_CELL_COUNT=0).">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="AVGCELLV_X" name="OSD1_AVGCELLV_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="AVGCELLV_Y" name="OSD1_AVGCELLV_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RESTVOLT_EN" name="OSD1_RESTVOLT_EN" documentation="Displays main battery resting voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RESTVOLT_X" name="OSD1_RESTVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RESTVOLT_Y" name="OSD1_RESTVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FENCE_EN" name="OSD1_FENCE_EN" documentation="Displays indication of fence enable and breach">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FENCE_X" name="OSD1_FENCE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FENCE_Y" name="OSD1_FENCE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RNGF_EN" name="OSD1_RNGF_EN" documentation="Displays a rangefinder's distance in cm">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RNGF_X" name="OSD1_RNGF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RNGF_Y" name="OSD1_RNGF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ACRVOLT_EN" name="OSD1_ACRVOLT_EN" documentation="Displays resting voltage for the average cell. WARNING: this can be inaccurate if the cell count is not detected or set properly. If the  the battery is far from fully charged the detected cell count might not be accurate if auto cell count detection is used (OSD_CELL_COUNT=0).">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ACRVOLT_X" name="OSD1_ACRVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ACRVOLT_Y" name="OSD1_ACRVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RPM_EN" name="OSD1_RPM_EN" documentation="Displays main rotor revs/min">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RPM_X" name="OSD1_RPM_X" documentation="Horizontal position on screen">
        <field name="Range">0 29</field>
      </param>
      <param humanName="RPM_Y" name="OSD1_RPM_Y" documentation="Vertical position on screen">
        <field name="Range">0 15</field>
      </param>
      <param humanName="LINK_Q_EN" name="OSD1_LINK_Q_EN" documentation="Displays Receiver link quality">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="LINK_Q_X" name="OSD1_LINK_Q_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="LINK_Q_Y" name="OSD1_LINK_Q_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="Sets the overlay text resolution (MSP DisplayPort only)" name="OSD1_TXT_RES" documentation="Sets the overlay text resolution for this screen to either SD 30x16 or HD 50x18/60x22 (MSP DisplayPort only)" user="Standard">
        <values>
          <value code="0">30x16</value>
          <value code="1">50x18</value>
          <value code="2">60x22</value>
        </values>
      </param>
      <param humanName="Sets the font index for this screen (MSP DisplayPort only)" name="OSD1_FONT" documentation="Sets the font index for this screen (MSP DisplayPort only)" user="Standard">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_PWR_EN" name="OSD1_RC_PWR_EN" documentation="Displays the RC link transmit (TX) power in mW or W, depending on level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_PWR_X" name="OSD1_RC_PWR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_PWR_Y" name="OSD1_RC_PWR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RSSIDBM_EN" name="OSD1_RSSIDBM_EN" documentation="Displays RC link signal strength in dBm">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RSSIDBM_X" name="OSD1_RSSIDBM_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RSSIDBM_Y" name="OSD1_RSSIDBM_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_SNR_EN" name="OSD1_RC_SNR_EN" documentation="Displays RC link signal to noise ratio in dB">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_SNR_X" name="OSD1_RC_SNR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_SNR_Y" name="OSD1_RC_SNR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_ANT_EN" name="OSD1_RC_ANT_EN" documentation="Displays the current RC link active antenna">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_ANT_X" name="OSD1_RC_ANT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_ANT_Y" name="OSD1_RC_ANT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_LQ_EN" name="OSD1_RC_LQ_EN" documentation="Displays the RC link quality (uplink, 0 to 100%) and also RF mode if bit 7 of OSD_OPTIONS is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_LQ_X" name="OSD1_RC_LQ_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_LQ_Y" name="OSD1_RC_LQ_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESC_IDX" name="OSD1_ESC_IDX" documentation="Index of the ESC to use for displaying ESC information. 0 means use the ESC with the highest value.">
        <field name="Range">0 32</field>
      </param>
    </parameters>
    <parameters name="OSD2_">
      <param humanName="Enable screen" name="OSD2_ENABLE" documentation="Enable this screen" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Transmitter switch screen minimum pwm" name="OSD2_CHAN_MIN" documentation="This sets the PWM lower limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="Transmitter switch screen maximum pwm" name="OSD2_CHAN_MAX" documentation="This sets the PWM upper limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="ALTITUDE_EN" name="OSD2_ALTITUDE_EN" documentation="Enables display of altitude AGL">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ALTITUDE_X" name="OSD2_ALTITUDE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ALTITUDE_Y" name="OSD2_ALTITUDE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATVOLT_EN" name="OSD2_BAT_VOLT_EN" documentation="Displays main battery voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATVOLT_X" name="OSD2_BAT_VOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATVOLT_Y" name="OSD2_BAT_VOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RSSI_EN" name="OSD2_RSSI_EN" documentation="Displays RC signal strength">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RSSI_X" name="OSD2_RSSI_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RSSI_Y" name="OSD2_RSSI_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CURRENT_EN" name="OSD2_CURRENT_EN" documentation="Displays main battery current">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CURRENT_X" name="OSD2_CURRENT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CURRENT_Y" name="OSD2_CURRENT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATUSED_EN" name="OSD2_BATUSED_EN" documentation="Displays primary battery mAh consumed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATUSED_X" name="OSD2_BATUSED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATUSED_Y" name="OSD2_BATUSED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="SATS_EN" name="OSD2_SATS_EN" documentation="Displays number of acquired satellites">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="SATS_X" name="OSD2_SATS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="SATS_Y" name="OSD2_SATS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FLTMODE_EN" name="OSD2_FLTMODE_EN" documentation="Displays flight mode">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FLTMODE_X" name="OSD2_FLTMODE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FLTMODE_Y" name="OSD2_FLTMODE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="MESSAGE_EN" name="OSD2_MESSAGE_EN" documentation="Displays Mavlink messages">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="MESSAGE_X" name="OSD2_MESSAGE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="MESSAGE_Y" name="OSD2_MESSAGE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GSPEED_EN" name="OSD2_GSPEED_EN" documentation="Displays GPS ground speed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GSPEED_X" name="OSD2_GSPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GSPEED_Y" name="OSD2_GSPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HORIZON_EN" name="OSD2_HORIZON_EN" documentation="Displays artificial horizon">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HORIZON_X" name="OSD2_HORIZON_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HORIZON_Y" name="OSD2_HORIZON_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOME_EN" name="OSD2_HOME_EN" documentation="Displays distance and relative direction to HOME">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOME_X" name="OSD2_HOME_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOME_Y" name="OSD2_HOME_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HEADING_EN" name="OSD2_HEADING_EN" documentation="Displays heading">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HEADING_X" name="OSD2_HEADING_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HEADING_Y" name="OSD2_HEADING_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="THROTTLE_EN" name="OSD2_THROTTLE_EN" documentation="Displays actual throttle percentage being sent to motor(s)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="THROTTLE_X" name="OSD2_THROTTLE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="THROTTLE_Y" name="OSD2_THROTTLE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="COMPASS_EN" name="OSD2_COMPASS_EN" documentation="Enables display of compass rose">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="COMPASS_X" name="OSD2_COMPASS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="COMPASS_Y" name="OSD2_COMPASS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="WIND_EN" name="OSD2_WIND_EN" documentation="Displays wind speed and relative direction, on Rover this is the apparent wind speed and direction from the windvane, if fitted">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="WIND_X" name="OSD2_WIND_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="WIND_Y" name="OSD2_WIND_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPEED_EN" name="OSD2_ASPEED_EN" documentation="Displays airspeed value being used by TECS (fused value)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPEED_X" name="OSD2_ASPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPEED_Y" name="OSD2_ASPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="VSPEED_EN" name="OSD2_VSPEED_EN" documentation="Displays climb rate">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="VSPEED_X" name="OSD2_VSPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="VSPEED_Y" name="OSD2_VSPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCTEMP_EN" name="OSD2_ESCTEMP_EN" documentation="Displays highest temp of all active ESCs, or of a specific ECS if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCTEMP_X" name="OSD2_ESCTEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCTEMP_Y" name="OSD2_ESCTEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCRPM_EN" name="OSD2_ESCRPM_EN" documentation="Displays highest rpm of all active ESCs, or of a specific ESC if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCRPM_X" name="OSD2_ESCRPM_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCRPM_Y" name="OSD2_ESCRPM_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCAMPS_EN" name="OSD2_ESCAMPS_EN" documentation="Displays the current of the ESC with the highest rpm of all active ESCs, or of a specific ESC if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCAMPS_X" name="OSD2_ESCAMPS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCAMPS_Y" name="OSD2_ESCAMPS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GPSLAT_EN" name="OSD2_GPSLAT_EN" documentation="Displays GPS latitude">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPSLAT_X" name="OSD2_GPSLAT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GPSLAT_Y" name="OSD2_GPSLAT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GPSLONG_EN" name="OSD2_GPSLONG_EN" documentation="Displays GPS longitude">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPSLONG_X" name="OSD2_GPSLONG_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GPSLONG_Y" name="OSD2_GPSLONG_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ROLL_EN" name="OSD2_ROLL_EN" documentation="Displays degrees of roll from level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ROLL_X" name="OSD2_ROLL_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ROLL_Y" name="OSD2_ROLL_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="PITCH_EN" name="OSD2_PITCH_EN" documentation="Displays degrees of pitch from level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="PITCH_X" name="OSD2_PITCH_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="PITCH_Y" name="OSD2_PITCH_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="TEMP_EN" name="OSD2_TEMP_EN" documentation="Displays temperature reported by primary barometer">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="TEMP_X" name="OSD2_TEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="TEMP_Y" name="OSD2_TEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HDOP_EN" name="OSD2_HDOP_EN" documentation="Displays Horizontal Dilution Of Position">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HDOP_X" name="OSD2_HDOP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HDOP_Y" name="OSD2_HDOP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="WAYPOINT_EN" name="OSD2_WAYPOINT_EN" documentation="Displays bearing and distance to next waypoint">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="WAYPOINT_X" name="OSD2_WAYPOINT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="WAYPOINT_Y" name="OSD2_WAYPOINT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="XTRACK_EN" name="OSD2_XTRACK_EN" documentation="Displays crosstrack error">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="XTRACK_X" name="OSD2_XTRACK_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="XTRACK_Y" name="OSD2_XTRACK_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="DIST_EN" name="OSD2_DIST_EN" documentation="Displays total distance flown">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="DIST_X" name="OSD2_DIST_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="DIST_Y" name="OSD2_DIST_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="STATS_EN" name="OSD2_STATS_EN" documentation="Displays flight stats">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="STATS_X" name="OSD2_STATS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="STATS_Y" name="OSD2_STATS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FLTIME_EN" name="OSD2_FLTIME_EN" documentation="Displays total flight time">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FLTIME_X" name="OSD2_FLTIME_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FLTIME_Y" name="OSD2_FLTIME_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CLIMBEFF_EN" name="OSD2_CLIMBEFF_EN" documentation="Displays climb efficiency (climb rate/current)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CLIMBEFF_X" name="OSD2_CLIMBEFF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CLIMBEFF_Y" name="OSD2_CLIMBEFF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="EFF_EN" name="OSD2_EFF_EN" documentation="Displays flight efficiency (mAh/km or /mi)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="EFF_X" name="OSD2_EFF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="EFF_Y" name="OSD2_EFF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BTEMP_EN" name="OSD2_BTEMP_EN" documentation="Displays temperature reported by secondary barometer">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BTEMP_X" name="OSD2_BTEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BTEMP_Y" name="OSD2_BTEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ATEMP_EN" name="OSD2_ATEMP_EN" documentation="Displays temperature reported by primary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ATEMP_X" name="OSD2_ATEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ATEMP_Y" name="OSD2_ATEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BAT2VLT_EN" name="OSD2_BAT2_VLT_EN" documentation="Displays battery2 voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BAT2VLT_X" name="OSD2_BAT2_VLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BAT2VLT_Y" name="OSD2_BAT2_VLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BAT2USED_EN" name="OSD2_BAT2USED_EN" documentation="Displays secondary battery mAh consumed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BAT2USED_X" name="OSD2_BAT2USED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BAT2USED_Y" name="OSD2_BAT2USED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPD2_EN" name="OSD2_ASPD2_EN" documentation="Displays airspeed reported directly from secondary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPD2_X" name="OSD2_ASPD2_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPD2_Y" name="OSD2_ASPD2_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPD1_EN" name="OSD2_ASPD1_EN" documentation="Displays airspeed reported directly from primary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPD1_X" name="OSD2_ASPD1_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPD1_Y" name="OSD2_ASPD1_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CLK_EN" name="OSD2_CLK_EN" documentation="Displays a clock panel based on AP_RTC local time">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CLK_X" name="OSD2_CLK_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CLK_Y" name="OSD2_CLK_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="SIDEBARS_EN" name="OSD2_SIDEBARS_EN" documentation="Displays artificial horizon side bars">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="SIDEBARS_X" name="OSD2_SIDEBARS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="SIDEBARS_Y" name="OSD2_SIDEBARS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CRSSHAIR_EN" name="OSD2_CRSSHAIR_EN" documentation="Displays artificial horizon crosshair (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CRSSHAIR_X" name="OSD2_CRSSHAIR_X" documentation="Horizontal position on screen (MSP OSD only)">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CRSSHAIR_Y" name="OSD2_CRSSHAIR_Y" documentation="Vertical position on screen (MSP OSD only)">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOMEDIST_EN" name="OSD2_HOMEDIST_EN" documentation="Displays distance from HOME (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOMEDIST_X" name="OSD2_HOMEDIST_X" documentation="Horizontal position on screen (MSP OSD only)">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOMEDIST_Y" name="OSD2_HOMEDIST_Y" documentation="Vertical position on screen (MSP OSD only)">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOMEDIR_EN" name="OSD2_HOMEDIR_EN" documentation="Displays relative direction to HOME (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOMEDIR_X" name="OSD2_HOMEDIR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOMEDIR_Y" name="OSD2_HOMEDIR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="POWER_EN" name="OSD2_POWER_EN" documentation="Displays power (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="POWER_X" name="OSD2_POWER_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="POWER_Y" name="OSD2_POWER_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CELL_VOLT_EN" name="OSD2_CELLVOLT_EN" documentation="Displays average cell voltage (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CELL_VOLT_X" name="OSD2_CELLVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CELL_VOLT_Y" name="OSD2_CELLVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATT_BAR_EN" name="OSD2_BATTBAR_EN" documentation="Displays battery usage bar (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATT_BAR_X" name="OSD2_BATTBAR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATT_BAR_Y" name="OSD2_BATTBAR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ARMING_EN" name="OSD2_ARMING_EN" documentation="Displays arming status (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ARMING_X" name="OSD2_ARMING_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ARMING_Y" name="OSD2_ARMING_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="PLUSCODE_EN" name="OSD2_PLUSCODE_EN" documentation="Displays pluscode (OLC) element">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="PLUSCODE_X" name="OSD2_PLUSCODE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="PLUSCODE_Y" name="OSD2_PLUSCODE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CALLSIGN_EN" name="OSD2_CALLSIGN_EN" documentation="Displays callsign from callsign.txt on microSD card">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CALLSIGN_X" name="OSD2_CALLSIGN_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CALLSIGN_Y" name="OSD2_CALLSIGN_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CURRENT2_EN" name="OSD2_CURRENT2_EN" documentation="Displays 2nd battery current">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CURRENT2_X" name="OSD2_CURRENT2_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CURRENT2_Y" name="OSD2_CURRENT2_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="VTX_PWR_EN" name="OSD2_VTX_PWR_EN" documentation="Displays VTX Power">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="VTX_PWR_X" name="OSD2_VTX_PWR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="VTX_PWR_Y" name="OSD2_VTX_PWR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="TER_HGT_EN" name="OSD2_TER_HGT_EN" documentation="Displays Height above terrain">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="TER_HGT_X" name="OSD2_TER_HGT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="TER_HGT_Y" name="OSD2_TER_HGT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="AVGCELLV_EN" name="OSD2_AVGCELLV_EN" documentation="Displays average cell voltage. WARNING: this can be inaccurate if the cell count is not detected or set properly. If the  the battery is far from fully charged the detected cell count might not be accurate if auto cell count detection is used (OSD_CELL_COUNT=0).">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="AVGCELLV_X" name="OSD2_AVGCELLV_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="AVGCELLV_Y" name="OSD2_AVGCELLV_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RESTVOLT_EN" name="OSD2_RESTVOLT_EN" documentation="Displays main battery resting voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RESTVOLT_X" name="OSD2_RESTVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RESTVOLT_Y" name="OSD2_RESTVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FENCE_EN" name="OSD2_FENCE_EN" documentation="Displays indication of fence enable and breach">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FENCE_X" name="OSD2_FENCE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FENCE_Y" name="OSD2_FENCE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RNGF_EN" name="OSD2_RNGF_EN" documentation="Displays a rangefinder's distance in cm">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RNGF_X" name="OSD2_RNGF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RNGF_Y" name="OSD2_RNGF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ACRVOLT_EN" name="OSD2_ACRVOLT_EN" documentation="Displays resting voltage for the average cell. WARNING: this can be inaccurate if the cell count is not detected or set properly. If the  the battery is far from fully charged the detected cell count might not be accurate if auto cell count detection is used (OSD_CELL_COUNT=0).">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ACRVOLT_X" name="OSD2_ACRVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ACRVOLT_Y" name="OSD2_ACRVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RPM_EN" name="OSD2_RPM_EN" documentation="Displays main rotor revs/min">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RPM_X" name="OSD2_RPM_X" documentation="Horizontal position on screen">
        <field name="Range">0 29</field>
      </param>
      <param humanName="RPM_Y" name="OSD2_RPM_Y" documentation="Vertical position on screen">
        <field name="Range">0 15</field>
      </param>
      <param humanName="LINK_Q_EN" name="OSD2_LINK_Q_EN" documentation="Displays Receiver link quality">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="LINK_Q_X" name="OSD2_LINK_Q_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="LINK_Q_Y" name="OSD2_LINK_Q_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="Sets the overlay text resolution (MSP DisplayPort only)" name="OSD2_TXT_RES" documentation="Sets the overlay text resolution for this screen to either SD 30x16 or HD 50x18/60x22 (MSP DisplayPort only)" user="Standard">
        <values>
          <value code="0">30x16</value>
          <value code="1">50x18</value>
          <value code="2">60x22</value>
        </values>
      </param>
      <param humanName="Sets the font index for this screen (MSP DisplayPort only)" name="OSD2_FONT" documentation="Sets the font index for this screen (MSP DisplayPort only)" user="Standard">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_PWR_EN" name="OSD2_RC_PWR_EN" documentation="Displays the RC link transmit (TX) power in mW or W, depending on level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_PWR_X" name="OSD2_RC_PWR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_PWR_Y" name="OSD2_RC_PWR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RSSIDBM_EN" name="OSD2_RSSIDBM_EN" documentation="Displays RC link signal strength in dBm">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RSSIDBM_X" name="OSD2_RSSIDBM_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RSSIDBM_Y" name="OSD2_RSSIDBM_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_SNR_EN" name="OSD2_RC_SNR_EN" documentation="Displays RC link signal to noise ratio in dB">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_SNR_X" name="OSD2_RC_SNR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_SNR_Y" name="OSD2_RC_SNR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_ANT_EN" name="OSD2_RC_ANT_EN" documentation="Displays the current RC link active antenna">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_ANT_X" name="OSD2_RC_ANT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_ANT_Y" name="OSD2_RC_ANT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_LQ_EN" name="OSD2_RC_LQ_EN" documentation="Displays the RC link quality (uplink, 0 to 100%) and also RF mode if bit 7 of OSD_OPTIONS is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_LQ_X" name="OSD2_RC_LQ_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_LQ_Y" name="OSD2_RC_LQ_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESC_IDX" name="OSD2_ESC_IDX" documentation="Index of the ESC to use for displaying ESC information. 0 means use the ESC with the highest value.">
        <field name="Range">0 32</field>
      </param>
    </parameters>
    <parameters name="OSD3_">
      <param humanName="Enable screen" name="OSD3_ENABLE" documentation="Enable this screen" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Transmitter switch screen minimum pwm" name="OSD3_CHAN_MIN" documentation="This sets the PWM lower limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="Transmitter switch screen maximum pwm" name="OSD3_CHAN_MAX" documentation="This sets the PWM upper limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="ALTITUDE_EN" name="OSD3_ALTITUDE_EN" documentation="Enables display of altitude AGL">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ALTITUDE_X" name="OSD3_ALTITUDE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ALTITUDE_Y" name="OSD3_ALTITUDE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATVOLT_EN" name="OSD3_BAT_VOLT_EN" documentation="Displays main battery voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATVOLT_X" name="OSD3_BAT_VOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATVOLT_Y" name="OSD3_BAT_VOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RSSI_EN" name="OSD3_RSSI_EN" documentation="Displays RC signal strength">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RSSI_X" name="OSD3_RSSI_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RSSI_Y" name="OSD3_RSSI_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CURRENT_EN" name="OSD3_CURRENT_EN" documentation="Displays main battery current">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CURRENT_X" name="OSD3_CURRENT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CURRENT_Y" name="OSD3_CURRENT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATUSED_EN" name="OSD3_BATUSED_EN" documentation="Displays primary battery mAh consumed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATUSED_X" name="OSD3_BATUSED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATUSED_Y" name="OSD3_BATUSED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="SATS_EN" name="OSD3_SATS_EN" documentation="Displays number of acquired satellites">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="SATS_X" name="OSD3_SATS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="SATS_Y" name="OSD3_SATS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FLTMODE_EN" name="OSD3_FLTMODE_EN" documentation="Displays flight mode">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FLTMODE_X" name="OSD3_FLTMODE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FLTMODE_Y" name="OSD3_FLTMODE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="MESSAGE_EN" name="OSD3_MESSAGE_EN" documentation="Displays Mavlink messages">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="MESSAGE_X" name="OSD3_MESSAGE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="MESSAGE_Y" name="OSD3_MESSAGE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GSPEED_EN" name="OSD3_GSPEED_EN" documentation="Displays GPS ground speed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GSPEED_X" name="OSD3_GSPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GSPEED_Y" name="OSD3_GSPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HORIZON_EN" name="OSD3_HORIZON_EN" documentation="Displays artificial horizon">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HORIZON_X" name="OSD3_HORIZON_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HORIZON_Y" name="OSD3_HORIZON_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOME_EN" name="OSD3_HOME_EN" documentation="Displays distance and relative direction to HOME">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOME_X" name="OSD3_HOME_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOME_Y" name="OSD3_HOME_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HEADING_EN" name="OSD3_HEADING_EN" documentation="Displays heading">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HEADING_X" name="OSD3_HEADING_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HEADING_Y" name="OSD3_HEADING_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="THROTTLE_EN" name="OSD3_THROTTLE_EN" documentation="Displays actual throttle percentage being sent to motor(s)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="THROTTLE_X" name="OSD3_THROTTLE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="THROTTLE_Y" name="OSD3_THROTTLE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="COMPASS_EN" name="OSD3_COMPASS_EN" documentation="Enables display of compass rose">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="COMPASS_X" name="OSD3_COMPASS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="COMPASS_Y" name="OSD3_COMPASS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="WIND_EN" name="OSD3_WIND_EN" documentation="Displays wind speed and relative direction, on Rover this is the apparent wind speed and direction from the windvane, if fitted">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="WIND_X" name="OSD3_WIND_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="WIND_Y" name="OSD3_WIND_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPEED_EN" name="OSD3_ASPEED_EN" documentation="Displays airspeed value being used by TECS (fused value)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPEED_X" name="OSD3_ASPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPEED_Y" name="OSD3_ASPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="VSPEED_EN" name="OSD3_VSPEED_EN" documentation="Displays climb rate">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="VSPEED_X" name="OSD3_VSPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="VSPEED_Y" name="OSD3_VSPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCTEMP_EN" name="OSD3_ESCTEMP_EN" documentation="Displays highest temp of all active ESCs, or of a specific ECS if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCTEMP_X" name="OSD3_ESCTEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCTEMP_Y" name="OSD3_ESCTEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCRPM_EN" name="OSD3_ESCRPM_EN" documentation="Displays highest rpm of all active ESCs, or of a specific ESC if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCRPM_X" name="OSD3_ESCRPM_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCRPM_Y" name="OSD3_ESCRPM_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCAMPS_EN" name="OSD3_ESCAMPS_EN" documentation="Displays the current of the ESC with the highest rpm of all active ESCs, or of a specific ESC if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCAMPS_X" name="OSD3_ESCAMPS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCAMPS_Y" name="OSD3_ESCAMPS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GPSLAT_EN" name="OSD3_GPSLAT_EN" documentation="Displays GPS latitude">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPSLAT_X" name="OSD3_GPSLAT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GPSLAT_Y" name="OSD3_GPSLAT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GPSLONG_EN" name="OSD3_GPSLONG_EN" documentation="Displays GPS longitude">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPSLONG_X" name="OSD3_GPSLONG_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GPSLONG_Y" name="OSD3_GPSLONG_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ROLL_EN" name="OSD3_ROLL_EN" documentation="Displays degrees of roll from level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ROLL_X" name="OSD3_ROLL_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ROLL_Y" name="OSD3_ROLL_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="PITCH_EN" name="OSD3_PITCH_EN" documentation="Displays degrees of pitch from level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="PITCH_X" name="OSD3_PITCH_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="PITCH_Y" name="OSD3_PITCH_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="TEMP_EN" name="OSD3_TEMP_EN" documentation="Displays temperature reported by primary barometer">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="TEMP_X" name="OSD3_TEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="TEMP_Y" name="OSD3_TEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HDOP_EN" name="OSD3_HDOP_EN" documentation="Displays Horizontal Dilution Of Position">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HDOP_X" name="OSD3_HDOP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HDOP_Y" name="OSD3_HDOP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="WAYPOINT_EN" name="OSD3_WAYPOINT_EN" documentation="Displays bearing and distance to next waypoint">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="WAYPOINT_X" name="OSD3_WAYPOINT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="WAYPOINT_Y" name="OSD3_WAYPOINT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="XTRACK_EN" name="OSD3_XTRACK_EN" documentation="Displays crosstrack error">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="XTRACK_X" name="OSD3_XTRACK_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="XTRACK_Y" name="OSD3_XTRACK_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="DIST_EN" name="OSD3_DIST_EN" documentation="Displays total distance flown">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="DIST_X" name="OSD3_DIST_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="DIST_Y" name="OSD3_DIST_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="STATS_EN" name="OSD3_STATS_EN" documentation="Displays flight stats">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="STATS_X" name="OSD3_STATS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="STATS_Y" name="OSD3_STATS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FLTIME_EN" name="OSD3_FLTIME_EN" documentation="Displays total flight time">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FLTIME_X" name="OSD3_FLTIME_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FLTIME_Y" name="OSD3_FLTIME_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CLIMBEFF_EN" name="OSD3_CLIMBEFF_EN" documentation="Displays climb efficiency (climb rate/current)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CLIMBEFF_X" name="OSD3_CLIMBEFF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CLIMBEFF_Y" name="OSD3_CLIMBEFF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="EFF_EN" name="OSD3_EFF_EN" documentation="Displays flight efficiency (mAh/km or /mi)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="EFF_X" name="OSD3_EFF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="EFF_Y" name="OSD3_EFF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BTEMP_EN" name="OSD3_BTEMP_EN" documentation="Displays temperature reported by secondary barometer">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BTEMP_X" name="OSD3_BTEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BTEMP_Y" name="OSD3_BTEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ATEMP_EN" name="OSD3_ATEMP_EN" documentation="Displays temperature reported by primary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ATEMP_X" name="OSD3_ATEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ATEMP_Y" name="OSD3_ATEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BAT2VLT_EN" name="OSD3_BAT2_VLT_EN" documentation="Displays battery2 voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BAT2VLT_X" name="OSD3_BAT2_VLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BAT2VLT_Y" name="OSD3_BAT2_VLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BAT2USED_EN" name="OSD3_BAT2USED_EN" documentation="Displays secondary battery mAh consumed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BAT2USED_X" name="OSD3_BAT2USED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BAT2USED_Y" name="OSD3_BAT2USED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPD2_EN" name="OSD3_ASPD2_EN" documentation="Displays airspeed reported directly from secondary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPD2_X" name="OSD3_ASPD2_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPD2_Y" name="OSD3_ASPD2_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPD1_EN" name="OSD3_ASPD1_EN" documentation="Displays airspeed reported directly from primary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPD1_X" name="OSD3_ASPD1_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPD1_Y" name="OSD3_ASPD1_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CLK_EN" name="OSD3_CLK_EN" documentation="Displays a clock panel based on AP_RTC local time">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CLK_X" name="OSD3_CLK_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CLK_Y" name="OSD3_CLK_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="SIDEBARS_EN" name="OSD3_SIDEBARS_EN" documentation="Displays artificial horizon side bars">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="SIDEBARS_X" name="OSD3_SIDEBARS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="SIDEBARS_Y" name="OSD3_SIDEBARS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CRSSHAIR_EN" name="OSD3_CRSSHAIR_EN" documentation="Displays artificial horizon crosshair (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CRSSHAIR_X" name="OSD3_CRSSHAIR_X" documentation="Horizontal position on screen (MSP OSD only)">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CRSSHAIR_Y" name="OSD3_CRSSHAIR_Y" documentation="Vertical position on screen (MSP OSD only)">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOMEDIST_EN" name="OSD3_HOMEDIST_EN" documentation="Displays distance from HOME (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOMEDIST_X" name="OSD3_HOMEDIST_X" documentation="Horizontal position on screen (MSP OSD only)">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOMEDIST_Y" name="OSD3_HOMEDIST_Y" documentation="Vertical position on screen (MSP OSD only)">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOMEDIR_EN" name="OSD3_HOMEDIR_EN" documentation="Displays relative direction to HOME (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOMEDIR_X" name="OSD3_HOMEDIR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOMEDIR_Y" name="OSD3_HOMEDIR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="POWER_EN" name="OSD3_POWER_EN" documentation="Displays power (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="POWER_X" name="OSD3_POWER_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="POWER_Y" name="OSD3_POWER_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CELL_VOLT_EN" name="OSD3_CELLVOLT_EN" documentation="Displays average cell voltage (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CELL_VOLT_X" name="OSD3_CELLVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CELL_VOLT_Y" name="OSD3_CELLVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATT_BAR_EN" name="OSD3_BATTBAR_EN" documentation="Displays battery usage bar (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATT_BAR_X" name="OSD3_BATTBAR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATT_BAR_Y" name="OSD3_BATTBAR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ARMING_EN" name="OSD3_ARMING_EN" documentation="Displays arming status (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ARMING_X" name="OSD3_ARMING_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ARMING_Y" name="OSD3_ARMING_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="PLUSCODE_EN" name="OSD3_PLUSCODE_EN" documentation="Displays pluscode (OLC) element">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="PLUSCODE_X" name="OSD3_PLUSCODE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="PLUSCODE_Y" name="OSD3_PLUSCODE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CALLSIGN_EN" name="OSD3_CALLSIGN_EN" documentation="Displays callsign from callsign.txt on microSD card">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CALLSIGN_X" name="OSD3_CALLSIGN_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CALLSIGN_Y" name="OSD3_CALLSIGN_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CURRENT2_EN" name="OSD3_CURRENT2_EN" documentation="Displays 2nd battery current">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CURRENT2_X" name="OSD3_CURRENT2_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CURRENT2_Y" name="OSD3_CURRENT2_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="VTX_PWR_EN" name="OSD3_VTX_PWR_EN" documentation="Displays VTX Power">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="VTX_PWR_X" name="OSD3_VTX_PWR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="VTX_PWR_Y" name="OSD3_VTX_PWR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="TER_HGT_EN" name="OSD3_TER_HGT_EN" documentation="Displays Height above terrain">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="TER_HGT_X" name="OSD3_TER_HGT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="TER_HGT_Y" name="OSD3_TER_HGT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="AVGCELLV_EN" name="OSD3_AVGCELLV_EN" documentation="Displays average cell voltage. WARNING: this can be inaccurate if the cell count is not detected or set properly. If the  the battery is far from fully charged the detected cell count might not be accurate if auto cell count detection is used (OSD_CELL_COUNT=0).">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="AVGCELLV_X" name="OSD3_AVGCELLV_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="AVGCELLV_Y" name="OSD3_AVGCELLV_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RESTVOLT_EN" name="OSD3_RESTVOLT_EN" documentation="Displays main battery resting voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RESTVOLT_X" name="OSD3_RESTVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RESTVOLT_Y" name="OSD3_RESTVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FENCE_EN" name="OSD3_FENCE_EN" documentation="Displays indication of fence enable and breach">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FENCE_X" name="OSD3_FENCE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FENCE_Y" name="OSD3_FENCE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RNGF_EN" name="OSD3_RNGF_EN" documentation="Displays a rangefinder's distance in cm">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RNGF_X" name="OSD3_RNGF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RNGF_Y" name="OSD3_RNGF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ACRVOLT_EN" name="OSD3_ACRVOLT_EN" documentation="Displays resting voltage for the average cell. WARNING: this can be inaccurate if the cell count is not detected or set properly. If the  the battery is far from fully charged the detected cell count might not be accurate if auto cell count detection is used (OSD_CELL_COUNT=0).">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ACRVOLT_X" name="OSD3_ACRVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ACRVOLT_Y" name="OSD3_ACRVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RPM_EN" name="OSD3_RPM_EN" documentation="Displays main rotor revs/min">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RPM_X" name="OSD3_RPM_X" documentation="Horizontal position on screen">
        <field name="Range">0 29</field>
      </param>
      <param humanName="RPM_Y" name="OSD3_RPM_Y" documentation="Vertical position on screen">
        <field name="Range">0 15</field>
      </param>
      <param humanName="LINK_Q_EN" name="OSD3_LINK_Q_EN" documentation="Displays Receiver link quality">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="LINK_Q_X" name="OSD3_LINK_Q_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="LINK_Q_Y" name="OSD3_LINK_Q_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="Sets the overlay text resolution (MSP DisplayPort only)" name="OSD3_TXT_RES" documentation="Sets the overlay text resolution for this screen to either SD 30x16 or HD 50x18/60x22 (MSP DisplayPort only)" user="Standard">
        <values>
          <value code="0">30x16</value>
          <value code="1">50x18</value>
          <value code="2">60x22</value>
        </values>
      </param>
      <param humanName="Sets the font index for this screen (MSP DisplayPort only)" name="OSD3_FONT" documentation="Sets the font index for this screen (MSP DisplayPort only)" user="Standard">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_PWR_EN" name="OSD3_RC_PWR_EN" documentation="Displays the RC link transmit (TX) power in mW or W, depending on level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_PWR_X" name="OSD3_RC_PWR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_PWR_Y" name="OSD3_RC_PWR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RSSIDBM_EN" name="OSD3_RSSIDBM_EN" documentation="Displays RC link signal strength in dBm">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RSSIDBM_X" name="OSD3_RSSIDBM_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RSSIDBM_Y" name="OSD3_RSSIDBM_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_SNR_EN" name="OSD3_RC_SNR_EN" documentation="Displays RC link signal to noise ratio in dB">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_SNR_X" name="OSD3_RC_SNR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_SNR_Y" name="OSD3_RC_SNR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_ANT_EN" name="OSD3_RC_ANT_EN" documentation="Displays the current RC link active antenna">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_ANT_X" name="OSD3_RC_ANT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_ANT_Y" name="OSD3_RC_ANT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_LQ_EN" name="OSD3_RC_LQ_EN" documentation="Displays the RC link quality (uplink, 0 to 100%) and also RF mode if bit 7 of OSD_OPTIONS is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_LQ_X" name="OSD3_RC_LQ_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_LQ_Y" name="OSD3_RC_LQ_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESC_IDX" name="OSD3_ESC_IDX" documentation="Index of the ESC to use for displaying ESC information. 0 means use the ESC with the highest value.">
        <field name="Range">0 32</field>
      </param>
    </parameters>
    <parameters name="OSD4_">
      <param humanName="Enable screen" name="OSD4_ENABLE" documentation="Enable this screen" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Transmitter switch screen minimum pwm" name="OSD4_CHAN_MIN" documentation="This sets the PWM lower limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="Transmitter switch screen maximum pwm" name="OSD4_CHAN_MAX" documentation="This sets the PWM upper limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="ALTITUDE_EN" name="OSD4_ALTITUDE_EN" documentation="Enables display of altitude AGL">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ALTITUDE_X" name="OSD4_ALTITUDE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ALTITUDE_Y" name="OSD4_ALTITUDE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATVOLT_EN" name="OSD4_BAT_VOLT_EN" documentation="Displays main battery voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATVOLT_X" name="OSD4_BAT_VOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATVOLT_Y" name="OSD4_BAT_VOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RSSI_EN" name="OSD4_RSSI_EN" documentation="Displays RC signal strength">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RSSI_X" name="OSD4_RSSI_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RSSI_Y" name="OSD4_RSSI_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CURRENT_EN" name="OSD4_CURRENT_EN" documentation="Displays main battery current">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CURRENT_X" name="OSD4_CURRENT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CURRENT_Y" name="OSD4_CURRENT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATUSED_EN" name="OSD4_BATUSED_EN" documentation="Displays primary battery mAh consumed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATUSED_X" name="OSD4_BATUSED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATUSED_Y" name="OSD4_BATUSED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="SATS_EN" name="OSD4_SATS_EN" documentation="Displays number of acquired satellites">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="SATS_X" name="OSD4_SATS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="SATS_Y" name="OSD4_SATS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FLTMODE_EN" name="OSD4_FLTMODE_EN" documentation="Displays flight mode">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FLTMODE_X" name="OSD4_FLTMODE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FLTMODE_Y" name="OSD4_FLTMODE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="MESSAGE_EN" name="OSD4_MESSAGE_EN" documentation="Displays Mavlink messages">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="MESSAGE_X" name="OSD4_MESSAGE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="MESSAGE_Y" name="OSD4_MESSAGE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GSPEED_EN" name="OSD4_GSPEED_EN" documentation="Displays GPS ground speed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GSPEED_X" name="OSD4_GSPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GSPEED_Y" name="OSD4_GSPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HORIZON_EN" name="OSD4_HORIZON_EN" documentation="Displays artificial horizon">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HORIZON_X" name="OSD4_HORIZON_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HORIZON_Y" name="OSD4_HORIZON_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOME_EN" name="OSD4_HOME_EN" documentation="Displays distance and relative direction to HOME">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOME_X" name="OSD4_HOME_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOME_Y" name="OSD4_HOME_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HEADING_EN" name="OSD4_HEADING_EN" documentation="Displays heading">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HEADING_X" name="OSD4_HEADING_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HEADING_Y" name="OSD4_HEADING_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="THROTTLE_EN" name="OSD4_THROTTLE_EN" documentation="Displays actual throttle percentage being sent to motor(s)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="THROTTLE_X" name="OSD4_THROTTLE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="THROTTLE_Y" name="OSD4_THROTTLE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="COMPASS_EN" name="OSD4_COMPASS_EN" documentation="Enables display of compass rose">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="COMPASS_X" name="OSD4_COMPASS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="COMPASS_Y" name="OSD4_COMPASS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="WIND_EN" name="OSD4_WIND_EN" documentation="Displays wind speed and relative direction, on Rover this is the apparent wind speed and direction from the windvane, if fitted">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="WIND_X" name="OSD4_WIND_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="WIND_Y" name="OSD4_WIND_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPEED_EN" name="OSD4_ASPEED_EN" documentation="Displays airspeed value being used by TECS (fused value)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPEED_X" name="OSD4_ASPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPEED_Y" name="OSD4_ASPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="VSPEED_EN" name="OSD4_VSPEED_EN" documentation="Displays climb rate">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="VSPEED_X" name="OSD4_VSPEED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="VSPEED_Y" name="OSD4_VSPEED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCTEMP_EN" name="OSD4_ESCTEMP_EN" documentation="Displays highest temp of all active ESCs, or of a specific ECS if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCTEMP_X" name="OSD4_ESCTEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCTEMP_Y" name="OSD4_ESCTEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCRPM_EN" name="OSD4_ESCRPM_EN" documentation="Displays highest rpm of all active ESCs, or of a specific ESC if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCRPM_X" name="OSD4_ESCRPM_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCRPM_Y" name="OSD4_ESCRPM_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESCAMPS_EN" name="OSD4_ESCAMPS_EN" documentation="Displays the current of the ESC with the highest rpm of all active ESCs, or of a specific ESC if OSDx_ESC_IDX is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESCAMPS_X" name="OSD4_ESCAMPS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ESCAMPS_Y" name="OSD4_ESCAMPS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GPSLAT_EN" name="OSD4_GPSLAT_EN" documentation="Displays GPS latitude">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPSLAT_X" name="OSD4_GPSLAT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GPSLAT_Y" name="OSD4_GPSLAT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="GPSLONG_EN" name="OSD4_GPSLONG_EN" documentation="Displays GPS longitude">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPSLONG_X" name="OSD4_GPSLONG_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="GPSLONG_Y" name="OSD4_GPSLONG_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ROLL_EN" name="OSD4_ROLL_EN" documentation="Displays degrees of roll from level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ROLL_X" name="OSD4_ROLL_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ROLL_Y" name="OSD4_ROLL_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="PITCH_EN" name="OSD4_PITCH_EN" documentation="Displays degrees of pitch from level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="PITCH_X" name="OSD4_PITCH_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="PITCH_Y" name="OSD4_PITCH_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="TEMP_EN" name="OSD4_TEMP_EN" documentation="Displays temperature reported by primary barometer">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="TEMP_X" name="OSD4_TEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="TEMP_Y" name="OSD4_TEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HDOP_EN" name="OSD4_HDOP_EN" documentation="Displays Horizontal Dilution Of Position">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HDOP_X" name="OSD4_HDOP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HDOP_Y" name="OSD4_HDOP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="WAYPOINT_EN" name="OSD4_WAYPOINT_EN" documentation="Displays bearing and distance to next waypoint">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="WAYPOINT_X" name="OSD4_WAYPOINT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="WAYPOINT_Y" name="OSD4_WAYPOINT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="XTRACK_EN" name="OSD4_XTRACK_EN" documentation="Displays crosstrack error">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="XTRACK_X" name="OSD4_XTRACK_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="XTRACK_Y" name="OSD4_XTRACK_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="DIST_EN" name="OSD4_DIST_EN" documentation="Displays total distance flown">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="DIST_X" name="OSD4_DIST_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="DIST_Y" name="OSD4_DIST_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="STATS_EN" name="OSD4_STATS_EN" documentation="Displays flight stats">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="STATS_X" name="OSD4_STATS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="STATS_Y" name="OSD4_STATS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FLTIME_EN" name="OSD4_FLTIME_EN" documentation="Displays total flight time">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FLTIME_X" name="OSD4_FLTIME_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FLTIME_Y" name="OSD4_FLTIME_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CLIMBEFF_EN" name="OSD4_CLIMBEFF_EN" documentation="Displays climb efficiency (climb rate/current)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CLIMBEFF_X" name="OSD4_CLIMBEFF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CLIMBEFF_Y" name="OSD4_CLIMBEFF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="EFF_EN" name="OSD4_EFF_EN" documentation="Displays flight efficiency (mAh/km or /mi)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="EFF_X" name="OSD4_EFF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="EFF_Y" name="OSD4_EFF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BTEMP_EN" name="OSD4_BTEMP_EN" documentation="Displays temperature reported by secondary barometer">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BTEMP_X" name="OSD4_BTEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BTEMP_Y" name="OSD4_BTEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ATEMP_EN" name="OSD4_ATEMP_EN" documentation="Displays temperature reported by primary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ATEMP_X" name="OSD4_ATEMP_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ATEMP_Y" name="OSD4_ATEMP_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BAT2VLT_EN" name="OSD4_BAT2_VLT_EN" documentation="Displays battery2 voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BAT2VLT_X" name="OSD4_BAT2_VLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BAT2VLT_Y" name="OSD4_BAT2_VLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BAT2USED_EN" name="OSD4_BAT2USED_EN" documentation="Displays secondary battery mAh consumed">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BAT2USED_X" name="OSD4_BAT2USED_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BAT2USED_Y" name="OSD4_BAT2USED_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPD2_EN" name="OSD4_ASPD2_EN" documentation="Displays airspeed reported directly from secondary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPD2_X" name="OSD4_ASPD2_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPD2_Y" name="OSD4_ASPD2_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ASPD1_EN" name="OSD4_ASPD1_EN" documentation="Displays airspeed reported directly from primary airspeed sensor">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ASPD1_X" name="OSD4_ASPD1_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ASPD1_Y" name="OSD4_ASPD1_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CLK_EN" name="OSD4_CLK_EN" documentation="Displays a clock panel based on AP_RTC local time">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CLK_X" name="OSD4_CLK_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CLK_Y" name="OSD4_CLK_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="SIDEBARS_EN" name="OSD4_SIDEBARS_EN" documentation="Displays artificial horizon side bars">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="SIDEBARS_X" name="OSD4_SIDEBARS_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="SIDEBARS_Y" name="OSD4_SIDEBARS_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CRSSHAIR_EN" name="OSD4_CRSSHAIR_EN" documentation="Displays artificial horizon crosshair (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CRSSHAIR_X" name="OSD4_CRSSHAIR_X" documentation="Horizontal position on screen (MSP OSD only)">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CRSSHAIR_Y" name="OSD4_CRSSHAIR_Y" documentation="Vertical position on screen (MSP OSD only)">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOMEDIST_EN" name="OSD4_HOMEDIST_EN" documentation="Displays distance from HOME (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOMEDIST_X" name="OSD4_HOMEDIST_X" documentation="Horizontal position on screen (MSP OSD only)">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOMEDIST_Y" name="OSD4_HOMEDIST_Y" documentation="Vertical position on screen (MSP OSD only)">
        <field name="Range">0 21</field>
      </param>
      <param humanName="HOMEDIR_EN" name="OSD4_HOMEDIR_EN" documentation="Displays relative direction to HOME (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="HOMEDIR_X" name="OSD4_HOMEDIR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="HOMEDIR_Y" name="OSD4_HOMEDIR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="POWER_EN" name="OSD4_POWER_EN" documentation="Displays power (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="POWER_X" name="OSD4_POWER_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="POWER_Y" name="OSD4_POWER_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CELL_VOLT_EN" name="OSD4_CELLVOLT_EN" documentation="Displays average cell voltage (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CELL_VOLT_X" name="OSD4_CELLVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CELL_VOLT_Y" name="OSD4_CELLVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="BATT_BAR_EN" name="OSD4_BATTBAR_EN" documentation="Displays battery usage bar (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BATT_BAR_X" name="OSD4_BATTBAR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="BATT_BAR_Y" name="OSD4_BATTBAR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ARMING_EN" name="OSD4_ARMING_EN" documentation="Displays arming status (MSP OSD only)">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ARMING_X" name="OSD4_ARMING_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ARMING_Y" name="OSD4_ARMING_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="PLUSCODE_EN" name="OSD4_PLUSCODE_EN" documentation="Displays pluscode (OLC) element">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="PLUSCODE_X" name="OSD4_PLUSCODE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="PLUSCODE_Y" name="OSD4_PLUSCODE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CALLSIGN_EN" name="OSD4_CALLSIGN_EN" documentation="Displays callsign from callsign.txt on microSD card">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CALLSIGN_X" name="OSD4_CALLSIGN_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CALLSIGN_Y" name="OSD4_CALLSIGN_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="CURRENT2_EN" name="OSD4_CURRENT2_EN" documentation="Displays 2nd battery current">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="CURRENT2_X" name="OSD4_CURRENT2_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="CURRENT2_Y" name="OSD4_CURRENT2_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="VTX_PWR_EN" name="OSD4_VTX_PWR_EN" documentation="Displays VTX Power">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="VTX_PWR_X" name="OSD4_VTX_PWR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="VTX_PWR_Y" name="OSD4_VTX_PWR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="TER_HGT_EN" name="OSD4_TER_HGT_EN" documentation="Displays Height above terrain">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="TER_HGT_X" name="OSD4_TER_HGT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="TER_HGT_Y" name="OSD4_TER_HGT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="AVGCELLV_EN" name="OSD4_AVGCELLV_EN" documentation="Displays average cell voltage. WARNING: this can be inaccurate if the cell count is not detected or set properly. If the  the battery is far from fully charged the detected cell count might not be accurate if auto cell count detection is used (OSD_CELL_COUNT=0).">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="AVGCELLV_X" name="OSD4_AVGCELLV_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="AVGCELLV_Y" name="OSD4_AVGCELLV_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RESTVOLT_EN" name="OSD4_RESTVOLT_EN" documentation="Displays main battery resting voltage">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RESTVOLT_X" name="OSD4_RESTVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RESTVOLT_Y" name="OSD4_RESTVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="FENCE_EN" name="OSD4_FENCE_EN" documentation="Displays indication of fence enable and breach">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="FENCE_X" name="OSD4_FENCE_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="FENCE_Y" name="OSD4_FENCE_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RNGF_EN" name="OSD4_RNGF_EN" documentation="Displays a rangefinder's distance in cm">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RNGF_X" name="OSD4_RNGF_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RNGF_Y" name="OSD4_RNGF_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ACRVOLT_EN" name="OSD4_ACRVOLT_EN" documentation="Displays resting voltage for the average cell. WARNING: this can be inaccurate if the cell count is not detected or set properly. If the  the battery is far from fully charged the detected cell count might not be accurate if auto cell count detection is used (OSD_CELL_COUNT=0).">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ACRVOLT_X" name="OSD4_ACRVOLT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="ACRVOLT_Y" name="OSD4_ACRVOLT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RPM_EN" name="OSD4_RPM_EN" documentation="Displays main rotor revs/min">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RPM_X" name="OSD4_RPM_X" documentation="Horizontal position on screen">
        <field name="Range">0 29</field>
      </param>
      <param humanName="RPM_Y" name="OSD4_RPM_Y" documentation="Vertical position on screen">
        <field name="Range">0 15</field>
      </param>
      <param humanName="LINK_Q_EN" name="OSD4_LINK_Q_EN" documentation="Displays Receiver link quality">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="LINK_Q_X" name="OSD4_LINK_Q_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="LINK_Q_Y" name="OSD4_LINK_Q_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="Sets the overlay text resolution (MSP DisplayPort only)" name="OSD4_TXT_RES" documentation="Sets the overlay text resolution for this screen to either SD 30x16 or HD 50x18/60x22 (MSP DisplayPort only)" user="Standard">
        <values>
          <value code="0">30x16</value>
          <value code="1">50x18</value>
          <value code="2">60x22</value>
        </values>
      </param>
      <param humanName="Sets the font index for this screen (MSP DisplayPort only)" name="OSD4_FONT" documentation="Sets the font index for this screen (MSP DisplayPort only)" user="Standard">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_PWR_EN" name="OSD4_RC_PWR_EN" documentation="Displays the RC link transmit (TX) power in mW or W, depending on level">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_PWR_X" name="OSD4_RC_PWR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_PWR_Y" name="OSD4_RC_PWR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RSSIDBM_EN" name="OSD4_RSSIDBM_EN" documentation="Displays RC link signal strength in dBm">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RSSIDBM_X" name="OSD4_RSSIDBM_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RSSIDBM_Y" name="OSD4_RSSIDBM_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_SNR_EN" name="OSD4_RC_SNR_EN" documentation="Displays RC link signal to noise ratio in dB">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_SNR_X" name="OSD4_RC_SNR_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_SNR_Y" name="OSD4_RC_SNR_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_ANT_EN" name="OSD4_RC_ANT_EN" documentation="Displays the current RC link active antenna">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_ANT_X" name="OSD4_RC_ANT_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_ANT_Y" name="OSD4_RC_ANT_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="RC_LQ_EN" name="OSD4_RC_LQ_EN" documentation="Displays the RC link quality (uplink, 0 to 100%) and also RF mode if bit 7 of OSD_OPTIONS is set">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="RC_LQ_X" name="OSD4_RC_LQ_X" documentation="Horizontal position on screen">
        <field name="Range">0 59</field>
      </param>
      <param humanName="RC_LQ_Y" name="OSD4_RC_LQ_Y" documentation="Vertical position on screen">
        <field name="Range">0 21</field>
      </param>
      <param humanName="ESC_IDX" name="OSD4_ESC_IDX" documentation="Index of the ESC to use for displaying ESC information. 0 means use the ESC with the highest value.">
        <field name="Range">0 32</field>
      </param>
    </parameters>
    <parameters name="OSD5_">
      <param humanName="Enable screen" name="OSD5_ENABLE" documentation="Enable this screen" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Transmitter switch screen minimum pwm" name="OSD5_CHAN_MIN" documentation="This sets the PWM lower limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="Transmitter switch screen maximum pwm" name="OSD5_CHAN_MAX" documentation="This sets the PWM upper limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="SAVE_X" name="OSD5_SAVE_X" documentation="Horizontal position of Save button on screen" user="Advanced">
        <field name="Range">0 25</field>
      </param>
      <param humanName="SAVE_Y" name="OSD5_SAVE_Y" documentation="Vertical position of Save button on screen" user="Advanced">
        <field name="Range">0 15</field>
      </param>
    </parameters>
    <parameters name="OSD5_PARAM1">
      <param humanName="Enable" name="OSD5_PARAM1_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD5_PARAM1_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD5_PARAM1_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD5_PARAM1_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD5_PARAM1_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD5_PARAM1_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD5_PARAM1_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD5_PARAM1_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD5_PARAM1_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD5_PARAM1_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD5_PARAM2">
      <param humanName="Enable" name="OSD5_PARAM2_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD5_PARAM2_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD5_PARAM2_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD5_PARAM2_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD5_PARAM2_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD5_PARAM2_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD5_PARAM2_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD5_PARAM2_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD5_PARAM2_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD5_PARAM2_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD5_PARAM3">
      <param humanName="Enable" name="OSD5_PARAM3_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD5_PARAM3_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD5_PARAM3_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD5_PARAM3_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD5_PARAM3_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD5_PARAM3_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD5_PARAM3_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD5_PARAM3_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD5_PARAM3_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD5_PARAM3_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD5_PARAM4">
      <param humanName="Enable" name="OSD5_PARAM4_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD5_PARAM4_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD5_PARAM4_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD5_PARAM4_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD5_PARAM4_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD5_PARAM4_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD5_PARAM4_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD5_PARAM4_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD5_PARAM4_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD5_PARAM4_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD5_PARAM5">
      <param humanName="Enable" name="OSD5_PARAM5_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD5_PARAM5_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD5_PARAM5_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD5_PARAM5_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD5_PARAM5_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD5_PARAM5_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD5_PARAM5_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD5_PARAM5_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD5_PARAM5_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD5_PARAM5_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD5_PARAM6">
      <param humanName="Enable" name="OSD5_PARAM6_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD5_PARAM6_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD5_PARAM6_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD5_PARAM6_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD5_PARAM6_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD5_PARAM6_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD5_PARAM6_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD5_PARAM6_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD5_PARAM6_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD5_PARAM6_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD5_PARAM7">
      <param humanName="Enable" name="OSD5_PARAM7_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD5_PARAM7_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD5_PARAM7_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD5_PARAM7_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD5_PARAM7_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD5_PARAM7_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD5_PARAM7_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD5_PARAM7_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD5_PARAM7_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD5_PARAM7_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD5_PARAM8">
      <param humanName="Enable" name="OSD5_PARAM8_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD5_PARAM8_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD5_PARAM8_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD5_PARAM8_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD5_PARAM8_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD5_PARAM8_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD5_PARAM8_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD5_PARAM8_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD5_PARAM8_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD5_PARAM8_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD5_PARAM9">
      <param humanName="Enable" name="OSD5_PARAM9_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD5_PARAM9_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD5_PARAM9_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD5_PARAM9_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD5_PARAM9_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD5_PARAM9_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD5_PARAM9_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD5_PARAM9_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD5_PARAM9_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD5_PARAM9_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD6_">
      <param humanName="Enable screen" name="OSD6_ENABLE" documentation="Enable this screen" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Transmitter switch screen minimum pwm" name="OSD6_CHAN_MIN" documentation="This sets the PWM lower limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="Transmitter switch screen maximum pwm" name="OSD6_CHAN_MAX" documentation="This sets the PWM upper limit for this screen" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="SAVE_X" name="OSD6_SAVE_X" documentation="Horizontal position of Save button on screen" user="Advanced">
        <field name="Range">0 25</field>
      </param>
      <param humanName="SAVE_Y" name="OSD6_SAVE_Y" documentation="Vertical position of Save button on screen" user="Advanced">
        <field name="Range">0 15</field>
      </param>
    </parameters>
    <parameters name="OSD6_PARAM1">
      <param humanName="Enable" name="OSD6_PARAM1_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD6_PARAM1_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD6_PARAM1_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD6_PARAM1_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD6_PARAM1_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD6_PARAM1_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD6_PARAM1_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD6_PARAM1_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD6_PARAM1_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD6_PARAM1_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD6_PARAM2">
      <param humanName="Enable" name="OSD6_PARAM2_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD6_PARAM2_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD6_PARAM2_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD6_PARAM2_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD6_PARAM2_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD6_PARAM2_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD6_PARAM2_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD6_PARAM2_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD6_PARAM2_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD6_PARAM2_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD6_PARAM3">
      <param humanName="Enable" name="OSD6_PARAM3_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD6_PARAM3_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD6_PARAM3_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD6_PARAM3_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD6_PARAM3_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD6_PARAM3_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD6_PARAM3_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD6_PARAM3_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD6_PARAM3_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD6_PARAM3_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD6_PARAM4">
      <param humanName="Enable" name="OSD6_PARAM4_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD6_PARAM4_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD6_PARAM4_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD6_PARAM4_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD6_PARAM4_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD6_PARAM4_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD6_PARAM4_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD6_PARAM4_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD6_PARAM4_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD6_PARAM4_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD6_PARAM5">
      <param humanName="Enable" name="OSD6_PARAM5_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD6_PARAM5_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD6_PARAM5_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD6_PARAM5_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD6_PARAM5_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD6_PARAM5_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD6_PARAM5_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD6_PARAM5_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD6_PARAM5_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD6_PARAM5_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD6_PARAM6">
      <param humanName="Enable" name="OSD6_PARAM6_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD6_PARAM6_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD6_PARAM6_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD6_PARAM6_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD6_PARAM6_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD6_PARAM6_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD6_PARAM6_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD6_PARAM6_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD6_PARAM6_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD6_PARAM6_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD6_PARAM7">
      <param humanName="Enable" name="OSD6_PARAM7_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD6_PARAM7_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD6_PARAM7_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD6_PARAM7_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD6_PARAM7_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD6_PARAM7_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD6_PARAM7_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD6_PARAM7_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD6_PARAM7_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD6_PARAM7_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD6_PARAM8">
      <param humanName="Enable" name="OSD6_PARAM8_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD6_PARAM8_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD6_PARAM8_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD6_PARAM8_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD6_PARAM8_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD6_PARAM8_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD6_PARAM8_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD6_PARAM8_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD6_PARAM8_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD6_PARAM8_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="OSD6_PARAM9">
      <param humanName="Enable" name="OSD6_PARAM9_EN" documentation="Enable setting" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="X position" name="OSD6_PARAM9_X" documentation="Horizontal position on screen" user="Standard">
        <field name="Range">0 29</field>
      </param>
      <param humanName="Y position" name="OSD6_PARAM9_Y" documentation="Vertical position on screen" user="Standard">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Parameter key" name="OSD6_PARAM9_KEY" documentation="Key of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter index" name="OSD6_PARAM9_IDX" documentation="Index of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter group" name="OSD6_PARAM9_GRP" documentation="Group of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter minimum" name="OSD6_PARAM9_MIN" documentation="Minimum value of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter maximum" name="OSD6_PARAM9_MAX" documentation="Maximum of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter increment" name="OSD6_PARAM9_INCR" documentation="Increment of the parameter to be displayed and modified" user="Standard">
</param>
      <param humanName="Parameter type" name="OSD6_PARAM9_TYPE" documentation="Type of the parameter to be displayed and modified" user="Standard">
</param>
    </parameters>
    <parameters name="PLND_">
      <param humanName="Precision Land enabled/disabled" name="PLND_ENABLED" documentation="Precision Land enabled/disabled" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Precision Land Type" name="PLND_TYPE" documentation="Precision Land Type" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">MAVLink</value>
          <value code="2">IRLock</value>
          <value code="3">SITL_Gazebo</value>
          <value code="4">SITL</value>
        </values>
      </param>
      <param humanName="Sensor yaw alignment" name="PLND_YAW_ALIGN" documentation="Yaw angle from body x-axis to sensor x-axis." user="Advanced">
        <field name="Range">0 36000</field>
        <field name="Increment">10</field>
        <field name="Units">cdeg</field>
        <field name="UnitText">centidegrees</field>
      </param>
      <param humanName="Land offset forward" name="PLND_LAND_OFS_X" documentation="Desired landing position of the camera forward of the target in vehicle body frame" user="Advanced">
        <field name="Range">-20 20</field>
        <field name="Increment">1</field>
        <field name="Units">cm</field>
        <field name="UnitText">centimeters</field>
      </param>
      <param humanName="Land offset right" name="PLND_LAND_OFS_Y" documentation="desired landing position of the camera right of the target in vehicle body frame" user="Advanced">
        <field name="Range">-20 20</field>
        <field name="Increment">1</field>
        <field name="Units">cm</field>
        <field name="UnitText">centimeters</field>
      </param>
      <param humanName="Precision Land Estimator Type" name="PLND_EST_TYPE" documentation="Specifies the estimation method to be used" user="Advanced">
        <values>
          <value code="0">RawSensor</value>
          <value code="1">KalmanFilter</value>
        </values>
      </param>
      <param humanName="Kalman Filter Accelerometer Noise" name="PLND_ACC_P_NSE" documentation="Kalman Filter Accelerometer Noise, higher values weight the input from the camera more, accels less" user="Advanced">
        <field name="Range">0.5 5</field>
      </param>
      <param humanName="Camera X position offset" name="PLND_CAM_POS_X" documentation="X position of the camera in body frame. Positive X is forward of the origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Camera Y position offset" name="PLND_CAM_POS_Y" documentation="Y position of the camera in body frame. Positive Y is to the right of the origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Camera Z position offset" name="PLND_CAM_POS_Z" documentation="Z position of the camera in body frame. Positive Z is down from the origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Sensor Bus" name="PLND_BUS" documentation="Precland sensor bus for I2C sensors." user="Advanced">
        <values>
          <value code="-1">DefaultBus</value>
          <value code="0">InternalI2C</value>
          <value code="1">ExternalI2C</value>
        </values>
      </param>
      <param humanName="Precision Landing sensor lag" name="PLND_LAG" documentation="Precision Landing sensor lag, to cope with variable landing_target latency" user="Advanced">
        <field name="Range">0.02 0.250</field>
        <field name="Increment">1</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Precision Landing maximum distance to target before descending" name="PLND_XY_DIST_MAX" documentation="The vehicle will not start descending if the landing target is detected and it is further than this many meters away. Set 0 to always descend." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="PrecLand strictness" name="PLND_STRICT" documentation="How strictly should the vehicle land on the target if target is lost">
        <values>
          <value code="0">Land Vertically (Not strict)</value>
          <value code="1">Retry Landing(Normal Strictness)</value>
          <value code="2">Do not land (just Hover) (Very Strict)</value>
        </values>
      </param>
      <param humanName="PrecLand Maximum number of retires for a failed landing" name="PLND_RET_MAX" documentation="PrecLand Maximum number of retires for a failed landing. Set to zero to disable landing retry.">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="PrecLand retry timeout" name="PLND_TIMEOUT" documentation="Time for which vehicle continues descend even if target is lost. After this time period, vehicle will attempt a landing retry depending on PLND_STRICT parameter.">
        <field name="Range">0 20</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="PrecLand retry behaviour" name="PLND_RET_BEHAVE" documentation="Prec Land will do the action selected by this parameter if a retry to a landing is needed">
        <values>
          <value code="0">Go to the last location where landing target was detected</value>
          <value code="1">Go towards the approximate location of the detected landing target</value>
        </values>
      </param>
      <param humanName="PrecLand minimum alt for retry" name="PLND_ALT_MIN" documentation="Vehicle will continue landing vertically even if target is lost below this height. This needs a rangefinder to work. Set to zero to disable this.">
        <field name="Range">0 5</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="PrecLand maximum alt for retry" name="PLND_ALT_MAX" documentation="Vehicle will continue landing vertically until this height if target is not found. Below this height if landing target is not found, landing retry/failsafe might be attempted. This needs a rangefinder to work. Set to zero to disable this.">
        <field name="Range">0 50</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Precision Landing Extra Options" name="PLND_OPTIONS" documentation="Precision Landing Extra Options" user="Advanced">
        <bitmask>
          <bit code="0">Moving Landing Target</bit>
          <bit code="1">Allow Precision Landing after manual reposition</bit>
          <bit code="2">Maintain high speed in final descent</bit>
        </bitmask>
        <field name="Bitmask">0: Moving Landing Target, 1: Allow Precision Landing after manual reposition, 2: Maintain high speed in final descent</field>
      </param>
    </parameters>
    <parameters name="PTCH">
      <param humanName="Pitch Time Constant" name="PTCH2SRV_TCONST" documentation="Time constant in seconds from demanded to achieved pitch angle. Most models respond well to 0.5. May be reduced for faster responses, but setting lower than a model can achieve will not help." user="Advanced">
        <field name="Range">0.4 1.0</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Pitch up max rate" name="PTCH2SRV_RMAX_UP" documentation="This sets the maximum nose up pitch rate that the attitude controller will demand (degrees/sec) in angle stabilized modes. Setting it to zero disables the limit." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Pitch down max rate" name="PTCH2SRV_RMAX_DN" documentation="This sets the maximum nose down pitch rate that the attitude controller will demand (degrees/sec) in angle stabilized modes. Setting it to zero disables the limit." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Roll compensation" name="PTCH2SRV_RLL" documentation="Gain added to pitch to keep aircraft from descending or ascending in turns. Increase in increments of 0.05 to reduce altitude loss. Decrease for altitude gain." user="Standard">
        <field name="Range">0.7 1.5</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Pitch axis rate controller P gain" name="PTCH_RATE_P" documentation="Pitch axis rate controller P gain. Corrects in proportion to the difference between the desired pitch rate vs actual pitch rate" user="Standard">
        <field name="Range">0.08 0.35</field>
        <field name="Increment">0.005</field>
      </param>
      <param humanName="Pitch axis rate controller I gain" name="PTCH_RATE_I" documentation="Pitch axis rate controller I gain.  Corrects long-term difference in desired pitch rate vs actual pitch rate" user="Standard">
        <field name="Range">0.01 0.6</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Pitch axis rate controller I gain maximum" name="PTCH_RATE_IMAX" documentation="Pitch axis rate controller I gain maximum.  Constrains the maximum that the I term will output" user="Standard">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Pitch axis rate controller D gain" name="PTCH_RATE_D" documentation="Pitch axis rate controller D gain.  Compensates for short-term change in desired pitch rate vs actual pitch rate" user="Standard">
        <field name="Range">0.001 0.03</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Pitch axis rate controller feed forward" name="PTCH_RATE_FF" documentation="Pitch axis rate controller feed forward" user="Standard">
        <field name="Range">0 3.0</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Pitch axis rate controller target frequency in Hz" name="PTCH_RATE_FLTT" documentation="Pitch axis rate controller target frequency in Hz" user="Standard">
        <field name="Range">2 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Pitch axis rate controller error frequency in Hz" name="PTCH_RATE_FLTE" documentation="Pitch axis rate controller error frequency in Hz" user="Standard">
        <field name="Range">2 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Pitch axis rate controller derivative frequency in Hz" name="PTCH_RATE_FLTD" documentation="Pitch axis rate controller derivative frequency in Hz" user="Standard">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Pitch slew rate limit" name="PTCH_RATE_SMAX" documentation="Sets an upper limit on the slew rate produced by the combined P and D gains. If the amplitude of the control action produced by the rate feedback exceeds this value, then the D+P gain is reduced to respect the limit. This limits the amplitude of high frequency oscillations caused by an excessive gain. The limit should be set to no more than 25% of the actuators maximum slew rate to allow for load effects. Note: The gain will not be reduced to less than 10% of the nominal value. A value of zero will disable this feature." user="Advanced">
        <field name="Range">0 200</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Pitch axis rate controller PD sum maximum" name="PTCH_RATE_PDMX" documentation="Pitch axis rate controller PD sum maximum.  The maximum/minimum value that the sum of the P and D term can output">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Pitch Derivative FeedForward Gain" name="PTCH_RATE_D_FF" documentation="FF D Gain which produces an output that is proportional to the rate of change of the target" user="Advanced">
        <field name="Range">0 0.03</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Pitch Target notch filter index" name="PTCH_RATE_NTF" documentation="Pitch Target notch filter index" user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Pitch Error notch filter index" name="PTCH_RATE_NEF" documentation="Pitch Error notch filter index" user="Advanced">
        <field name="Range">1 8</field>
      </param>
    </parameters>
    <parameters name="PUP_">
      <param humanName="Enable pullup after altitude wait" name="PUP_ENABLE" documentation="Enable pullup after altitude wait" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Elevator deflection used before starting pullup" name="PUP_ELEV_OFS" documentation="Elevator deflection offset from -1 to 1 while waiting for airspeed to rise before starting close loop control of the pullup." user="Advanced">
        <field name="Range">-1.0 1.0</field>
      </param>
      <param humanName="Maximum normal load factor during pullup" name="PUP_NG_LIM" documentation="This is the nominal maximum value of normal load factor used during the closed loop pitch rate control of the pullup." user="Advanced">
        <field name="Range">1.0 4.0</field>
      </param>
      <param humanName="Maximum normal load factor rate of change during pullup" name="PUP_NG_JERK_LIM" documentation="The normal load factor used for closed loop pitch rate control of the pullup will be ramped up to the value set by PUP_NG_LIM at the rate of change set by this parameter. The parameter value specified will be scaled internally by 1/EAS2TAS." user="Advanced">
        <field name="Units">1/s</field>
        <field name="UnitText">per second</field>
        <field name="Range">0.1 10.0</field>
      </param>
      <param humanName="Target pitch angle during pullup" name="PUP_PITCH" documentation="The vehicle will attempt achieve this pitch angle during the pull-up maneouvre." user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-5 15</field>
      </param>
      <param humanName="Pullup target airspeed" name="PUP_ARSPD_START" documentation="Target airspeed for initial airspeed wait" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0 100</field>
      </param>
      <param humanName="Pullup target pitch" name="PUP_PITCH_START" documentation="Target pitch for initial pullup" user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-80 0</field>
      </param>
    </parameters>
    <parameters name="QWIK_">
      <param humanName="Quicktune enable" name="QWIK_ENABLE" documentation="Enable quicktune system" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Quicktune axes" name="QWIK_AXES" documentation="Axes to tune" user="Standard">
        <bitmask>
          <bit code="0">Roll</bit>
          <bit code="1">Pitch</bit>
          <bit code="2">Yaw</bit>
        </bitmask>
        <field name="Bitmask">0:Roll,1:Pitch,2:Yaw</field>
      </param>
      <param humanName="Quicktune doubling time" name="QWIK_DOUBLE_TIME" documentation="Time to double a tuning parameter. Raise this for a slower tune." user="Standard">
        <field name="Range">5 20</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Quicktune gain margin" name="QWIK_GAIN_MARGIN" documentation="Reduction in gain after oscillation detected. Raise this number to get a more conservative tune" user="Standard">
        <field name="Range">20 80</field>
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Quicktune oscillation rate threshold" name="QWIK_OSC_SMAX" documentation="Threshold for oscillation detection. A lower value will lead to a more conservative tune." user="Standard">
        <field name="Range">1 10</field>
      </param>
      <param humanName="Quicktune Yaw P max" name="QWIK_YAW_P_MAX" documentation="Maximum value for yaw P gain" user="Standard">
        <field name="Range">0.1 3</field>
      </param>
      <param humanName="Quicktune Yaw D max" name="QWIK_YAW_D_MAX" documentation="Maximum value for yaw D gain" user="Standard">
        <field name="Range">0.001 1</field>
      </param>
      <param humanName="Quicktune roll/pitch PI ratio" name="QWIK_RP_PI_RATIO" documentation="Ratio between P and I gains for roll and pitch. Raise this to get a lower I gain" user="Standard">
        <field name="Range">1.0 2.0</field>
      </param>
      <param humanName="Quicktune Yaw PI ratio" name="QWIK_Y_PI_RATIO" documentation="Ratio between P and I gains for yaw. Raise this to get a lower I gain" user="Standard">
        <field name="Range">1.0 20</field>
      </param>
      <param humanName="Quicktune auto filter enable" name="QWIK_AUTO_FILTER" documentation="When enabled the PID filter settings are automatically set based on INS_GYRO_FILTER" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Quicktune auto save" name="QWIK_AUTO_SAVE" documentation="Number of seconds after completion of tune to auto-save. This is useful when using a 2 position switch for quicktune. Zero (the default value) disables automatic saving, and you will need to have a 3 position switch to save or use GCS auxilliary functions." user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Quicktune maximum gain reduction" name="QWIK_REDUCE_MAX" documentation="This controls how much quicktune is allowed to lower gains from the original gains. If the vehicle already has a reasonable tune and is not oscillating then you can set this to zero to prevent gain reductions. The default of 20% is reasonable for most vehicles. Using a maximum gain reduction lowers the chance of an angle P oscillation happening if quicktune gets a false positive oscillation at a low gain, which can result in very low rate gains and a dangerous angle P oscillation." user="Standard">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">0 100</field>
      </param>
      <param humanName="Quicktune options" name="QWIK_OPTIONS" documentation="Additional options. When the Two Position Switch option is enabled then a high switch position will start the tune, low will disable the tune. you should also set a QUIK_AUTO_SAVE time so that you will be able to save the tune." user="Standard">
        <bitmask>
          <bit code="0">UseTwoPositionSwitch</bit>
        </bitmask>
        <field name="Bitmask">0:UseTwoPositionSwitch</field>
      </param>
      <param humanName="maximum angle error for tune abort" name="QWIK_ANGLE_MAX" documentation="If while tuning the angle error goes over this limit then the tune will aborts to prevent a bad oscillation in the case of the tuning algorithm failing. If you get an error &quot;Quicktune: attitude error ABORTING&quot; and you think it is a false positive then you can either raise this parameter or you can try increasing the QWIK_DOUBLE_TIME to do the tune more slowly." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
    </parameters>
    <parameters name="Q_">
      <param humanName="Enable QuadPlane" name="Q_ENABLE" documentation="This enables QuadPlane functionality, assuming multicopter motors start on output 5. If this is set to 2 then when starting AUTO mode it will initially be in VTOL AUTO mode." user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
          <value code="2">Enable VTOL AUTO</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Transition time" name="Q_TRANSITION_MS" documentation="Transition time in milliseconds after minimum airspeed is reached" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="Range">500 30000</field>
      </param>
      <param humanName="Pilot maximum vertical speed up" name="Q_PILOT_SPD_UP" documentation="The maximum ascending vertical velocity the pilot may request in m/s" user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0.5 5</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Pilot maximum vertical speed down" name="Q_PILOT_SPD_DN" documentation="The maximum vertical velocity the pilot may request in m/s going down. If 0, uses Q_PILOT_SPD_UP value." user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0.5 5</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Pilot vertical acceleration" name="Q_PILOT_ACCEL_Z" documentation="The vertical acceleration used when pilot is controlling the altitude" user="Standard">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">0.5 5</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="RC output speed in Hz" name="Q_RC_SPEED" documentation="This is the PWM refresh rate in Hz for QuadPlane quad motors" user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">50 500</field>
        <field name="Increment">10</field>
      </param>
      <param humanName="Quadplane assistance speed" name="Q_ASSIST_SPEED" documentation="This is the speed below which the quad motors will provide stability and lift assistance in fixed wing modes. The default value of 0 disables assistance but will generate a pre-arm failure to encourage users to set this parameter to -1, or a positive, non-zero value. If this is set to -1 then all Q_ASSIST features are disabled except during transitions. A high non-zero,positive value will lead to more false positives which can waste battery. A lower value will result in less false positive, but will result in assistance taking longer to trigger. If unsure then set to 3 m/s below the minimum airspeed you will fly at. If you don't have an airspeed sensor then use 5 m/s below the minimum airspeed you fly at." user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0 100</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Maximum yaw rate" name="Q_YAW_RATE_MAX" documentation="This is the maximum yaw rate for pilot input on rudder stick in degrees/second and weathervaning is limited to half of this value" user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">50 500</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Land final speed" name="Q_LAND_FINAL_SPD" documentation="The descent speed for the final stage of landing in m/s" user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0.3 2</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Land final altitude" name="Q_LAND_FINAL_ALT" documentation="The altitude at which we should switch to Q_LAND_FINAL_SPD descent rate" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.5 50</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Transition max pitch" name="Q_TRAN_PIT_MAX" documentation="Maximum pitch during transition to auto fixed wing flight" user="Standard">
        <field name="Range">0 30</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Frame Class" name="Q_FRAME_CLASS" documentation="Controls major frame class for multicopter component" user="Standard">
        <values>
          <value code="0">Undefined</value>
          <value code="1">Quad</value>
          <value code="2">Hexa</value>
          <value code="3">Octa</value>
          <value code="4">OctaQuad</value>
          <value code="5">Y6</value>
          <value code="7">Tri</value>
          <value code="10">Single/Dual</value>
          <value code="12">DodecaHexa</value>
          <value code="14">Deca</value>
          <value code="15">Scripting Matrix</value>
          <value code="17">Dynamic Scripting Matrix</value>
        </values>
      </param>
      <param humanName="Frame Type (+, X or V)" name="Q_FRAME_TYPE" documentation="Controls motor mixing for multicopter component" user="Standard">
        <values>
          <value code="0">Plus</value>
          <value code="1">X</value>
          <value code="2">V</value>
          <value code="3">H</value>
          <value code="4">V-Tail</value>
          <value code="5">A-Tail</value>
          <value code="10">Y6B</value>
          <value code="11">Y6F</value>
          <value code="12">BetaFlightX</value>
          <value code="13">DJIX</value>
          <value code="14">ClockwiseX</value>
          <value code="15">I</value>
          <value code="16">MOTOR_FRAME_TYPE_NYT_PLUS</value>
          <value code="17">MOTOR_FRAME_TYPE_NYT_X</value>
          <value code="18">BetaFlightXReversed</value>
          <value code="19">Y4</value>
        </values>
      </param>
      <param humanName="Forward velocity hold gain" name="Q_VFWD_GAIN" documentation="The use of this parameter is no longer recommended and has been superseded by a method that works in all VTOL modes with the exception of QAUTOTUNE which is controlled by the Q_FWD_THR_USE parameter. This Q_VFD_GAIN parameter controls use of the forward motor in VTOL modes that use the velocity controller. Set to 0 to disable this function. A value of 0.05 is a good place to start if you want to use the forward motor for position control. No forward motor will be used in QSTABILIZE or QHOVER modes. Use with QLOITER for position hold with the forward motor." user="Standard">
        <field name="Range">0 0.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="QRTL return altitude" name="Q_RTL_ALT" documentation="The altitude which QRTL mode heads to initially" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">1 200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="VTOL RTL mode" name="Q_RTL_MODE" documentation="If this is set to 1 then an RTL will change to QRTL when within RTL_RADIUS meters of the RTL destination, VTOL approach: vehicle will RTL at RTL alt and circle with a radius of Q_FW_LND_APR_RAD down to Q_RTL_ALT and then transition into the wind and QRTL, see 'AUTO VTOL Landing', QRTL Always: do a QRTL instead of RTL" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">VTOL approach</value>
          <value code="3">QRTL Always</value>
        </values>
      </param>
      <param humanName="Enable VTOL in GUIDED mode" name="Q_GUIDED_MODE" documentation="This enables use of VTOL in guided mode. When enabled the aircraft will switch to VTOL flight when the guided destination is reached and hover at the destination." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="ESC Calibration" name="Q_ESC_CAL" documentation="This is used to calibrate the throttle range of the VTOL motors. Please read https://ardupilot.org/plane/docs/quadplane-esc-calibration.html before using. This parameter is automatically set back to 0 on every boot. This parameter only takes effect in QSTABILIZE mode. When set to 1 the output of all motors will come directly from the throttle stick when armed, and will be zero when disarmed. When set to 2 the output of all motors will be maximum when armed and zero when disarmed. Make sure you remove all properllers before using." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">ThrottleInput</value>
          <value code="2">FullInput</value>
        </values>
      </param>
      <param humanName="Forward velocity alt cutoff" name="Q_VFWD_ALT" documentation="Controls altitude to disable forward velocity assist when below this relative altitude. This is useful to keep the forward velocity propeller from hitting the ground. Rangefinder height data is incorporated when available." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 10</field>
        <field name="Increment">0.25</field>
      </param>
      <param humanName="Cut IC engine on landing" name="Q_LAND_ICE_CUT" documentation="This controls stopping an internal combustion engine in the final landing stage of a VTOL. This is important for aircraft where the forward thrust engine may experience prop-strike if left running during landing. This requires the engine controls are enabled using the ICE_* parameters." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Quadplane assistance angle" name="Q_ASSIST_ANGLE" documentation="This is the angular error in attitude beyond which the quadplane VTOL motors will provide stability assistance. This will only be used if Q_ASSIST_SPEED is also positive and non-zero. Assistance will be given if the attitude is outside the normal attitude limits by at least 5 degrees and the angular error in roll or pitch is greater than this angle for at least Q_ASSIST_DELAY seconds. Set to zero to disable angle assistance." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 90</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Quadplane assistance options" name="Q_ASSIST_OPTIONS" documentation="Options for special QAssist features" user="Standard">
        <bitmask>
          <bit code="0">Disable force fixed wing controller recovery</bit>
          <bit code="1">Disable quadplane spin recovery</bit>
        </bitmask>
        <field name="Bitmask">0: Disable force fixed wing controller recovery, 1: Disable quadplane spin recovery</field>
      </param>
      <param humanName="MAVLink type identifier" name="Q_MAV_TYPE" documentation="This controls the mavlink type given in HEARTBEAT messages. For some GCS types a particular setting will be needed for correct operation.">
        <values>
          <value code="0">AUTO</value>
          <value code="1">FIXED_WING</value>
          <value code="2">QUADROTOR</value>
          <value code="3">COAXIAL</value>
          <value code="4">HELICOPTER</value>
          <value code="7">AIRSHIP</value>
          <value code="8">FREE_BALLOON</value>
          <value code="9">ROCKET</value>
          <value code="10">GROUND_ROVER</value>
          <value code="11">SURFACE_BOAT</value>
          <value code="12">SUBMARINE</value>
          <value code="16">FLAPPING_WING</value>
          <value code="17">KITE</value>
          <value code="19">VTOL_DUOROTOR</value>
          <value code="20">VTOL_QUADROTOR</value>
          <value code="21">VTOL_TILTROTOR</value>
        </values>
      </param>
      <param humanName="quadplane options" name="Q_OPTIONS" documentation="See description for each bitmask bit description">
        <bitmask>
          <bit code="0">Level Transition-keep wings within LEVEL_ROLL_LIMIT and only use forward motor(s) for climb during transition</bit>
          <bit code="1">Allow FW Takeoff-if bit is not set then NAV_TAKEOFF command on quadplanes will instead perform a NAV_VTOL takeoff</bit>
          <bit code="2">Allow FW Land-if bit is not set then NAV_LAND command on quadplanes will instead perform a NAV_VTOL_LAND</bit>
          <bit code="3">Vtol Takeoff Frame-command NAV_VTOL_TAKEOFF alt set by the command's reference frame not above current location</bit>
          <bit code="4">Always use FW spiral approach-always use Use a fixed wing spiral approach for VTOL landings</bit>
          <bit code="5">USE QRTL-instead of QLAND for rc failsafe when in VTOL modes</bit>
          <bit code="6">Use Governor-use ICE Idle Governor in MANUAL for forward motor</bit>
          <bit code="7">Force Qassist-on always</bit>
          <bit code="8">Mtrs_Only_Qassist-in tailsitters only uses VTOL motors and not flying surfaces for QASSIST</bit>
          <bit code="10">Disarmed Yaw Tilt-enable motor tilt for yaw when disarmed</bit>
          <bit code="11">Delay Spoolup-delay VTOL spoolup for 2 seconds after arming</bit>
          <bit code="12">Disable speed based Qassist when using synthetic airspeed estimates</bit>
          <bit code="13">Disable Ground Effect Compensation-on baro altitude reports</bit>
          <bit code="14">Ignore forward flight angle limits-in Qmodes and use Q_A_ANGLE_MAX exclusively</bit>
          <bit code="15">ThrLandControl-enable throttle stick control of landing rate</bit>
          <bit code="16">DisableApproach-disable use of approach and airbrake stages in VTOL landing</bit>
          <bit code="17">EnableLandResposition-enable pilot controlled repositioning in AUTO land.Descent will pause while repositioning</bit>
          <bit code="18">ARMVTOL-arm only in VTOL modes (or AUTO mode when current nav cmd is VTOL Takeoff)</bit>
          <bit code="19">CompleteTransition-to fixed wing if Q_TRANS_FAIL timer times out instead of QLAND</bit>
          <bit code="20">Force RTL mode-forces RTL mode on rc failsafe in VTOL modes overriding bit 5(USE_QRTL)</bit>
          <bit code="21">Tilt rotor-tilt motors up when disarmed in FW modes (except manual) to prevent ground strikes.</bit>
          <bit code="22">Scale FF by the ratio of VTOL to plane angle P gains in Position 1 phase of transition into VTOL flight as well as reducing VTOL angle P based on airspeed.</bit>
        </bitmask>
        <field name="Bitmask">0: Level Transition-keep wings within LEVEL_ROLL_LIMIT and only use forward motor(s) for climb during transition, 1: Allow FW Takeoff-if bit is not set then NAV_TAKEOFF command on quadplanes will instead perform a NAV_VTOL takeoff, 2: Allow FW Land-if bit is not set then NAV_LAND command on quadplanes will instead perform a NAV_VTOL_LAND, 3: Vtol Takeoff Frame-command NAV_VTOL_TAKEOFF alt set by the command's reference frame not above current location, 4: Always use FW spiral approach-always use Use a fixed wing spiral approach for VTOL landings, 5: USE QRTL-instead of QLAND for rc failsafe when in VTOL modes, 6: Use Governor-use ICE Idle Governor in MANUAL for forward motor, 7: Force Qassist-on always, 8: Mtrs_Only_Qassist-in tailsitters only uses VTOL motors and not flying surfaces for QASSIST, 10: Disarmed Yaw Tilt-enable motor tilt for yaw when disarmed, 11: Delay Spoolup-delay VTOL spoolup for 2 seconds after arming, 12: Disable speed based Qassist when using synthetic airspeed estimates, 13: Disable Ground Effect Compensation-on baro altitude reports, 14: Ignore forward flight angle limits-in Qmodes and use Q_A_ANGLE_MAX exclusively, 15: ThrLandControl-enable throttle stick control of landing rate, 16: DisableApproach-disable use of approach and airbrake stages in VTOL landing, 17: EnableLandResposition-enable pilot controlled repositioning in AUTO land.Descent will pause while repositioning, 18: ARMVTOL-arm only in VTOL modes (or AUTO mode when current nav cmd is VTOL Takeoff), 19: CompleteTransition-to fixed wing if Q_TRANS_FAIL timer times out instead of QLAND, 20: Force RTL mode-forces RTL mode on rc failsafe in VTOL modes overriding bit 5(USE_QRTL), 21: Tilt rotor-tilt motors up when disarmed in FW modes (except manual) to prevent ground strikes., 22: Scale FF by the ratio of VTOL to plane angle P gains in Position 1 phase of transition into VTOL flight as well as reducing VTOL angle P based on airspeed.</field>
      </param>
      <param humanName="Transition deceleration" name="Q_TRANS_DECEL" documentation="This is deceleration rate that will be used in calculating the stopping distance when transitioning from fixed wing flight to multicopter flight." user="Standard">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Increment">0.1</field>
        <field name="Range">0.2 5</field>
      </param>
      <param humanName="Quadplane AHRS trim pitch" name="Q_TRIM_PITCH" documentation="This sets the compensation for the pitch angle trim difference between calibrated AHRS level and vertical flight pitch. NOTE! this is relative to calibrated AHRS trim, not forward flight trim which includes PTCH_TRIM_DEG. For tailsitters, this is relative to a baseline of 90 degrees in AHRS." user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-10 +10</field>
        <field name="Increment">0.1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Quadplane fixed wing landing approach radius" name="Q_FW_LND_APR_RAD" documentation="This provides the radius used, when using a fixed wing landing approach. If set to 0 then the WP_LOITER_RAD will be selected." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 200</field>
        <field name="Increment">5</field>
      </param>
      <param humanName="Quadplane transition failure time" name="Q_TRANS_FAIL" documentation="Maximum time allowed for forward transitions, exceeding this time will cancel the transition and the aircraft will immediately change to the mode set by Q_TRANS_FAIL_ACT or finish the transition depending on Q_OPTIONS bit 19. 0 for no limit." user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 20</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Throttle expo strength" name="Q_THROTTLE_EXPO" documentation="Amount of curvature in throttle curve: 0 is linear, 1 is cubic" user="Advanced">
        <field name="Range">0 1</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="QACRO mode roll rate" name="Q_ACRO_RLL_RATE" documentation="The maximum roll rate at full stick deflection in QACRO mode" user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">10 500</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="QACRO mode pitch rate" name="Q_ACRO_PIT_RATE" documentation="The maximum pitch rate at full stick deflection in QACRO mode" user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">10 500</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="QACRO mode yaw rate" name="Q_ACRO_YAW_RATE" documentation="The maximum yaw rate at full stick deflection in QACRO mode" user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">10 500</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Takeoff time failure scalar" name="Q_TKOFF_FAIL_SCL" documentation="Scalar for how long past the expected takeoff time a takeoff should be considered as failed and the vehicle will switch to QLAND. If set to 0 there is no limit on takeoff time." user="Advanced">
        <field name="Range">1.1 5.0</field>
        <field name="Increment">5.1</field>
      </param>
      <param humanName="Takeoff airspeed limit" name="Q_TKOFF_ARSP_LIM" documentation="Airspeed limit during takeoff. If the airspeed exceeds this level the vehicle will switch to QLAND. This is useful for ensuring that you don't takeoff into excessively strong wind. If set to 0 there is no limit on airspeed during takeoff." user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0 20</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Quadplane assistance altitude" name="Q_ASSIST_ALT" documentation="This is the altitude below which quadplane assistance will be triggered. This acts the same way as Q_ASSIST_ANGLE and Q_ASSIST_SPEED, but triggers if the aircraft drops below the given altitude while the VTOL motors are not running. A value of zero disables this feature. The altitude is calculated as being above ground level. The height above ground is given from a Lidar used if available and RNGFND_LANDING=1. Otherwise it comes from terrain data if TERRAIN_FOLLOW=1 and comes from height above home otherwise." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 120</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Quadplane assistance delay" name="Q_ASSIST_DELAY" documentation="This is delay between the assistance thresholds being met and the assistance starting." user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 2</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="VTOL manual forward throttle max percent" name="Q_FWD_MANTHR_MAX" documentation="Maximum value for manual forward throttle; used with RC option FWD_THR (209)">
        <field name="Range">0 100</field>
      </param>
      <param humanName="SLT and Tiltrotor back transition pitch limit duration" name="Q_BACKTRANS_MS" documentation="Pitch angle will increase from 0 to angle max over this duration when switching into VTOL flight in a position control mode. 0 Disables.">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Quadplane transition failure action" name="Q_TRANS_FAIL_ACT" documentation="This sets the mode that is changed to when Q_TRANS_FAIL time elapses, if set. See also Q_OPTIONS bit 19: CompleteTransition if Q_TRANS_FAIL">
        <values>
          <value code="-1">Warn only</value>
          <value code="0">QLand</value>
          <value code="1">QRTL</value>
        </values>
      </param>
      <param humanName="Land detection altitude change threshold" name="Q_LAND_ALTCHG" documentation="The maximum altitude change allowed during land detection. You can raise this value if you find that landing detection takes a long time to complete. It is the maximum change in altitude over a period of 4 seconds for landing to be detected" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.1 0.6</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Minimum navigation altitude" name="Q_NAVALT_MIN" documentation="This is the altitude in meters above which navigation begins in auto takeoff. Below this altitude the target roll and pitch will be zero. A value of zero disables the feature" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 5</field>
      </param>
      <param humanName="Pilot controlled yaw rate" name="Q_PLT_Y_RATE" documentation="Pilot controlled yaw rate max. Used in all pilot controlled modes except QAcro" user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">1 360</field>
      </param>
      <param humanName="Pilot controlled yaw expo" name="Q_PLT_Y_EXPO" documentation="Pilot controlled yaw expo to allow faster rotation when stick at edges" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="0.1">Very Low</value>
          <value code="0.2">Low</value>
          <value code="0.3">Medium</value>
          <value code="0.4">High</value>
          <value code="0.5">Very High</value>
        </values>
        <field name="Range">-0.5 1.0</field>
      </param>
      <param humanName="Pilot yaw rate control input time constant" name="Q_PLT_Y_RATE_TC" documentation="Pilot yaw rate control input time constant. Low numbers lead to sharper response, higher numbers to softer response." user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
        <values>
          <value code="0.5">Very Soft</value>
          <value code="0.2">Soft</value>
          <value code="0.15">Medium</value>
          <value code="0.1">Crisp</value>
          <value code="0.05">Very Crisp</value>
        </values>
      </param>
      <param humanName="QRTL minimum altitude" name="Q_RTL_ALT_MIN" documentation="If VTOL motors are active QRTL mode will VTOL climb to at least this altitude before returning home. If outside 150% the larger of WP_LOITER_RAD and RTL_RADIUS the vehicle will VTOL climb to Q_RTL_ALT. This parameter has no effect if the vehicle is in forward flight. Should be between Q_LAND_FINAL_ALT and Q_RTL_ALT" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">1 200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Q mode fwd throttle gain" name="Q_FWD_THR_GAIN" documentation="This parameter sets the gain from forward accel/tilt to forward throttle in certain Q modes. The Q modes this feature operates in is controlled by the Q_FWD_THR_USE parameter. Vehicles using separate forward thrust motors, eg quadplanes, should set this parameter to (all up weight) / (maximum combined thrust of forward motors) with a value of 2 being typical. Vehicles that tilt lifting rotors to provide forward thrust should set this parameter to (all up weight) / (weight lifted by tilting rotors) which for most aircraft can be approximated as (total number of lifting rotors) / (number of lifting rotors that tilt). When using this method of forward throttle control, the forward tilt angle limit is controlled by the Q_FWD_PIT_LIM parameter." user="Standard">
        <field name="Range">0.0 5.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Q mode forward pitch limit" name="Q_FWD_PIT_LIM" documentation="When forward throttle is being controlled by the Q_FWD_THR_GAIN parameter in Q modes, the vehicle forward (nose down) pitch rotation will be limited to the value specified by this parameter and the any additional forward acceleration required will be produced by use of the forward thrust motor(s) or tilting of moveable rotors. Larger values allow the vehicle to pitch more nose down. Set initially to the amount of nose down pitch required to remove wing lift." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0.0 5.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Q mode forward throttle use" name="Q_FWD_THR_USE" documentation="This parameter determines when the feature that uses forward throttle instead of forward tilt is used. The amount of forward throttle is controlled by the Q_FWD_THR_GAIN parameter. The maximum amount of forward pitch allowed is controlled by the Q_FWD_PIT_LIM parameter. Q_FWD_THR_USE = 0 disables the feature. Q_FWD_THR_USE = 1 enables the feature in all position controlled modes such as QLOITER, QLAND, QRTL and VTOL TAKEOFF. Q_FWD_THR_USE = 2 enables the feature in all Q modes except QAUTOTUNE and QACRO. When enabling the feature, the legacy method of controlling forward throttle use via velocity controller error should be disabled by setting Q_VFWD_GAIN to 0. Do not use this feature with tailsitters." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On in all position controlled Q modes</value>
          <value code="2">On in all Q modes except QAUTOTUNE and QACRO</value>
        </values>
      </param>
      <param humanName="Q mode rearward pitch limit" name="Q_BCK_PIT_LIM" documentation="This sets the maximum number of degrees of back or pitch up in Q modes when the airspeed is at AIRSPEED_MIN, and is used to prevent excessive sutructural loads when pitching up decelerate. If airspeed is above or below AIRSPEED_MIN, the pitch up/back will be adjusted according to the formula pitch_limit = Q_BCK_PIT_LIM * (AIRSPEED_MIN / IAS)^2. The backwards/up pitch limit controlled by this parameter is in addition to limiting applied by PTCH_LIM_MAX_DEG and Q_A_ANGLE_MAX. The BCK_PIT_LIM limit is only applied when Q_FWD_THR_USE is set to 1 or 2 and the vehicle is flying in a mode that uses forward throttle instead of forward tilt to generate forward speed. Set to a non positive value 0 to deactivate this limit." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0.0 15.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Q mode approach distance" name="Q_APPROACH_DIST" documentation="The minimum distance from the destination to use the fixed wing airbrake and approach code for landing approach. This is useful if you don't want the fixed wing approach logic to be used when you are close to the destination. Set to zero to always use fixed wing approach." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.0 1000</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Auto Takeoff Check RPM minimum" name="Q_TKOFF_RPM_MIN" documentation="Auto takeoff (in Auto or Guided) is not permitted until motors report at least this RPM. Set to zero to disable check (which also disables Q_TKOFF_RPM_MAX)." user="Standard">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Auto Takeoff Check RPM maximum" name="Q_TKOFF_RPM_MAX" documentation="Auto takeoff (in Auto or Guided) is not permitted until motors report no more than this RPM. Set to zero to disable check. Q_TKOFF_RPM_MIN must also be set to a non-zero value to enable this check." user="Standard">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="VTOL thrust loss detection options" name="Q_THRST_LOSS_OPT" documentation="Configuration for thrust loss detection detection, this results in &quot;Potential VTOL Thrust Loss&quot; warnings. This detection also allows the motor mixer to ignore the failed motor allowing better use of the remaining motors.">
        <bitmask>
          <bit code="0">Disable thrust loss detection.</bit>
          <bit code="1">Disable thrust loss detection in transtions and fixed wing modes. Thrust loss detection will only run in VTOL modes.</bit>
        </bitmask>
        <field name="Bitmask">0: Disable thrust loss detection., 1: Disable thrust loss detection in transtions and fixed wing modes. Thrust loss detection will only run in VTOL modes.</field>
      </param>
    </parameters>
    <parameters name="Q_AUTOTUNE_">
      <param humanName="Autotune axis bitmask" name="Q_AUTOTUNE_AXES" documentation="1-byte bitmap of axes to autotune" user="Standard">
        <bitmask>
          <bit code="0">Roll</bit>
          <bit code="1">Pitch</bit>
          <bit code="2">Yaw</bit>
          <bit code="3">YawD</bit>
        </bitmask>
        <field name="Bitmask">0:Roll,1:Pitch,2:Yaw,3:YawD</field>
      </param>
      <param humanName="Autotune aggressiveness" name="Q_AUTOTUNE_AGGR" documentation="Autotune aggressiveness. Defines the bounce back used to detect size of the D term." user="Standard">
        <field name="Range">0.05 0.10</field>
      </param>
      <param humanName="AutoTune minimum D" name="Q_AUTOTUNE_MIN_D" documentation="Defines the minimum D gain" user="Standard">
        <field name="Range">0.0001 0.005</field>
      </param>
      <param humanName="AutoTune Gain Margin Backoff" name="Q_AUTOTUNE_GMBK" documentation="Fraction by which tuned P and D gains are reduced after rate and angle AutoTune steps complete. This provides extra stability margin by reducing gains slightly from the optimal values found during tuning. A value of 0.0 applies no reduction. A value of 0.25 reduces tuned gains by 25%." user="Standard">
        <field name="Range">0.0 0.5</field>
      </param>
    </parameters>
    <parameters name="Q_A_">
      <param humanName="Rate Feedforward Enable" name="Q_A_RATE_FF_ENAB" documentation="Controls whether body-frame rate feedforward is enabled or disabled" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Angle Boost" name="Q_A_ANGLE_BOOST" documentation="Angle Boost increases output throttle as the vehicle leans to reduce loss of altitude" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Roll axis angle controller P gain" name="Q_A_ANG_RLL_P" documentation="Roll axis angle controller P gain.  Converts the error between the desired roll angle and actual angle to a desired roll rate" user="Standard">
        <field name="Range">3.000 12.000</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Pitch axis angle controller P gain" name="Q_A_ANG_PIT_P" documentation="Pitch axis angle controller P gain.  Converts the error between the desired pitch angle and actual angle to a desired pitch rate" user="Standard">
        <field name="Range">3.000 12.000</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Yaw axis angle controller P gain" name="Q_A_ANG_YAW_P" documentation="Yaw axis angle controller P gain.  Converts the error between the desired yaw angle and actual angle to a desired yaw rate" user="Standard">
        <field name="Range">3.000 12.000</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Angle Limit (to maintain altitude) Time Constant" name="Q_A_ANG_LIM_TC" documentation="Angle Limit (to maintain altitude) Time Constant" user="Advanced">
        <field name="Range">0.5 10.0</field>
      </param>
      <param humanName="Angular Velocity Max for Roll" name="Q_A_RATE_R_MAX" documentation="Maximum angular velocity in roll axis" user="Advanced">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">0 1080</field>
        <field name="Increment">1</field>
        <values>
          <value code="0">Disabled</value>
          <value code="60">Slow</value>
          <value code="180">Medium</value>
          <value code="360">Fast</value>
        </values>
      </param>
      <param humanName="Angular Velocity Max for Pitch" name="Q_A_RATE_P_MAX" documentation="Maximum angular velocity in pitch axis" user="Advanced">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">0 1080</field>
        <field name="Increment">1</field>
        <values>
          <value code="0">Disabled</value>
          <value code="60">Slow</value>
          <value code="180">Medium</value>
          <value code="360">Fast</value>
        </values>
      </param>
      <param humanName="Angular Velocity Max for Yaw" name="Q_A_RATE_Y_MAX" documentation="Maximum angular velocity in yaw axis" user="Advanced">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">0 1080</field>
        <field name="Increment">1</field>
        <values>
          <value code="0">Disabled</value>
          <value code="60">Slow</value>
          <value code="180">Medium</value>
          <value code="360">Fast</value>
        </values>
      </param>
      <param humanName="Attitude control input time constant" name="Q_A_INPUT_TC" documentation="Attitude control input time constant.  Low numbers lead to sharper response, higher numbers to softer response" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
        <values>
          <value code="0.5">Very Soft</value>
          <value code="0.2">Soft</value>
          <value code="0.15">Medium</value>
          <value code="0.1">Crisp</value>
          <value code="0.05">Very Crisp</value>
        </values>
      </param>
      <param humanName="Landed roll gain multiplier" name="Q_A_LAND_R_MULT" documentation="Roll gain multiplier active when landed. A factor of 1.0 means no reduction in gain while landed. Reduce this factor to reduce ground oscitation in the roll axis." user="Advanced">
        <field name="Range">0.25 1.0</field>
      </param>
      <param humanName="Landed pitch gain multiplier" name="Q_A_LAND_P_MULT" documentation="Pitch gain multiplier active when landed. A factor of 1.0 means no reduction in gain while landed. Reduce this factor to reduce ground oscitation in the pitch axis." user="Advanced">
        <field name="Range">0.25 1.0</field>
      </param>
      <param humanName="Landed yaw gain multiplier" name="Q_A_LAND_Y_MULT" documentation="Yaw gain multiplier active when landed. A factor of 1.0 means no reduction in gain while landed. Reduce this factor to reduce ground oscitation in the yaw axis." user="Advanced">
        <field name="Range">0.25 1.0</field>
      </param>
      <param humanName="Angle Max" name="Q_A_ANGLE_MAX" documentation="Maximum lean angle in all flight modes" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">0.1</field>
        <field name="Range">10.0 80.0</field>
      </param>
      <param humanName="Yaw target slew rate" name="Q_A_RATE_WPY_MAX" documentation="Maximum rate the yaw target can be updated in Auto, Guided, Circle, Follow, RTL, SmartRTL, Throw and ZigZag flight modes" user="Advanced">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">5 180</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Acceleration Max for Yaw" name="Q_A_ACC_Y_MAX" documentation="Maximum acceleration in yaw axis" user="Advanced">
        <field name="Units">deg/s/s</field>
        <field name="UnitText">degrees per square second</field>
        <field name="Range">0 720</field>
        <values>
          <value code="0">Disabled</value>
          <value code="90">VerySlow</value>
          <value code="180">Slow</value>
          <value code="360">Medium</value>
          <value code="540">Fast</value>
        </values>
        <field name="Increment">10</field>
      </param>
      <param humanName="Acceleration Max for Roll" name="Q_A_ACC_R_MAX" documentation="Maximum acceleration in roll axis" user="Advanced">
        <field name="Units">deg/s/s</field>
        <field name="UnitText">degrees per square second</field>
        <field name="Range">0 1800</field>
        <field name="Increment">10</field>
        <values>
          <value code="0">Disabled</value>
          <value code="300">VerySlow</value>
          <value code="720">Slow</value>
          <value code="1080">Medium</value>
          <value code="1620">Fast</value>
        </values>
      </param>
      <param humanName="Acceleration Max for Pitch" name="Q_A_ACC_P_MAX" documentation="Maximum acceleration in pitch axis" user="Advanced">
        <field name="Units">deg/s/s</field>
        <field name="UnitText">degrees per square second</field>
        <field name="Range">0 1800</field>
        <field name="Increment">10</field>
        <values>
          <value code="0">Disabled</value>
          <value code="300">VerySlow</value>
          <value code="720">Slow</value>
          <value code="1080">Medium</value>
          <value code="1620">Fast</value>
        </values>
      </param>
      <param humanName="Roll axis rate controller P gain" name="Q_A_RAT_RLL_P" documentation="Roll axis rate controller P gain.  Corrects in proportion to the difference between the desired roll rate vs actual roll rate" user="Standard">
        <field name="Range">0.01 0.5</field>
        <field name="Increment">0.005</field>
      </param>
      <param humanName="Roll axis rate controller I gain" name="Q_A_RAT_RLL_I" documentation="Roll axis rate controller I gain.  Corrects long-term difference in desired roll rate vs actual roll rate" user="Standard">
        <field name="Range">0.01 2.0</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Roll axis rate controller I gain maximum" name="Q_A_RAT_RLL_IMAX" documentation="Roll axis rate controller I gain maximum.  Constrains the maximum that the I term will output" user="Standard">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Roll axis rate controller D gain" name="Q_A_RAT_RLL_D" documentation="Roll axis rate controller D gain.  Compensates for short-term change in desired roll rate vs actual roll rate" user="Standard">
        <field name="Range">0.0 0.05</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Roll axis rate controller feed forward" name="Q_A_RAT_RLL_FF" documentation="Roll axis rate controller feed forward" user="Standard">
        <field name="Range">0 0.5</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Roll axis rate controller target frequency in Hz" name="Q_A_RAT_RLL_FLTT" documentation="Roll axis rate controller target frequency in Hz" user="Standard">
        <field name="Range">5 100</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Roll axis rate controller error frequency in Hz" name="Q_A_RAT_RLL_FLTE" documentation="Roll axis rate controller error frequency in Hz" user="Standard">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Roll axis rate controller derivative frequency in Hz" name="Q_A_RAT_RLL_FLTD" documentation="Roll axis rate controller derivative frequency in Hz" user="Standard">
        <field name="Range">5 100</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Roll slew rate limit" name="Q_A_RAT_RLL_SMAX" documentation="Sets an upper limit on the slew rate produced by the combined P and D gains. If the amplitude of the control action produced by the rate feedback exceeds this value, then the D+P gain is reduced to respect the limit. This limits the amplitude of high frequency oscillations caused by an excessive gain. The limit should be set to no more than 25% of the actuators maximum slew rate to allow for load effects. Note: The gain will not be reduced to less than 10% of the nominal value. A value of zero will disable this feature." user="Advanced">
        <field name="Range">0 200</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Roll axis rate controller PD sum maximum" name="Q_A_RAT_RLL_PDMX" documentation="Roll axis rate controller PD sum maximum.  The maximum/minimum value that the sum of the P and D term can output">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Roll Derivative FeedForward Gain" name="Q_A_RAT_RLL_D_FF" documentation="FF D Gain which produces an output that is proportional to the rate of change of the target" user="Advanced">
        <field name="Range">0 0.02</field>
        <field name="Increment">0.0001</field>
      </param>
      <param humanName="Roll Target notch filter index" name="Q_A_RAT_RLL_NTF" documentation="Roll Target notch filter index" user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Roll Error notch filter index" name="Q_A_RAT_RLL_NEF" documentation="Roll Error notch filter index" user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Pitch axis rate controller P gain" name="Q_A_RAT_PIT_P" documentation="Pitch axis rate controller P gain.  Corrects in proportion to the difference between the desired pitch rate vs actual pitch rate output" user="Standard">
        <field name="Range">0.01 0.50</field>
        <field name="Increment">0.005</field>
      </param>
      <param humanName="Pitch axis rate controller I gain" name="Q_A_RAT_PIT_I" documentation="Pitch axis rate controller I gain.  Corrects long-term difference in desired pitch rate vs actual pitch rate" user="Standard">
        <field name="Range">0.01 2.0</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Pitch axis rate controller I gain maximum" name="Q_A_RAT_PIT_IMAX" documentation="Pitch axis rate controller I gain maximum.  Constrains the maximum that the I term will output" user="Standard">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Pitch axis rate controller D gain" name="Q_A_RAT_PIT_D" documentation="Pitch axis rate controller D gain.  Compensates for short-term change in desired pitch rate vs actual pitch rate" user="Standard">
        <field name="Range">0.0 0.05</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Pitch axis rate controller feed forward" name="Q_A_RAT_PIT_FF" documentation="Pitch axis rate controller feed forward" user="Standard">
        <field name="Range">0 0.5</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Pitch axis rate controller target frequency in Hz" name="Q_A_RAT_PIT_FLTT" documentation="Pitch axis rate controller target frequency in Hz" user="Standard">
        <field name="Range">5 100</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Pitch axis rate controller error frequency in Hz" name="Q_A_RAT_PIT_FLTE" documentation="Pitch axis rate controller error frequency in Hz" user="Standard">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Pitch axis rate controller derivative frequency in Hz" name="Q_A_RAT_PIT_FLTD" documentation="Pitch axis rate controller derivative frequency in Hz" user="Standard">
        <field name="Range">5 100</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Pitch slew rate limit" name="Q_A_RAT_PIT_SMAX" documentation="Sets an upper limit on the slew rate produced by the combined P and D gains. If the amplitude of the control action produced by the rate feedback exceeds this value, then the D+P gain is reduced to respect the limit. This limits the amplitude of high frequency oscillations caused by an excessive gain. The limit should be set to no more than 25% of the actuators maximum slew rate to allow for load effects. Note: The gain will not be reduced to less than 10% of the nominal value. A value of zero will disable this feature." user="Advanced">
        <field name="Range">0 200</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Pitch axis rate controller PD sum maximum" name="Q_A_RAT_PIT_PDMX" documentation="Pitch axis rate controller PD sum maximum.  The maximum/minimum value that the sum of the P and D term can output">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Pitch Derivative FeedForward Gain" name="Q_A_RAT_PIT_D_FF" documentation="FF D Gain which produces an output that is proportional to the rate of change of the target" user="Advanced">
        <field name="Range">0 0.02</field>
        <field name="Increment">0.0001</field>
      </param>
      <param humanName="Pitch Target notch filter index" name="Q_A_RAT_PIT_NTF" documentation="Pitch Target notch filter index" user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Pitch Error notch filter index" name="Q_A_RAT_PIT_NEF" documentation="Pitch Error notch filter index" user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Yaw axis rate controller P gain" name="Q_A_RAT_YAW_P" documentation="Yaw axis rate controller P gain.  Corrects in proportion to the difference between the desired yaw rate vs actual yaw rate" user="Standard">
        <field name="Range">0.10 2.50</field>
        <field name="Increment">0.005</field>
      </param>
      <param humanName="Yaw axis rate controller I gain" name="Q_A_RAT_YAW_I" documentation="Yaw axis rate controller I gain.  Corrects long-term difference in desired yaw rate vs actual yaw rate" user="Standard">
        <field name="Range">0.010 1.0</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Yaw axis rate controller I gain maximum" name="Q_A_RAT_YAW_IMAX" documentation="Yaw axis rate controller I gain maximum.  Constrains the maximum that the I term will output" user="Standard">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Yaw axis rate controller D gain" name="Q_A_RAT_YAW_D" documentation="Yaw axis rate controller D gain.  Compensates for short-term change in desired yaw rate vs actual yaw rate" user="Standard">
        <field name="Range">0.000 0.02</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Yaw axis rate controller feed forward" name="Q_A_RAT_YAW_FF" documentation="Yaw axis rate controller feed forward" user="Standard">
        <field name="Range">0 0.5</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Yaw axis rate controller target frequency in Hz" name="Q_A_RAT_YAW_FLTT" documentation="Yaw axis rate controller target frequency in Hz" user="Standard">
        <field name="Range">1 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Yaw axis rate controller error frequency in Hz" name="Q_A_RAT_YAW_FLTE" documentation="Yaw axis rate controller error frequency in Hz" user="Standard">
        <field name="Range">0 20</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Yaw axis rate controller derivative frequency in Hz" name="Q_A_RAT_YAW_FLTD" documentation="Yaw axis rate controller derivative frequency in Hz" user="Standard">
        <field name="Range">5 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Yaw slew rate limit" name="Q_A_RAT_YAW_SMAX" documentation="Sets an upper limit on the slew rate produced by the combined P and D gains. If the amplitude of the control action produced by the rate feedback exceeds this value, then the D+P gain is reduced to respect the limit. This limits the amplitude of high frequency oscillations caused by an excessive gain. The limit should be set to no more than 25% of the actuators maximum slew rate to allow for load effects. Note: The gain will not be reduced to less than 10% of the nominal value. A value of zero will disable this feature." user="Advanced">
        <field name="Range">0 200</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Yaw axis rate controller PD sum maximum" name="Q_A_RAT_YAW_PDMX" documentation="Yaw axis rate controller PD sum maximum.  The maximum/minimum value that the sum of the P and D term can output">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Yaw Derivative FeedForward Gain" name="Q_A_RAT_YAW_D_FF" documentation="FF D Gain which produces an output that is proportional to the rate of change of the target" user="Advanced">
        <field name="Range">0 0.02</field>
        <field name="Increment">0.0001</field>
      </param>
      <param humanName="Yaw Target notch filter index" name="Q_A_RAT_YAW_NTF" documentation="Yaw Target notch filter index" user="Advanced">
        <field name="Range">1 8</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Yaw Error notch filter index" name="Q_A_RAT_YAW_NEF" documentation="Yaw Error notch filter index" user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Throttle Mix Minimum" name="Q_A_THR_MIX_MIN" documentation="Throttle vs attitude control prioritisation used when landing (higher values mean we prioritise attitude control over throttle)" user="Advanced">
        <field name="Range">0.1 0.25</field>
      </param>
      <param humanName="Throttle Mix Maximum" name="Q_A_THR_MIX_MAX" documentation="Throttle vs attitude control prioritisation used during active flight (higher values mean we prioritise attitude control over throttle)" user="Advanced">
        <field name="Range">0.5 0.9</field>
      </param>
      <param humanName="Throttle Mix Manual" name="Q_A_THR_MIX_MAN" documentation="Throttle vs attitude control prioritisation used during manual flight (higher values mean we prioritise attitude control over throttle)" user="Advanced">
        <field name="Range">0.1 0.9</field>
      </param>
      <param humanName="Throttle-gain boost" name="Q_A_THR_G_BOOST" documentation="Throttle-gain boost ratio. A value of 0 means no boosting is applied, a value of 1 means full boosting is applied. Describes the ratio increase that is applied to angle P and PD on pitch and roll." user="Advanced">
        <field name="Range">0 1</field>
      </param>
    </parameters>
    <parameters name="Q_LOIT_">
      <param humanName="Loiter pilot angle max" name="Q_LOIT_ANG_MAX" documentation="Loiter maximum pilot requested lean angle. Set to zero for 2/3 of Q_P_ANGLE_MAX/Q_A_ANGLE_MAX. The maximum vehicle lean angle is still limited by Q_P_ANGLE_MAX/Q_A_ANGLE_MAX" user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 45</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Loiter brake start delay (in seconds)" name="Q_LOIT_BRK_DELAY" documentation="Loiter brake start delay (in seconds)" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 2</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Loiter mode options" name="Q_LOIT_OPTIONS" documentation="Enables optional Loiter mode behaviors" user="Standard">
        <bitmask>
          <bit code="0">Enable Coordinated turns</bit>
        </bitmask>
        <field name="Bitmask">0: Enable Coordinated turns</field>
      </param>
      <param humanName="Loiter Horizontal Maximum Speed" name="Q_LOIT_SPEED_MS" documentation="Defines the maximum speed in m/s which the aircraft will travel horizontally while in loiter mode" user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0.20 35</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Loiter maximum correction acceleration" name="Q_LOIT_ACC_MAX_M" documentation="Loiter maximum correction acceleration in m/s/s.  Higher values cause the copter to correct position errors more aggressively." user="Advanced">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">1 9.81</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Loiter braking acceleration" name="Q_LOIT_BRK_ACC_M" documentation="Loiter braking acceleration in m/s/s. Higher values stop the copter more quickly when the stick is centered." user="Advanced">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">0.25 2.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Loiter braking jerk" name="Q_LOIT_BRK_JRK_M" documentation="Loiter braking jerk in m/s/s/s. Higher values will remove braking faster if the pilot moves the sticks during a braking maneuver." user="Advanced">
        <field name="Units">m/s/s/s</field>
        <field name="UnitText">meters per cubic second</field>
        <field name="Range">5 50</field>
        <field name="Increment">0.01</field>
      </param>
    </parameters>
    <parameters name="Q_M_">
      <param humanName="Matrix Yaw Min" name="Q_M_YAW_HEADROOM" documentation="Yaw control is given at least this pwm in microseconds range" user="Advanced">
        <field name="Range">0 500</field>
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Thrust Curve Expo" name="Q_M_THST_EXPO" documentation="Motor thrust curve exponent (0.0 for linear to 1.0 for second order curve)" user="Advanced">
        <field name="Range">-1.0 1.0</field>
      </param>
      <param humanName="Motor Spin maximum" name="Q_M_SPIN_MAX" documentation="Point at which the thrust saturates expressed as a number from 0 to 1 in the entire output range" user="Advanced">
        <values>
          <value code="0.9">Low</value>
          <value code="0.95">Default</value>
          <value code="1.0">High</value>
        </values>
        <field name="Range">0.9 1.0</field>
      </param>
      <param humanName="Battery voltage compensation maximum voltage" name="Q_M_BAT_VOLT_MAX" documentation="Battery voltage compensation maximum voltage (voltage above this will have no additional scaling effect on thrust).  Recommend 4.2 * cell count, 0 = Disabled" user="Advanced">
        <field name="Range">6 53</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery voltage compensation minimum voltage" name="Q_M_BAT_VOLT_MIN" documentation="Battery voltage compensation minimum voltage (voltage below this will have no additional scaling effect on thrust).  Recommend 3.3 * cell count, 0 = Disabled" user="Advanced">
        <field name="Range">6 42</field>
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Motor Current Max" name="Q_M_BAT_CURR_MAX" documentation="Maximum current over which maximum throttle is limited (0 = Disabled)" user="Advanced">
        <field name="Range">0 200</field>
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Output PWM type" name="Q_M_PWM_TYPE" documentation="This selects the output PWM type, allowing for normal PWM continuous output, OneShot, brushed or DShot motor output.PWMRange and PWMAngle are PWM special/rare cases for ESCs that dont calibrate normally (some Sub motors) or where each ESC must have its PWM range set individually using the Servo params instead of PWM_MIN/MAX parameters." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">OneShot</value>
          <value code="2">OneShot125</value>
          <value code="3">Brushed</value>
          <value code="4">DShot150</value>
          <value code="5">DShot300</value>
          <value code="6">DShot600</value>
          <value code="7">DShot1200</value>
          <value code="8">PWMRange</value>
          <value code="9">PWMAngle</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="PWM output minimum" name="Q_M_PWM_MIN" documentation="This sets the min PWM output value in microseconds that will ever be output to the motors" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 2000</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="PWM output maximum" name="Q_M_PWM_MAX" documentation="This sets the max PWM value in microseconds that will ever be output to the motors" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 2000</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Motor Spin minimum" name="Q_M_SPIN_MIN" documentation="Point at which the thrust starts expressed as a number from 0 to 1 in the entire output range.  Should be higher than MOT_SPIN_ARM." user="Advanced">
        <values>
          <value code="0.0">Low</value>
          <value code="0.15">Default</value>
          <value code="0.25">High</value>
        </values>
        <field name="Range">0.0 0.25</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Motor Spin armed" name="Q_M_SPIN_ARM" documentation="Point at which the motors start to spin expressed as a number from 0 to 1 in the entire output range.  Should be lower than MOT_SPIN_MIN." user="Advanced">
        <values>
          <value code="0.0">Low</value>
          <value code="0.1">Default</value>
          <value code="0.2">High</value>
        </values>
        <field name="Range">0.0 0.2</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Motor Current Max Time Constant" name="Q_M_BAT_CURR_TC" documentation="Time constant used to limit the maximum current" user="Advanced">
        <field name="Range">0 10</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Thrust Hover Value" name="Q_M_THST_HOVER" documentation="Motor thrust needed to hover expressed as a number from 0 to 1" user="Advanced">
        <field name="Range">0.125 0.6875</field>
      </param>
      <param humanName="Hover Value Learning" name="Q_M_HOVER_LEARN" documentation="Enable/Disable automatic learning of hover throttle" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Learn</value>
          <value code="2">Learn and Save</value>
        </values>
      </param>
      <param humanName="Motor PWM output disabled when disarmed" name="Q_M_SAFE_DISARM" documentation="Disables motor PWM output when disarmed" user="Advanced">
        <values>
          <value code="0">PWM enabled while disarmed</value>
          <value code="1">PWM disabled while disarmed</value>
        </values>
      </param>
      <param humanName="Yaw Servo Max Lean Angle" name="Q_M_YAW_SV_ANGLE" documentation="Yaw servo's maximum lean angle (Tricopter only)" user="Standard">
        <field name="Range">5 80</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Spool up time" name="Q_M_SPOOL_TIME" documentation="Time in seconds to spool up the motors from zero to min throttle." user="Advanced">
        <field name="Range">0.05 2</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Motor boost scale" name="Q_M_BOOST_SCALE" documentation="Booster motor output scaling factor vs main throttle.  The output to the BoostThrottle servo will be the main throttle times this scaling factor. A higher scaling factor will put more of the load on the booster motor. A value of 1 will set the BoostThrottle equal to the main throttle." user="Advanced">
        <field name="Range">0 5</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Battery compensation index" name="Q_M_BAT_IDX" documentation="Which battery monitor should be used for doing compensation" user="Advanced">
        <values>
          <value code="0">First battery</value>
          <value code="1">Second battery</value>
        </values>
        <field name="Range">0 15</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Output slew time for increasing throttle" name="Q_M_SLEW_UP_TIME" documentation="Time in seconds to slew output from zero to full. This is used to limit the rate at which output can change. Range is constrained between 0 and 0.5." user="Advanced">
        <field name="Range">0 0.5</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Output slew time for decreasing throttle" name="Q_M_SLEW_DN_TIME" documentation="Time in seconds to slew output from full to zero. This is used to limit the rate at which output can change.  Range is constrained between 0 and 0.5." user="Advanced">
        <field name="Range">0 0.5</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="PWM re-enable delay after arming when disarmed pwm was disabled" name="Q_M_SAFE_TIME" documentation="Delay after arming before spool transitions are allowed, used to let ESCs/servos complete startup when PWM was disabled while disarmed." user="Advanced">
        <field name="Range">0 5</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Motor options" name="Q_M_OPTIONS" documentation="Motor options" user="Advanced">
        <bitmask>
          <bit code="0">Voltage compensation uses raw voltage</bit>
        </bitmask>
        <field name="Bitmask">0:Voltage compensation uses raw voltage</field>
      </param>
      <param humanName="Spool down time" name="Q_M_SPOOL_TIM_DN" documentation="Time to ramp the throttle ceiling down toward zero. If 0, SPOOL_TIME is used." user="Advanced">
        <field name="Range">0 2</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Idle time" name="Q_M_IDLE_SEC" documentation="Delay after reaching ground idle when armed to allow ESC startup to complete." user="Advanced">
        <field name="Range">0 5</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">0.1</field>
      </param>
    </parameters>
    <parameters name="Q_P">
      <param humanName="Position (vertical) controller P gain" name="Q_P_D_POS_P" documentation="Position (vertical) controller P gain. Converts the difference between the desired altitude and actual altitude into a climb or descent rate which is passed to the throttle rate controller. Previously _POSZ_P." user="Standard">
        <field name="Range">0.50 4.00</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Position (horizontal) controller P gain" name="Q_P_NE_POS_P" documentation="Position controller P gain. Converts the distance (in the latitude direction) to the target location into a desired speed which is then passed to the loiter latitude rate controller. Previously _POSXY_P." user="Standard">
        <field name="Range">0.50 4.00</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Position Control Angle Max" name="Q_P_ANGLE_MAX" documentation="Maximum lean angle autopilot can request. Set to zero to use ANGLE_MAX parameter value" user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 45</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Jerk limit for the horizontal kinematic input shaping" name="Q_P_JERK_NE" documentation="Jerk limit of the horizontal kinematic path generation used to determine how quickly the aircraft varies the acceleration target" user="Advanced">
        <field name="Units">m/s/s/s</field>
        <field name="UnitText">meters per cubic second</field>
        <field name="Range">1 50</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Jerk limit for the vertical kinematic input shaping" name="Q_P_JERK_D" documentation="Jerk limit of the vertical kinematic path generation used to determine how quickly the aircraft varies the acceleration target" user="Advanced">
        <field name="Units">m/s/s/s</field>
        <field name="UnitText">meters per cubic second</field>
        <field name="Range">1 50</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Velocity (vertical) controller P gain" name="Q_P_D_VEL_P" documentation="Velocity (vertical) controller P gain. Converts the difference between desired vertical speed and actual speed into a desired acceleration that is passed to the throttle acceleration controller. Previously _VELZ_P." user="Standard">
        <field name="Range">1.0 10.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Velocity (vertical) controller I gain" name="Q_P_D_VEL_I" documentation="Velocity (vertical) controller I gain. Corrects long-term difference in desired velocity to a target acceleration. Previously _VELZ_I." user="Advanced">
        <field name="Range">0.00 10.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Velocity (vertical) controller I gain maximum" name="Q_P_D_VEL_IMAX" documentation="Velocity (vertical) controller I gain maximum. Constrains the target acceleration that the I gain will output. If upgrading from 4.6 this is _VELZ_IMAX * 0.01." user="Standard">
        <field name="Range">1.000 10.000</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Velocity (vertical) controller D gain" name="Q_P_D_VEL_D" documentation="Velocity (vertical) controller D gain. Corrects short-term changes in velocity. Previously _VELZ_D." user="Advanced">
        <field name="Range">0.00 2.00</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Velocity (vertical) controller Feed Forward gain" name="Q_P_D_VEL_FF" documentation="Velocity (vertical) controller Feed Forward gain. Produces an output that is proportional to the magnitude of the target. Previously _VELZ_FF." user="Advanced">
        <field name="Range">0.00 2.00</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Velocity (vertical) error filter" name="Q_P_D_VEL_FLTE" documentation="Velocity (vertical) error filter. This filter (in Hz) is applied to the input for P and I terms. Previously _VELZ_FLTE." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Increment">1.0</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Velocity (vertical) input filter for D term" name="Q_P_D_VEL_FLTD" documentation="Velocity (vertical) input filter for D term. This filter (in Hz) is applied to the input for D terms. Previously _VELZ_FLTD." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Increment">1.0</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Acceleration (vertical) controller P gain" name="Q_P_D_ACC_P" documentation="Acceleration (vertical) controller P gain. Converts the difference between desired vertical acceleration and actual acceleration into a motor output. If upgrading from 4.6 this is _ACCZ_P * 0.1." user="Standard">
        <field name="Range">0.010 0.250</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Acceleration (vertical) controller I gain" name="Q_P_D_ACC_I" documentation="Acceleration (vertical) controller I gain. Corrects long-term difference in desired vertical acceleration and actual acceleration. If upgrading from 4.6 this is _ACCZ_I * 0.1." user="Standard">
        <field name="Range">0.000 0.500</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Acceleration (vertical) controller I gain maximum" name="Q_P_D_ACC_IMAX" documentation="Acceleration (vertical) controller I gain maximum. Constrains the maximum pwm that the I term will generate. If upgrading from 4.6 this is _ACCZ_IMAX * 0.001." user="Standard">
        <field name="Range">0.0 1.0</field>
        <field name="Increment">0.01</field>
        <field name="Units">d%</field>
        <field name="UnitText">decipercent</field>
      </param>
      <param humanName="Acceleration (vertical) controller D gain" name="Q_P_D_ACC_D" documentation="Acceleration (vertical) controller D gain. Compensates for short-term change in desired vertical acceleration vs actual acceleration. If upgrading from 4.6 this is _ACCZ_D * 0.1." user="Standard">
        <field name="Range">0.000 0.100</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Acceleration (vertical) controller feed forward" name="Q_P_D_ACC_FF" documentation="Acceleration (vertical) controller feed forward. If upgrading from 4.6 this is _ACCZ_FF * 0.1." user="Standard">
        <field name="Range">0.000 0.100</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Acceleration (vertical) controller target frequency in Hz" name="Q_P_D_ACC_FLTT" documentation="Acceleration (vertical) controller target frequency in Hz. Previously _ACCZ_FLTT." user="Standard">
        <field name="Range">1 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Acceleration (vertical) controller error frequency in Hz" name="Q_P_D_ACC_FLTE" documentation="Acceleration (vertical) controller error frequency in Hz. Previously _ACCZ_FLTE." user="Standard">
        <field name="Range">1 100</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Acceleration (vertical) controller derivative frequency in Hz" name="Q_P_D_ACC_FLTD" documentation="Acceleration (vertical) controller derivative frequency in Hz. Previously _ACCZ_FLTD." user="Standard">
        <field name="Range">1 100</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Accel (vertical) slew rate limit" name="Q_P_D_ACC_SMAX" documentation="Sets an upper limit on the slew rate produced by the combined P and D gains. If the amplitude of the control action produced by the rate feedback exceeds this value, then the D+P gain is reduced to respect the limit. This limits the amplitude of high frequency oscillations caused by an excessive gain. The limit should be set to no more than 25% of the actuators maximum slew rate to allow for load effects. Note: The gain will not be reduced to less than 10% of the nominal value. A value of zero will disable this feature." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Acceleration (vertical) controller PD sum maximum" name="Q_P_D_ACC_PDMX" documentation="Acceleration (vertical) controller PD sum maximum. The maximum/minimum value that the sum of the P and D term can output. If upgrading from 4.6 this is _ACCZ_P * 0.1.">
        <field name="Range">0.00 1.00</field>
        <field name="Increment">0.01</field>
        <field name="Units">d%</field>
        <field name="UnitText">decipercent</field>
      </param>
      <param humanName="Accel (vertical) Derivative FeedForward Gain" name="Q_P_D_ACC_D_FF" documentation="FF D Gain which produces an output that is proportional to the rate of change of the target. If upgrading from 4.6 this is _ACCZ_P * 0.1." user="Advanced">
        <field name="Range">0.000 0.050</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Accel (vertical) Target notch filter index" name="Q_P_D_ACC_NTF" documentation="Accel (vertical) Target notch filter index. If upgrading from 4.6 this is Previously _ACCZ_NTF." user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Accel (vertical) Error notch filter index" name="Q_P_D_ACC_NEF" documentation="Accel (vertical) Error notch filter index. If upgrading from 4.6 this is Previously _ACCZ_NEF." user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Velocity (horizontal) P gain" name="Q_P_NE_VEL_P" documentation="Velocity (horizontal) P gain. Converts the difference between desired and actual velocity to a target acceleration. Previously _VELXY_P." user="Advanced">
        <field name="Range">0.10 10.00</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Velocity (horizontal) I gain" name="Q_P_NE_VEL_I" documentation="Velocity (horizontal) I gain. Corrects long-term difference between desired and actual velocity to a target acceleration. Previously _VELXY_I." user="Advanced">
        <field name="Range">0.10 10.00</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Velocity (horizontal) D gain" name="Q_P_NE_VEL_D" documentation="Velocity (horizontal) D gain. Corrects short-term changes in velocity. Previously _VELXY_D." user="Advanced">
        <field name="Range">0.00 1.00</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Velocity (horizontal) integrator maximum" name="Q_P_NE_VEL_IMAX" documentation="Velocity (horizontal) integrator maximum. Constrains the target acceleration that the I gain will output. If upgrading from 4.6 this is _VELXY_IMAX * 0.01." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Velocity (horizontal) input filter" name="Q_P_NE_VEL_FLTE" documentation="Velocity (horizontal) input filter. This filter (in Hz) is applied to the input for P and I terms. Previously _VELXY_FLTE." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Velocity (horizontal) input filter" name="Q_P_NE_VEL_FLTD" documentation="Velocity (horizontal) input filter. This filter (in Hz) is applied to the input for D term. Previously _VELXY_FLTD." user="Advanced">
        <field name="Range">0 100</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Velocity (horizontal) feed forward gain" name="Q_P_NE_VEL_FF" documentation="Velocity (horizontal) feed forward gain. Converts the difference between desired velocity to a target acceleration. Previously _VELXY_FF." user="Advanced">
        <field name="Range">0.10 10.00</field>
        <field name="Increment">0.01</field>
      </param>
    </parameters>
    <parameters name="Q_TAILSIT_">
      <param humanName="Enable Tailsitter" name="Q_TAILSIT_ENABLE" documentation="This enables Tailsitter functionality. A value of 2 forces Qassist active and always stabilize in forward flight with airmode for stabilisation at 0 throttle, for use on vehicles with no control surfaces, vehicle will not arm in forward flight modes, see also Q_OPTIONS &quot;Mtrs_Only_Qassist&quot;" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
          <value code="2">Enable Always</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Tailsitter fixed wing transition angle" name="Q_TAILSIT_ANGLE" documentation="This is the pitch angle at which tailsitter aircraft will change from VTOL control to fixed wing control.">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">5 80</field>
      </param>
      <param humanName="Tailsitter VTOL transition angle" name="Q_TAILSIT_ANG_VT" documentation="This is the pitch angle at which tailsitter aircraft will change from fixed wing control to VTOL control, if zero Q_TAILSIT_ANGLE will be used">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">5 80</field>
      </param>
      <param humanName="Tailsitter input type bitmask" name="Q_TAILSIT_INPUT" documentation="This controls whether stick input when hovering as a tailsitter follows the conventions for fixed wing hovering or multicopter hovering. When PlaneMode is not enabled (bit0 = 0) the roll stick will roll the aircraft in earth frame and yaw stick will yaw in earth frame. When PlaneMode input is enabled, the roll and yaw sticks are swapped so that the roll stick controls earth-frame yaw and rudder controls earth-frame roll. When body-frame roll is enabled (bit1 = 1), the yaw stick controls earth-frame yaw rate and the roll stick controls roll in the tailsitter's body frame when flying level.">
        <bitmask>
          <bit code="0">PlaneMode</bit>
          <bit code="1">BodyFrameRoll</bit>
        </bitmask>
        <field name="Bitmask">0:PlaneMode,1:BodyFrameRoll</field>
      </param>
      <param humanName="Tailsitter vector thrust gain in forward flight" name="Q_TAILSIT_VFGAIN" documentation="This controls the amount of vectored thrust control used in forward flight for a vectored tailsitter">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Tailsitter vector thrust gain in hover" name="Q_TAILSIT_VHGAIN" documentation="This controls the amount of vectored thrust control used in hover for a vectored tailsitter">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Tailsitter vector thrust gain power" name="Q_TAILSIT_VHPOW" documentation="This controls the amount of extra pitch given to the vectored control when at high pitch errors">
        <field name="Range">0 4</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Maximum tailsitter gain scaling" name="Q_TAILSIT_GSCMAX" documentation="Maximum gain scaling for tailsitter Q_TAILSIT_GSCMSK options" user="Standard">
        <field name="Range">1 5</field>
      </param>
      <param humanName="Maximum Roll angle" name="Q_TAILSIT_RLL_MX" documentation="Maximum Allowed roll angle for tailsitters. If this is zero then Q_A_ANGLE_MAX is used." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 80</field>
      </param>
      <param humanName="Tailsitter motor mask" name="Q_TAILSIT_MOTMX" documentation="Bitmask of motors to remain active in forward flight for a 'Copter' tailsitter. Non-zero indicates airframe is a Copter tailsitter and uses copter style motor layouts determined by Q_FRAME_CLASS and Q_FRAME_TYPE. This should be zero for non-Copter tailsitters." user="Standard">
        <bitmask>
          <bit code="0">Motor 1</bit>
          <bit code="1">Motor 2</bit>
          <bit code="2">Motor 3</bit>
          <bit code="3">Motor 4</bit>
          <bit code="4">Motor 5</bit>
          <bit code="5">Motor 6</bit>
          <bit code="6">Motor 7</bit>
          <bit code="7">Motor 8</bit>
          <bit code="8">Motor 9</bit>
          <bit code="9">Motor 10</bit>
          <bit code="10">Motor 11</bit>
          <bit code="11">Motor 12</bit>
        </bitmask>
        <field name="Bitmask">0:Motor 1, 1:Motor 2, 2:Motor 3, 3:Motor 4, 4:Motor 5, 5:Motor 6, 6:Motor 7, 7:Motor 8, 8:Motor 9, 9:Motor 10, 10:Motor 11, 11:Motor 12</field>
      </param>
      <param humanName="Tailsitter gain scaling mask" name="Q_TAILSIT_GSCMSK" documentation="Bitmask of gain scaling methods to be applied: Throttle: scale gains with throttle, ATT_THR: reduce gain at high throttle/tilt, 2:Disk theory velocity calculation, requires Q_TAILSIT_DSKLD to be set, ATT_THR must not be set, 3:Altitude correction, scale with air density" user="Standard">
        <bitmask>
          <bit code="0">Throttle</bit>
          <bit code="1">ATT_THR</bit>
          <bit code="2">Disk Theory</bit>
          <bit code="3">Altitude correction</bit>
        </bitmask>
        <field name="Bitmask">0:Throttle,1:ATT_THR,2:Disk Theory,3:Altitude correction</field>
      </param>
      <param humanName="Minimum tailsitter gain scaling" name="Q_TAILSIT_GSCMIN" documentation="Minimum gain scaling for tailsitter Q_TAILSIT_GSCMSK options" user="Standard">
        <field name="Range">0.1 1</field>
      </param>
      <param humanName="Tailsitter disk loading" name="Q_TAILSIT_DSKLD" documentation="This is the vehicle weight in kg divided by the total disk area of all propellers in m^2. Only used with Q_TAILSIT_GSCMSK = 4" user="Standard">
        <field name="Units">kg/m/m</field>
        <field name="UnitText">kilograms per square meter</field>
        <field name="Range">0 50</field>
      </param>
      <param humanName="Tailsitter VTOL to forward flight transition rate" name="Q_TAILSIT_RAT_FW" documentation="The pitch rate at which tailsitter aircraft will pitch down in the transition from VTOL to forward flight">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">10 500</field>
      </param>
      <param humanName="Tailsitter forward flight to VTOL transition rate" name="Q_TAILSIT_RAT_VT" documentation="The pitch rate at which tailsitter aircraft will pitch up in the transition from forward flight to VTOL">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Range">10 500</field>
      </param>
      <param humanName="Tailsitter forward flight to VTOL transition throttle" name="Q_TAILSIT_THR_VT" documentation="Throttle used during FW-&gt;VTOL transition, -1 uses hover throttle">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">-1 100</field>
      </param>
      <param humanName="Tailsitter VTOL control surface roll gain" name="Q_TAILSIT_VT_R_P" documentation="Scale from PID output to control surface, for use where a single axis is actuated by both motors and Tilt/control surface on a copter style tailsitter, increase to favor control surfaces and reduce motor output by reducing gains">
        <field name="Range">0 2</field>
      </param>
      <param humanName="Tailsitter VTOL control surface pitch gain" name="Q_TAILSIT_VT_P_P" documentation="Scale from PID output to control surface, for use where a single axis is actuated by both motors and Tilt/control surface on a copter style tailsitter, increase to favor control surfaces and reduce motor output by reducing gains">
        <field name="Range">0 2</field>
      </param>
      <param humanName="Tailsitter VTOL control surface yaw gain" name="Q_TAILSIT_VT_Y_P" documentation="Scale from PID output to control surface, for use where a single axis is actuated by both motors and Tilt/control surface on a copter style tailsitter, increase to favor control surfaces and reduce motor output by reducing gains">
        <field name="Range">0 2</field>
      </param>
      <param humanName="Tailsitter Disk loading minimum outflow speed" name="Q_TAILSIT_MIN_VO" documentation="Use in conjunction with disk theory gain scaling and Q_TAILSIT_DSKLD to specify minimum airspeed over control surfaces, this will be used to boost throttle, when descending for example, 0 disables">
        <field name="Range">0 15</field>
      </param>
    </parameters>
    <parameters name="Q_TILT_">
      <param humanName="Enable Tiltrotor functionality" name="Q_TILT_ENABLE" documentation="This enables Tiltrotor functionality" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Tiltrotor mask" name="Q_TILT_MASK" documentation="This is a bitmask of motors that are tiltable in a tiltrotor (or tiltwing). The mask is in terms of the standard motor order for the frame type." user="Standard">
        <bitmask>
          <bit code="0">Motor 1</bit>
          <bit code="1">Motor 2</bit>
          <bit code="2">Motor 3</bit>
          <bit code="3">Motor 4</bit>
          <bit code="4">Motor 5</bit>
          <bit code="5">Motor 6</bit>
          <bit code="6">Motor 7</bit>
          <bit code="7">Motor 8</bit>
          <bit code="8">Motor 9</bit>
          <bit code="9">Motor 10</bit>
          <bit code="10">Motor 11</bit>
          <bit code="11">Motor 12</bit>
        </bitmask>
        <field name="Bitmask">0:Motor 1, 1:Motor 2, 2:Motor 3, 3:Motor 4, 4:Motor 5, 5:Motor 6, 6:Motor 7, 7:Motor 8, 8:Motor 9, 9:Motor 10, 10:Motor 11, 11:Motor 12</field>
      </param>
      <param humanName="Tiltrotor upwards tilt rate" name="Q_TILT_RATE_UP" documentation="This is the maximum speed at which the motor angle will change for a tiltrotor when moving from forward flight to hover" user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Increment">1</field>
        <field name="Range">10 300</field>
      </param>
      <param humanName="Tiltrotor maximum VTOL angle" name="Q_TILT_MAX" documentation="This is the maximum angle of the tiltable motors at which multicopter control will be enabled. Beyond this angle the plane will fly solely as a fixed wing aircraft and the motors will tilt to their maximum angle at the TILT_RATE" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">1</field>
        <field name="Range">20 80</field>
      </param>
      <param humanName="Tiltrotor type" name="Q_TILT_TYPE" documentation="This is the type of tiltrotor when TILT_MASK is non-zero. A continuous tiltrotor can tilt the rotors to any angle on demand. A binary tiltrotor assumes a retract style servo where the servo is either fully forward or fully up. In both cases the servo can't move faster than Q_TILT_RATE. A vectored yaw tiltrotor will use the tilt of the motors to control yaw in hover, Bicopter tiltrotor must use the tailsitter frame class (10)">
        <values>
          <value code="0">Continuous</value>
          <value code="1">Binary</value>
          <value code="2">VectoredYaw</value>
          <value code="3">Bicopter</value>
        </values>
      </param>
      <param humanName="Tiltrotor downwards tilt rate" name="Q_TILT_RATE_DN" documentation="This is the maximum speed at which the motor angle will change for a tiltrotor when moving from hover to forward flight. When this is zero the Q_TILT_RATE_UP value is used." user="Standard">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Increment">1</field>
        <field name="Range">10 300</field>
      </param>
      <param humanName="Tilt minimum angle for vectored yaw" name="Q_TILT_YAW_ANGLE" documentation="This is the angle of the tilt servos when in VTOL mode and at minimum output (fully back). This needs to be set in addition to Q_TILT_TYPE=2, to enable vectored control for yaw in tilt quadplanes. This is also used to limit the forward travel of bicopter tilts(Q_TILT_TYPE=3) when in VTOL modes.">
        <field name="Range">0 30</field>
      </param>
      <param humanName="Fixed wing tiltrotor angle" name="Q_TILT_FIX_ANGLE" documentation="This is the angle the motors tilt down when at maximum output for forward flight. Set this to a non-zero value to enable vectoring for roll/pitch in forward flight on tilt-vectored aircraft" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 30</field>
      </param>
      <param humanName="Fixed wing tiltrotor gain" name="Q_TILT_FIX_GAIN" documentation="This is the gain for use of tilting motors in fixed wing flight for tilt vectored quadplanes" user="Standard">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Tiltrotor tilt angle that will be used as flap" name="Q_TILT_WING_FLAP" documentation="For use on tilt wings, the wing will tilt up to this angle for flap, transition will be complete when the wing reaches this angle from the forward fight position, 0 disables" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">1</field>
        <field name="Range">0 15</field>
      </param>
    </parameters>
    <parameters name="Q_WP_">
      <param humanName="Waypoint missions use rangefinder for terrain following" name="Q_WP_RFND_USE" documentation="This controls if waypoint missions use rangefinder for terrain following" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Waypoint Jerk" name="Q_WP_JERK" documentation="Defines the horizontal jerk in m/s/s used during missions" user="Standard">
        <field name="Units">m/s/s/s</field>
        <field name="UnitText">meters per cubic second</field>
        <field name="Range">1 20</field>
      </param>
      <param humanName="Waypoint Terrain following altitude margin" name="Q_WP_TER_MARGIN" documentation="Waypoint Terrain following altitude margin.  Vehicle will stop if distance from target altitude is larger than this margin (in meters)" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.1 100</field>
      </param>
      <param humanName="Waypoint Horizontal Speed Target" name="Q_WP_SPD" documentation="Speed in m/s which the aircraft will attempt to maintain horizontally during a WP mission" user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0.10 20.00</field>
        <field name="Increment">0.10</field>
      </param>
      <param humanName="Waypoint Radius" name="Q_WP_RADIUS_M" documentation="Distance from a waypoint, that when crossed indicates the wp has been reached." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 10.00</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Waypoint Climb Speed Target" name="Q_WP_SPD_UP" documentation="Speed in m/s which the aircraft will attempt to maintain while climbing during a WP mission" user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0.10 10.00</field>
        <field name="Increment">0.10</field>
      </param>
      <param humanName="Waypoint Descent Speed Target" name="Q_WP_SPD_DN" documentation="Speed in m/s which the aircraft will attempt to maintain while descending during a WP mission" user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0.10 10.00</field>
        <field name="Increment">0.10</field>
      </param>
      <param humanName="Waypoint Acceleration" name="Q_WP_ACC" documentation="Horizontal acceleration in m/s/s used during missions" user="Standard">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">0.50 5.00</field>
        <field name="Increment">0.10</field>
      </param>
      <param humanName="Waypoint Vertical Acceleration" name="Q_WP_ACC_Z" documentation="Vertical acceleration in m/s/s used during missions" user="Standard">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">0.50 5.00</field>
        <field name="Increment">0.10</field>
      </param>
      <param humanName="Waypoint Cornering Acceleration" name="Q_WP_ACC_CNR" documentation="Maximum cornering acceleration in m/s/s used during missions.  If zero uses 2x accel value." user="Standard">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
        <field name="Range">0 5.00</field>
        <field name="Increment">0.10</field>
      </param>
    </parameters>
    <parameters name="Q_WVANE_">
      <param humanName="Enable" name="Q_WVANE_ENABLE" documentation="Enable weather vaning.  When active, the aircraft will automatically yaw into wind when in a VTOL position controlled mode. Pilot yaw commands override the weathervaning action." user="Standard">
        <values>
          <value code="-1">Only use during takeoffs or landing see weathervane takeoff and land override parameters</value>
          <value code="0">Disabled</value>
          <value code="1">Nose into wind</value>
          <value code="2">Nose or tail into wind</value>
          <value code="3">Side into wind</value>
          <value code="4">tail into wind</value>
        </values>
      </param>
      <param humanName="Weathervaning gain" name="Q_WVANE_GAIN" documentation="This converts the target roll/pitch angle of the aircraft into the correcting (into wind) yaw rate. e.g. Gain = 2, roll = 30 deg, pitch = 0 deg, yaw rate = 60 deg/s." user="Standard">
        <field name="Range">0.5 4</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Weathervaning min angle" name="Q_WVANE_ANG_MIN" documentation="The minimum target roll/pitch angle before active weathervaning will start.  This provides a dead zone that is particularly useful for poorly trimmed quadplanes." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 10</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Weathervaning min height" name="Q_WVANE_HGT_MIN" documentation="Above this height weathervaning is permitted.  If RNGFND_LANDING is enabled or terrain is enabled then this parameter sets height AGL. Otherwise this parameter sets height above home.  Set zero to ignore minimum height requirement to activate weathervaning" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Weathervaning max ground speed" name="Q_WVANE_SPD_MAX" documentation="Below this ground speed weathervaning is permitted. Set to 0 to ignore this condition when checking if vehicle should weathervane." user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0 50</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Weathervaning max vertical speed" name="Q_WVANE_VELZ_MAX" documentation="The maximum climb or descent speed that the vehicle will still attempt to weathervane. Set to 0 to ignore this condition to get the aircraft to weathervane at any climb/descent rate.  This is particularly useful for aircraft with low disc loading that struggle with yaw control in decent." user="Standard">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0 5</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Takeoff override" name="Q_WVANE_TAKEOFF" documentation="Override the weather vaning behaviour when in takeoffs" user="Standard">
        <values>
          <value code="-1">No override</value>
          <value code="0">Disabled</value>
          <value code="1">Nose into wind</value>
          <value code="2">Nose or tail into wind</value>
          <value code="3">Side into wind</value>
          <value code="4">tail into wind</value>
        </values>
      </param>
      <param humanName="Landing override" name="Q_WVANE_LAND" documentation="Override the weather vaning behaviour when in landing" user="Standard">
        <values>
          <value code="-1">No override</value>
          <value code="0">Disabled</value>
          <value code="1">Nose into wind</value>
          <value code="2">Nose or tail into wind</value>
          <value code="3">Side into wind</value>
          <value code="4">tail into wind</value>
        </values>
      </param>
      <param humanName="Weathervaning options" name="Q_WVANE_OPTIONS" documentation="Options impacting weathervaning behaviour" user="Standard">
        <bitmask>
          <bit code="0">Use pitch when nose or tail-in for faster weathervaning</bit>
        </bitmask>
        <field name="Bitmask">0:Use pitch when nose or tail-in for faster weathervaning</field>
      </param>
    </parameters>
    <parameters name="RALLY_">
      <param humanName="Rally Total" name="RALLY_TOTAL" documentation="Number of rally points currently loaded" user="Advanced">
</param>
      <param humanName="Rally Limit" name="RALLY_LIMIT_KM" documentation="Maximum distance to rally point. If the closest rally point is more than this number of kilometers from the current position and the home location is closer than any of the rally points from the current position then do RTL to home rather than to the closest rally point. This prevents a leftover rally point from a different airfield being used accidentally. If this is set to 0 then the closest rally point is always used." user="Advanced">
        <field name="Units">km</field>
        <field name="UnitText">kilometers</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Rally Include Home" name="RALLY_INCL_HOME" documentation="Controls if Home is included as a Rally point (i.e. as a safe landing place) for RTL" user="Standard">
        <values>
          <value code="0">DoNotIncludeHome</value>
          <value code="1">IncludeHome</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC">
      <param humanName="RC override timeout" name="RC_OVERRIDE_TIME" documentation="Timeout after which RC overrides will no longer be used, and RC input will resume, 0 will disable RC overrides, -1 will never timeout, and continue using overrides until they are disabled" user="Advanced">
        <field name="Range">0.0 120.0</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="RC options" name="RC_OPTIONS" documentation="RC input options" user="Advanced">
        <bitmask>
          <bit code="0">Ignore RC Receiver</bit>
          <bit code="1">Ignore MAVLink Overrides</bit>
          <bit code="2">Ignore Receiver Failsafe bit but allow other RC failsafes if setup</bit>
          <bit code="3">FPort Pad</bit>
          <bit code="4">Log RC input bytes</bit>
          <bit code="5">Arming check throttle for 0 input</bit>
          <bit code="6">Skip the arming check for neutral Roll/Pitch/Yaw sticks</bit>
          <bit code="7">Allow Switch reverse</bit>
          <bit code="8">Use passthrough for CRSF telemetry</bit>
          <bit code="9">Suppress CRSF mode/rate message for ELRS systems</bit>
          <bit code="10">Enable multiple receiver support</bit>
          <bit code="11">Use Link Quality for RSSI with CRSF</bit>
          <bit code="12">Annotate CRSF flight mode with * on disarm</bit>
          <bit code="13">Use 420kbaud for ELRS protocol</bit>
        </bitmask>
        <field name="Bitmask">0:Ignore RC Receiver, 1:Ignore MAVLink Overrides, 2:Ignore Receiver Failsafe bit but allow other RC failsafes if setup, 3:FPort Pad, 4:Log RC input bytes, 5:Arming check throttle for 0 input, 6:Skip the arming check for neutral Roll/Pitch/Yaw sticks, 7:Allow Switch reverse, 8:Use passthrough for CRSF telemetry, 9:Suppress CRSF mode/rate message for ELRS systems,10:Enable multiple receiver support, 11:Use Link Quality for RSSI with CRSF, 12:Annotate CRSF flight mode with * on disarm, 13: Use 420kbaud for ELRS protocol</field>
      </param>
      <param humanName="RC protocols enabled" name="RC_PROTOCOLS" documentation="Bitmask of enabled RC protocols. Allows narrowing the protocol detection to only specific types of RC receivers which can avoid issues with incorrect detection. Set to 1 to enable all protocols." user="Advanced">
        <bitmask>
          <bit code="0">All</bit>
          <bit code="1">PPM</bit>
          <bit code="2">IBUS</bit>
          <bit code="3">SBUS</bit>
          <bit code="4">SBUS_NI</bit>
          <bit code="5">DSM</bit>
          <bit code="6">SUMD</bit>
          <bit code="7">SRXL</bit>
          <bit code="8">SRXL2</bit>
          <bit code="9">CRSF</bit>
          <bit code="10">ST24</bit>
          <bit code="11">FPORT</bit>
          <bit code="12">FPORT2</bit>
          <bit code="13">FastSBUS</bit>
          <bit code="14">DroneCAN</bit>
          <bit code="15">Ghost</bit>
          <bit code="16">MAVRadio</bit>
          <bit code="18">SITL UDP</bit>
        </bitmask>
        <field name="Bitmask">0:All,1:PPM,2:IBUS,3:SBUS,4:SBUS_NI,5:DSM,6:SUMD,7:SRXL,8:SRXL2,9:CRSF,10:ST24,11:FPORT,12:FPORT2,13:FastSBUS,14:DroneCAN,15:Ghost,16:MAVRadio,18:SITL UDP</field>
      </param>
      <param humanName="RC Failsafe timeout" name="RC_FS_TIMEOUT" documentation="RC failsafe will trigger this many seconds after loss of RC" user="Standard">
        <field name="Range">0.1 10.0</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
    </parameters>
    <parameters name="RC1_">
      <param humanName="RC min PWM" name="RC1_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC1_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC1_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC1_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC1_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC1_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC2_">
      <param humanName="RC min PWM" name="RC2_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC2_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC2_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC2_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC2_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC2_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC3_">
      <param humanName="RC min PWM" name="RC3_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC3_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC3_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC3_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC3_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC3_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC4_">
      <param humanName="RC min PWM" name="RC4_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC4_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC4_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC4_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC4_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC4_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC5_">
      <param humanName="RC min PWM" name="RC5_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC5_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC5_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC5_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC5_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC5_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC6_">
      <param humanName="RC min PWM" name="RC6_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC6_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC6_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC6_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC6_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC6_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC7_">
      <param humanName="RC min PWM" name="RC7_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC7_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC7_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC7_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC7_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC7_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC8_">
      <param humanName="RC min PWM" name="RC8_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC8_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC8_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC8_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC8_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC8_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC9_">
      <param humanName="RC min PWM" name="RC9_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC9_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC9_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC9_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC9_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC9_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC10_">
      <param humanName="RC min PWM" name="RC10_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC10_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC10_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC10_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC10_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC10_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC11_">
      <param humanName="RC min PWM" name="RC11_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC11_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC11_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC11_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC11_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC11_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC12_">
      <param humanName="RC min PWM" name="RC12_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC12_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC12_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC12_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC12_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC12_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC13_">
      <param humanName="RC min PWM" name="RC13_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC13_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC13_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC13_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC13_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC13_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC14_">
      <param humanName="RC min PWM" name="RC14_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC14_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC14_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC14_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC14_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC14_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC15_">
      <param humanName="RC min PWM" name="RC15_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC15_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC15_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC15_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC15_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC15_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RC16_">
      <param humanName="RC min PWM" name="RC16_MIN" documentation="RC minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC trim PWM" name="RC16_TRIM" documentation="RC trim (neutral) PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC max PWM" name="RC16_MAX" documentation="RC maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="RC reversed" name="RC16_REVERSED" documentation="Reverse channel input. Set to 0 for normal operation. Set to 1 to reverse this input channel." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="RC dead-zone" name="RC16_DZ" documentation="PWM dead zone in microseconds around trim or bottom" user="Advanced">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="RC input option" name="RC16_OPTION" documentation="Function assigned to this RC channel" user="Standard">
        <values>
          <value code="0">Do Nothing</value>
          <value code="52">ACRO Mode</value>
          <value code="38">ADSB Avoidance Enable</value>
          <value code="16">AUTO Mode</value>
          <value code="183">AUTOLAND mode</value>
          <value code="84">AirMode</value>
          <value code="210">Airbrakes</value>
          <value code="91">Airspeed Ratio Calibration</value>
          <value code="165">Arm/Emergency Motor Stop</value>
          <value code="41">ArmDisarm (4.1 and lower)</value>
          <value code="153">ArmDisarm (4.2 and higher)</value>
          <value code="154">ArmDisarm with Quadplane AirMode (4.2 and higher)</value>
          <value code="24">Auto Mission Reset</value>
          <value code="172">Battery MPPT Enable</value>
          <value code="72">CIRCLE Mode</value>
          <value code="150">CRUISE Mode</value>
          <value code="171">Calibrate Compasses</value>
          <value code="169">Camera Auto Focus</value>
          <value code="174">Camera Image Tracking</value>
          <value code="175">Camera Lens</value>
          <value code="168">Camera Manual Focus</value>
          <value code="102">Camera Mode Toggle</value>
          <value code="166">Camera Record Video</value>
          <value code="9">Camera Trigger</value>
          <value code="167">Camera Zoom</value>
          <value code="58">Clear Waypoints</value>
          <value code="62">Compass Learn</value>
          <value code="87">Crow Select</value>
          <value code="106">Disable Airspeed Use</value>
          <value code="81">Disarm</value>
          <value code="90">EKF Source Set</value>
          <value code="103">EKF lane switch attempt</value>
          <value code="104">EKF yaw reset</value>
          <value code="107">Enable FW Autotune</value>
          <value code="92">FBWA Mode</value>
          <value code="95">FBWA taildragger takeoff mode</value>
          <value code="162">FFT Tune</value>
          <value code="11">Fence Enable</value>
          <value code="208">Flap</value>
          <value code="157">Force FS Action to FBWA</value>
          <value code="65">GPS Disable</value>
          <value code="105">GPS Disable Yaw</value>
          <value code="55">GUIDED Mode</value>
          <value code="85">Generator</value>
          <value code="179">ICEngine start / stop</value>
          <value code="43">InvertedFlight Enable</value>
          <value code="100">KillIMU1</value>
          <value code="101">KillIMU2</value>
          <value code="110">KillIMU3</value>
          <value code="56">LOITER Mode</value>
          <value code="89">Landing Flare</value>
          <value code="29">Landing Gear</value>
          <value code="30">Lost Plane Sound</value>
          <value code="111">Loweheiser starter</value>
          <value code="218">Loweheiser throttle</value>
          <value code="51">MANUAL Mode</value>
          <value code="31">Motor Emergency Stop</value>
          <value code="177">Mount LRF enable</value>
          <value code="186">Mount POI Lock</value>
          <value code="185">Mount Roll/Pitch Lock</value>
          <value code="163">Mount Yaw Lock</value>
          <value code="213">Mount1 Pitch</value>
          <value code="212">Mount1 Roll</value>
          <value code="214">Mount1 Yaw</value>
          <value code="216">Mount2 Pitch</value>
          <value code="215">Mount2 Roll</value>
          <value code="217">Mount2 Yaw</value>
          <value code="86">Non Auto Terrain Follow Disable</value>
          <value code="158">Optflow Calibration</value>
          <value code="22">Parachute Release</value>
          <value code="164">Pause Stream Logging</value>
          <value code="173">Plane AUTO Mode Landing Abort</value>
          <value code="82">QAssist 3pos</value>
          <value code="108">QRTL Mode</value>
          <value code="170">QSTABILIZE Mode</value>
          <value code="176">Quadplane Fwd Throttle Override enable</value>
          <value code="181">QuickTune</value>
          <value code="46">RC Override Enable</value>
          <value code="4">RTL</value>
          <value code="28">Relay1 On/Off</value>
          <value code="34">Relay2 On/Off</value>
          <value code="35">Relay3 On/Off</value>
          <value code="36">Relay4 On/Off</value>
          <value code="66">Relay5 On/Off</value>
          <value code="67">Relay6 On/Off</value>
          <value code="27">Retract Mount1</value>
          <value code="113">Retract Mount2</value>
          <value code="64">Reverse Throttle</value>
          <value code="78">RunCam Control</value>
          <value code="79">RunCam OSD Control</value>
          <value code="300">Scripting1</value>
          <value code="309">Scripting10</value>
          <value code="310">Scripting11</value>
          <value code="311">Scripting12</value>
          <value code="312">Scripting13</value>
          <value code="313">Scripting14</value>
          <value code="314">Scripting15</value>
          <value code="315">Scripting16</value>
          <value code="301">Scripting2</value>
          <value code="302">Scripting3</value>
          <value code="303">Scripting4</value>
          <value code="304">Scripting5</value>
          <value code="305">Scripting6</value>
          <value code="306">Scripting7</value>
          <value code="307">Scripting8</value>
          <value code="308">Scripting9</value>
          <value code="155">Set roll pitch and yaw trim to current servo and RC</value>
          <value code="88">Soaring Enable</value>
          <value code="316">Stop-Restart Scripting</value>
          <value code="112">SwitchExternalAHRS</value>
          <value code="184">System ID Chirp</value>
          <value code="77">TAKEOFF Mode</value>
          <value code="98">TRAINING Mode</value>
          <value code="180">Test autotuned gains after tune is complete</value>
          <value code="96">Trigger re-reading of mode switch</value>
          <value code="209">VTOL Forward Throttle</value>
          <value code="94">VTX Power</value>
          <value code="160">Weathervane Enable</value>
        </values>
      </param>
    </parameters>
    <parameters name="RCMAP_">
      <param humanName="Roll channel" name="RCMAP_ROLL" documentation="Roll channel number. This is useful when you have a RC transmitter that can't change the channel order easily. Roll is normally on channel 1, but you can move it to any channel with this parameter.  Reboot is required for changes to take effect." user="Advanced">
        <field name="Range">1 16</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Pitch channel" name="RCMAP_PITCH" documentation="Pitch channel number. This is useful when you have a RC transmitter that can't change the channel order easily. Pitch is normally on channel 2, but you can move it to any channel with this parameter.  Reboot is required for changes to take effect." user="Advanced">
        <field name="Range">1 16</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Throttle channel" name="RCMAP_THROTTLE" documentation="Throttle channel number. This is useful when you have a RC transmitter that can't change the channel order easily. Throttle is normally on channel 3, but you can move it to any channel with this parameter. Reboot is required for changes to take effect." user="Advanced">
        <field name="Range">1 16</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Yaw channel" name="RCMAP_YAW" documentation="Yaw channel number. This is useful when you have a RC transmitter that can't change the channel order easily. Yaw (also known as rudder) is normally on channel 4, but you can move it to any channel with this parameter.  Reboot is required for changes to take effect." user="Advanced">
        <field name="Range">1 16</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RELAY1_">
      <param humanName="Relay function" name="RELAY1_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY1_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY1_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY1_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY2_">
      <param humanName="Relay function" name="RELAY2_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY2_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY2_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY2_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY3_">
      <param humanName="Relay function" name="RELAY3_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY3_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY3_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY3_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY4_">
      <param humanName="Relay function" name="RELAY4_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY4_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY4_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY4_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY5_">
      <param humanName="Relay function" name="RELAY5_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY5_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY5_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY5_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY6_">
      <param humanName="Relay function" name="RELAY6_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY6_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY6_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY6_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY7_">
      <param humanName="Relay function" name="RELAY7_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY7_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY7_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY7_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY8_">
      <param humanName="Relay function" name="RELAY8_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY8_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY8_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY8_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY9_">
      <param humanName="Relay function" name="RELAY9_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY9_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY9_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY9_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY10_">
      <param humanName="Relay function" name="RELAY10_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY10_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY10_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY10_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY11_">
      <param humanName="Relay function" name="RELAY11_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY11_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY11_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY11_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY12_">
      <param humanName="Relay function" name="RELAY12_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY12_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY12_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY12_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY13_">
      <param humanName="Relay function" name="RELAY13_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY13_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY13_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY13_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY14_">
      <param humanName="Relay function" name="RELAY14_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY14_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY14_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY14_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY15_">
      <param humanName="Relay function" name="RELAY15_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY15_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY15_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY15_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RELAY16_">
      <param humanName="Relay function" name="RELAY16_FUNCTION" documentation="The function the relay channel is mapped to.">
        <values>
          <value code="0">None</value>
          <value code="1">Relay</value>
          <value code="2">Ignition</value>
          <value code="3">Parachute</value>
          <value code="4">Camera</value>
          <value code="9">ICE Starter</value>
        </values>
      </param>
      <param humanName="Relay pin" name="RELAY16_PIN" documentation="Digital pin number for relay control. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="49">BB Blue GP0 pin 4</value>
          <value code="50">AUXOUT1</value>
          <value code="51">AUXOUT2</value>
          <value code="52">AUXOUT3</value>
          <value code="53">AUXOUT4</value>
          <value code="54">AUXOUT5</value>
          <value code="55">AUXOUT6</value>
          <value code="57">BB Blue GP0 pin 3</value>
          <value code="113">BB Blue GP0 pin 6</value>
          <value code="116">BB Blue GP0 pin 5</value>
          <value code="62">BBBMini Pin P8.13</value>
          <value code="101">MainOut1</value>
          <value code="102">MainOut2</value>
          <value code="103">MainOut3</value>
          <value code="104">MainOut4</value>
          <value code="105">MainOut5</value>
          <value code="106">MainOut6</value>
          <value code="107">MainOut7</value>
          <value code="108">MainOut8</value>
          <value code="1000">DroneCAN Hardpoint ID 0</value>
          <value code="1001">DroneCAN Hardpoint ID 1</value>
          <value code="1002">DroneCAN Hardpoint ID 2</value>
          <value code="1003">DroneCAN Hardpoint ID 3</value>
          <value code="1004">DroneCAN Hardpoint ID 4</value>
          <value code="1005">DroneCAN Hardpoint ID 5</value>
          <value code="1006">DroneCAN Hardpoint ID 6</value>
          <value code="1007">DroneCAN Hardpoint ID 7</value>
          <value code="1008">DroneCAN Hardpoint ID 8</value>
          <value code="1009">DroneCAN Hardpoint ID 9</value>
          <value code="1010">DroneCAN Hardpoint ID 10</value>
          <value code="1011">DroneCAN Hardpoint ID 11</value>
          <value code="1012">DroneCAN Hardpoint ID 12</value>
          <value code="1013">DroneCAN Hardpoint ID 13</value>
          <value code="1014">DroneCAN Hardpoint ID 14</value>
          <value code="1015">DroneCAN Hardpoint ID 15</value>
        </values>
        <field name="Range">-1 1015</field>
      </param>
      <param humanName="Relay default state" name="RELAY16_DEFAULT" documentation="Should the relay default to on or off, this only applies to RELAYx_FUNC &quot;Relay&quot; (1). All other uses will pick the appropriate default output state from within the controlling function's parameters. Note that if INVERTED is set then the default is inverted." user="Standard">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
          <value code="2">NoChange</value>
        </values>
      </param>
      <param humanName="Relay invert output signal" name="RELAY16_INVERTED" documentation="Should the relay output signal be inverted. If enabled, relay on would be pin low and relay off would be pin high. NOTE: this impact's DEFAULT." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Inverted</value>
        </values>
      </param>
    </parameters>
    <parameters name="RLL">
      <param humanName="Roll Time Constant" name="RLL2SRV_TCONST" documentation="Time constant in seconds from demanded to achieved roll angle. Most models respond well to 0.5. May be reduced for faster responses, but setting lower than a model can achieve will not help." user="Advanced">
        <field name="Range">0.4 1.0</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Maximum Roll Rate" name="RLL2SRV_RMAX" documentation="This sets the maximum roll rate that the attitude controller will demand (degrees/sec) in angle stabilized modes. Setting it to zero disables this limit." user="Advanced">
        <field name="Range">0 180</field>
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Roll axis rate controller P gain" name="RLL_RATE_P" documentation="Roll axis rate controller P gain. Corrects in proportion to the difference between the desired roll rate vs actual roll rate" user="Standard">
        <field name="Range">0.08 0.35</field>
        <field name="Increment">0.005</field>
      </param>
      <param humanName="Roll axis rate controller I gain" name="RLL_RATE_I" documentation="Roll axis rate controller I gain.  Corrects long-term difference in desired roll rate vs actual roll rate" user="Standard">
        <field name="Range">0.01 0.6</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Roll axis rate controller I gain maximum" name="RLL_RATE_IMAX" documentation="Roll axis rate controller I gain maximum.  Constrains the maximum that the I term will output" user="Standard">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Roll axis rate controller D gain" name="RLL_RATE_D" documentation="Roll axis rate controller D gain.  Compensates for short-term change in desired roll rate vs actual roll rate" user="Standard">
        <field name="Range">0.001 0.03</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Roll axis rate controller feed forward" name="RLL_RATE_FF" documentation="Roll axis rate controller feed forward" user="Standard">
        <field name="Range">0 3.0</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Roll axis rate controller target frequency in Hz" name="RLL_RATE_FLTT" documentation="Roll axis rate controller target frequency in Hz" user="Standard">
        <field name="Range">2 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Roll axis rate controller error frequency in Hz" name="RLL_RATE_FLTE" documentation="Roll axis rate controller error frequency in Hz" user="Standard">
        <field name="Range">2 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Roll axis rate controller derivative frequency in Hz" name="RLL_RATE_FLTD" documentation="Roll axis rate controller derivative frequency in Hz" user="Standard">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Roll slew rate limit" name="RLL_RATE_SMAX" documentation="Sets an upper limit on the slew rate produced by the combined P and D gains. If the amplitude of the control action produced by the rate feedback exceeds this value, then the D+P gain is reduced to respect the limit. This limits the amplitude of high frequency oscillations caused by an excessive gain. The limit should be set to no more than 25% of the actuators maximum slew rate to allow for load effects. Note: The gain will not be reduced to less than 10% of the nominal value. A value of zero will disable this feature." user="Advanced">
        <field name="Range">0 200</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Roll axis rate controller PD sum maximum" name="RLL_RATE_PDMX" documentation="Roll axis rate controller PD sum maximum.  The maximum/minimum value that the sum of the P and D term can output">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Roll Derivative FeedForward Gain" name="RLL_RATE_D_FF" documentation="FF D Gain which produces an output that is proportional to the rate of change of the target" user="Advanced">
        <field name="Range">0 0.03</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Roll Target notch filter index" name="RLL_RATE_NTF" documentation="Roll Target notch filter index" user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Roll Error notch filter index" name="RLL_RATE_NEF" documentation="Roll Error notch filter index" user="Advanced">
        <field name="Range">1 8</field>
      </param>
    </parameters>
    <parameters name="RNGFND1_">
      <param humanName="Rangefinder type" name="RNGFND1_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="42">Ainstein_LR_D1</value>
          <value code="1">Analog</value>
          <value code="6">BBB-PRU</value>
          <value code="9">Bebop</value>
          <value code="19">BenewakeTF02</value>
          <value code="27">BenewakeTF03</value>
          <value code="46">BenewakeTFS20L</value>
          <value code="25">BenewakeTFmini-I2C</value>
          <value code="20">BenewakeTFmini-Serial</value>
          <value code="34">Benewake_CAN</value>
          <value code="23">BlueRoboticsPing</value>
          <value code="47">DTS6012M</value>
          <value code="24">DroneCAN</value>
          <value code="31">GYUS42v2</value>
          <value code="30">HC-SR04</value>
          <value code="44">HexsoonRadar</value>
          <value code="41">JRE_Serial</value>
          <value code="26">LanbaoPSK-CM8JL65-CC5</value>
          <value code="12">LeddarOne</value>
          <value code="29">LeddarVu8-Serial</value>
          <value code="21">LidarLightV3HP</value>
          <value code="3">LidarLite-I2C</value>
          <value code="15">LidarLiteV3-I2C</value>
          <value code="45">LightWare-GRF</value>
          <value code="48">LightWare-GRF-I2C</value>
          <value code="7">LightWareI2C</value>
          <value code="8">LightWareSerial</value>
          <value code="36">Lua_Scripting</value>
          <value code="10">MAVLink</value>
          <value code="32">MSP</value>
          <value code="2">MaxbotixI2C</value>
          <value code="13">MaxbotixSerial</value>
          <value code="17">NMEA</value>
          <value code="39">NRA24_CAN</value>
          <value code="37">NoopLoop_TOFSense</value>
          <value code="40">NoopLoop_TOFSenseF_I2C</value>
          <value code="38">NoopLoop_TOFSense_CAN</value>
          <value code="5">PWM</value>
          <value code="22">PWM</value>
          <value code="43">RDS02UF</value>
          <value code="100">SITL</value>
          <value code="14">TeraRangerI2C</value>
          <value code="35">TeraRangerSerial</value>
          <value code="33">USD1_CAN</value>
          <value code="11">USD1_Serial</value>
          <value code="16">VL53L0X or VL53L1X</value>
          <value code="28">VL53L1X-ShortRange</value>
          <value code="18">WASP-LRF</value>
        </values>
      </param>
      <param humanName="Rangefinder pin" name="RNGFND1_PIN" documentation="Analog or PWM input pin that rangefinder is connected to. Analog RSSI or Airspeed ports can be used for Analog inputs (some autopilots provide others also), Non-IOMCU Servo/MotorOutputs can be used for PWM input when configured as &quot;GPIOs&quot;. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot; for analog pin or &quot;GPIOs&quot;, if PWM input type, to determine pin number." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="11">Pixracer</value>
          <value code="13">Pixhawk ADC4</value>
          <value code="14">Pixhawk ADC3</value>
          <value code="15">Pixhawk ADC6/Pixhawk2 ADC</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="103">Pixhawk SBUS</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Rangefinder scaling" name="RNGFND1_SCALING" documentation="Scaling factor between rangefinder reading and distance. For the linear and inverted functions this is in meters per volt. For the hyperbolic function the units are meterVolts. For Maxbotix serial sonar this is unit conversion to meters." user="Standard">
        <field name="Units">m/V</field>
        <field name="UnitText">meters per volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="rangefinder offset" name="RNGFND1_OFFSET" documentation="Offset in volts for zero distance for analog rangefinders. Offset added to distance in centimeters for PWM lidars" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Rangefinder function" name="RNGFND1_FUNCTION" documentation="Control over what function is used to calculate distance. For a linear function, the distance is (voltage-offset)*scaling. For a inverted function the distance is (offset-voltage)*scaling. For a hyperbolic function the distance is scaling/(voltage-offset). The functions return the distance in meters." user="Standard">
        <values>
          <value code="0">Linear</value>
          <value code="1">Inverted</value>
          <value code="2">Hyperbolic</value>
        </values>
      </param>
      <param humanName="Rangefinder minimum distance" name="RNGFND1_MIN" documentation="Minimum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder maximum distance" name="RNGFND1_MAX" documentation="Maximum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder stop pin" name="RNGFND1_STOP_PIN" documentation="Digital pin that enables/disables rangefinder measurement for the pwm rangefinder. A value of -1 means no pin. If this is set, then the pin is set to 1 to enable the rangefinder and set to 0 to disable it. This is used to enable powersaving when out of range. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="111">PX4 FMU Relay1</value>
          <value code="112">PX4 FMU Relay2</value>
          <value code="113">PX4IO Relay1</value>
          <value code="114">PX4IO Relay2</value>
          <value code="115">PX4IO ACC1</value>
          <value code="116">PX4IO ACC2</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Ratiometric" name="RNGFND1_RMETRIC" documentation="This parameter sets whether an analog rangefinder is ratiometric. Most analog rangefinders are ratiometric, meaning that their output voltage is influenced by the supply voltage. Some analog rangefinders (such as the SF/02) have their own internal voltage regulators so they are not ratiometric." user="Standard">
        <values>
          <value code="0">No</value>
          <value code="1">Yes</value>
        </values>
      </param>
      <param humanName="Powersave range" name="RNGFND1_PWRRNG" documentation="This parameter sets the estimated terrain distance in meters above which the sensor will be put into a power saving mode (if available). A value of zero means power saving is not enabled" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
      </param>
      <param humanName="Distance from the range finder to the ground" name="RNGFND1_GNDCLR" documentation="This parameter sets the expected range measurement that the range finder should return when the vehicle is on the ground." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 1.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Bus address of sensor" name="RNGFND1_ADDR" documentation="This sets the bus address of the sensor, where applicable. Used for the I2C and DroneCAN sensors to allow for multiple sensors on different addresses." user="Standard">
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="X position offset" name="RNGFND1_POS_X" documentation="X position of the rangefinder in body frame. Positive X is forward of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Y position offset" name="RNGFND1_POS_Y" documentation="Y position of the rangefinder in body frame. Positive Y is to the right of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Z position offset" name="RNGFND1_POS_Z" documentation="Z position of the rangefinder in body frame. Positive Z is down from the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder orientation" name="RNGFND1_ORIENT" documentation="Orientation of rangefinder" user="Advanced">
        <values>
          <value code="0">Forward</value>
          <value code="1">Forward-Right</value>
          <value code="2">Right</value>
          <value code="3">Back-Right</value>
          <value code="4">Back</value>
          <value code="5">Back-Left</value>
          <value code="6">Left</value>
          <value code="7">Forward-Left</value>
          <value code="24">Up</value>
          <value code="25">Down</value>
        </values>
      </param>
      <param humanName="Moving Average Range" name="RNGFND1_WSP_MAVG" documentation="Sets the number of historic range results to use for calculating the current range result. When MAVG is greater than 1, the current range result will be the current measured value averaged with the N-1 previous results" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Moving Median Filter" name="RNGFND1_WSP_MEDF" documentation="Sets the window size for the real-time median filter. When MEDF is greater than 0 the median filter is active" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Frequency" name="RNGFND1_WSP_FRQ" documentation="Sets the repetition frequency of the ranging operation in Hertz. Upon entering the desired frequency the system will calculate the nearest frequency that it can handle according to the resolution of internal timers." user="Advanced">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Multi-pulse averages" name="RNGFND1_WSP_AVG" documentation="Sets the number of pulses to be used in multi-pulse averaging mode. In this mode, a sequence of rapid fire ranges are taken and then averaged to improve the accuracy of the measurement" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Sensitivity threshold" name="RNGFND1_WSP_THR" documentation="Sets the system sensitivity. Larger values of THR represent higher sensitivity. The system may limit the maximum value of THR to prevent excessive false alarm rates based on settings made at the factory. Set to -1 for automatic threshold adjustments" user="Advanced">
        <field name="Range">-1 255</field>
      </param>
      <param humanName="Baud rate" name="RNGFND1_WSP_BAUD" documentation="Desired baud rate" user="Advanced">
        <values>
          <value code="0">Low Speed</value>
          <value code="1">High Speed</value>
        </values>
      </param>
      <param humanName="RangeFinder CAN receive ID" name="RNGFND1_RECV_ID" documentation="The receive ID of the CAN frames. A value of zero means all IDs are accepted." user="Advanced">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="RangeFinder Minimum signal strength" name="RNGFND1_SNR_MIN" documentation="RangeFinder Minimum signal strength (SNR) to accept distance" user="Advanced">
        <field name="Range">0 65535</field>
      </param>
    </parameters>
    <parameters name="RNGFND1_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND1_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND1_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND1_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND1_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND1_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND1_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND1_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND2_">
      <param humanName="Rangefinder type" name="RNGFND2_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="42">Ainstein_LR_D1</value>
          <value code="1">Analog</value>
          <value code="6">BBB-PRU</value>
          <value code="9">Bebop</value>
          <value code="19">BenewakeTF02</value>
          <value code="27">BenewakeTF03</value>
          <value code="46">BenewakeTFS20L</value>
          <value code="25">BenewakeTFmini-I2C</value>
          <value code="20">BenewakeTFmini-Serial</value>
          <value code="34">Benewake_CAN</value>
          <value code="23">BlueRoboticsPing</value>
          <value code="47">DTS6012M</value>
          <value code="24">DroneCAN</value>
          <value code="31">GYUS42v2</value>
          <value code="30">HC-SR04</value>
          <value code="44">HexsoonRadar</value>
          <value code="41">JRE_Serial</value>
          <value code="26">LanbaoPSK-CM8JL65-CC5</value>
          <value code="12">LeddarOne</value>
          <value code="29">LeddarVu8-Serial</value>
          <value code="21">LidarLightV3HP</value>
          <value code="3">LidarLite-I2C</value>
          <value code="15">LidarLiteV3-I2C</value>
          <value code="45">LightWare-GRF</value>
          <value code="48">LightWare-GRF-I2C</value>
          <value code="7">LightWareI2C</value>
          <value code="8">LightWareSerial</value>
          <value code="36">Lua_Scripting</value>
          <value code="10">MAVLink</value>
          <value code="32">MSP</value>
          <value code="2">MaxbotixI2C</value>
          <value code="13">MaxbotixSerial</value>
          <value code="17">NMEA</value>
          <value code="39">NRA24_CAN</value>
          <value code="37">NoopLoop_TOFSense</value>
          <value code="40">NoopLoop_TOFSenseF_I2C</value>
          <value code="38">NoopLoop_TOFSense_CAN</value>
          <value code="5">PWM</value>
          <value code="22">PWM</value>
          <value code="43">RDS02UF</value>
          <value code="100">SITL</value>
          <value code="14">TeraRangerI2C</value>
          <value code="35">TeraRangerSerial</value>
          <value code="33">USD1_CAN</value>
          <value code="11">USD1_Serial</value>
          <value code="16">VL53L0X or VL53L1X</value>
          <value code="28">VL53L1X-ShortRange</value>
          <value code="18">WASP-LRF</value>
        </values>
      </param>
      <param humanName="Rangefinder pin" name="RNGFND2_PIN" documentation="Analog or PWM input pin that rangefinder is connected to. Analog RSSI or Airspeed ports can be used for Analog inputs (some autopilots provide others also), Non-IOMCU Servo/MotorOutputs can be used for PWM input when configured as &quot;GPIOs&quot;. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot; for analog pin or &quot;GPIOs&quot;, if PWM input type, to determine pin number." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="11">Pixracer</value>
          <value code="13">Pixhawk ADC4</value>
          <value code="14">Pixhawk ADC3</value>
          <value code="15">Pixhawk ADC6/Pixhawk2 ADC</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="103">Pixhawk SBUS</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Rangefinder scaling" name="RNGFND2_SCALING" documentation="Scaling factor between rangefinder reading and distance. For the linear and inverted functions this is in meters per volt. For the hyperbolic function the units are meterVolts. For Maxbotix serial sonar this is unit conversion to meters." user="Standard">
        <field name="Units">m/V</field>
        <field name="UnitText">meters per volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="rangefinder offset" name="RNGFND2_OFFSET" documentation="Offset in volts for zero distance for analog rangefinders. Offset added to distance in centimeters for PWM lidars" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Rangefinder function" name="RNGFND2_FUNCTION" documentation="Control over what function is used to calculate distance. For a linear function, the distance is (voltage-offset)*scaling. For a inverted function the distance is (offset-voltage)*scaling. For a hyperbolic function the distance is scaling/(voltage-offset). The functions return the distance in meters." user="Standard">
        <values>
          <value code="0">Linear</value>
          <value code="1">Inverted</value>
          <value code="2">Hyperbolic</value>
        </values>
      </param>
      <param humanName="Rangefinder minimum distance" name="RNGFND2_MIN" documentation="Minimum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder maximum distance" name="RNGFND2_MAX" documentation="Maximum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder stop pin" name="RNGFND2_STOP_PIN" documentation="Digital pin that enables/disables rangefinder measurement for the pwm rangefinder. A value of -1 means no pin. If this is set, then the pin is set to 1 to enable the rangefinder and set to 0 to disable it. This is used to enable powersaving when out of range. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="111">PX4 FMU Relay1</value>
          <value code="112">PX4 FMU Relay2</value>
          <value code="113">PX4IO Relay1</value>
          <value code="114">PX4IO Relay2</value>
          <value code="115">PX4IO ACC1</value>
          <value code="116">PX4IO ACC2</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Ratiometric" name="RNGFND2_RMETRIC" documentation="This parameter sets whether an analog rangefinder is ratiometric. Most analog rangefinders are ratiometric, meaning that their output voltage is influenced by the supply voltage. Some analog rangefinders (such as the SF/02) have their own internal voltage regulators so they are not ratiometric." user="Standard">
        <values>
          <value code="0">No</value>
          <value code="1">Yes</value>
        </values>
      </param>
      <param humanName="Powersave range" name="RNGFND2_PWRRNG" documentation="This parameter sets the estimated terrain distance in meters above which the sensor will be put into a power saving mode (if available). A value of zero means power saving is not enabled" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
      </param>
      <param humanName="Distance from the range finder to the ground" name="RNGFND2_GNDCLR" documentation="This parameter sets the expected range measurement that the range finder should return when the vehicle is on the ground." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 1.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Bus address of sensor" name="RNGFND2_ADDR" documentation="This sets the bus address of the sensor, where applicable. Used for the I2C and DroneCAN sensors to allow for multiple sensors on different addresses." user="Standard">
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="X position offset" name="RNGFND2_POS_X" documentation="X position of the rangefinder in body frame. Positive X is forward of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Y position offset" name="RNGFND2_POS_Y" documentation="Y position of the rangefinder in body frame. Positive Y is to the right of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Z position offset" name="RNGFND2_POS_Z" documentation="Z position of the rangefinder in body frame. Positive Z is down from the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder orientation" name="RNGFND2_ORIENT" documentation="Orientation of rangefinder" user="Advanced">
        <values>
          <value code="0">Forward</value>
          <value code="1">Forward-Right</value>
          <value code="2">Right</value>
          <value code="3">Back-Right</value>
          <value code="4">Back</value>
          <value code="5">Back-Left</value>
          <value code="6">Left</value>
          <value code="7">Forward-Left</value>
          <value code="24">Up</value>
          <value code="25">Down</value>
        </values>
      </param>
      <param humanName="Moving Average Range" name="RNGFND2_WSP_MAVG" documentation="Sets the number of historic range results to use for calculating the current range result. When MAVG is greater than 1, the current range result will be the current measured value averaged with the N-1 previous results" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Moving Median Filter" name="RNGFND2_WSP_MEDF" documentation="Sets the window size for the real-time median filter. When MEDF is greater than 0 the median filter is active" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Frequency" name="RNGFND2_WSP_FRQ" documentation="Sets the repetition frequency of the ranging operation in Hertz. Upon entering the desired frequency the system will calculate the nearest frequency that it can handle according to the resolution of internal timers." user="Advanced">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Multi-pulse averages" name="RNGFND2_WSP_AVG" documentation="Sets the number of pulses to be used in multi-pulse averaging mode. In this mode, a sequence of rapid fire ranges are taken and then averaged to improve the accuracy of the measurement" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Sensitivity threshold" name="RNGFND2_WSP_THR" documentation="Sets the system sensitivity. Larger values of THR represent higher sensitivity. The system may limit the maximum value of THR to prevent excessive false alarm rates based on settings made at the factory. Set to -1 for automatic threshold adjustments" user="Advanced">
        <field name="Range">-1 255</field>
      </param>
      <param humanName="Baud rate" name="RNGFND2_WSP_BAUD" documentation="Desired baud rate" user="Advanced">
        <values>
          <value code="0">Low Speed</value>
          <value code="1">High Speed</value>
        </values>
      </param>
      <param humanName="RangeFinder CAN receive ID" name="RNGFND2_RECV_ID" documentation="The receive ID of the CAN frames. A value of zero means all IDs are accepted." user="Advanced">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="RangeFinder Minimum signal strength" name="RNGFND2_SNR_MIN" documentation="RangeFinder Minimum signal strength (SNR) to accept distance" user="Advanced">
        <field name="Range">0 65535</field>
      </param>
    </parameters>
    <parameters name="RNGFND2_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND2_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND2_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND2_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND2_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND2_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND2_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND2_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND3_">
      <param humanName="Rangefinder type" name="RNGFND3_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="42">Ainstein_LR_D1</value>
          <value code="1">Analog</value>
          <value code="6">BBB-PRU</value>
          <value code="9">Bebop</value>
          <value code="19">BenewakeTF02</value>
          <value code="27">BenewakeTF03</value>
          <value code="46">BenewakeTFS20L</value>
          <value code="25">BenewakeTFmini-I2C</value>
          <value code="20">BenewakeTFmini-Serial</value>
          <value code="34">Benewake_CAN</value>
          <value code="23">BlueRoboticsPing</value>
          <value code="47">DTS6012M</value>
          <value code="24">DroneCAN</value>
          <value code="31">GYUS42v2</value>
          <value code="30">HC-SR04</value>
          <value code="44">HexsoonRadar</value>
          <value code="41">JRE_Serial</value>
          <value code="26">LanbaoPSK-CM8JL65-CC5</value>
          <value code="12">LeddarOne</value>
          <value code="29">LeddarVu8-Serial</value>
          <value code="21">LidarLightV3HP</value>
          <value code="3">LidarLite-I2C</value>
          <value code="15">LidarLiteV3-I2C</value>
          <value code="45">LightWare-GRF</value>
          <value code="48">LightWare-GRF-I2C</value>
          <value code="7">LightWareI2C</value>
          <value code="8">LightWareSerial</value>
          <value code="36">Lua_Scripting</value>
          <value code="10">MAVLink</value>
          <value code="32">MSP</value>
          <value code="2">MaxbotixI2C</value>
          <value code="13">MaxbotixSerial</value>
          <value code="17">NMEA</value>
          <value code="39">NRA24_CAN</value>
          <value code="37">NoopLoop_TOFSense</value>
          <value code="40">NoopLoop_TOFSenseF_I2C</value>
          <value code="38">NoopLoop_TOFSense_CAN</value>
          <value code="5">PWM</value>
          <value code="22">PWM</value>
          <value code="43">RDS02UF</value>
          <value code="100">SITL</value>
          <value code="14">TeraRangerI2C</value>
          <value code="35">TeraRangerSerial</value>
          <value code="33">USD1_CAN</value>
          <value code="11">USD1_Serial</value>
          <value code="16">VL53L0X or VL53L1X</value>
          <value code="28">VL53L1X-ShortRange</value>
          <value code="18">WASP-LRF</value>
        </values>
      </param>
      <param humanName="Rangefinder pin" name="RNGFND3_PIN" documentation="Analog or PWM input pin that rangefinder is connected to. Analog RSSI or Airspeed ports can be used for Analog inputs (some autopilots provide others also), Non-IOMCU Servo/MotorOutputs can be used for PWM input when configured as &quot;GPIOs&quot;. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot; for analog pin or &quot;GPIOs&quot;, if PWM input type, to determine pin number." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="11">Pixracer</value>
          <value code="13">Pixhawk ADC4</value>
          <value code="14">Pixhawk ADC3</value>
          <value code="15">Pixhawk ADC6/Pixhawk2 ADC</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="103">Pixhawk SBUS</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Rangefinder scaling" name="RNGFND3_SCALING" documentation="Scaling factor between rangefinder reading and distance. For the linear and inverted functions this is in meters per volt. For the hyperbolic function the units are meterVolts. For Maxbotix serial sonar this is unit conversion to meters." user="Standard">
        <field name="Units">m/V</field>
        <field name="UnitText">meters per volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="rangefinder offset" name="RNGFND3_OFFSET" documentation="Offset in volts for zero distance for analog rangefinders. Offset added to distance in centimeters for PWM lidars" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Rangefinder function" name="RNGFND3_FUNCTION" documentation="Control over what function is used to calculate distance. For a linear function, the distance is (voltage-offset)*scaling. For a inverted function the distance is (offset-voltage)*scaling. For a hyperbolic function the distance is scaling/(voltage-offset). The functions return the distance in meters." user="Standard">
        <values>
          <value code="0">Linear</value>
          <value code="1">Inverted</value>
          <value code="2">Hyperbolic</value>
        </values>
      </param>
      <param humanName="Rangefinder minimum distance" name="RNGFND3_MIN" documentation="Minimum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder maximum distance" name="RNGFND3_MAX" documentation="Maximum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder stop pin" name="RNGFND3_STOP_PIN" documentation="Digital pin that enables/disables rangefinder measurement for the pwm rangefinder. A value of -1 means no pin. If this is set, then the pin is set to 1 to enable the rangefinder and set to 0 to disable it. This is used to enable powersaving when out of range. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="111">PX4 FMU Relay1</value>
          <value code="112">PX4 FMU Relay2</value>
          <value code="113">PX4IO Relay1</value>
          <value code="114">PX4IO Relay2</value>
          <value code="115">PX4IO ACC1</value>
          <value code="116">PX4IO ACC2</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Ratiometric" name="RNGFND3_RMETRIC" documentation="This parameter sets whether an analog rangefinder is ratiometric. Most analog rangefinders are ratiometric, meaning that their output voltage is influenced by the supply voltage. Some analog rangefinders (such as the SF/02) have their own internal voltage regulators so they are not ratiometric." user="Standard">
        <values>
          <value code="0">No</value>
          <value code="1">Yes</value>
        </values>
      </param>
      <param humanName="Powersave range" name="RNGFND3_PWRRNG" documentation="This parameter sets the estimated terrain distance in meters above which the sensor will be put into a power saving mode (if available). A value of zero means power saving is not enabled" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
      </param>
      <param humanName="Distance from the range finder to the ground" name="RNGFND3_GNDCLR" documentation="This parameter sets the expected range measurement that the range finder should return when the vehicle is on the ground." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 1.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Bus address of sensor" name="RNGFND3_ADDR" documentation="This sets the bus address of the sensor, where applicable. Used for the I2C and DroneCAN sensors to allow for multiple sensors on different addresses." user="Standard">
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="X position offset" name="RNGFND3_POS_X" documentation="X position of the rangefinder in body frame. Positive X is forward of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Y position offset" name="RNGFND3_POS_Y" documentation="Y position of the rangefinder in body frame. Positive Y is to the right of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Z position offset" name="RNGFND3_POS_Z" documentation="Z position of the rangefinder in body frame. Positive Z is down from the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder orientation" name="RNGFND3_ORIENT" documentation="Orientation of rangefinder" user="Advanced">
        <values>
          <value code="0">Forward</value>
          <value code="1">Forward-Right</value>
          <value code="2">Right</value>
          <value code="3">Back-Right</value>
          <value code="4">Back</value>
          <value code="5">Back-Left</value>
          <value code="6">Left</value>
          <value code="7">Forward-Left</value>
          <value code="24">Up</value>
          <value code="25">Down</value>
        </values>
      </param>
      <param humanName="Moving Average Range" name="RNGFND3_WSP_MAVG" documentation="Sets the number of historic range results to use for calculating the current range result. When MAVG is greater than 1, the current range result will be the current measured value averaged with the N-1 previous results" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Moving Median Filter" name="RNGFND3_WSP_MEDF" documentation="Sets the window size for the real-time median filter. When MEDF is greater than 0 the median filter is active" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Frequency" name="RNGFND3_WSP_FRQ" documentation="Sets the repetition frequency of the ranging operation in Hertz. Upon entering the desired frequency the system will calculate the nearest frequency that it can handle according to the resolution of internal timers." user="Advanced">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Multi-pulse averages" name="RNGFND3_WSP_AVG" documentation="Sets the number of pulses to be used in multi-pulse averaging mode. In this mode, a sequence of rapid fire ranges are taken and then averaged to improve the accuracy of the measurement" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Sensitivity threshold" name="RNGFND3_WSP_THR" documentation="Sets the system sensitivity. Larger values of THR represent higher sensitivity. The system may limit the maximum value of THR to prevent excessive false alarm rates based on settings made at the factory. Set to -1 for automatic threshold adjustments" user="Advanced">
        <field name="Range">-1 255</field>
      </param>
      <param humanName="Baud rate" name="RNGFND3_WSP_BAUD" documentation="Desired baud rate" user="Advanced">
        <values>
          <value code="0">Low Speed</value>
          <value code="1">High Speed</value>
        </values>
      </param>
      <param humanName="RangeFinder CAN receive ID" name="RNGFND3_RECV_ID" documentation="The receive ID of the CAN frames. A value of zero means all IDs are accepted." user="Advanced">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="RangeFinder Minimum signal strength" name="RNGFND3_SNR_MIN" documentation="RangeFinder Minimum signal strength (SNR) to accept distance" user="Advanced">
        <field name="Range">0 65535</field>
      </param>
    </parameters>
    <parameters name="RNGFND3_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND3_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND3_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND3_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND3_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND3_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND3_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND3_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND4_">
      <param humanName="Rangefinder type" name="RNGFND4_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="42">Ainstein_LR_D1</value>
          <value code="1">Analog</value>
          <value code="6">BBB-PRU</value>
          <value code="9">Bebop</value>
          <value code="19">BenewakeTF02</value>
          <value code="27">BenewakeTF03</value>
          <value code="46">BenewakeTFS20L</value>
          <value code="25">BenewakeTFmini-I2C</value>
          <value code="20">BenewakeTFmini-Serial</value>
          <value code="34">Benewake_CAN</value>
          <value code="23">BlueRoboticsPing</value>
          <value code="47">DTS6012M</value>
          <value code="24">DroneCAN</value>
          <value code="31">GYUS42v2</value>
          <value code="30">HC-SR04</value>
          <value code="44">HexsoonRadar</value>
          <value code="41">JRE_Serial</value>
          <value code="26">LanbaoPSK-CM8JL65-CC5</value>
          <value code="12">LeddarOne</value>
          <value code="29">LeddarVu8-Serial</value>
          <value code="21">LidarLightV3HP</value>
          <value code="3">LidarLite-I2C</value>
          <value code="15">LidarLiteV3-I2C</value>
          <value code="45">LightWare-GRF</value>
          <value code="48">LightWare-GRF-I2C</value>
          <value code="7">LightWareI2C</value>
          <value code="8">LightWareSerial</value>
          <value code="36">Lua_Scripting</value>
          <value code="10">MAVLink</value>
          <value code="32">MSP</value>
          <value code="2">MaxbotixI2C</value>
          <value code="13">MaxbotixSerial</value>
          <value code="17">NMEA</value>
          <value code="39">NRA24_CAN</value>
          <value code="37">NoopLoop_TOFSense</value>
          <value code="40">NoopLoop_TOFSenseF_I2C</value>
          <value code="38">NoopLoop_TOFSense_CAN</value>
          <value code="5">PWM</value>
          <value code="22">PWM</value>
          <value code="43">RDS02UF</value>
          <value code="100">SITL</value>
          <value code="14">TeraRangerI2C</value>
          <value code="35">TeraRangerSerial</value>
          <value code="33">USD1_CAN</value>
          <value code="11">USD1_Serial</value>
          <value code="16">VL53L0X or VL53L1X</value>
          <value code="28">VL53L1X-ShortRange</value>
          <value code="18">WASP-LRF</value>
        </values>
      </param>
      <param humanName="Rangefinder pin" name="RNGFND4_PIN" documentation="Analog or PWM input pin that rangefinder is connected to. Analog RSSI or Airspeed ports can be used for Analog inputs (some autopilots provide others also), Non-IOMCU Servo/MotorOutputs can be used for PWM input when configured as &quot;GPIOs&quot;. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot; for analog pin or &quot;GPIOs&quot;, if PWM input type, to determine pin number." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="11">Pixracer</value>
          <value code="13">Pixhawk ADC4</value>
          <value code="14">Pixhawk ADC3</value>
          <value code="15">Pixhawk ADC6/Pixhawk2 ADC</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="103">Pixhawk SBUS</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Rangefinder scaling" name="RNGFND4_SCALING" documentation="Scaling factor between rangefinder reading and distance. For the linear and inverted functions this is in meters per volt. For the hyperbolic function the units are meterVolts. For Maxbotix serial sonar this is unit conversion to meters." user="Standard">
        <field name="Units">m/V</field>
        <field name="UnitText">meters per volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="rangefinder offset" name="RNGFND4_OFFSET" documentation="Offset in volts for zero distance for analog rangefinders. Offset added to distance in centimeters for PWM lidars" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Rangefinder function" name="RNGFND4_FUNCTION" documentation="Control over what function is used to calculate distance. For a linear function, the distance is (voltage-offset)*scaling. For a inverted function the distance is (offset-voltage)*scaling. For a hyperbolic function the distance is scaling/(voltage-offset). The functions return the distance in meters." user="Standard">
        <values>
          <value code="0">Linear</value>
          <value code="1">Inverted</value>
          <value code="2">Hyperbolic</value>
        </values>
      </param>
      <param humanName="Rangefinder minimum distance" name="RNGFND4_MIN" documentation="Minimum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder maximum distance" name="RNGFND4_MAX" documentation="Maximum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder stop pin" name="RNGFND4_STOP_PIN" documentation="Digital pin that enables/disables rangefinder measurement for the pwm rangefinder. A value of -1 means no pin. If this is set, then the pin is set to 1 to enable the rangefinder and set to 0 to disable it. This is used to enable powersaving when out of range. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="111">PX4 FMU Relay1</value>
          <value code="112">PX4 FMU Relay2</value>
          <value code="113">PX4IO Relay1</value>
          <value code="114">PX4IO Relay2</value>
          <value code="115">PX4IO ACC1</value>
          <value code="116">PX4IO ACC2</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Ratiometric" name="RNGFND4_RMETRIC" documentation="This parameter sets whether an analog rangefinder is ratiometric. Most analog rangefinders are ratiometric, meaning that their output voltage is influenced by the supply voltage. Some analog rangefinders (such as the SF/02) have their own internal voltage regulators so they are not ratiometric." user="Standard">
        <values>
          <value code="0">No</value>
          <value code="1">Yes</value>
        </values>
      </param>
      <param humanName="Powersave range" name="RNGFND4_PWRRNG" documentation="This parameter sets the estimated terrain distance in meters above which the sensor will be put into a power saving mode (if available). A value of zero means power saving is not enabled" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
      </param>
      <param humanName="Distance from the range finder to the ground" name="RNGFND4_GNDCLR" documentation="This parameter sets the expected range measurement that the range finder should return when the vehicle is on the ground." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 1.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Bus address of sensor" name="RNGFND4_ADDR" documentation="This sets the bus address of the sensor, where applicable. Used for the I2C and DroneCAN sensors to allow for multiple sensors on different addresses." user="Standard">
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="X position offset" name="RNGFND4_POS_X" documentation="X position of the rangefinder in body frame. Positive X is forward of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Y position offset" name="RNGFND4_POS_Y" documentation="Y position of the rangefinder in body frame. Positive Y is to the right of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Z position offset" name="RNGFND4_POS_Z" documentation="Z position of the rangefinder in body frame. Positive Z is down from the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder orientation" name="RNGFND4_ORIENT" documentation="Orientation of rangefinder" user="Advanced">
        <values>
          <value code="0">Forward</value>
          <value code="1">Forward-Right</value>
          <value code="2">Right</value>
          <value code="3">Back-Right</value>
          <value code="4">Back</value>
          <value code="5">Back-Left</value>
          <value code="6">Left</value>
          <value code="7">Forward-Left</value>
          <value code="24">Up</value>
          <value code="25">Down</value>
        </values>
      </param>
      <param humanName="Moving Average Range" name="RNGFND4_WSP_MAVG" documentation="Sets the number of historic range results to use for calculating the current range result. When MAVG is greater than 1, the current range result will be the current measured value averaged with the N-1 previous results" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Moving Median Filter" name="RNGFND4_WSP_MEDF" documentation="Sets the window size for the real-time median filter. When MEDF is greater than 0 the median filter is active" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Frequency" name="RNGFND4_WSP_FRQ" documentation="Sets the repetition frequency of the ranging operation in Hertz. Upon entering the desired frequency the system will calculate the nearest frequency that it can handle according to the resolution of internal timers." user="Advanced">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Multi-pulse averages" name="RNGFND4_WSP_AVG" documentation="Sets the number of pulses to be used in multi-pulse averaging mode. In this mode, a sequence of rapid fire ranges are taken and then averaged to improve the accuracy of the measurement" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Sensitivity threshold" name="RNGFND4_WSP_THR" documentation="Sets the system sensitivity. Larger values of THR represent higher sensitivity. The system may limit the maximum value of THR to prevent excessive false alarm rates based on settings made at the factory. Set to -1 for automatic threshold adjustments" user="Advanced">
        <field name="Range">-1 255</field>
      </param>
      <param humanName="Baud rate" name="RNGFND4_WSP_BAUD" documentation="Desired baud rate" user="Advanced">
        <values>
          <value code="0">Low Speed</value>
          <value code="1">High Speed</value>
        </values>
      </param>
      <param humanName="RangeFinder CAN receive ID" name="RNGFND4_RECV_ID" documentation="The receive ID of the CAN frames. A value of zero means all IDs are accepted." user="Advanced">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="RangeFinder Minimum signal strength" name="RNGFND4_SNR_MIN" documentation="RangeFinder Minimum signal strength (SNR) to accept distance" user="Advanced">
        <field name="Range">0 65535</field>
      </param>
    </parameters>
    <parameters name="RNGFND4_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND4_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND4_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND4_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND4_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND4_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND4_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND4_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND5_">
      <param humanName="Rangefinder type" name="RNGFND5_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="42">Ainstein_LR_D1</value>
          <value code="1">Analog</value>
          <value code="6">BBB-PRU</value>
          <value code="9">Bebop</value>
          <value code="19">BenewakeTF02</value>
          <value code="27">BenewakeTF03</value>
          <value code="46">BenewakeTFS20L</value>
          <value code="25">BenewakeTFmini-I2C</value>
          <value code="20">BenewakeTFmini-Serial</value>
          <value code="34">Benewake_CAN</value>
          <value code="23">BlueRoboticsPing</value>
          <value code="47">DTS6012M</value>
          <value code="24">DroneCAN</value>
          <value code="31">GYUS42v2</value>
          <value code="30">HC-SR04</value>
          <value code="44">HexsoonRadar</value>
          <value code="41">JRE_Serial</value>
          <value code="26">LanbaoPSK-CM8JL65-CC5</value>
          <value code="12">LeddarOne</value>
          <value code="29">LeddarVu8-Serial</value>
          <value code="21">LidarLightV3HP</value>
          <value code="3">LidarLite-I2C</value>
          <value code="15">LidarLiteV3-I2C</value>
          <value code="45">LightWare-GRF</value>
          <value code="48">LightWare-GRF-I2C</value>
          <value code="7">LightWareI2C</value>
          <value code="8">LightWareSerial</value>
          <value code="36">Lua_Scripting</value>
          <value code="10">MAVLink</value>
          <value code="32">MSP</value>
          <value code="2">MaxbotixI2C</value>
          <value code="13">MaxbotixSerial</value>
          <value code="17">NMEA</value>
          <value code="39">NRA24_CAN</value>
          <value code="37">NoopLoop_TOFSense</value>
          <value code="40">NoopLoop_TOFSenseF_I2C</value>
          <value code="38">NoopLoop_TOFSense_CAN</value>
          <value code="5">PWM</value>
          <value code="22">PWM</value>
          <value code="43">RDS02UF</value>
          <value code="100">SITL</value>
          <value code="14">TeraRangerI2C</value>
          <value code="35">TeraRangerSerial</value>
          <value code="33">USD1_CAN</value>
          <value code="11">USD1_Serial</value>
          <value code="16">VL53L0X or VL53L1X</value>
          <value code="28">VL53L1X-ShortRange</value>
          <value code="18">WASP-LRF</value>
        </values>
      </param>
      <param humanName="Rangefinder pin" name="RNGFND5_PIN" documentation="Analog or PWM input pin that rangefinder is connected to. Analog RSSI or Airspeed ports can be used for Analog inputs (some autopilots provide others also), Non-IOMCU Servo/MotorOutputs can be used for PWM input when configured as &quot;GPIOs&quot;. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot; for analog pin or &quot;GPIOs&quot;, if PWM input type, to determine pin number." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="11">Pixracer</value>
          <value code="13">Pixhawk ADC4</value>
          <value code="14">Pixhawk ADC3</value>
          <value code="15">Pixhawk ADC6/Pixhawk2 ADC</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="103">Pixhawk SBUS</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Rangefinder scaling" name="RNGFND5_SCALING" documentation="Scaling factor between rangefinder reading and distance. For the linear and inverted functions this is in meters per volt. For the hyperbolic function the units are meterVolts. For Maxbotix serial sonar this is unit conversion to meters." user="Standard">
        <field name="Units">m/V</field>
        <field name="UnitText">meters per volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="rangefinder offset" name="RNGFND5_OFFSET" documentation="Offset in volts for zero distance for analog rangefinders. Offset added to distance in centimeters for PWM lidars" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Rangefinder function" name="RNGFND5_FUNCTION" documentation="Control over what function is used to calculate distance. For a linear function, the distance is (voltage-offset)*scaling. For a inverted function the distance is (offset-voltage)*scaling. For a hyperbolic function the distance is scaling/(voltage-offset). The functions return the distance in meters." user="Standard">
        <values>
          <value code="0">Linear</value>
          <value code="1">Inverted</value>
          <value code="2">Hyperbolic</value>
        </values>
      </param>
      <param humanName="Rangefinder minimum distance" name="RNGFND5_MIN" documentation="Minimum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder maximum distance" name="RNGFND5_MAX" documentation="Maximum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder stop pin" name="RNGFND5_STOP_PIN" documentation="Digital pin that enables/disables rangefinder measurement for the pwm rangefinder. A value of -1 means no pin. If this is set, then the pin is set to 1 to enable the rangefinder and set to 0 to disable it. This is used to enable powersaving when out of range. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="111">PX4 FMU Relay1</value>
          <value code="112">PX4 FMU Relay2</value>
          <value code="113">PX4IO Relay1</value>
          <value code="114">PX4IO Relay2</value>
          <value code="115">PX4IO ACC1</value>
          <value code="116">PX4IO ACC2</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Ratiometric" name="RNGFND5_RMETRIC" documentation="This parameter sets whether an analog rangefinder is ratiometric. Most analog rangefinders are ratiometric, meaning that their output voltage is influenced by the supply voltage. Some analog rangefinders (such as the SF/02) have their own internal voltage regulators so they are not ratiometric." user="Standard">
        <values>
          <value code="0">No</value>
          <value code="1">Yes</value>
        </values>
      </param>
      <param humanName="Powersave range" name="RNGFND5_PWRRNG" documentation="This parameter sets the estimated terrain distance in meters above which the sensor will be put into a power saving mode (if available). A value of zero means power saving is not enabled" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
      </param>
      <param humanName="Distance from the range finder to the ground" name="RNGFND5_GNDCLR" documentation="This parameter sets the expected range measurement that the range finder should return when the vehicle is on the ground." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 1.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Bus address of sensor" name="RNGFND5_ADDR" documentation="This sets the bus address of the sensor, where applicable. Used for the I2C and DroneCAN sensors to allow for multiple sensors on different addresses." user="Standard">
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="X position offset" name="RNGFND5_POS_X" documentation="X position of the rangefinder in body frame. Positive X is forward of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Y position offset" name="RNGFND5_POS_Y" documentation="Y position of the rangefinder in body frame. Positive Y is to the right of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Z position offset" name="RNGFND5_POS_Z" documentation="Z position of the rangefinder in body frame. Positive Z is down from the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder orientation" name="RNGFND5_ORIENT" documentation="Orientation of rangefinder" user="Advanced">
        <values>
          <value code="0">Forward</value>
          <value code="1">Forward-Right</value>
          <value code="2">Right</value>
          <value code="3">Back-Right</value>
          <value code="4">Back</value>
          <value code="5">Back-Left</value>
          <value code="6">Left</value>
          <value code="7">Forward-Left</value>
          <value code="24">Up</value>
          <value code="25">Down</value>
        </values>
      </param>
      <param humanName="Moving Average Range" name="RNGFND5_WSP_MAVG" documentation="Sets the number of historic range results to use for calculating the current range result. When MAVG is greater than 1, the current range result will be the current measured value averaged with the N-1 previous results" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Moving Median Filter" name="RNGFND5_WSP_MEDF" documentation="Sets the window size for the real-time median filter. When MEDF is greater than 0 the median filter is active" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Frequency" name="RNGFND5_WSP_FRQ" documentation="Sets the repetition frequency of the ranging operation in Hertz. Upon entering the desired frequency the system will calculate the nearest frequency that it can handle according to the resolution of internal timers." user="Advanced">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Multi-pulse averages" name="RNGFND5_WSP_AVG" documentation="Sets the number of pulses to be used in multi-pulse averaging mode. In this mode, a sequence of rapid fire ranges are taken and then averaged to improve the accuracy of the measurement" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Sensitivity threshold" name="RNGFND5_WSP_THR" documentation="Sets the system sensitivity. Larger values of THR represent higher sensitivity. The system may limit the maximum value of THR to prevent excessive false alarm rates based on settings made at the factory. Set to -1 for automatic threshold adjustments" user="Advanced">
        <field name="Range">-1 255</field>
      </param>
      <param humanName="Baud rate" name="RNGFND5_WSP_BAUD" documentation="Desired baud rate" user="Advanced">
        <values>
          <value code="0">Low Speed</value>
          <value code="1">High Speed</value>
        </values>
      </param>
      <param humanName="RangeFinder CAN receive ID" name="RNGFND5_RECV_ID" documentation="The receive ID of the CAN frames. A value of zero means all IDs are accepted." user="Advanced">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="RangeFinder Minimum signal strength" name="RNGFND5_SNR_MIN" documentation="RangeFinder Minimum signal strength (SNR) to accept distance" user="Advanced">
        <field name="Range">0 65535</field>
      </param>
    </parameters>
    <parameters name="RNGFND5_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND5_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND5_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND5_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND5_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND5_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND5_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND5_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND6_">
      <param humanName="Rangefinder type" name="RNGFND6_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="42">Ainstein_LR_D1</value>
          <value code="1">Analog</value>
          <value code="6">BBB-PRU</value>
          <value code="9">Bebop</value>
          <value code="19">BenewakeTF02</value>
          <value code="27">BenewakeTF03</value>
          <value code="46">BenewakeTFS20L</value>
          <value code="25">BenewakeTFmini-I2C</value>
          <value code="20">BenewakeTFmini-Serial</value>
          <value code="34">Benewake_CAN</value>
          <value code="23">BlueRoboticsPing</value>
          <value code="47">DTS6012M</value>
          <value code="24">DroneCAN</value>
          <value code="31">GYUS42v2</value>
          <value code="30">HC-SR04</value>
          <value code="44">HexsoonRadar</value>
          <value code="41">JRE_Serial</value>
          <value code="26">LanbaoPSK-CM8JL65-CC5</value>
          <value code="12">LeddarOne</value>
          <value code="29">LeddarVu8-Serial</value>
          <value code="21">LidarLightV3HP</value>
          <value code="3">LidarLite-I2C</value>
          <value code="15">LidarLiteV3-I2C</value>
          <value code="45">LightWare-GRF</value>
          <value code="48">LightWare-GRF-I2C</value>
          <value code="7">LightWareI2C</value>
          <value code="8">LightWareSerial</value>
          <value code="36">Lua_Scripting</value>
          <value code="10">MAVLink</value>
          <value code="32">MSP</value>
          <value code="2">MaxbotixI2C</value>
          <value code="13">MaxbotixSerial</value>
          <value code="17">NMEA</value>
          <value code="39">NRA24_CAN</value>
          <value code="37">NoopLoop_TOFSense</value>
          <value code="40">NoopLoop_TOFSenseF_I2C</value>
          <value code="38">NoopLoop_TOFSense_CAN</value>
          <value code="5">PWM</value>
          <value code="22">PWM</value>
          <value code="43">RDS02UF</value>
          <value code="100">SITL</value>
          <value code="14">TeraRangerI2C</value>
          <value code="35">TeraRangerSerial</value>
          <value code="33">USD1_CAN</value>
          <value code="11">USD1_Serial</value>
          <value code="16">VL53L0X or VL53L1X</value>
          <value code="28">VL53L1X-ShortRange</value>
          <value code="18">WASP-LRF</value>
        </values>
      </param>
      <param humanName="Rangefinder pin" name="RNGFND6_PIN" documentation="Analog or PWM input pin that rangefinder is connected to. Analog RSSI or Airspeed ports can be used for Analog inputs (some autopilots provide others also), Non-IOMCU Servo/MotorOutputs can be used for PWM input when configured as &quot;GPIOs&quot;. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot; for analog pin or &quot;GPIOs&quot;, if PWM input type, to determine pin number." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="11">Pixracer</value>
          <value code="13">Pixhawk ADC4</value>
          <value code="14">Pixhawk ADC3</value>
          <value code="15">Pixhawk ADC6/Pixhawk2 ADC</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="103">Pixhawk SBUS</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Rangefinder scaling" name="RNGFND6_SCALING" documentation="Scaling factor between rangefinder reading and distance. For the linear and inverted functions this is in meters per volt. For the hyperbolic function the units are meterVolts. For Maxbotix serial sonar this is unit conversion to meters." user="Standard">
        <field name="Units">m/V</field>
        <field name="UnitText">meters per volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="rangefinder offset" name="RNGFND6_OFFSET" documentation="Offset in volts for zero distance for analog rangefinders. Offset added to distance in centimeters for PWM lidars" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Rangefinder function" name="RNGFND6_FUNCTION" documentation="Control over what function is used to calculate distance. For a linear function, the distance is (voltage-offset)*scaling. For a inverted function the distance is (offset-voltage)*scaling. For a hyperbolic function the distance is scaling/(voltage-offset). The functions return the distance in meters." user="Standard">
        <values>
          <value code="0">Linear</value>
          <value code="1">Inverted</value>
          <value code="2">Hyperbolic</value>
        </values>
      </param>
      <param humanName="Rangefinder minimum distance" name="RNGFND6_MIN" documentation="Minimum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder maximum distance" name="RNGFND6_MAX" documentation="Maximum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder stop pin" name="RNGFND6_STOP_PIN" documentation="Digital pin that enables/disables rangefinder measurement for the pwm rangefinder. A value of -1 means no pin. If this is set, then the pin is set to 1 to enable the rangefinder and set to 0 to disable it. This is used to enable powersaving when out of range. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="111">PX4 FMU Relay1</value>
          <value code="112">PX4 FMU Relay2</value>
          <value code="113">PX4IO Relay1</value>
          <value code="114">PX4IO Relay2</value>
          <value code="115">PX4IO ACC1</value>
          <value code="116">PX4IO ACC2</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Ratiometric" name="RNGFND6_RMETRIC" documentation="This parameter sets whether an analog rangefinder is ratiometric. Most analog rangefinders are ratiometric, meaning that their output voltage is influenced by the supply voltage. Some analog rangefinders (such as the SF/02) have their own internal voltage regulators so they are not ratiometric." user="Standard">
        <values>
          <value code="0">No</value>
          <value code="1">Yes</value>
        </values>
      </param>
      <param humanName="Powersave range" name="RNGFND6_PWRRNG" documentation="This parameter sets the estimated terrain distance in meters above which the sensor will be put into a power saving mode (if available). A value of zero means power saving is not enabled" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
      </param>
      <param humanName="Distance from the range finder to the ground" name="RNGFND6_GNDCLR" documentation="This parameter sets the expected range measurement that the range finder should return when the vehicle is on the ground." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 1.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Bus address of sensor" name="RNGFND6_ADDR" documentation="This sets the bus address of the sensor, where applicable. Used for the I2C and DroneCAN sensors to allow for multiple sensors on different addresses." user="Standard">
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="X position offset" name="RNGFND6_POS_X" documentation="X position of the rangefinder in body frame. Positive X is forward of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Y position offset" name="RNGFND6_POS_Y" documentation="Y position of the rangefinder in body frame. Positive Y is to the right of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Z position offset" name="RNGFND6_POS_Z" documentation="Z position of the rangefinder in body frame. Positive Z is down from the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder orientation" name="RNGFND6_ORIENT" documentation="Orientation of rangefinder" user="Advanced">
        <values>
          <value code="0">Forward</value>
          <value code="1">Forward-Right</value>
          <value code="2">Right</value>
          <value code="3">Back-Right</value>
          <value code="4">Back</value>
          <value code="5">Back-Left</value>
          <value code="6">Left</value>
          <value code="7">Forward-Left</value>
          <value code="24">Up</value>
          <value code="25">Down</value>
        </values>
      </param>
      <param humanName="Moving Average Range" name="RNGFND6_WSP_MAVG" documentation="Sets the number of historic range results to use for calculating the current range result. When MAVG is greater than 1, the current range result will be the current measured value averaged with the N-1 previous results" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Moving Median Filter" name="RNGFND6_WSP_MEDF" documentation="Sets the window size for the real-time median filter. When MEDF is greater than 0 the median filter is active" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Frequency" name="RNGFND6_WSP_FRQ" documentation="Sets the repetition frequency of the ranging operation in Hertz. Upon entering the desired frequency the system will calculate the nearest frequency that it can handle according to the resolution of internal timers." user="Advanced">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Multi-pulse averages" name="RNGFND6_WSP_AVG" documentation="Sets the number of pulses to be used in multi-pulse averaging mode. In this mode, a sequence of rapid fire ranges are taken and then averaged to improve the accuracy of the measurement" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Sensitivity threshold" name="RNGFND6_WSP_THR" documentation="Sets the system sensitivity. Larger values of THR represent higher sensitivity. The system may limit the maximum value of THR to prevent excessive false alarm rates based on settings made at the factory. Set to -1 for automatic threshold adjustments" user="Advanced">
        <field name="Range">-1 255</field>
      </param>
      <param humanName="Baud rate" name="RNGFND6_WSP_BAUD" documentation="Desired baud rate" user="Advanced">
        <values>
          <value code="0">Low Speed</value>
          <value code="1">High Speed</value>
        </values>
      </param>
      <param humanName="RangeFinder CAN receive ID" name="RNGFND6_RECV_ID" documentation="The receive ID of the CAN frames. A value of zero means all IDs are accepted." user="Advanced">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="RangeFinder Minimum signal strength" name="RNGFND6_SNR_MIN" documentation="RangeFinder Minimum signal strength (SNR) to accept distance" user="Advanced">
        <field name="Range">0 65535</field>
      </param>
    </parameters>
    <parameters name="RNGFND6_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND6_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND6_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND6_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND6_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND6_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND6_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND6_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND7_">
      <param humanName="Rangefinder type" name="RNGFND7_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="42">Ainstein_LR_D1</value>
          <value code="1">Analog</value>
          <value code="6">BBB-PRU</value>
          <value code="9">Bebop</value>
          <value code="19">BenewakeTF02</value>
          <value code="27">BenewakeTF03</value>
          <value code="46">BenewakeTFS20L</value>
          <value code="25">BenewakeTFmini-I2C</value>
          <value code="20">BenewakeTFmini-Serial</value>
          <value code="34">Benewake_CAN</value>
          <value code="23">BlueRoboticsPing</value>
          <value code="47">DTS6012M</value>
          <value code="24">DroneCAN</value>
          <value code="31">GYUS42v2</value>
          <value code="30">HC-SR04</value>
          <value code="44">HexsoonRadar</value>
          <value code="41">JRE_Serial</value>
          <value code="26">LanbaoPSK-CM8JL65-CC5</value>
          <value code="12">LeddarOne</value>
          <value code="29">LeddarVu8-Serial</value>
          <value code="21">LidarLightV3HP</value>
          <value code="3">LidarLite-I2C</value>
          <value code="15">LidarLiteV3-I2C</value>
          <value code="45">LightWare-GRF</value>
          <value code="48">LightWare-GRF-I2C</value>
          <value code="7">LightWareI2C</value>
          <value code="8">LightWareSerial</value>
          <value code="36">Lua_Scripting</value>
          <value code="10">MAVLink</value>
          <value code="32">MSP</value>
          <value code="2">MaxbotixI2C</value>
          <value code="13">MaxbotixSerial</value>
          <value code="17">NMEA</value>
          <value code="39">NRA24_CAN</value>
          <value code="37">NoopLoop_TOFSense</value>
          <value code="40">NoopLoop_TOFSenseF_I2C</value>
          <value code="38">NoopLoop_TOFSense_CAN</value>
          <value code="5">PWM</value>
          <value code="22">PWM</value>
          <value code="43">RDS02UF</value>
          <value code="100">SITL</value>
          <value code="14">TeraRangerI2C</value>
          <value code="35">TeraRangerSerial</value>
          <value code="33">USD1_CAN</value>
          <value code="11">USD1_Serial</value>
          <value code="16">VL53L0X or VL53L1X</value>
          <value code="28">VL53L1X-ShortRange</value>
          <value code="18">WASP-LRF</value>
        </values>
      </param>
      <param humanName="Rangefinder pin" name="RNGFND7_PIN" documentation="Analog or PWM input pin that rangefinder is connected to. Analog RSSI or Airspeed ports can be used for Analog inputs (some autopilots provide others also), Non-IOMCU Servo/MotorOutputs can be used for PWM input when configured as &quot;GPIOs&quot;. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot; for analog pin or &quot;GPIOs&quot;, if PWM input type, to determine pin number." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="11">Pixracer</value>
          <value code="13">Pixhawk ADC4</value>
          <value code="14">Pixhawk ADC3</value>
          <value code="15">Pixhawk ADC6/Pixhawk2 ADC</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="103">Pixhawk SBUS</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Rangefinder scaling" name="RNGFND7_SCALING" documentation="Scaling factor between rangefinder reading and distance. For the linear and inverted functions this is in meters per volt. For the hyperbolic function the units are meterVolts. For Maxbotix serial sonar this is unit conversion to meters." user="Standard">
        <field name="Units">m/V</field>
        <field name="UnitText">meters per volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="rangefinder offset" name="RNGFND7_OFFSET" documentation="Offset in volts for zero distance for analog rangefinders. Offset added to distance in centimeters for PWM lidars" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Rangefinder function" name="RNGFND7_FUNCTION" documentation="Control over what function is used to calculate distance. For a linear function, the distance is (voltage-offset)*scaling. For a inverted function the distance is (offset-voltage)*scaling. For a hyperbolic function the distance is scaling/(voltage-offset). The functions return the distance in meters." user="Standard">
        <values>
          <value code="0">Linear</value>
          <value code="1">Inverted</value>
          <value code="2">Hyperbolic</value>
        </values>
      </param>
      <param humanName="Rangefinder minimum distance" name="RNGFND7_MIN" documentation="Minimum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder maximum distance" name="RNGFND7_MAX" documentation="Maximum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder stop pin" name="RNGFND7_STOP_PIN" documentation="Digital pin that enables/disables rangefinder measurement for the pwm rangefinder. A value of -1 means no pin. If this is set, then the pin is set to 1 to enable the rangefinder and set to 0 to disable it. This is used to enable powersaving when out of range. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="111">PX4 FMU Relay1</value>
          <value code="112">PX4 FMU Relay2</value>
          <value code="113">PX4IO Relay1</value>
          <value code="114">PX4IO Relay2</value>
          <value code="115">PX4IO ACC1</value>
          <value code="116">PX4IO ACC2</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Ratiometric" name="RNGFND7_RMETRIC" documentation="This parameter sets whether an analog rangefinder is ratiometric. Most analog rangefinders are ratiometric, meaning that their output voltage is influenced by the supply voltage. Some analog rangefinders (such as the SF/02) have their own internal voltage regulators so they are not ratiometric." user="Standard">
        <values>
          <value code="0">No</value>
          <value code="1">Yes</value>
        </values>
      </param>
      <param humanName="Powersave range" name="RNGFND7_PWRRNG" documentation="This parameter sets the estimated terrain distance in meters above which the sensor will be put into a power saving mode (if available). A value of zero means power saving is not enabled" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
      </param>
      <param humanName="Distance from the range finder to the ground" name="RNGFND7_GNDCLR" documentation="This parameter sets the expected range measurement that the range finder should return when the vehicle is on the ground." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 1.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Bus address of sensor" name="RNGFND7_ADDR" documentation="This sets the bus address of the sensor, where applicable. Used for the I2C and DroneCAN sensors to allow for multiple sensors on different addresses." user="Standard">
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="X position offset" name="RNGFND7_POS_X" documentation="X position of the rangefinder in body frame. Positive X is forward of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Y position offset" name="RNGFND7_POS_Y" documentation="Y position of the rangefinder in body frame. Positive Y is to the right of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Z position offset" name="RNGFND7_POS_Z" documentation="Z position of the rangefinder in body frame. Positive Z is down from the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder orientation" name="RNGFND7_ORIENT" documentation="Orientation of rangefinder" user="Advanced">
        <values>
          <value code="0">Forward</value>
          <value code="1">Forward-Right</value>
          <value code="2">Right</value>
          <value code="3">Back-Right</value>
          <value code="4">Back</value>
          <value code="5">Back-Left</value>
          <value code="6">Left</value>
          <value code="7">Forward-Left</value>
          <value code="24">Up</value>
          <value code="25">Down</value>
        </values>
      </param>
      <param humanName="Moving Average Range" name="RNGFND7_WSP_MAVG" documentation="Sets the number of historic range results to use for calculating the current range result. When MAVG is greater than 1, the current range result will be the current measured value averaged with the N-1 previous results" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Moving Median Filter" name="RNGFND7_WSP_MEDF" documentation="Sets the window size for the real-time median filter. When MEDF is greater than 0 the median filter is active" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Frequency" name="RNGFND7_WSP_FRQ" documentation="Sets the repetition frequency of the ranging operation in Hertz. Upon entering the desired frequency the system will calculate the nearest frequency that it can handle according to the resolution of internal timers." user="Advanced">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Multi-pulse averages" name="RNGFND7_WSP_AVG" documentation="Sets the number of pulses to be used in multi-pulse averaging mode. In this mode, a sequence of rapid fire ranges are taken and then averaged to improve the accuracy of the measurement" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Sensitivity threshold" name="RNGFND7_WSP_THR" documentation="Sets the system sensitivity. Larger values of THR represent higher sensitivity. The system may limit the maximum value of THR to prevent excessive false alarm rates based on settings made at the factory. Set to -1 for automatic threshold adjustments" user="Advanced">
        <field name="Range">-1 255</field>
      </param>
      <param humanName="Baud rate" name="RNGFND7_WSP_BAUD" documentation="Desired baud rate" user="Advanced">
        <values>
          <value code="0">Low Speed</value>
          <value code="1">High Speed</value>
        </values>
      </param>
      <param humanName="RangeFinder CAN receive ID" name="RNGFND7_RECV_ID" documentation="The receive ID of the CAN frames. A value of zero means all IDs are accepted." user="Advanced">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="RangeFinder Minimum signal strength" name="RNGFND7_SNR_MIN" documentation="RangeFinder Minimum signal strength (SNR) to accept distance" user="Advanced">
        <field name="Range">0 65535</field>
      </param>
    </parameters>
    <parameters name="RNGFND7_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND7_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND7_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND7_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND7_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND7_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND7_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND7_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND8_">
      <param humanName="Rangefinder type" name="RNGFND8_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="42">Ainstein_LR_D1</value>
          <value code="1">Analog</value>
          <value code="6">BBB-PRU</value>
          <value code="9">Bebop</value>
          <value code="19">BenewakeTF02</value>
          <value code="27">BenewakeTF03</value>
          <value code="46">BenewakeTFS20L</value>
          <value code="25">BenewakeTFmini-I2C</value>
          <value code="20">BenewakeTFmini-Serial</value>
          <value code="34">Benewake_CAN</value>
          <value code="23">BlueRoboticsPing</value>
          <value code="47">DTS6012M</value>
          <value code="24">DroneCAN</value>
          <value code="31">GYUS42v2</value>
          <value code="30">HC-SR04</value>
          <value code="44">HexsoonRadar</value>
          <value code="41">JRE_Serial</value>
          <value code="26">LanbaoPSK-CM8JL65-CC5</value>
          <value code="12">LeddarOne</value>
          <value code="29">LeddarVu8-Serial</value>
          <value code="21">LidarLightV3HP</value>
          <value code="3">LidarLite-I2C</value>
          <value code="15">LidarLiteV3-I2C</value>
          <value code="45">LightWare-GRF</value>
          <value code="48">LightWare-GRF-I2C</value>
          <value code="7">LightWareI2C</value>
          <value code="8">LightWareSerial</value>
          <value code="36">Lua_Scripting</value>
          <value code="10">MAVLink</value>
          <value code="32">MSP</value>
          <value code="2">MaxbotixI2C</value>
          <value code="13">MaxbotixSerial</value>
          <value code="17">NMEA</value>
          <value code="39">NRA24_CAN</value>
          <value code="37">NoopLoop_TOFSense</value>
          <value code="40">NoopLoop_TOFSenseF_I2C</value>
          <value code="38">NoopLoop_TOFSense_CAN</value>
          <value code="5">PWM</value>
          <value code="22">PWM</value>
          <value code="43">RDS02UF</value>
          <value code="100">SITL</value>
          <value code="14">TeraRangerI2C</value>
          <value code="35">TeraRangerSerial</value>
          <value code="33">USD1_CAN</value>
          <value code="11">USD1_Serial</value>
          <value code="16">VL53L0X or VL53L1X</value>
          <value code="28">VL53L1X-ShortRange</value>
          <value code="18">WASP-LRF</value>
        </values>
      </param>
      <param humanName="Rangefinder pin" name="RNGFND8_PIN" documentation="Analog or PWM input pin that rangefinder is connected to. Analog RSSI or Airspeed ports can be used for Analog inputs (some autopilots provide others also), Non-IOMCU Servo/MotorOutputs can be used for PWM input when configured as &quot;GPIOs&quot;. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot; for analog pin or &quot;GPIOs&quot;, if PWM input type, to determine pin number." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="11">Pixracer</value>
          <value code="13">Pixhawk ADC4</value>
          <value code="14">Pixhawk ADC3</value>
          <value code="15">Pixhawk ADC6/Pixhawk2 ADC</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="103">Pixhawk SBUS</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Rangefinder scaling" name="RNGFND8_SCALING" documentation="Scaling factor between rangefinder reading and distance. For the linear and inverted functions this is in meters per volt. For the hyperbolic function the units are meterVolts. For Maxbotix serial sonar this is unit conversion to meters." user="Standard">
        <field name="Units">m/V</field>
        <field name="UnitText">meters per volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="rangefinder offset" name="RNGFND8_OFFSET" documentation="Offset in volts for zero distance for analog rangefinders. Offset added to distance in centimeters for PWM lidars" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Rangefinder function" name="RNGFND8_FUNCTION" documentation="Control over what function is used to calculate distance. For a linear function, the distance is (voltage-offset)*scaling. For a inverted function the distance is (offset-voltage)*scaling. For a hyperbolic function the distance is scaling/(voltage-offset). The functions return the distance in meters." user="Standard">
        <values>
          <value code="0">Linear</value>
          <value code="1">Inverted</value>
          <value code="2">Hyperbolic</value>
        </values>
      </param>
      <param humanName="Rangefinder minimum distance" name="RNGFND8_MIN" documentation="Minimum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder maximum distance" name="RNGFND8_MAX" documentation="Maximum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder stop pin" name="RNGFND8_STOP_PIN" documentation="Digital pin that enables/disables rangefinder measurement for the pwm rangefinder. A value of -1 means no pin. If this is set, then the pin is set to 1 to enable the rangefinder and set to 0 to disable it. This is used to enable powersaving when out of range. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="111">PX4 FMU Relay1</value>
          <value code="112">PX4 FMU Relay2</value>
          <value code="113">PX4IO Relay1</value>
          <value code="114">PX4IO Relay2</value>
          <value code="115">PX4IO ACC1</value>
          <value code="116">PX4IO ACC2</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Ratiometric" name="RNGFND8_RMETRIC" documentation="This parameter sets whether an analog rangefinder is ratiometric. Most analog rangefinders are ratiometric, meaning that their output voltage is influenced by the supply voltage. Some analog rangefinders (such as the SF/02) have their own internal voltage regulators so they are not ratiometric." user="Standard">
        <values>
          <value code="0">No</value>
          <value code="1">Yes</value>
        </values>
      </param>
      <param humanName="Powersave range" name="RNGFND8_PWRRNG" documentation="This parameter sets the estimated terrain distance in meters above which the sensor will be put into a power saving mode (if available). A value of zero means power saving is not enabled" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
      </param>
      <param humanName="Distance from the range finder to the ground" name="RNGFND8_GNDCLR" documentation="This parameter sets the expected range measurement that the range finder should return when the vehicle is on the ground." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 1.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Bus address of sensor" name="RNGFND8_ADDR" documentation="This sets the bus address of the sensor, where applicable. Used for the I2C and DroneCAN sensors to allow for multiple sensors on different addresses." user="Standard">
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="X position offset" name="RNGFND8_POS_X" documentation="X position of the rangefinder in body frame. Positive X is forward of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Y position offset" name="RNGFND8_POS_Y" documentation="Y position of the rangefinder in body frame. Positive Y is to the right of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Z position offset" name="RNGFND8_POS_Z" documentation="Z position of the rangefinder in body frame. Positive Z is down from the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder orientation" name="RNGFND8_ORIENT" documentation="Orientation of rangefinder" user="Advanced">
        <values>
          <value code="0">Forward</value>
          <value code="1">Forward-Right</value>
          <value code="2">Right</value>
          <value code="3">Back-Right</value>
          <value code="4">Back</value>
          <value code="5">Back-Left</value>
          <value code="6">Left</value>
          <value code="7">Forward-Left</value>
          <value code="24">Up</value>
          <value code="25">Down</value>
        </values>
      </param>
      <param humanName="Moving Average Range" name="RNGFND8_WSP_MAVG" documentation="Sets the number of historic range results to use for calculating the current range result. When MAVG is greater than 1, the current range result will be the current measured value averaged with the N-1 previous results" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Moving Median Filter" name="RNGFND8_WSP_MEDF" documentation="Sets the window size for the real-time median filter. When MEDF is greater than 0 the median filter is active" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Frequency" name="RNGFND8_WSP_FRQ" documentation="Sets the repetition frequency of the ranging operation in Hertz. Upon entering the desired frequency the system will calculate the nearest frequency that it can handle according to the resolution of internal timers." user="Advanced">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Multi-pulse averages" name="RNGFND8_WSP_AVG" documentation="Sets the number of pulses to be used in multi-pulse averaging mode. In this mode, a sequence of rapid fire ranges are taken and then averaged to improve the accuracy of the measurement" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Sensitivity threshold" name="RNGFND8_WSP_THR" documentation="Sets the system sensitivity. Larger values of THR represent higher sensitivity. The system may limit the maximum value of THR to prevent excessive false alarm rates based on settings made at the factory. Set to -1 for automatic threshold adjustments" user="Advanced">
        <field name="Range">-1 255</field>
      </param>
      <param humanName="Baud rate" name="RNGFND8_WSP_BAUD" documentation="Desired baud rate" user="Advanced">
        <values>
          <value code="0">Low Speed</value>
          <value code="1">High Speed</value>
        </values>
      </param>
      <param humanName="RangeFinder CAN receive ID" name="RNGFND8_RECV_ID" documentation="The receive ID of the CAN frames. A value of zero means all IDs are accepted." user="Advanced">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="RangeFinder Minimum signal strength" name="RNGFND8_SNR_MIN" documentation="RangeFinder Minimum signal strength (SNR) to accept distance" user="Advanced">
        <field name="Range">0 65535</field>
      </param>
    </parameters>
    <parameters name="RNGFND8_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND8_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND8_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND8_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND8_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND8_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND8_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND8_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND9_">
      <param humanName="Rangefinder type" name="RNGFND9_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="42">Ainstein_LR_D1</value>
          <value code="1">Analog</value>
          <value code="6">BBB-PRU</value>
          <value code="9">Bebop</value>
          <value code="19">BenewakeTF02</value>
          <value code="27">BenewakeTF03</value>
          <value code="46">BenewakeTFS20L</value>
          <value code="25">BenewakeTFmini-I2C</value>
          <value code="20">BenewakeTFmini-Serial</value>
          <value code="34">Benewake_CAN</value>
          <value code="23">BlueRoboticsPing</value>
          <value code="47">DTS6012M</value>
          <value code="24">DroneCAN</value>
          <value code="31">GYUS42v2</value>
          <value code="30">HC-SR04</value>
          <value code="44">HexsoonRadar</value>
          <value code="41">JRE_Serial</value>
          <value code="26">LanbaoPSK-CM8JL65-CC5</value>
          <value code="12">LeddarOne</value>
          <value code="29">LeddarVu8-Serial</value>
          <value code="21">LidarLightV3HP</value>
          <value code="3">LidarLite-I2C</value>
          <value code="15">LidarLiteV3-I2C</value>
          <value code="45">LightWare-GRF</value>
          <value code="48">LightWare-GRF-I2C</value>
          <value code="7">LightWareI2C</value>
          <value code="8">LightWareSerial</value>
          <value code="36">Lua_Scripting</value>
          <value code="10">MAVLink</value>
          <value code="32">MSP</value>
          <value code="2">MaxbotixI2C</value>
          <value code="13">MaxbotixSerial</value>
          <value code="17">NMEA</value>
          <value code="39">NRA24_CAN</value>
          <value code="37">NoopLoop_TOFSense</value>
          <value code="40">NoopLoop_TOFSenseF_I2C</value>
          <value code="38">NoopLoop_TOFSense_CAN</value>
          <value code="5">PWM</value>
          <value code="22">PWM</value>
          <value code="43">RDS02UF</value>
          <value code="100">SITL</value>
          <value code="14">TeraRangerI2C</value>
          <value code="35">TeraRangerSerial</value>
          <value code="33">USD1_CAN</value>
          <value code="11">USD1_Serial</value>
          <value code="16">VL53L0X or VL53L1X</value>
          <value code="28">VL53L1X-ShortRange</value>
          <value code="18">WASP-LRF</value>
        </values>
      </param>
      <param humanName="Rangefinder pin" name="RNGFND9_PIN" documentation="Analog or PWM input pin that rangefinder is connected to. Analog RSSI or Airspeed ports can be used for Analog inputs (some autopilots provide others also), Non-IOMCU Servo/MotorOutputs can be used for PWM input when configured as &quot;GPIOs&quot;. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot; for analog pin or &quot;GPIOs&quot;, if PWM input type, to determine pin number." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="11">Pixracer</value>
          <value code="13">Pixhawk ADC4</value>
          <value code="14">Pixhawk ADC3</value>
          <value code="15">Pixhawk ADC6/Pixhawk2 ADC</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="103">Pixhawk SBUS</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Rangefinder scaling" name="RNGFND9_SCALING" documentation="Scaling factor between rangefinder reading and distance. For the linear and inverted functions this is in meters per volt. For the hyperbolic function the units are meterVolts. For Maxbotix serial sonar this is unit conversion to meters." user="Standard">
        <field name="Units">m/V</field>
        <field name="UnitText">meters per volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="rangefinder offset" name="RNGFND9_OFFSET" documentation="Offset in volts for zero distance for analog rangefinders. Offset added to distance in centimeters for PWM lidars" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Rangefinder function" name="RNGFND9_FUNCTION" documentation="Control over what function is used to calculate distance. For a linear function, the distance is (voltage-offset)*scaling. For a inverted function the distance is (offset-voltage)*scaling. For a hyperbolic function the distance is scaling/(voltage-offset). The functions return the distance in meters." user="Standard">
        <values>
          <value code="0">Linear</value>
          <value code="1">Inverted</value>
          <value code="2">Hyperbolic</value>
        </values>
      </param>
      <param humanName="Rangefinder minimum distance" name="RNGFND9_MIN" documentation="Minimum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder maximum distance" name="RNGFND9_MAX" documentation="Maximum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder stop pin" name="RNGFND9_STOP_PIN" documentation="Digital pin that enables/disables rangefinder measurement for the pwm rangefinder. A value of -1 means no pin. If this is set, then the pin is set to 1 to enable the rangefinder and set to 0 to disable it. This is used to enable powersaving when out of range. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="111">PX4 FMU Relay1</value>
          <value code="112">PX4 FMU Relay2</value>
          <value code="113">PX4IO Relay1</value>
          <value code="114">PX4IO Relay2</value>
          <value code="115">PX4IO ACC1</value>
          <value code="116">PX4IO ACC2</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Ratiometric" name="RNGFND9_RMETRIC" documentation="This parameter sets whether an analog rangefinder is ratiometric. Most analog rangefinders are ratiometric, meaning that their output voltage is influenced by the supply voltage. Some analog rangefinders (such as the SF/02) have their own internal voltage regulators so they are not ratiometric." user="Standard">
        <values>
          <value code="0">No</value>
          <value code="1">Yes</value>
        </values>
      </param>
      <param humanName="Powersave range" name="RNGFND9_PWRRNG" documentation="This parameter sets the estimated terrain distance in meters above which the sensor will be put into a power saving mode (if available). A value of zero means power saving is not enabled" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
      </param>
      <param humanName="Distance from the range finder to the ground" name="RNGFND9_GNDCLR" documentation="This parameter sets the expected range measurement that the range finder should return when the vehicle is on the ground." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 1.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Bus address of sensor" name="RNGFND9_ADDR" documentation="This sets the bus address of the sensor, where applicable. Used for the I2C and DroneCAN sensors to allow for multiple sensors on different addresses." user="Standard">
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="X position offset" name="RNGFND9_POS_X" documentation="X position of the rangefinder in body frame. Positive X is forward of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Y position offset" name="RNGFND9_POS_Y" documentation="Y position of the rangefinder in body frame. Positive Y is to the right of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Z position offset" name="RNGFND9_POS_Z" documentation="Z position of the rangefinder in body frame. Positive Z is down from the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder orientation" name="RNGFND9_ORIENT" documentation="Orientation of rangefinder" user="Advanced">
        <values>
          <value code="0">Forward</value>
          <value code="1">Forward-Right</value>
          <value code="2">Right</value>
          <value code="3">Back-Right</value>
          <value code="4">Back</value>
          <value code="5">Back-Left</value>
          <value code="6">Left</value>
          <value code="7">Forward-Left</value>
          <value code="24">Up</value>
          <value code="25">Down</value>
        </values>
      </param>
      <param humanName="Moving Average Range" name="RNGFND9_WSP_MAVG" documentation="Sets the number of historic range results to use for calculating the current range result. When MAVG is greater than 1, the current range result will be the current measured value averaged with the N-1 previous results" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Moving Median Filter" name="RNGFND9_WSP_MEDF" documentation="Sets the window size for the real-time median filter. When MEDF is greater than 0 the median filter is active" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Frequency" name="RNGFND9_WSP_FRQ" documentation="Sets the repetition frequency of the ranging operation in Hertz. Upon entering the desired frequency the system will calculate the nearest frequency that it can handle according to the resolution of internal timers." user="Advanced">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Multi-pulse averages" name="RNGFND9_WSP_AVG" documentation="Sets the number of pulses to be used in multi-pulse averaging mode. In this mode, a sequence of rapid fire ranges are taken and then averaged to improve the accuracy of the measurement" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Sensitivity threshold" name="RNGFND9_WSP_THR" documentation="Sets the system sensitivity. Larger values of THR represent higher sensitivity. The system may limit the maximum value of THR to prevent excessive false alarm rates based on settings made at the factory. Set to -1 for automatic threshold adjustments" user="Advanced">
        <field name="Range">-1 255</field>
      </param>
      <param humanName="Baud rate" name="RNGFND9_WSP_BAUD" documentation="Desired baud rate" user="Advanced">
        <values>
          <value code="0">Low Speed</value>
          <value code="1">High Speed</value>
        </values>
      </param>
      <param humanName="RangeFinder CAN receive ID" name="RNGFND9_RECV_ID" documentation="The receive ID of the CAN frames. A value of zero means all IDs are accepted." user="Advanced">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="RangeFinder Minimum signal strength" name="RNGFND9_SNR_MIN" documentation="RangeFinder Minimum signal strength (SNR) to accept distance" user="Advanced">
        <field name="Range">0 65535</field>
      </param>
    </parameters>
    <parameters name="RNGFND9_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND9_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND9_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND9_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFND9_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFND9_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFND9_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFND9_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFNDA_">
      <param humanName="Rangefinder type" name="RNGFNDA_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="42">Ainstein_LR_D1</value>
          <value code="1">Analog</value>
          <value code="6">BBB-PRU</value>
          <value code="9">Bebop</value>
          <value code="19">BenewakeTF02</value>
          <value code="27">BenewakeTF03</value>
          <value code="46">BenewakeTFS20L</value>
          <value code="25">BenewakeTFmini-I2C</value>
          <value code="20">BenewakeTFmini-Serial</value>
          <value code="34">Benewake_CAN</value>
          <value code="23">BlueRoboticsPing</value>
          <value code="47">DTS6012M</value>
          <value code="24">DroneCAN</value>
          <value code="31">GYUS42v2</value>
          <value code="30">HC-SR04</value>
          <value code="44">HexsoonRadar</value>
          <value code="41">JRE_Serial</value>
          <value code="26">LanbaoPSK-CM8JL65-CC5</value>
          <value code="12">LeddarOne</value>
          <value code="29">LeddarVu8-Serial</value>
          <value code="21">LidarLightV3HP</value>
          <value code="3">LidarLite-I2C</value>
          <value code="15">LidarLiteV3-I2C</value>
          <value code="45">LightWare-GRF</value>
          <value code="48">LightWare-GRF-I2C</value>
          <value code="7">LightWareI2C</value>
          <value code="8">LightWareSerial</value>
          <value code="36">Lua_Scripting</value>
          <value code="10">MAVLink</value>
          <value code="32">MSP</value>
          <value code="2">MaxbotixI2C</value>
          <value code="13">MaxbotixSerial</value>
          <value code="17">NMEA</value>
          <value code="39">NRA24_CAN</value>
          <value code="37">NoopLoop_TOFSense</value>
          <value code="40">NoopLoop_TOFSenseF_I2C</value>
          <value code="38">NoopLoop_TOFSense_CAN</value>
          <value code="5">PWM</value>
          <value code="22">PWM</value>
          <value code="43">RDS02UF</value>
          <value code="100">SITL</value>
          <value code="14">TeraRangerI2C</value>
          <value code="35">TeraRangerSerial</value>
          <value code="33">USD1_CAN</value>
          <value code="11">USD1_Serial</value>
          <value code="16">VL53L0X or VL53L1X</value>
          <value code="28">VL53L1X-ShortRange</value>
          <value code="18">WASP-LRF</value>
        </values>
      </param>
      <param humanName="Rangefinder pin" name="RNGFNDA_PIN" documentation="Analog or PWM input pin that rangefinder is connected to. Analog RSSI or Airspeed ports can be used for Analog inputs (some autopilots provide others also), Non-IOMCU Servo/MotorOutputs can be used for PWM input when configured as &quot;GPIOs&quot;. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot; for analog pin or &quot;GPIOs&quot;, if PWM input type, to determine pin number." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="11">Pixracer</value>
          <value code="13">Pixhawk ADC4</value>
          <value code="14">Pixhawk ADC3</value>
          <value code="15">Pixhawk ADC6/Pixhawk2 ADC</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="103">Pixhawk SBUS</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Rangefinder scaling" name="RNGFNDA_SCALING" documentation="Scaling factor between rangefinder reading and distance. For the linear and inverted functions this is in meters per volt. For the hyperbolic function the units are meterVolts. For Maxbotix serial sonar this is unit conversion to meters." user="Standard">
        <field name="Units">m/V</field>
        <field name="UnitText">meters per volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="rangefinder offset" name="RNGFNDA_OFFSET" documentation="Offset in volts for zero distance for analog rangefinders. Offset added to distance in centimeters for PWM lidars" user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Rangefinder function" name="RNGFNDA_FUNCTION" documentation="Control over what function is used to calculate distance. For a linear function, the distance is (voltage-offset)*scaling. For a inverted function the distance is (offset-voltage)*scaling. For a hyperbolic function the distance is scaling/(voltage-offset). The functions return the distance in meters." user="Standard">
        <values>
          <value code="0">Linear</value>
          <value code="1">Inverted</value>
          <value code="2">Hyperbolic</value>
        </values>
      </param>
      <param humanName="Rangefinder minimum distance" name="RNGFNDA_MIN" documentation="Minimum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder maximum distance" name="RNGFNDA_MAX" documentation="Maximum distance in metres that rangefinder can reliably read" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder stop pin" name="RNGFNDA_STOP_PIN" documentation="Digital pin that enables/disables rangefinder measurement for the pwm rangefinder. A value of -1 means no pin. If this is set, then the pin is set to 1 to enable the rangefinder and set to 0 to disable it. This is used to enable powersaving when out of range. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Not Used</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="111">PX4 FMU Relay1</value>
          <value code="112">PX4 FMU Relay2</value>
          <value code="113">PX4IO Relay1</value>
          <value code="114">PX4IO Relay2</value>
          <value code="115">PX4IO ACC1</value>
          <value code="116">PX4IO ACC2</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Ratiometric" name="RNGFNDA_RMETRIC" documentation="This parameter sets whether an analog rangefinder is ratiometric. Most analog rangefinders are ratiometric, meaning that their output voltage is influenced by the supply voltage. Some analog rangefinders (such as the SF/02) have their own internal voltage regulators so they are not ratiometric." user="Standard">
        <values>
          <value code="0">No</value>
          <value code="1">Yes</value>
        </values>
      </param>
      <param humanName="Powersave range" name="RNGFNDA_PWRRNG" documentation="This parameter sets the estimated terrain distance in meters above which the sensor will be put into a power saving mode (if available). A value of zero means power saving is not enabled" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 32767</field>
      </param>
      <param humanName="Distance from the range finder to the ground" name="RNGFNDA_GNDCLR" documentation="This parameter sets the expected range measurement that the range finder should return when the vehicle is on the ground." user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 1.5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Bus address of sensor" name="RNGFNDA_ADDR" documentation="This sets the bus address of the sensor, where applicable. Used for the I2C and DroneCAN sensors to allow for multiple sensors on different addresses." user="Standard">
        <field name="Range">0 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="X position offset" name="RNGFNDA_POS_X" documentation="X position of the rangefinder in body frame. Positive X is forward of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Y position offset" name="RNGFNDA_POS_Y" documentation="Y position of the rangefinder in body frame. Positive Y is to the right of the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Z position offset" name="RNGFNDA_POS_Z" documentation="Z position of the rangefinder in body frame. Positive Z is down from the origin. Use the zero range datum point if supplied." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Rangefinder orientation" name="RNGFNDA_ORIENT" documentation="Orientation of rangefinder" user="Advanced">
        <values>
          <value code="0">Forward</value>
          <value code="1">Forward-Right</value>
          <value code="2">Right</value>
          <value code="3">Back-Right</value>
          <value code="4">Back</value>
          <value code="5">Back-Left</value>
          <value code="6">Left</value>
          <value code="7">Forward-Left</value>
          <value code="24">Up</value>
          <value code="25">Down</value>
        </values>
      </param>
      <param humanName="Moving Average Range" name="RNGFNDA_WSP_MAVG" documentation="Sets the number of historic range results to use for calculating the current range result. When MAVG is greater than 1, the current range result will be the current measured value averaged with the N-1 previous results" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Moving Median Filter" name="RNGFNDA_WSP_MEDF" documentation="Sets the window size for the real-time median filter. When MEDF is greater than 0 the median filter is active" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Frequency" name="RNGFNDA_WSP_FRQ" documentation="Sets the repetition frequency of the ranging operation in Hertz. Upon entering the desired frequency the system will calculate the nearest frequency that it can handle according to the resolution of internal timers." user="Advanced">
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Multi-pulse averages" name="RNGFNDA_WSP_AVG" documentation="Sets the number of pulses to be used in multi-pulse averaging mode. In this mode, a sequence of rapid fire ranges are taken and then averaged to improve the accuracy of the measurement" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Sensitivity threshold" name="RNGFNDA_WSP_THR" documentation="Sets the system sensitivity. Larger values of THR represent higher sensitivity. The system may limit the maximum value of THR to prevent excessive false alarm rates based on settings made at the factory. Set to -1 for automatic threshold adjustments" user="Advanced">
        <field name="Range">-1 255</field>
      </param>
      <param humanName="Baud rate" name="RNGFNDA_WSP_BAUD" documentation="Desired baud rate" user="Advanced">
        <values>
          <value code="0">Low Speed</value>
          <value code="1">High Speed</value>
        </values>
      </param>
      <param humanName="RangeFinder CAN receive ID" name="RNGFNDA_RECV_ID" documentation="The receive ID of the CAN frames. A value of zero means all IDs are accepted." user="Advanced">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="RangeFinder Minimum signal strength" name="RNGFNDA_SNR_MIN" documentation="RangeFinder Minimum signal strength (SNR) to accept distance" user="Advanced">
        <field name="Range">0 65535</field>
      </param>
    </parameters>
    <parameters name="RNGFNDA_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFNDA_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFNDA_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFNDA_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RNGFNDA_GRF_">
      <param humanName="LightWare GRF Distance Return Type" name="RNGFNDA_GRF_RET" documentation="Selects which single return to use." user="Standard">
        <values>
          <value code="0">FirstRaw</value>
          <value code="1">FirstFiltered</value>
          <value code="2">LastRaw</value>
          <value code="3">LastFiltered</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Minimum Return Strength" name="RNGFNDA_GRF_ST" documentation="Minimum acceptable return signal strength in dB. Returns weaker than this will be ignored. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 255</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="LightWare GRF Update Rate" name="RNGFNDA_GRF_RATE" documentation="The update rate of the sensor in Hz." user="Advanced">
        <field name="Range">1 50</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="RPM1_">
      <param humanName="RPM type" name="RPM1_TYPE" documentation="What type of RPM sensor is connected" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">Not Used</value>
          <value code="2">GPIO</value>
          <value code="3">EFI</value>
          <value code="4">Harmonic Notch</value>
          <value code="5">ESC Telemetry Motors Bitmask</value>
          <value code="6">Generator</value>
          <value code="7">DroneCAN</value>
        </values>
      </param>
      <param humanName="RPM scaling" name="RPM1_SCALING" documentation="Scaling factor between sensor reading and RPM." user="Standard">
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Maximum RPM" name="RPM1_MAX" documentation="Maximum RPM to report. Only used on type = GPIO." user="Standard">
        <field name="Increment">1</field>
      </param>
      <param humanName="Minimum RPM" name="RPM1_MIN" documentation="Minimum RPM to report. Only used on type = GPIO." user="Standard">
        <field name="Increment">1</field>
      </param>
      <param humanName="Minimum Quality" name="RPM1_MIN_QUAL" documentation="Minimum data quality to be used" user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Input pin number" name="RPM1_PIN" documentation="Which digital GPIO pin to use. Only used on type = GPIO. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Bitmask of ESC telemetry channels to average" name="RPM1_ESC_MASK" documentation="Mask of channels which support ESC rpm telemetry. RPM telemetry of the selected channels will be averaged" user="Advanced">
        <bitmask>
          <bit code="0">Channel1</bit>
          <bit code="1">Channel2</bit>
          <bit code="2">Channel3</bit>
          <bit code="3">Channel4</bit>
          <bit code="4">Channel5</bit>
          <bit code="5">Channel6</bit>
          <bit code="6">Channel7</bit>
          <bit code="7">Channel8</bit>
          <bit code="8">Channel9</bit>
          <bit code="9">Channel10</bit>
          <bit code="10">Channel11</bit>
          <bit code="11">Channel12</bit>
          <bit code="12">Channel13</bit>
          <bit code="13">Channel14</bit>
          <bit code="14">Channel15</bit>
          <bit code="15">Channel16</bit>
        </bitmask>
        <field name="Bitmask">0:Channel1,1:Channel2,2:Channel3,3:Channel4,4:Channel5,5:Channel6,6:Channel7,7:Channel8,8:Channel9,9:Channel10,10:Channel11,11:Channel12,12:Channel13,13:Channel14,14:Channel15,15:Channel16</field>
      </param>
      <param humanName="ESC Telemetry Index to write RPM to" name="RPM1_ESC_INDEX" documentation="ESC Telemetry Index to write RPM to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="DroneCAN Sensor ID" name="RPM1_DC_ID" documentation="DroneCAN sensor ID to assign to this backend" user="Advanced">
        <field name="Range">-1 10</field>
        <field name="Increment">1</field>
      </param>
    </parameters>
    <parameters name="RPM2_">
      <param humanName="RPM type" name="RPM2_TYPE" documentation="What type of RPM sensor is connected" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">Not Used</value>
          <value code="2">GPIO</value>
          <value code="3">EFI</value>
          <value code="4">Harmonic Notch</value>
          <value code="5">ESC Telemetry Motors Bitmask</value>
          <value code="6">Generator</value>
          <value code="7">DroneCAN</value>
        </values>
      </param>
      <param humanName="RPM scaling" name="RPM2_SCALING" documentation="Scaling factor between sensor reading and RPM." user="Standard">
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Maximum RPM" name="RPM2_MAX" documentation="Maximum RPM to report. Only used on type = GPIO." user="Standard">
        <field name="Increment">1</field>
      </param>
      <param humanName="Minimum RPM" name="RPM2_MIN" documentation="Minimum RPM to report. Only used on type = GPIO." user="Standard">
        <field name="Increment">1</field>
      </param>
      <param humanName="Minimum Quality" name="RPM2_MIN_QUAL" documentation="Minimum data quality to be used" user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Input pin number" name="RPM2_PIN" documentation="Which digital GPIO pin to use. Only used on type = GPIO. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Bitmask of ESC telemetry channels to average" name="RPM2_ESC_MASK" documentation="Mask of channels which support ESC rpm telemetry. RPM telemetry of the selected channels will be averaged" user="Advanced">
        <bitmask>
          <bit code="0">Channel1</bit>
          <bit code="1">Channel2</bit>
          <bit code="2">Channel3</bit>
          <bit code="3">Channel4</bit>
          <bit code="4">Channel5</bit>
          <bit code="5">Channel6</bit>
          <bit code="6">Channel7</bit>
          <bit code="7">Channel8</bit>
          <bit code="8">Channel9</bit>
          <bit code="9">Channel10</bit>
          <bit code="10">Channel11</bit>
          <bit code="11">Channel12</bit>
          <bit code="12">Channel13</bit>
          <bit code="13">Channel14</bit>
          <bit code="14">Channel15</bit>
          <bit code="15">Channel16</bit>
        </bitmask>
        <field name="Bitmask">0:Channel1,1:Channel2,2:Channel3,3:Channel4,4:Channel5,5:Channel6,6:Channel7,7:Channel8,8:Channel9,9:Channel10,10:Channel11,11:Channel12,12:Channel13,13:Channel14,14:Channel15,15:Channel16</field>
      </param>
      <param humanName="ESC Telemetry Index to write RPM to" name="RPM2_ESC_INDEX" documentation="ESC Telemetry Index to write RPM to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="DroneCAN Sensor ID" name="RPM2_DC_ID" documentation="DroneCAN sensor ID to assign to this backend" user="Advanced">
        <field name="Range">-1 10</field>
        <field name="Increment">1</field>
      </param>
    </parameters>
    <parameters name="RPM3_">
      <param humanName="RPM type" name="RPM3_TYPE" documentation="What type of RPM sensor is connected" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">Not Used</value>
          <value code="2">GPIO</value>
          <value code="3">EFI</value>
          <value code="4">Harmonic Notch</value>
          <value code="5">ESC Telemetry Motors Bitmask</value>
          <value code="6">Generator</value>
          <value code="7">DroneCAN</value>
        </values>
      </param>
      <param humanName="RPM scaling" name="RPM3_SCALING" documentation="Scaling factor between sensor reading and RPM." user="Standard">
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Maximum RPM" name="RPM3_MAX" documentation="Maximum RPM to report. Only used on type = GPIO." user="Standard">
        <field name="Increment">1</field>
      </param>
      <param humanName="Minimum RPM" name="RPM3_MIN" documentation="Minimum RPM to report. Only used on type = GPIO." user="Standard">
        <field name="Increment">1</field>
      </param>
      <param humanName="Minimum Quality" name="RPM3_MIN_QUAL" documentation="Minimum data quality to be used" user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Input pin number" name="RPM3_PIN" documentation="Which digital GPIO pin to use. Only used on type = GPIO. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Bitmask of ESC telemetry channels to average" name="RPM3_ESC_MASK" documentation="Mask of channels which support ESC rpm telemetry. RPM telemetry of the selected channels will be averaged" user="Advanced">
        <bitmask>
          <bit code="0">Channel1</bit>
          <bit code="1">Channel2</bit>
          <bit code="2">Channel3</bit>
          <bit code="3">Channel4</bit>
          <bit code="4">Channel5</bit>
          <bit code="5">Channel6</bit>
          <bit code="6">Channel7</bit>
          <bit code="7">Channel8</bit>
          <bit code="8">Channel9</bit>
          <bit code="9">Channel10</bit>
          <bit code="10">Channel11</bit>
          <bit code="11">Channel12</bit>
          <bit code="12">Channel13</bit>
          <bit code="13">Channel14</bit>
          <bit code="14">Channel15</bit>
          <bit code="15">Channel16</bit>
        </bitmask>
        <field name="Bitmask">0:Channel1,1:Channel2,2:Channel3,3:Channel4,4:Channel5,5:Channel6,6:Channel7,7:Channel8,8:Channel9,9:Channel10,10:Channel11,11:Channel12,12:Channel13,13:Channel14,14:Channel15,15:Channel16</field>
      </param>
      <param humanName="ESC Telemetry Index to write RPM to" name="RPM3_ESC_INDEX" documentation="ESC Telemetry Index to write RPM to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="DroneCAN Sensor ID" name="RPM3_DC_ID" documentation="DroneCAN sensor ID to assign to this backend" user="Advanced">
        <field name="Range">-1 10</field>
        <field name="Increment">1</field>
      </param>
    </parameters>
    <parameters name="RPM4_">
      <param humanName="RPM type" name="RPM4_TYPE" documentation="What type of RPM sensor is connected" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">Not Used</value>
          <value code="2">GPIO</value>
          <value code="3">EFI</value>
          <value code="4">Harmonic Notch</value>
          <value code="5">ESC Telemetry Motors Bitmask</value>
          <value code="6">Generator</value>
          <value code="7">DroneCAN</value>
        </values>
      </param>
      <param humanName="RPM scaling" name="RPM4_SCALING" documentation="Scaling factor between sensor reading and RPM." user="Standard">
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Maximum RPM" name="RPM4_MAX" documentation="Maximum RPM to report. Only used on type = GPIO." user="Standard">
        <field name="Increment">1</field>
      </param>
      <param humanName="Minimum RPM" name="RPM4_MIN" documentation="Minimum RPM to report. Only used on type = GPIO." user="Standard">
        <field name="Increment">1</field>
      </param>
      <param humanName="Minimum Quality" name="RPM4_MIN_QUAL" documentation="Minimum data quality to be used" user="Advanced">
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Input pin number" name="RPM4_PIN" documentation="Which digital GPIO pin to use. Only used on type = GPIO. Some common values are given, but see the Wiki's &quot;GPIOs&quot; page for how to determine the pin number for a given autopilot." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Bitmask of ESC telemetry channels to average" name="RPM4_ESC_MASK" documentation="Mask of channels which support ESC rpm telemetry. RPM telemetry of the selected channels will be averaged" user="Advanced">
        <bitmask>
          <bit code="0">Channel1</bit>
          <bit code="1">Channel2</bit>
          <bit code="2">Channel3</bit>
          <bit code="3">Channel4</bit>
          <bit code="4">Channel5</bit>
          <bit code="5">Channel6</bit>
          <bit code="6">Channel7</bit>
          <bit code="7">Channel8</bit>
          <bit code="8">Channel9</bit>
          <bit code="9">Channel10</bit>
          <bit code="10">Channel11</bit>
          <bit code="11">Channel12</bit>
          <bit code="12">Channel13</bit>
          <bit code="13">Channel14</bit>
          <bit code="14">Channel15</bit>
          <bit code="15">Channel16</bit>
        </bitmask>
        <field name="Bitmask">0:Channel1,1:Channel2,2:Channel3,3:Channel4,4:Channel5,5:Channel6,6:Channel7,7:Channel8,8:Channel9,9:Channel10,10:Channel11,11:Channel12,12:Channel13,13:Channel14,14:Channel15,15:Channel16</field>
      </param>
      <param humanName="ESC Telemetry Index to write RPM to" name="RPM4_ESC_INDEX" documentation="ESC Telemetry Index to write RPM to. Use 0 to disable." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="DroneCAN Sensor ID" name="RPM4_DC_ID" documentation="DroneCAN sensor ID to assign to this backend" user="Advanced">
        <field name="Range">-1 10</field>
        <field name="Increment">1</field>
      </param>
    </parameters>
    <parameters name="RSSI_">
      <param humanName="RSSI Type" name="RSSI_TYPE" documentation="Radio Receiver RSSI type. If your radio receiver supports RSSI of some kind, set it here, then set its associated RSSI_XXXXX parameters, if any." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">AnalogPin</value>
          <value code="2">RCChannelPwmValue</value>
          <value code="3">ReceiverProtocol</value>
          <value code="4">PWMInputPin</value>
          <value code="5">TelemetryRadioRSSI</value>
        </values>
      </param>
      <param humanName="Receiver RSSI sensing pin" name="RSSI_ANA_PIN" documentation="Pin used to read the RSSI voltage or PWM value. Analog Airspeed ports can be used for Analog inputs (some autopilots provide others also), Non-IOMCU Servo/MotorOutputs can be used for PWM input when configured as &quot;GPIOs&quot;. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot; for analog pin or &quot;GPIOs&quot;, if PWM input type, to determine pin number." user="Standard">
        <values>
          <value code="8">V5 Nano</value>
          <value code="11">Pixracer</value>
          <value code="13">Pixhawk ADC4</value>
          <value code="14">Pixhawk ADC3</value>
          <value code="15">Pixhawk ADC6/Pixhawk2 ADC</value>
          <value code="50">AUX1</value>
          <value code="51">AUX2</value>
          <value code="52">AUX3</value>
          <value code="53">AUX4</value>
          <value code="54">AUX5</value>
          <value code="55">AUX6</value>
          <value code="103">Pixhawk SBUS</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="RSSI pin's lowest voltage" name="RSSI_PIN_LOW" documentation="RSSI pin's voltage received on the RSSI_ANA_PIN when the signal strength is the weakest. Some radio receivers put out inverted values so this value may be higher than RSSI_PIN_HIGH. When using pin 103, the maximum value of the parameter is 3.3V." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.01</field>
        <field name="Range">0 5.0</field>
      </param>
      <param humanName="RSSI pin's highest voltage" name="RSSI_PIN_HIGH" documentation="RSSI pin's voltage received on the RSSI_ANA_PIN when the signal strength is the strongest. Some radio receivers put out inverted values so this value may be lower than RSSI_PIN_LOW. When using pin 103, the maximum value of the parameter is 3.3V." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
        <field name="Increment">0.01</field>
        <field name="Range">0 5.0</field>
      </param>
      <param humanName="Receiver RSSI channel number" name="RSSI_CHANNEL" documentation="The channel number where RSSI will be output by the radio receiver (5 and above)." user="Standard">
        <field name="Range">0 16</field>
      </param>
      <param humanName="RSSI PWM low value" name="RSSI_CHAN_LOW" documentation="PWM value that the radio receiver will put on the RSSI_CHANNEL or RSSI_ANA_PIN when the signal strength is the weakest. Some radio receivers output inverted values so this value may be lower than RSSI_CHAN_HIGH" user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 2000</field>
      </param>
      <param humanName="Receiver RSSI PWM high value" name="RSSI_CHAN_HIGH" documentation="PWM value that the radio receiver will put on the RSSI_CHANNEL or RSSI_ANA_PIN when the signal strength is the strongest. Some radio receivers output inverted values so this value may be higher than RSSI_CHAN_LOW" user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">0 2000</field>
      </param>
    </parameters>
    <parameters name="SCHED_">
      <param humanName="Scheduler debug level" name="SCHED_DEBUG" documentation="Set to non-zero to enable scheduler debug messages. When set to show &quot;Slips&quot; the scheduler will display a message whenever a scheduled task is delayed due to too much CPU load. When set to ShowOverruns the scheduled will display a message whenever a task takes longer than the limit promised in the task table." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="2">ShowSlips</value>
          <value code="3">ShowOverruns</value>
        </values>
      </param>
      <param humanName="Scheduling main loop rate" name="SCHED_LOOP_RATE" documentation="This controls the rate of the main control loop in Hz. This should only be changed by developers. This only takes effect on restart. Values over 400 are considered highly experimental." user="Advanced">
        <field name="Range">50 400</field>
        <field name="RebootRequired">True</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Scheduling options" name="SCHED_OPTIONS" documentation="This controls optional aspects of the scheduler." user="Advanced">
        <bitmask>
          <bit code="0">Enable per-task perf info</bit>
        </bitmask>
        <field name="Bitmask">0:Enable per-task perf info</field>
      </param>
    </parameters>
    <parameters name="SCR_">
      <param humanName="Enable Scripting" name="SCR_ENABLE" documentation="Controls if scripting is enabled" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Lua Scripts</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Scripting Virtual Machine Instruction Count" name="SCR_VM_I_COUNT" documentation="The number virtual machine instructions that can be run before considering a script to have taken an excessive amount of time" user="Advanced">
        <field name="Range">1000 1000000</field>
        <field name="Increment">10000</field>
      </param>
      <param humanName="Scripting Heap Size" name="SCR_HEAP_SIZE" documentation="Amount of memory available for scripting" user="Advanced">
        <field name="Range">1024 1048576</field>
        <field name="Increment">1024</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Scripting Debug Level" name="SCR_DEBUG_OPTS" documentation="Debugging options" user="Advanced">
        <bitmask>
          <bit code="0">No Scripts to run message if all scripts have stopped</bit>
          <bit code="1">Runtime messages for memory usage and execution time</bit>
          <bit code="2">Suppress logging scripts to dataflash</bit>
          <bit code="3">log runtime memory usage and execution time</bit>
          <bit code="4">Disable pre-arm check</bit>
          <bit code="5">Save CRC of current scripts to loaded and running checksum parameters enabling pre-arm</bit>
          <bit code="6">Disable heap expansion on allocation failure</bit>
        </bitmask>
        <field name="Bitmask">0: No Scripts to run message if all scripts have stopped, 1: Runtime messages for memory usage and execution time, 2: Suppress logging scripts to dataflash, 3: log runtime memory usage and execution time, 4: Disable pre-arm check, 5: Save CRC of current scripts to loaded and running checksum parameters enabling pre-arm, 6: Disable heap expansion on allocation failure</field>
      </param>
      <param humanName="Scripting User Parameter1" name="SCR_USER1" documentation="General purpose user variable input for scripts" user="Standard">
</param>
      <param humanName="Scripting User Parameter2" name="SCR_USER2" documentation="General purpose user variable input for scripts" user="Standard">
</param>
      <param humanName="Scripting User Parameter3" name="SCR_USER3" documentation="General purpose user variable input for scripts" user="Standard">
</param>
      <param humanName="Scripting User Parameter4" name="SCR_USER4" documentation="General purpose user variable input for scripts" user="Standard">
</param>
      <param humanName="Scripting User Parameter5" name="SCR_USER5" documentation="General purpose user variable input for scripts" user="Standard">
</param>
      <param humanName="Scripting User Parameter6" name="SCR_USER6" documentation="General purpose user variable input for scripts" user="Standard">
</param>
      <param humanName="Directory disable" name="SCR_DIR_DISABLE" documentation="This will stop scripts being loaded from the given locations" user="Advanced">
        <bitmask>
          <bit code="0">ROMFS</bit>
          <bit code="1">APM/scripts</bit>
        </bitmask>
        <field name="Bitmask">0:ROMFS, 1:APM/scripts</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Loaded script checksum" name="SCR_LD_CHECKSUM" documentation="Required XOR of CRC32 checksum of loaded scripts, vehicle will not arm with incorrect scripts loaded, -1 disables" user="Advanced">
</param>
      <param humanName="Running script checksum" name="SCR_RUN_CHECKSUM" documentation="Required XOR of CRC32 checksum of running scripts, vehicle will not arm with incorrect scripts running, -1 disables" user="Advanced">
</param>
      <param humanName="Scripting thread priority" name="SCR_THD_PRIORITY" documentation="This sets the priority of the scripting thread. This is normally set to a low priority to prevent scripts from interfering with other parts of the system. Advanced users can change this priority if scripting needs to be prioritised for realtime applications. WARNING: changing this parameter can impact the stability of your flight controller. The scipting thread priority in this parameter is chosen based on a set of system level priorities for other subsystems. It is strongly recommended that you use the lowest priority that is sufficient for your application. Note that all scripts run at the same priority, so if you raise this priority you must carefully audit all lua scripts for behaviour that does not interfere with the operation of the system." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">IO Priority</value>
          <value code="2">Storage Priority</value>
          <value code="3">UART Priority</value>
          <value code="4">I2C Priority</value>
          <value code="5">SPI Priority</value>
          <value code="6">Timer Priority</value>
          <value code="7">Main Priority</value>
          <value code="8">Boost Priority</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Scripting serial device enable" name="SCR_SDEV_EN" documentation="Enable scripting serial devices" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial protocol of scripting serial device" name="SCR_SDEV1_PROTO" documentation="Serial protocol of scripting serial device" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial protocol of scripting serial device" name="SCR_SDEV2_PROTO" documentation="Serial protocol of scripting serial device" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial protocol of scripting serial device" name="SCR_SDEV3_PROTO" documentation="Serial protocol of scripting serial device" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
    </parameters>
    <parameters name="SERIAL">
      <param humanName="Serial0 baud rate" name="SERIAL0_BAUD" documentation="The baud rate used on the USB console. Most stm32-based boards can support rates of up to 1500. If you setup a rate you cannot support and then can't connect to your board you should load a firmware from a different vehicle type. That will reset all your parameters to defaults." user="Standard">
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
        <field name="Range">1 20000000</field>
      </param>
      <param humanName="Console protocol selection" name="SERIAL0_PROTOCOL" documentation="Control what protocol to use on the console." user="Standard">
        <values>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Telem1 protocol selection" name="SERIAL1_PROTOCOL" documentation="Control what protocol to use on the Telem1 port. Note that the Frsky options require external converter hardware. See the wiki for details." user="Standard">
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Telem1 Baud Rate" name="SERIAL1_BAUD" documentation="The baud rate used on the Telem1 port. Most stm32-based boards can support rates of up to 1500. If you setup a rate you cannot support and then can't connect to your board you should load a firmware from a different vehicle type. That will reset all your parameters to defaults." user="Standard">
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
        <field name="Range">1 20000000</field>
      </param>
      <param humanName="Telemetry 2 protocol selection" name="SERIAL2_PROTOCOL" documentation="Control what protocol to use on the Telem2 port. Note that the Frsky options require external converter hardware. See the wiki for details." user="Standard">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Telemetry 2 Baud Rate" name="SERIAL2_BAUD" documentation="The baud rate of the Telem2 port. Most stm32-based boards can support rates of up to 1500. If you setup a rate you cannot support and then can't connect to your board you should load a firmware from a different vehicle type. That will reset all your parameters to defaults." user="Standard">
        <field name="Range">1 20000000</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial 3 (GPS) protocol selection" name="SERIAL3_PROTOCOL" documentation="Control what protocol Serial 3 (GPS) should be used for. Note that the Frsky options require external converter hardware. See the wiki for details." user="Standard">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial 3 (GPS) Baud Rate" name="SERIAL3_BAUD" documentation="The baud rate used for the Serial 3 (GPS). Most stm32-based boards can support rates of up to 1500. If you setup a rate you cannot support and then can't connect to your board you should load a firmware from a different vehicle type. That will reset all your parameters to defaults." user="Standard">
        <field name="Range">1 20000000</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial4 protocol selection" name="SERIAL4_PROTOCOL" documentation="Control what protocol Serial4 port should be used for. Note that the Frsky options require external converter hardware. See the wiki for details." user="Standard">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial 4 Baud Rate" name="SERIAL4_BAUD" documentation="The baud rate used for Serial4. Most stm32-based boards can support rates of up to 1500. If you setup a rate you cannot support and then can't connect to your board you should load a firmware from a different vehicle type. That will reset all your parameters to defaults." user="Standard">
        <field name="Range">1 20000000</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial5 protocol selection" name="SERIAL5_PROTOCOL" documentation="Control what protocol Serial5 port should be used for. Note that the Frsky options require external converter hardware. See the wiki for details." user="Standard">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial 5 Baud Rate" name="SERIAL5_BAUD" documentation="The baud rate used for Serial5. Most stm32-based boards can support rates of up to 1500. If you setup a rate you cannot support and then can't connect to your board you should load a firmware from a different vehicle type. That will reset all your parameters to defaults." user="Standard">
        <field name="Range">1 20000000</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial6 protocol selection" name="SERIAL6_PROTOCOL" documentation="Control what protocol Serial6 port should be used for. Note that the Frsky options require external converter hardware. See the wiki for details." user="Standard">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial 6 Baud Rate" name="SERIAL6_BAUD" documentation="The baud rate used for Serial6. Most stm32-based boards can support rates of up to 1500. If you setup a rate you cannot support and then can't connect to your board you should load a firmware from a different vehicle type. That will reset all your parameters to defaults." user="Standard">
        <field name="Range">1 20000000</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Telem1 options" name="SERIAL1_OPTIONS" documentation="Control over UART options. The InvertRX option controls invert of the receive pin. The InvertTX option controls invert of the transmit pin. The HalfDuplex option controls half-duplex (onewire) mode, where both transmit and receive is done on the transmit wire. The Swap option allows the RX and TX pins to be swapped on STM32F7 based boards.  NOTE that two bits have moved from this parameter into MAVn_OPTIONS!" user="Advanced">
        <bitmask>
          <bit code="0">InvertRX</bit>
          <bit code="1">InvertTX</bit>
          <bit code="2">HalfDuplex</bit>
          <bit code="3">SwapTXRX</bit>
          <bit code="4">RX_PullDown</bit>
          <bit code="5">RX_PullUp</bit>
          <bit code="6">TX_PullDown</bit>
          <bit code="7">TX_PullUp</bit>
          <bit code="8">RX_NoDMA</bit>
          <bit code="9">TX_NoDMA</bit>
          <bit code="10">Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7)</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</bit>
        </bitmask>
        <field name="Bitmask">0:InvertRX, 1:InvertTX, 2:HalfDuplex, 3:SwapTXRX, 4: RX_PullDown, 5: RX_PullUp, 6: TX_PullDown, 7: TX_PullUp, 8: RX_NoDMA, 9: TX_NoDMA, 10: Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7), 11: DisableFIFO, 12: Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Telem2 options" name="SERIAL2_OPTIONS" documentation="Control over UART options. The InvertRX option controls invert of the receive pin. The InvertTX option controls invert of the transmit pin. The HalfDuplex option controls half-duplex (onewire) mode, where both transmit and receive is done on the transmit wire. The Swap option allows the RX and TX pins to be swapped on STM32F7 based boards.  NOTE that two bits have moved from this parameter into MAVn_OPTIONS!" user="Advanced">
        <bitmask>
          <bit code="0">InvertRX</bit>
          <bit code="1">InvertTX</bit>
          <bit code="2">HalfDuplex</bit>
          <bit code="3">SwapTXRX</bit>
          <bit code="4">RX_PullDown</bit>
          <bit code="5">RX_PullUp</bit>
          <bit code="6">TX_PullDown</bit>
          <bit code="7">TX_PullUp</bit>
          <bit code="8">RX_NoDMA</bit>
          <bit code="9">TX_NoDMA</bit>
          <bit code="10">Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7)</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</bit>
        </bitmask>
        <field name="Bitmask">0:InvertRX, 1:InvertTX, 2:HalfDuplex, 3:SwapTXRX, 4: RX_PullDown, 5: RX_PullUp, 6: TX_PullDown, 7: TX_PullUp, 8: RX_NoDMA, 9: TX_NoDMA, 10: Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7), 11: DisableFIFO, 12: Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial3 options" name="SERIAL3_OPTIONS" documentation="Control over UART options. The InvertRX option controls invert of the receive pin. The InvertTX option controls invert of the transmit pin. The HalfDuplex option controls half-duplex (onewire) mode, where both transmit and receive is done on the transmit wire. The Swap option allows the RX and TX pins to be swapped on STM32F7 based boards.  NOTE that two bits have moved from this parameter into MAVn_OPTIONS!" user="Advanced">
        <bitmask>
          <bit code="0">InvertRX</bit>
          <bit code="1">InvertTX</bit>
          <bit code="2">HalfDuplex</bit>
          <bit code="3">SwapTXRX</bit>
          <bit code="4">RX_PullDown</bit>
          <bit code="5">RX_PullUp</bit>
          <bit code="6">TX_PullDown</bit>
          <bit code="7">TX_PullUp</bit>
          <bit code="8">RX_NoDMA</bit>
          <bit code="9">TX_NoDMA</bit>
          <bit code="10">Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7)</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</bit>
        </bitmask>
        <field name="Bitmask">0:InvertRX, 1:InvertTX, 2:HalfDuplex, 3:SwapTXRX, 4: RX_PullDown, 5: RX_PullUp, 6: TX_PullDown, 7: TX_PullUp, 8: RX_NoDMA, 9: TX_NoDMA, 10: Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7), 11: DisableFIFO, 12: Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial4 options" name="SERIAL4_OPTIONS" documentation="Control over UART options. The InvertRX option controls invert of the receive pin. The InvertTX option controls invert of the transmit pin. The HalfDuplex option controls half-duplex (onewire) mode, where both transmit and receive is done on the transmit wire. The Swap option allows the RX and TX pins to be swapped on STM32F7 based boards.  NOTE that two bits have moved from this parameter into MAVn_OPTIONS!" user="Advanced">
        <bitmask>
          <bit code="0">InvertRX</bit>
          <bit code="1">InvertTX</bit>
          <bit code="2">HalfDuplex</bit>
          <bit code="3">SwapTXRX</bit>
          <bit code="4">RX_PullDown</bit>
          <bit code="5">RX_PullUp</bit>
          <bit code="6">TX_PullDown</bit>
          <bit code="7">TX_PullUp</bit>
          <bit code="8">RX_NoDMA</bit>
          <bit code="9">TX_NoDMA</bit>
          <bit code="10">Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7)</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</bit>
        </bitmask>
        <field name="Bitmask">0:InvertRX, 1:InvertTX, 2:HalfDuplex, 3:SwapTXRX, 4: RX_PullDown, 5: RX_PullUp, 6: TX_PullDown, 7: TX_PullUp, 8: RX_NoDMA, 9: TX_NoDMA, 10: Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7), 11: DisableFIFO, 12: Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial5 options" name="SERIAL5_OPTIONS" documentation="Control over UART options. The InvertRX option controls invert of the receive pin. The InvertTX option controls invert of the transmit pin. The HalfDuplex option controls half-duplex (onewire) mode, where both transmit and receive is done on the transmit wire. The Swap option allows the RX and TX pins to be swapped on STM32F7 based boards.  NOTE that two bits have moved from this parameter into MAVn_OPTIONS!" user="Advanced">
        <bitmask>
          <bit code="0">InvertRX</bit>
          <bit code="1">InvertTX</bit>
          <bit code="2">HalfDuplex</bit>
          <bit code="3">SwapTXRX</bit>
          <bit code="4">RX_PullDown</bit>
          <bit code="5">RX_PullUp</bit>
          <bit code="6">TX_PullDown</bit>
          <bit code="7">TX_PullUp</bit>
          <bit code="8">RX_NoDMA</bit>
          <bit code="9">TX_NoDMA</bit>
          <bit code="10">Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7)</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</bit>
        </bitmask>
        <field name="Bitmask">0:InvertRX, 1:InvertTX, 2:HalfDuplex, 3:SwapTXRX, 4: RX_PullDown, 5: RX_PullUp, 6: TX_PullDown, 7: TX_PullUp, 8: RX_NoDMA, 9: TX_NoDMA, 10: Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7), 11: DisableFIFO, 12: Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial6 options" name="SERIAL6_OPTIONS" documentation="Control over UART options. The InvertRX option controls invert of the receive pin. The InvertTX option controls invert of the transmit pin. The HalfDuplex option controls half-duplex (onewire) mode, where both transmit and receive is done on the transmit wire. The Swap option allows the RX and TX pins to be swapped on STM32F7 based boards.  NOTE that two bits have moved from this parameter into MAVn_OPTIONS!" user="Advanced">
        <bitmask>
          <bit code="0">InvertRX</bit>
          <bit code="1">InvertTX</bit>
          <bit code="2">HalfDuplex</bit>
          <bit code="3">SwapTXRX</bit>
          <bit code="4">RX_PullDown</bit>
          <bit code="5">RX_PullUp</bit>
          <bit code="6">TX_PullDown</bit>
          <bit code="7">TX_PullUp</bit>
          <bit code="8">RX_NoDMA</bit>
          <bit code="9">TX_NoDMA</bit>
          <bit code="10">Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7)</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</bit>
        </bitmask>
        <field name="Bitmask">0:InvertRX, 1:InvertTX, 2:HalfDuplex, 3:SwapTXRX, 4: RX_PullDown, 5: RX_PullUp, 6: TX_PullDown, 7: TX_PullUp, 8: RX_NoDMA, 9: TX_NoDMA, 10: Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7), 11: DisableFIFO, 12: Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial passthru first port" name="SERIAL_PASS1" documentation="This sets one side of pass-through between two serial ports. Once both sides are set then all data received on either port will be passed to the other port" user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
      </param>
      <param humanName="Serial passthru second port" name="SERIAL_PASS2" documentation="This sets one side of pass-through between two serial ports. Once both sides are set then all data received on either port will be passed to the other port. This parameter is normally reset to -1 on reboot, disabling passthrough. If SERIAL_PASSTIMO is set to -1 then it is not reset on reboot." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0</value>
          <value code="1">Serial1</value>
          <value code="2">Serial2</value>
          <value code="3">Serial3</value>
          <value code="4">Serial4</value>
          <value code="5">Serial5</value>
          <value code="6">Serial6</value>
        </values>
      </param>
      <param humanName="Serial passthru timeout" name="SERIAL_PASSTIMO" documentation="This sets a timeout for serial pass-through in seconds. When the pass-through is enabled by setting the SERIAL_PASS1 and SERIAL_PASS2 parameters then it remains in effect until no data comes from the first port for SERIAL_PASSTIMO seconds. This allows the port to revent to its normal usage (such as MAVLink connection to a GCS) when it is no longer needed. A value of 0 means no timeout. A value of -1 means no timeout and the SERIAL_PASS2 parameter is not reset on reboot." user="Advanced">
        <field name="Range">-1 120</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Serial7 protocol selection" name="SERIAL7_PROTOCOL" documentation="Control what protocol Serial7 port should be used for. Note that the Frsky options require external converter hardware. See the wiki for details." user="Standard">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial 7 Baud Rate" name="SERIAL7_BAUD" documentation="The baud rate used for Serial7. Most stm32-based boards can support rates of up to 1500. If you setup a rate you cannot support and then can't connect to your board you should load a firmware from a different vehicle type. That will reset all your parameters to defaults." user="Standard">
        <field name="Range">1 20000000</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial7 options" name="SERIAL7_OPTIONS" documentation="Control over UART options. The InvertRX option controls invert of the receive pin. The InvertTX option controls invert of the transmit pin. The HalfDuplex option controls half-duplex (onewire) mode, where both transmit and receive is done on the transmit wire. The Swap option allows the RX and TX pins to be swapped on STM32F7 based boards.  NOTE that two bits have moved from this parameter into MAVn_OPTIONS!" user="Advanced">
        <bitmask>
          <bit code="0">InvertRX</bit>
          <bit code="1">InvertTX</bit>
          <bit code="2">HalfDuplex</bit>
          <bit code="3">SwapTXRX</bit>
          <bit code="4">RX_PullDown</bit>
          <bit code="5">RX_PullUp</bit>
          <bit code="6">TX_PullDown</bit>
          <bit code="7">TX_PullUp</bit>
          <bit code="8">RX_NoDMA</bit>
          <bit code="9">TX_NoDMA</bit>
          <bit code="10">Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7)</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</bit>
        </bitmask>
        <field name="Bitmask">0:InvertRX, 1:InvertTX, 2:HalfDuplex, 3:SwapTXRX, 4: RX_PullDown, 5: RX_PullUp, 6: TX_PullDown, 7: TX_PullUp, 8: RX_NoDMA, 9: TX_NoDMA, 10: Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7), 11: DisableFIFO, 12: Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial8 protocol selection" name="SERIAL8_PROTOCOL" documentation="Control what protocol Serial8 port should be used for. Note that the Frsky options require external converter hardware. See the wiki for details." user="Standard">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial 8 Baud Rate" name="SERIAL8_BAUD" documentation="The baud rate used for Serial8. Most stm32-based boards can support rates of up to 1500. If you setup a rate you cannot support and then can't connect to your board you should load a firmware from a different vehicle type. That will reset all your parameters to defaults." user="Standard">
        <field name="Range">1 20000000</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial8 options" name="SERIAL8_OPTIONS" documentation="Control over UART options. The InvertRX option controls invert of the receive pin. The InvertTX option controls invert of the transmit pin. The HalfDuplex option controls half-duplex (onewire) mode, where both transmit and receive is done on the transmit wire. The Swap option allows the RX and TX pins to be swapped on STM32F7 based boards.  NOTE that two bits have moved from this parameter into MAVn_OPTIONS!" user="Advanced">
        <bitmask>
          <bit code="0">InvertRX</bit>
          <bit code="1">InvertTX</bit>
          <bit code="2">HalfDuplex</bit>
          <bit code="3">SwapTXRX</bit>
          <bit code="4">RX_PullDown</bit>
          <bit code="5">RX_PullUp</bit>
          <bit code="6">TX_PullDown</bit>
          <bit code="7">TX_PullUp</bit>
          <bit code="8">RX_NoDMA</bit>
          <bit code="9">TX_NoDMA</bit>
          <bit code="10">Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7)</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</bit>
        </bitmask>
        <field name="Bitmask">0:InvertRX, 1:InvertTX, 2:HalfDuplex, 3:SwapTXRX, 4: RX_PullDown, 5: RX_PullUp, 6: TX_PullDown, 7: TX_PullUp, 8: RX_NoDMA, 9: TX_NoDMA, 10: Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7), 11: DisableFIFO, 12: Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Serial9 protocol selection" name="SERIAL9_PROTOCOL" documentation="Control what protocol Serial9 port should be used for. Note that the Frsky options require external converter hardware. See the wiki for details." user="Standard">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">None</value>
          <value code="35">ADSB</value>
          <value code="36">AHRS</value>
          <value code="40">AIS</value>
          <value code="34">AirSpeed</value>
          <value code="7">Alexmos Gimbal Serial</value>
          <value code="13">Beacon</value>
          <value code="41">CoDevESC</value>
          <value code="29">Crossfire VTX</value>
          <value code="45">DDS XRCE</value>
          <value code="33">DJI FPV</value>
          <value code="17">Devo Telemetry</value>
          <value code="42">DisplayPort</value>
          <value code="24">EFI Serial</value>
          <value code="16">ESC Telemetry</value>
          <value code="38">FETtecOneWire</value>
          <value code="10">FrSky SPort Passthrough (OpenTX)</value>
          <value code="3">Frsky D</value>
          <value code="4">Frsky SPort</value>
          <value code="5">GPS</value>
          <value code="30">Generator</value>
          <value code="8">Gimbal</value>
          <value code="27">HottTelem</value>
          <value code="46">IMUDATA</value>
          <value code="50">IOMCU</value>
          <value code="44">IRC Tramp</value>
          <value code="25">LTM</value>
          <value code="11">Lidar360</value>
          <value code="43">MAVLink High Latency</value>
          <value code="1">MAVLink1</value>
          <value code="2">MAVLink2</value>
          <value code="32">MSP</value>
          <value code="20">NMEA Output</value>
          <value code="18">OpticalFlow</value>
          <value code="48">PPP</value>
          <value code="23">RCIN</value>
          <value code="9">Rangefinder</value>
          <value code="19">RobotisServo</value>
          <value code="26">RunCam</value>
          <value code="15">SBus servo out</value>
          <value code="22">SLCAN</value>
          <value code="28">Scripting</value>
          <value code="37">SmartAudio</value>
          <value code="39">Torqeedo</value>
          <value code="14">Volz servo out</value>
          <value code="31">Winch</value>
          <value code="21">WindVane</value>
          <value code="49">i-BUS Telemetry</value>
        </values>
      </param>
      <param humanName="Serial 9 Baud Rate" name="SERIAL9_BAUD" documentation="The baud rate used for Serial8. Most stm32-based boards can support rates of up to 1500. If you setup a rate you cannot support and then can't connect to your board you should load a firmware from a different vehicle type. That will reset all your parameters to defaults." user="Standard">
        <field name="Range">1 20000000</field>
        <values>
          <value code="1">1200</value>
          <value code="2">2400</value>
          <value code="4">4800</value>
          <value code="9">9600</value>
          <value code="19">19200</value>
          <value code="38">38400</value>
          <value code="57">57600</value>
          <value code="111">111100</value>
          <value code="115">115200</value>
          <value code="230">230400</value>
          <value code="256">256000</value>
          <value code="460">460800</value>
          <value code="500">500000</value>
          <value code="921">921600</value>
          <value code="1500">1.5MBaud</value>
          <value code="2000">2MBaud</value>
          <value code="12500000">12.5MBaud</value>
        </values>
      </param>
      <param humanName="Serial9 options" name="SERIAL9_OPTIONS" documentation="Control over UART options. The InvertRX option controls invert of the receive pin. The InvertTX option controls invert of the transmit pin. The HalfDuplex option controls half-duplex (onewire) mode, where both transmit and receive is done on the transmit wire. The Swap option allows the RX and TX pins to be swapped on STM32F7 based boards.  NOTE that two bits have moved from this parameter into MAVn_OPTIONS!" user="Advanced">
        <bitmask>
          <bit code="0">InvertRX</bit>
          <bit code="1">InvertTX</bit>
          <bit code="2">HalfDuplex</bit>
          <bit code="3">SwapTXRX</bit>
          <bit code="4">RX_PullDown</bit>
          <bit code="5">RX_PullUp</bit>
          <bit code="6">TX_PullDown</bit>
          <bit code="7">TX_PullUp</bit>
          <bit code="8">RX_NoDMA</bit>
          <bit code="9">TX_NoDMA</bit>
          <bit code="10">Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7)</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</bit>
        </bitmask>
        <field name="Bitmask">0:InvertRX, 1:InvertTX, 2:HalfDuplex, 3:SwapTXRX, 4: RX_PullDown, 5: RX_PullUp, 6: TX_PullDown, 7: TX_PullUp, 8: RX_NoDMA, 9: TX_NoDMA, 10: Don't forward mavlink to/from (moved to MAVn_OPTIONS &gt;4.7), 11: DisableFIFO, 12: Ignore Streamrate (moved to MAVn_OPTIONS &gt;4.7)</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO">
      <param humanName="Automatic servo trim" name="SERVO_AUTO_TRIM" documentation="This enables automatic servo trim in flight. Servos will be trimed in stabilized flight modes when the aircraft is close to level. Changes to servo trim will be saved every 10 seconds and will persist between flights. The automatic trim won't go more than 20% away from a centered trim." user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Servo default output rate" name="SERVO_RATE" documentation="Default output rate in Hz for all PWM outputs." user="Advanced">
        <field name="Range">25 400</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Servo DShot output rate" name="SERVO_DSHOT_RATE" documentation="DShot output rate for all outputs as a multiple of the loop rate. 0 sets the output rate to be fixed at 1Khz for low loop rates. This value should never be set below 500Hz." user="Advanced">
        <values>
          <value code="0">1Khz</value>
          <value code="1">loop-rate</value>
          <value code="2">double loop-rate</value>
          <value code="3">triple loop-rate</value>
          <value code="4">quadruple loop rate</value>
        </values>
      </param>
      <param humanName="Servo DShot ESC type" name="SERVO_DSHOT_ESC" documentation="DShot ESC type for all outputs. The ESC type affects the range of DShot commands available and the bit widths used. None means that no dshot commands will be executed. Some ESC types support Extended DShot Telemetry (EDT) which allows telemetry other than RPM data to be returned when using bi-directional dshot. If you enable EDT you must install EDT capable firmware for correct operation." user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">BLHeli32/Kiss/AM32</value>
          <value code="2">BLHeli_S/BlueJay</value>
          <value code="3">BLHeli32/AM32/Kiss+EDT</value>
          <value code="4">BLHeli_S/BlueJay+EDT</value>
        </values>
      </param>
      <param humanName="Servo GPIO mask" name="SERVO_GPIO_MASK" documentation="Bitmask of outputs which will be available as GPIOs. Any output with either the function set to -1 or with the corresponding bit set in this mask will be available for use as a GPIO pin" user="Advanced">
        <bitmask>
          <bit code="0">Servo 1</bit>
          <bit code="1">Servo 2</bit>
          <bit code="2">Servo 3</bit>
          <bit code="3">Servo 4</bit>
          <bit code="4">Servo 5</bit>
          <bit code="5">Servo 6</bit>
          <bit code="6">Servo 7</bit>
          <bit code="7">Servo 8</bit>
          <bit code="8">Servo 9</bit>
          <bit code="9">Servo 10</bit>
          <bit code="10">Servo 11</bit>
          <bit code="11">Servo 12</bit>
          <bit code="12">Servo 13</bit>
          <bit code="13">Servo 14</bit>
          <bit code="14">Servo 15</bit>
          <bit code="15">Servo 16</bit>
          <bit code="16">Servo 17</bit>
          <bit code="17">Servo 18</bit>
          <bit code="18">Servo 19</bit>
          <bit code="19">Servo 20</bit>
          <bit code="20">Servo 21</bit>
          <bit code="21">Servo 22</bit>
          <bit code="22">Servo 23</bit>
          <bit code="23">Servo 24</bit>
          <bit code="24">Servo 25</bit>
          <bit code="25">Servo 26</bit>
          <bit code="26">Servo 27</bit>
          <bit code="27">Servo 28</bit>
          <bit code="28">Servo 29</bit>
          <bit code="29">Servo 30</bit>
          <bit code="30">Servo 31</bit>
          <bit code="31">Servo 32</bit>
        </bitmask>
        <field name="Bitmask">0:Servo 1, 1:Servo 2, 2:Servo 3, 3:Servo 4, 4:Servo 5, 5:Servo 6, 6:Servo 7, 7:Servo 8, 8:Servo 9, 9:Servo 10, 10:Servo 11, 11:Servo 12, 12:Servo 13, 13:Servo 14, 14:Servo 15, 15:Servo 16, 16:Servo 17, 17:Servo 18, 18:Servo 19, 19:Servo 20, 20:Servo 21, 21:Servo 22, 22:Servo 23, 23:Servo 24, 24:Servo 25, 25:Servo 26, 26:Servo 27, 27:Servo 28, 28:Servo 29, 29:Servo 30, 30:Servo 31, 31:Servo 32</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Servo RC Failsafe Mask" name="SERVO_RC_FS_MSK" documentation="Bitmask of scaled passthru output channels which will be set to their trim value during rc failsafe instead of holding their last position before failsafe." user="Advanced">
        <bitmask>
          <bit code="0">RCIN1Scaled</bit>
          <bit code="1">RCIN2Scaled</bit>
          <bit code="2">RCIN3Scaled</bit>
          <bit code="3">RCIN4Scaled</bit>
          <bit code="4">RCIN5Scaled</bit>
          <bit code="5">RCIN6Scaled</bit>
          <bit code="6">RCIN7Scaled</bit>
          <bit code="7">RCIN8Scaled</bit>
          <bit code="8">RCIN9Scaled</bit>
          <bit code="9">RCIN10Scaled</bit>
          <bit code="10">RCIN11Scaled</bit>
          <bit code="11">SRCIN12Scaled</bit>
          <bit code="12">RCIN13Scaled</bit>
          <bit code="13">RCIN14Scaled</bit>
          <bit code="14">RCIN15Scaled</bit>
          <bit code="15">RCIN16Scaled</bit>
        </bitmask>
        <field name="Bitmask">0:RCIN1Scaled, 1:RCIN2Scaled, 2:RCIN3Scaled, 3:RCIN4Scaled, 4:RCIN5Scaled, 5:RCIN6Scaled, 6:RCIN7Scaled, 7:RCIN8Scaled, 8:RCIN9Scaled, 9:RCIN10Scaled, 10:RCIN11Scaled, 11:SRCIN12Scaled, 12:RCIN13Scaled, 13:RCIN14Scaled, 14:RCIN15Scaled, 15:RCIN16Scaled</field>
      </param>
      <param humanName="Enable outputs 17 to 31" name="SERVO_32_ENABLE" documentation="This allows for up to 32 outputs, enabling parameters for outputs above 16" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
    </parameters>
    <parameters name="SERVO1_">
      <param humanName="Minimum PWM" name="SERVO1_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO1_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO1_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO1_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO1_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO2_">
      <param humanName="Minimum PWM" name="SERVO2_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO2_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO2_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO2_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO2_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO3_">
      <param humanName="Minimum PWM" name="SERVO3_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO3_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO3_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO3_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO3_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO4_">
      <param humanName="Minimum PWM" name="SERVO4_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO4_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO4_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO4_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO4_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO5_">
      <param humanName="Minimum PWM" name="SERVO5_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO5_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO5_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO5_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO5_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO6_">
      <param humanName="Minimum PWM" name="SERVO6_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO6_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO6_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO6_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO6_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO7_">
      <param humanName="Minimum PWM" name="SERVO7_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO7_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO7_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO7_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO7_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO8_">
      <param humanName="Minimum PWM" name="SERVO8_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO8_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO8_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO8_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO8_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO9_">
      <param humanName="Minimum PWM" name="SERVO9_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO9_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO9_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO9_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO9_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO10_">
      <param humanName="Minimum PWM" name="SERVO10_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO10_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO10_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO10_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO10_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO11_">
      <param humanName="Minimum PWM" name="SERVO11_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO11_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO11_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO11_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO11_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO12_">
      <param humanName="Minimum PWM" name="SERVO12_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO12_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO12_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO12_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO12_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO13_">
      <param humanName="Minimum PWM" name="SERVO13_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO13_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO13_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO13_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO13_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO14_">
      <param humanName="Minimum PWM" name="SERVO14_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO14_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO14_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO14_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO14_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO15_">
      <param humanName="Minimum PWM" name="SERVO15_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO15_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO15_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO15_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO15_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO16_">
      <param humanName="Minimum PWM" name="SERVO16_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO16_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO16_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO16_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO16_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO17_">
      <param humanName="Minimum PWM" name="SERVO17_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO17_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO17_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO17_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO17_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO18_">
      <param humanName="Minimum PWM" name="SERVO18_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO18_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO18_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO18_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO18_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO19_">
      <param humanName="Minimum PWM" name="SERVO19_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO19_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO19_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO19_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO19_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO20_">
      <param humanName="Minimum PWM" name="SERVO20_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO20_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO20_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO20_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO20_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO21_">
      <param humanName="Minimum PWM" name="SERVO21_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO21_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO21_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO21_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO21_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO22_">
      <param humanName="Minimum PWM" name="SERVO22_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO22_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO22_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO22_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO22_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO23_">
      <param humanName="Minimum PWM" name="SERVO23_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO23_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO23_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO23_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO23_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO24_">
      <param humanName="Minimum PWM" name="SERVO24_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO24_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO24_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO24_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO24_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO25_">
      <param humanName="Minimum PWM" name="SERVO25_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO25_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO25_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO25_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO25_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO26_">
      <param humanName="Minimum PWM" name="SERVO26_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO26_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO26_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO26_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO26_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO27_">
      <param humanName="Minimum PWM" name="SERVO27_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO27_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO27_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO27_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO27_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO28_">
      <param humanName="Minimum PWM" name="SERVO28_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO28_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO28_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO28_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO28_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO29_">
      <param humanName="Minimum PWM" name="SERVO29_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO29_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO29_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO29_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO29_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO30_">
      <param humanName="Minimum PWM" name="SERVO30_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO30_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO30_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO30_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO30_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO31_">
      <param humanName="Minimum PWM" name="SERVO31_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO31_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO31_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO31_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO31_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO32_">
      <param humanName="Minimum PWM" name="SERVO32_MIN" documentation="minimum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Maximum PWM" name="SERVO32_MAX" documentation="maximum PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Trim PWM" name="SERVO32_TRIM" documentation="Trim PWM pulse width in microseconds. Typically 1000 is lower limit, 1500 is neutral and 2000 is upper limit." user="Standard">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
        <field name="Range">800 2200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Servo reverse" name="SERVO32_REVERSED" documentation="Reverse servo operation. Set to 0 for normal operation. Set to 1 to reverse this output channel." user="Standard">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reversed</value>
        </values>
      </param>
      <param humanName="Servo output function" name="SERVO32_FUNCTION" documentation="Function assigned to this servo. Setting this to Disabled(0) will setup this output for control by auto missions or MAVLink servo set commands. any other value will enable the corresponding function" user="Standard">
        <values>
          <value code="-1">GPIO</value>
          <value code="0">Disabled</value>
          <value code="4">Aileron</value>
          <value code="110">Airbrakes</value>
          <value code="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="91">CameraAperture</value>
          <value code="92">CameraFocus</value>
          <value code="90">CameraISO</value>
          <value code="93">CameraShutterSpeed</value>
          <value code="10">CameraTrigger</value>
          <value code="16">DifferentialSpoilerLeft1</value>
          <value code="86">DifferentialSpoilerLeft2</value>
          <value code="17">DifferentialSpoilerRight1</value>
          <value code="87">DifferentialSpoilerRight2</value>
          <value code="19">Elevator</value>
          <value code="77">ElevonLeft</value>
          <value code="78">ElevonRight</value>
          <value code="30">EngineRunEnable</value>
          <value code="2">Flap</value>
          <value code="3">FlapAuto</value>
          <value code="24">FlaperonLeft</value>
          <value code="25">FlaperonRight</value>
          <value code="28">Gripper</value>
          <value code="26">GroundSteering</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="160">Motor13</value>
          <value code="161">Motor14</value>
          <value code="162">Motor15</value>
          <value code="163">Motor16</value>
          <value code="164">Motor17</value>
          <value code="165">Motor18</value>
          <value code="166">Motor19</value>
          <value code="34">Motor2</value>
          <value code="167">Motor20</value>
          <value code="168">Motor21</value>
          <value code="169">Motor22</value>
          <value code="170">Motor23</value>
          <value code="171">Motor24</value>
          <value code="172">Motor25</value>
          <value code="173">Motor26</value>
          <value code="174">Motor27</value>
          <value code="175">Motor28</value>
          <value code="176">Motor29</value>
          <value code="35">Motor3</value>
          <value code="177">Motor30</value>
          <value code="178">Motor31</value>
          <value code="179">Motor32</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7/TailTiltServo</value>
          <value code="40">Motor8</value>
          <value code="82">Motor9</value>
          <value code="7">Mount1Pitch</value>
          <value code="9">Mount1Retract</value>
          <value code="8">Mount1Roll</value>
          <value code="6">Mount1Yaw</value>
          <value code="13">Mount2Pitch</value>
          <value code="15">Mount2Retract</value>
          <value code="14">Mount2Roll</value>
          <value code="12">Mount2Yaw</value>
          <value code="120">NeoPixel1</value>
          <value code="121">NeoPixel2</value>
          <value code="122">NeoPixel3</value>
          <value code="123">NeoPixel4</value>
          <value code="27">Parachute</value>
          <value code="129">ProfiLED1</value>
          <value code="130">ProfiLED2</value>
          <value code="131">ProfiLED3</value>
          <value code="132">ProfiLEDClock</value>
          <value code="51">RCIN1</value>
          <value code="60">RCIN10</value>
          <value code="149">RCIN10Scaled</value>
          <value code="61">RCIN11</value>
          <value code="150">RCIN11Scaled</value>
          <value code="62">RCIN12</value>
          <value code="151">RCIN12Scaled</value>
          <value code="63">RCIN13</value>
          <value code="152">RCIN13Scaled</value>
          <value code="64">RCIN14</value>
          <value code="153">RCIN14Scaled</value>
          <value code="65">RCIN15</value>
          <value code="154">RCIN15Scaled</value>
          <value code="66">RCIN16</value>
          <value code="155">RCIN16Scaled</value>
          <value code="140">RCIN1Scaled</value>
          <value code="52">RCIN2</value>
          <value code="141">RCIN2Scaled</value>
          <value code="53">RCIN3</value>
          <value code="142">RCIN3Scaled</value>
          <value code="54">RCIN4</value>
          <value code="143">RCIN4Scaled</value>
          <value code="55">RCIN5</value>
          <value code="144">RCIN5Scaled</value>
          <value code="56">RCIN6</value>
          <value code="145">RCIN6Scaled</value>
          <value code="57">RCIN7</value>
          <value code="146">RCIN7Scaled</value>
          <value code="58">RCIN8</value>
          <value code="147">RCIN8Scaled</value>
          <value code="59">RCIN9</value>
          <value code="148">RCIN9Scaled</value>
          <value code="1">RCPassThru</value>
          <value code="125">RatePitch</value>
          <value code="124">RateRoll</value>
          <value code="126">RateThrust</value>
          <value code="127">RateYaw</value>
          <value code="21">Rudder</value>
          <value code="136">SERVOn_MAX</value>
          <value code="134">SERVOn_MIN</value>
          <value code="135">SERVOn_TRIM</value>
          <value code="94">Script1</value>
          <value code="103">Script10</value>
          <value code="104">Script11</value>
          <value code="105">Script12</value>
          <value code="106">Script13</value>
          <value code="107">Script14</value>
          <value code="108">Script15</value>
          <value code="109">Script16</value>
          <value code="95">Script2</value>
          <value code="96">Script3</value>
          <value code="97">Script4</value>
          <value code="98">Script5</value>
          <value code="99">Script6</value>
          <value code="100">Script7</value>
          <value code="101">Script8</value>
          <value code="102">Script9</value>
          <value code="22">SprayerPump</value>
          <value code="23">SprayerSpinner</value>
          <value code="69">Starter</value>
          <value code="70">Throttle</value>
          <value code="73">ThrottleLeft</value>
          <value code="74">ThrottleRight</value>
          <value code="75">TiltMotorFrontLeft</value>
          <value code="76">TiltMotorFrontRight</value>
          <value code="46">TiltMotorRearLeft</value>
          <value code="47">TiltMotorRearRight</value>
          <value code="41">TiltMotorsFront</value>
          <value code="45">TiltMotorsRear</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO_BLH_">
      <param humanName="BLHeli Channel Bitmask" name="SERVO_BLH_MASK" documentation="Enable of BLHeli pass-thru servo protocol support to specific channels. This mask is in addition to motors enabled using SERVO_BLH_AUTO (if any)" user="Advanced">
        <bitmask>
          <bit code="0">Channel1</bit>
          <bit code="1">Channel2</bit>
          <bit code="2">Channel3</bit>
          <bit code="3">Channel4</bit>
          <bit code="4">Channel5</bit>
          <bit code="5">Channel6</bit>
          <bit code="6">Channel7</bit>
          <bit code="7">Channel8</bit>
          <bit code="8">Channel9</bit>
          <bit code="9">Channel10</bit>
          <bit code="10">Channel11</bit>
          <bit code="11">Channel12</bit>
          <bit code="12">Channel13</bit>
          <bit code="13">Channel14</bit>
          <bit code="14">Channel15</bit>
          <bit code="15">Channel16</bit>
          <bit code="16">Channel 17</bit>
          <bit code="17">Channel 18</bit>
          <bit code="18">Channel 19</bit>
          <bit code="19">Channel 20</bit>
          <bit code="20">Channel 21</bit>
          <bit code="21">Channel 22</bit>
          <bit code="22">Channel 23</bit>
          <bit code="23">Channel 24</bit>
          <bit code="24">Channel 25</bit>
          <bit code="25">Channel 26</bit>
          <bit code="26">Channel 27</bit>
          <bit code="27">Channel 28</bit>
          <bit code="28">Channel 29</bit>
          <bit code="29">Channel 30</bit>
          <bit code="30">Channel 31</bit>
          <bit code="31">Channel 32</bit>
        </bitmask>
        <field name="Bitmask">0:Channel1,1:Channel2,2:Channel3,3:Channel4,4:Channel5,5:Channel6,6:Channel7,7:Channel8,8:Channel9,9:Channel10,10:Channel11,11:Channel12,12:Channel13,13:Channel14,14:Channel15,15:Channel16, 16:Channel 17, 17: Channel 18, 18: Channel 19, 19: Channel 20, 20: Channel 21, 21: Channel 22, 22: Channel 23, 23: Channel 24, 24: Channel 25, 25: Channel 26, 26: Channel 27, 27: Channel 28, 28: Channel 29, 29: Channel 30, 30: Channel 31, 31: Channel 32</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="BLHeli pass-thru auto-enable for multicopter motors" name="SERVO_BLH_AUTO" documentation="If set to 1 this auto-enables BLHeli pass-thru support for all multicopter motors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="BLHeli internal interface test" name="SERVO_BLH_TEST" documentation="Setting SERVO_BLH_TEST to a motor number enables an internal test of the BLHeli ESC protocol to the corresponding ESC. The debug output is displayed on the USB console." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TestMotor1</value>
          <value code="2">TestMotor2</value>
          <value code="3">TestMotor3</value>
          <value code="4">TestMotor4</value>
          <value code="5">TestMotor5</value>
          <value code="6">TestMotor6</value>
          <value code="7">TestMotor7</value>
          <value code="8">TestMotor8</value>
        </values>
      </param>
      <param humanName="BLHeli protocol timeout" name="SERVO_BLH_TMOUT" documentation="This sets the inactivity timeout for the BLHeli protocol in seconds. If no packets are received in this time normal MAVLink operations are resumed. A value of 0 means no timeout" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 300</field>
      </param>
      <param humanName="BLHeli telemetry rate" name="SERVO_BLH_TRATE" documentation="This sets the rate in Hz for requesting telemetry from ESCs. It is the rate per ESC. Setting to zero disables telemetry requests" user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="BLHeli debug level" name="SERVO_BLH_DEBUG" documentation="When set to 1 this enabled verbose debugging output over MAVLink when the blheli protocol is active. This can be used to diagnose failures." user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="BLHeli output type override" name="SERVO_BLH_OTYPE" documentation="When set to a non-zero value this overrides the output type for the output channels given by SERVO_BLH_MASK. This can be used to enable DShot on outputs that are not part of the multicopter motors group." user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">OneShot</value>
          <value code="2">OneShot125</value>
          <value code="3">Brushed</value>
          <value code="4">DShot150</value>
          <value code="5">DShot300</value>
          <value code="6">DShot600</value>
          <value code="7">DShot1200</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Control port" name="SERVO_BLH_PORT" documentation="This sets the mavlink channel to use for blheli pass-thru. The channel number is determined by the number of serial ports configured to use mavlink. So 0 is always the console, 1 is the next serial port using mavlink, 2 the next after that and so on." user="Advanced">
        <values>
          <value code="0">Console</value>
          <value code="1">Mavlink Serial Channel1</value>
          <value code="2">Mavlink Serial Channel2</value>
          <value code="3">Mavlink Serial Channel3</value>
          <value code="4">Mavlink Serial Channel4</value>
          <value code="5">Mavlink Serial Channel5</value>
        </values>
      </param>
      <param humanName="BLHeli Motor Poles" name="SERVO_BLH_POLES" documentation="This allows calculation of true RPM from ESC's eRPM. The default is 14." user="Advanced">
        <field name="Range">1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="BLHeli bitmask of 3D channels" name="SERVO_BLH_3DMASK" documentation="Mask of channels which are dynamically reversible. This is used to configure ESCs in '3D' mode, allowing for the motor to spin in either direction. Note that setting an ESC as reversible with this option on AM32 will result in the forward direction of the ESC changing. You can combine with parameter with the SERVO_BLH_RVMASK parameter to maintain the same direction when the ESC is in 3D mode as it has in unidirectional (non-3D) mode." user="Advanced">
        <bitmask>
          <bit code="0">Channel1</bit>
          <bit code="1">Channel2</bit>
          <bit code="2">Channel3</bit>
          <bit code="3">Channel4</bit>
          <bit code="4">Channel5</bit>
          <bit code="5">Channel6</bit>
          <bit code="6">Channel7</bit>
          <bit code="7">Channel8</bit>
          <bit code="8">Channel9</bit>
          <bit code="9">Channel10</bit>
          <bit code="10">Channel11</bit>
          <bit code="11">Channel12</bit>
          <bit code="12">Channel13</bit>
          <bit code="13">Channel14</bit>
          <bit code="14">Channel15</bit>
          <bit code="15">Channel16</bit>
          <bit code="16">Channel 17</bit>
          <bit code="17">Channel 18</bit>
          <bit code="18">Channel 19</bit>
          <bit code="19">Channel 20</bit>
          <bit code="20">Channel 21</bit>
          <bit code="21">Channel 22</bit>
          <bit code="22">Channel 23</bit>
          <bit code="23">Channel 24</bit>
          <bit code="24">Channel 25</bit>
          <bit code="25">Channel 26</bit>
          <bit code="26">Channel 27</bit>
          <bit code="27">Channel 28</bit>
          <bit code="28">Channel 29</bit>
          <bit code="29">Channel 30</bit>
          <bit code="30">Channel 31</bit>
          <bit code="31">Channel 32</bit>
        </bitmask>
        <field name="Bitmask">0:Channel1,1:Channel2,2:Channel3,3:Channel4,4:Channel5,5:Channel6,6:Channel7,7:Channel8,8:Channel9,9:Channel10,10:Channel11,11:Channel12,12:Channel13,13:Channel14,14:Channel15,15:Channel16, 16:Channel 17, 17: Channel 18, 18: Channel 19, 19: Channel 20, 20: Channel 21, 21: Channel 22, 22: Channel 23, 23: Channel 24, 24: Channel 25, 25: Channel 26, 26: Channel 27, 27: Channel 28, 28: Channel 29, 29: Channel 30, 30: Channel 31, 31: Channel 32</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="BLHeli bitmask of bi-directional dshot channels" name="SERVO_BLH_BDMASK" documentation="Mask of channels which support bi-directional dshot telemetry. This is used for ESCs which have firmware that supports bi-directional dshot allowing fast rpm telemetry values to be returned for the harmonic notch." user="Advanced">
        <bitmask>
          <bit code="0">Channel1</bit>
          <bit code="1">Channel2</bit>
          <bit code="2">Channel3</bit>
          <bit code="3">Channel4</bit>
          <bit code="4">Channel5</bit>
          <bit code="5">Channel6</bit>
          <bit code="6">Channel7</bit>
          <bit code="7">Channel8</bit>
          <bit code="8">Channel9</bit>
          <bit code="9">Channel10</bit>
          <bit code="10">Channel11</bit>
          <bit code="11">Channel12</bit>
          <bit code="12">Channel13</bit>
          <bit code="13">Channel14</bit>
          <bit code="14">Channel15</bit>
          <bit code="15">Channel16</bit>
          <bit code="16">Channel 17</bit>
          <bit code="17">Channel 18</bit>
          <bit code="18">Channel 19</bit>
          <bit code="19">Channel 20</bit>
          <bit code="20">Channel 21</bit>
          <bit code="21">Channel 22</bit>
          <bit code="22">Channel 23</bit>
          <bit code="23">Channel 24</bit>
          <bit code="24">Channel 25</bit>
          <bit code="25">Channel 26</bit>
          <bit code="26">Channel 27</bit>
          <bit code="27">Channel 28</bit>
          <bit code="28">Channel 29</bit>
          <bit code="29">Channel 30</bit>
          <bit code="30">Channel 31</bit>
          <bit code="31">Channel 32</bit>
        </bitmask>
        <field name="Bitmask">0:Channel1,1:Channel2,2:Channel3,3:Channel4,4:Channel5,5:Channel6,6:Channel7,7:Channel8,8:Channel9,9:Channel10,10:Channel11,11:Channel12,12:Channel13,13:Channel14,14:Channel15,15:Channel16, 16:Channel 17, 17: Channel 18, 18: Channel 19, 19: Channel 20, 20: Channel 21, 21: Channel 22, 22: Channel 23, 23: Channel 24, 24: Channel 25, 25: Channel 26, 26: Channel 27, 27: Channel 28, 28: Channel 29, 29: Channel 30, 30: Channel 31, 31: Channel 32</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="BLHeli bitmask of reversed channels" name="SERVO_BLH_RVMASK" documentation="Mask of channels which are reversed. This is used to configure ESCs to reverse motor direction. Note that when combined with SERVO_BLH_3DMASK this will change what direction is considered to be forward." user="Advanced">
        <bitmask>
          <bit code="0">Channel1</bit>
          <bit code="1">Channel2</bit>
          <bit code="2">Channel3</bit>
          <bit code="3">Channel4</bit>
          <bit code="4">Channel5</bit>
          <bit code="5">Channel6</bit>
          <bit code="6">Channel7</bit>
          <bit code="7">Channel8</bit>
          <bit code="8">Channel9</bit>
          <bit code="9">Channel10</bit>
          <bit code="10">Channel11</bit>
          <bit code="11">Channel12</bit>
          <bit code="12">Channel13</bit>
          <bit code="13">Channel14</bit>
          <bit code="14">Channel15</bit>
          <bit code="15">Channel16</bit>
          <bit code="16">Channel 17</bit>
          <bit code="17">Channel 18</bit>
          <bit code="18">Channel 19</bit>
          <bit code="19">Channel 20</bit>
          <bit code="20">Channel 21</bit>
          <bit code="21">Channel 22</bit>
          <bit code="22">Channel 23</bit>
          <bit code="23">Channel 24</bit>
          <bit code="24">Channel 25</bit>
          <bit code="25">Channel 26</bit>
          <bit code="26">Channel 27</bit>
          <bit code="27">Channel 28</bit>
          <bit code="28">Channel 29</bit>
          <bit code="29">Channel 30</bit>
          <bit code="30">Channel 31</bit>
          <bit code="31">Channel 32</bit>
        </bitmask>
        <field name="Bitmask">0:Channel1,1:Channel2,2:Channel3,3:Channel4,4:Channel5,5:Channel6,6:Channel7,7:Channel8,8:Channel9,9:Channel10,10:Channel11,11:Channel12,12:Channel13,13:Channel14,14:Channel15,15:Channel16, 16:Channel 17, 17: Channel 18, 18: Channel 19, 19: Channel 20, 20: Channel 21, 21: Channel 22, 22: Channel 23, 23: Channel 24, 24: Channel 25, 25: Channel 26, 26: Channel 27, 27: Channel 28, 28: Channel 29, 29: Channel 30, 30: Channel 31, 31: Channel 32</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="SERVO_FTW_">
      <param humanName="Servo channel output bitmask" name="SERVO_FTW_MASK" documentation="Servo channel mask specifying FETtec ESC output." user="Standard">
        <bitmask>
          <bit code="0">SERVO1</bit>
          <bit code="1">SERVO2</bit>
          <bit code="2">SERVO3</bit>
          <bit code="3">SERVO4</bit>
          <bit code="4">SERVO5</bit>
          <bit code="5">SERVO6</bit>
          <bit code="6">SERVO7</bit>
          <bit code="7">SERVO8</bit>
          <bit code="8">SERVO9</bit>
          <bit code="9">SERVO10</bit>
          <bit code="10">SERVO11</bit>
          <bit code="11">SERVO12</bit>
        </bitmask>
        <field name="Bitmask">0:SERVO1,1:SERVO2,2:SERVO3,3:SERVO4,4:SERVO5,5:SERVO6,6:SERVO7,7:SERVO8,8:SERVO9,9:SERVO10,10:SERVO11,11:SERVO12</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Servo channel reverse rotation bitmask" name="SERVO_FTW_RVMASK" documentation="Servo channel mask to reverse rotation of FETtec ESC outputs." user="Standard">
        <bitmask>
          <bit code="0">SERVO1</bit>
          <bit code="1">SERVO2</bit>
          <bit code="2">SERVO3</bit>
          <bit code="3">SERVO4</bit>
          <bit code="4">SERVO5</bit>
          <bit code="5">SERVO6</bit>
          <bit code="6">SERVO7</bit>
          <bit code="7">SERVO8</bit>
          <bit code="8">SERVO9</bit>
          <bit code="9">SERVO10</bit>
          <bit code="10">SERVO11</bit>
          <bit code="11">SERVO12</bit>
        </bitmask>
        <field name="Bitmask">0:SERVO1,1:SERVO2,2:SERVO3,3:SERVO4,4:SERVO5,5:SERVO6,6:SERVO7,7:SERVO8,8:SERVO9,9:SERVO10,10:SERVO11,11:SERVO12</field>
      </param>
      <param humanName="Nr. electrical poles" name="SERVO_FTW_POLES" documentation="Number of motor electrical poles" user="Standard">
        <field name="Range">2 50</field>
      </param>
    </parameters>
    <parameters name="SERVO_ROB_">
      <param humanName="Robotis servo position min" name="SERVO_ROB_POSMIN" documentation="Position minimum at servo min value. This should be within the position control range of the servos, normally 0 to 4095" user="Standard">
        <field name="Range">0 4095</field>
      </param>
      <param humanName="Robotis servo position max" name="SERVO_ROB_POSMAX" documentation="Position maximum at servo max value. This should be within the position control range of the servos, normally 0 to 4095" user="Standard">
        <field name="Range">0 4095</field>
      </param>
    </parameters>
    <parameters name="SERVO_SBUS_">
      <param humanName="SBUS default output rate" name="SERVO_SBUS_RATE" documentation="This sets the SBUS output frame rate in Hz." user="Advanced">
        <field name="Range">25 250</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
    </parameters>
    <parameters name="SERVO_VOLZ_">
      <param humanName="Channel Bitmask" name="SERVO_VOLZ_MASK" documentation="Enable of volz servo protocol to specific channels" user="Standard">
        <bitmask>
          <bit code="0">Channel1</bit>
          <bit code="1">Channel2</bit>
          <bit code="2">Channel3</bit>
          <bit code="3">Channel4</bit>
          <bit code="4">Channel5</bit>
          <bit code="5">Channel6</bit>
          <bit code="6">Channel7</bit>
          <bit code="7">Channel8</bit>
          <bit code="8">Channel9</bit>
          <bit code="9">Channel10</bit>
          <bit code="10">Channel11</bit>
          <bit code="11">Channel12</bit>
          <bit code="12">Channel13</bit>
          <bit code="13">Channel14</bit>
          <bit code="14">Channel15</bit>
          <bit code="15">Channel16</bit>
          <bit code="16">Channel17</bit>
          <bit code="17">Channel18</bit>
          <bit code="18">Channel19</bit>
          <bit code="19">Channel20</bit>
          <bit code="20">Channel21</bit>
          <bit code="21">Channel22</bit>
          <bit code="22">Channel23</bit>
          <bit code="23">Channel24</bit>
          <bit code="24">Channel25</bit>
          <bit code="25">Channel26</bit>
          <bit code="26">Channel27</bit>
          <bit code="28">Channel29</bit>
          <bit code="29">Channel30</bit>
          <bit code="30">Channel31</bit>
          <bit code="31">Channel32</bit>
        </bitmask>
        <field name="Bitmask">0:Channel1,1:Channel2,2:Channel3,3:Channel4,4:Channel5,5:Channel6,6:Channel7,7:Channel8,8:Channel9,9:Channel10,10:Channel11,11:Channel12,12:Channel13,13:Channel14,14:Channel15,15:Channel16,16:Channel17,17:Channel18,18:Channel19,19:Channel20,20:Channel21,21:Channel22,22:Channel23,23:Channel24,24:Channel25,25:Channel26,26:Channel27,28:Channel29,29:Channel30,30:Channel31,31:Channel32</field>
      </param>
      <param humanName="Range of travel" name="SERVO_VOLZ_RANGE" documentation="Range to map between 1000 and 2000 PWM. Default value of 200 gives full +-100 deg range of extended position command. This results in 0.2 deg movement per US change in PWM. If the full range is not needed it can be reduced to increase resolution. 40 deg range gives 0.04 deg movement per US change in PWM, this is higher resolution than possible with the VOLZ protocol so further reduction in range will not improve resolution. Reduced range does allow PWMs outside the 1000 to 2000 range, with 40 deg range 750 PWM results in a angle of -30 deg, 2250 would be +30 deg. This is still limited by the 200 deg maximum range of the actuator.">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
    </parameters>
    <parameters name="SID">
      <param humanName="System identification axis" name="SID_AXIS" documentation="Controls which axis are being excited.  Set to non-zero to see more parameters" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">VTOL Input Roll Angle</value>
          <value code="2">VTOL Input Pitch Angle</value>
          <value code="3">VTOL Input Yaw Angle</value>
          <value code="4">VTOL Recovery Roll Angle</value>
          <value code="5">VTOL Recovery Pitch Angle</value>
          <value code="6">VTOL Recovery Yaw Angle</value>
          <value code="7">VTOL Rate Roll</value>
          <value code="8">VTOL Rate Pitch</value>
          <value code="9">VTOL Rate Yaw</value>
          <value code="10">VTOL Mixer Roll</value>
          <value code="11">VTOL Mixer Pitch</value>
          <value code="12">VTOL Mixer Yaw</value>
          <value code="13">VTOL Mixer Thrust</value>
          <value code="20">FW Input Roll Angle</value>
          <value code="21">FW Input Pitch Angle</value>
          <value code="22">FW Mixer Roll</value>
          <value code="23">FW Mixer Pitch</value>
        </values>
      </param>
      <param humanName="System identification Chirp Magnitude" name="SID_MAGNITUDE" documentation="Magnitude of sweep in deg, deg/s and 0-1 for mixer outputs." user="Standard">
</param>
      <param humanName="System identification Start Frequency" name="SID_F_START_HZ" documentation="Frequency at the start of the sweep" user="Standard">
        <field name="Range">0.01 100</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="System identification Stop Frequency" name="SID_F_STOP_HZ" documentation="Frequency at the end of the sweep" user="Standard">
        <field name="Range">0.01 100</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="System identification Fade in time" name="SID_T_FADE_IN" documentation="Time to reach maximum amplitude of sweep" user="Standard">
        <field name="Range">0 20</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="System identification Total Sweep length" name="SID_T_REC" documentation="Time taken to complete the sweep" user="Standard">
        <field name="Range">0 255</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="System identification Fade out time" name="SID_T_FADE_OUT" documentation="Time to reach zero amplitude at the end of the sweep" user="Standard">
        <field name="Range">0 5</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="System identification XY control multiplier" name="SID_XY_CTRL_MUL" documentation="A multiplier for the XY velocity and position controller when using systemID in VTOL modes that do horizontal position and velocity control" user="Standard">
        <field name="Range">0.05 1.0</field>
      </param>
    </parameters>
    <parameters name="SIM_">
      <param humanName="Gyro drift speed" name="SIM_DRIFT_SPEED" documentation="Gyro drift rate of change in degrees/second/minute">
</param>
      <param humanName="Gyro drift time" name="SIM_DRIFT_TIME" documentation="Gyro drift duration of one full drift cycle (period in minutes)">
</param>
      <param humanName="Engine failure thrust scaler" name="SIM_ENGINE_MUL" documentation="Thrust from Motors in SIM_ENGINE_FAIL will be multiplied by this factor">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Simulated Wind speed" name="SIM_WIND_SPD" documentation="Allows you to emulate wind in sim" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Direction simulated wind is coming from" name="SIM_WIND_DIR" documentation="Allows you to set wind direction (true deg) in sim" user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Simulated Wind variation" name="SIM_WIND_TURB" documentation="Allows you to emulate random wind variations in sim" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Wind variation time constant" name="SIM_WIND_TC" documentation="this controls the time over which wind changes take effect" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="Sonar rotation" name="SIM_SONAR_ROT" documentation="Sonar rotation from rotations enumeration">
</param>
      <param humanName="Simulated battery voltage" name="SIM_BATT_VOLTAGE" documentation="Simulated battery voltage. Constant voltage when SIM_BATT_CAP_AH is 0, otherwise changing this parameter will re-initialize the state of charge of the battery based on this voltage versus the battery's maximum voltage (default is max voltage)." user="Advanced">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Simulated battery capacity" name="SIM_BATT_CAP_AH" documentation="Simulated battery capacity. Set to 0 for unlimited capacity. Changing this parameter will re-initialize the state of charge of the battery." user="Advanced">
        <field name="Units">Ah</field>
        <field name="UnitText">ampere hour</field>
      </param>
      <param humanName="Sonar glitch probablility" name="SIM_SONAR_GLITCH" documentation="Probablility a sonar glitch would happen" user="Advanced">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Sonar noise factor" name="SIM_SONAR_RND" documentation="Scaling factor for simulated sonar noise" user="Advanced">
</param>
      <param humanName="Simulated RC signal failure" name="SIM_RC_FAIL" documentation="Allows you to emulate rc failures in sim" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">No RC pusles</value>
          <value code="2">All Channels neutral except Throttle is 950us</value>
        </values>
      </param>
      <param humanName="Generate floating point exceptions" name="SIM_FLOAT_EXCEPT" documentation="If set, if a numerical error occurs SITL will die with a floating point exception." user="Advanced">
</param>
      <param humanName="Mask of CAN servos/ESCs" name="SIM_CAN_SRV_MSK" documentation="The set of actuators controlled externally by CAN SITL AP_Periph" user="Advanced">
        <bitmask>
          <bit code="0">Servo 1</bit>
          <bit code="1">Servo 2</bit>
          <bit code="2">Servo 3</bit>
          <bit code="3">Servo 4</bit>
          <bit code="4">Servo 5</bit>
          <bit code="5">Servo 6</bit>
          <bit code="6">Servo 7</bit>
          <bit code="7">Servo 8</bit>
          <bit code="8">Servo 9</bit>
          <bit code="9">Servo 10</bit>
          <bit code="10">Servo 11</bit>
          <bit code="11">Servo 12</bit>
          <bit code="12">Servo 13</bit>
          <bit code="13">Servo 14</bit>
          <bit code="14">Servo 15</bit>
          <bit code="15">Servo 16</bit>
          <bit code="16">Servo 17</bit>
          <bit code="17">Servo 18</bit>
          <bit code="18">Servo 19</bit>
          <bit code="19">Servo 20</bit>
          <bit code="20">Servo 21</bit>
          <bit code="21">Servo 22</bit>
          <bit code="22">Servo 23</bit>
          <bit code="23">Servo 24</bit>
          <bit code="24">Servo 25</bit>
          <bit code="25">Servo 26</bit>
          <bit code="26">Servo 27</bit>
          <bit code="27">Servo 28</bit>
          <bit code="28">Servo 29</bit>
          <bit code="29">Servo 30</bit>
          <bit code="30">Servo 31</bit>
          <bit code="31">Servo 32</bit>
        </bitmask>
        <field name="Bitmask">0: Servo 1, 1: Servo 2, 2: Servo 3, 3: Servo 4, 4: Servo 5, 5: Servo 6, 6: Servo 7, 7: Servo 8, 8: Servo 9, 9: Servo 10, 10: Servo 11, 11: Servo 12, 12: Servo 13, 13: Servo 14, 14: Servo 15, 15: Servo 16, 16: Servo 17, 17: Servo 18, 18: Servo 19, 19: Servo 20, 20: Servo 21, 21: Servo 22, 22: Servo 23, 23: Servo 24, 24: Servo 25, 25: Servo 26, 26: Servo 27, 27: Servo 28, 28: Servo 29, 29: Servo 30, 30: Servo 31, 31: Servo 32</field>
      </param>
      <param humanName="transport type for first CAN interface" name="SIM_CAN_TYPE1" documentation="transport type for first CAN interface" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">MulticastUDP</value>
          <value code="2">SocketCAN</value>
        </values>
      </param>
      <param humanName="transport type for second CAN interface" name="SIM_CAN_TYPE2" documentation="transport type for second CAN interface" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">MulticastUDP</value>
          <value code="2">SocketCAN</value>
        </values>
      </param>
      <param humanName="Sonar conversion scale" name="SIM_SONAR_SCALE" documentation="Sonar conversion scale from distance to voltage">
        <field name="Units">m/V</field>
        <field name="UnitText">meters per volt</field>
      </param>
      <param humanName="Opflow Enable" name="SIM_FLOW_ENABLE" documentation="Enable simulated Optical Flow sensor">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Terrain Enable" name="SIM_TERRAIN" documentation="Enable using terrain for height">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Opflow Rate" name="SIM_FLOW_RATE" documentation="Opflow Data Rate">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Opflow Delay" name="SIM_FLOW_DELAY" documentation="Opflow data delay">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="Number of ADSB aircrafts" name="SIM_ADSB_COUNT" documentation="Total number of ADSB simulated aircraft">
</param>
      <param humanName="ADSB radius stddev of another aircraft" name="SIM_ADSB_RADIUS" documentation="Simulated standard deviation of radius in ADSB of another aircraft">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="ADSB altitude of another aircraft" name="SIM_ADSB_ALT" documentation="Simulated ADSB altitude of another aircraft">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPIO emulation" name="SIM_PIN_MASK" documentation="SITL GPIO emulation">
</param>
      <param humanName="ADSB transmit enable" name="SIM_ADSB_TX" documentation="ADSB transceiever enable and disable">
        <values>
          <value code="0">Transceiever disable</value>
          <value code="1">Transceiever enable</value>
        </values>
      </param>
      <param humanName="Sim Speedup" name="SIM_SPEEDUP" documentation="Runs the simulation at multiples of normal speed. Do not use if realtime physics, like RealFlight, is being used" user="Advanced">
        <field name="Range">1 10</field>
      </param>
      <param humanName="IMU Offsets" name="SIM_IMU_POS_X" documentation="XYZ position of the IMU accelerometer relative to the body frame origin (X-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="IMU Offsets" name="SIM_IMU_POS_Y" documentation="XYZ position of the IMU accelerometer relative to the body frame origin (Y-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="IMU Offsets" name="SIM_IMU_POS_Z" documentation="XYZ position of the IMU accelerometer relative to the body frame origin (Z-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Sonar Offsets" name="SIM_SONAR_POS_X" documentation="XYZ position of the sonar relative to the body frame origin (X-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Sonar Offsets" name="SIM_SONAR_POS_Y" documentation="XYZ position of the sonar relative to the body frame origin (Y-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Sonar Offsets" name="SIM_SONAR_POS_Z" documentation="XYZ position of the sonar relative to the body frame origin (Z-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Opflow Pos" name="SIM_FLOW_POS_X" documentation="XYZ position of the optical flow sensor focal point relative to the body frame origin (X-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Opflow Pos" name="SIM_FLOW_POS_Y" documentation="XYZ position of the optical flow sensor focal point relative to the body frame origin (Y-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Opflow Pos" name="SIM_FLOW_POS_Z" documentation="XYZ position of the optical flow sensor focal point relative to the body frame origin (Z-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Engine Fail Mask" name="SIM_ENGINE_FAIL" documentation="mask of motors which SIM_ENGINE_MUL will be applied to">
        <bitmask>
          <bit code="0">Servo 1</bit>
          <bit code="1">Servo 2</bit>
          <bit code="2">Servo 3</bit>
          <bit code="3">Servo 4</bit>
          <bit code="4">Servo 5</bit>
          <bit code="5">Servo 6</bit>
          <bit code="6">Servo 7</bit>
          <bit code="7">Servo 8</bit>
          <bit code="8">Servo 9</bit>
          <bit code="9">Servo 10</bit>
          <bit code="10">Servo 11</bit>
          <bit code="11">Servo 12</bit>
          <bit code="12">Servo 13</bit>
          <bit code="13">Servo 14</bit>
          <bit code="14">Servo 15</bit>
          <bit code="15">Servo 16</bit>
          <bit code="16">Servo 17</bit>
          <bit code="17">Servo 18</bit>
          <bit code="18">Servo 19</bit>
          <bit code="19">Servo 20</bit>
          <bit code="20">Servo 21</bit>
          <bit code="21">Servo 22</bit>
          <bit code="22">Servo 23</bit>
          <bit code="23">Servo 24</bit>
          <bit code="24">Servo 25</bit>
          <bit code="25">Servo 26</bit>
          <bit code="26">Servo 27</bit>
          <bit code="27">Servo 28</bit>
          <bit code="28">Servo 29</bit>
          <bit code="29">Servo 30</bit>
          <bit code="30">Servo 31</bit>
          <bit code="31">Servo 32</bit>
        </bitmask>
        <field name="Bitmask">0: Servo 1, 1: Servo 2, 2: Servo 3, 3: Servo 4, 4: Servo 5, 5: Servo 6, 6: Servo 7, 7: Servo 8, 8: Servo 9, 9: Servo 10, 10: Servo 11, 11: Servo 12, 12: Servo 13, 13: Servo 14, 14: Servo 15, 15: Servo 16, 16: Servo 17, 17: Servo 18, 18: Servo 19, 19: Servo 20, 20: Servo 21, 21: Servo 22, 22: Servo 23, 23: Servo 24, 24: Servo 25, 25: Servo 26, 26: Servo 27, 27: Servo 28, 28: Servo 29, 29: Servo 30, 30: Servo 31, 31: Servo 32</field>
      </param>
      <param humanName="Start temperature" name="SIM_TEMP_START" documentation="Baro start temperature" user="Advanced">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="Baro temperature offset" name="SIM_TEMP_BRD_OFF" documentation="Barometer board temperature offset from atmospheric temperature" user="Advanced">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="Warmup time constant" name="SIM_TEMP_TCONST" documentation="Barometer warmup temperature time constant" user="Advanced">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="Baro temperature factor" name="SIM_TEMP_BFACTOR" documentation="A pressure change with temperature that closely matches what has been observed with a ICM-20789" user="Advanced">
</param>
      <param humanName="Simulated wind vertical direction" name="SIM_WIND_DIR_Z" documentation="Allows you to set vertical wind direction (true deg) in sim. 0 means pure horizontal wind. 90 means pure updraft." user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Wind Profile Type" name="SIM_WIND_T" documentation="Selects how wind varies from surface to WIND_T_ALT" user="Advanced">
        <values>
          <value code="0">square law</value>
          <value code="1">none</value>
          <value code="2">linear-see WIND_T_COEF</value>
        </values>
      </param>
      <param humanName="Full Wind Altitude" name="SIM_WIND_T_ALT" documentation="Altitude at which wind reaches full strength, decaying from full strength as altitude lowers to ground level" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Linear Wind Curve Coeff" name="SIM_WIND_T_COEF" documentation="For linear wind profile,wind is reduced by (Altitude-WIND_T_ALT) x this value" user="Advanced">
</param>
      <param humanName="RC channel count" name="SIM_RC_CHANCOUNT" documentation="SITL RC channel count">
</param>
      <param humanName="Weight on Wheels Pin" name="SIM_WOW_PIN" documentation="SITL set this simulated pin to true if vehicle is on ground" user="Advanced">
</param>
      <param humanName="Vibration frequency" name="SIM_VIB_FREQ_X" documentation="Frequency of vibration applied to IMU readings in SITL (X-axis)">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Vibration frequency" name="SIM_VIB_FREQ_Y" documentation="Frequency of vibration applied to IMU readings in SITL (Y-axis)">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Vibration frequency" name="SIM_VIB_FREQ_Z" documentation="Frequency of vibration applied to IMU readings in SITL (Z-axis)">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Telemetry bandwidth limitting" name="SIM_BAUDLIMIT_EN" documentation="SITL enable bandwidth limitting on telemetry ports with non-zero values">
</param>
      <param humanName="Acceleration of shove x" name="SIM_SHOVE_X" documentation="Acceleration of shove to vehicle in x axis">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Acceleration of shove y" name="SIM_SHOVE_Y" documentation="Acceleration of shove to vehicle in y axis">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Acceleration of shove z" name="SIM_SHOVE_Z" documentation="Acceleration of shove to vehicle in z axis">
        <field name="Units">m/s/s</field>
        <field name="UnitText">meters per square second</field>
      </param>
      <param humanName="Time length for shove" name="SIM_SHOVE_TIME" documentation="Force to the vehicle over a period of time">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="Opflow noise" name="SIM_FLOW_RND" documentation="Optical Flow sensor measurement noise">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Twist x" name="SIM_TWIST_X" documentation="Rotational acceleration of twist x axis">
        <field name="Units">rad/s/s</field>
        <field name="UnitText">radians per square second</field>
      </param>
      <param humanName="Twist y" name="SIM_TWIST_Y" documentation="Rotational acceleration of twist y axis">
        <field name="Units">rad/s/s</field>
        <field name="UnitText">radians per square second</field>
      </param>
      <param humanName="Twist z" name="SIM_TWIST_Z" documentation="Rotational acceleration of twist z axis">
        <field name="Units">rad/s/s</field>
        <field name="UnitText">radians per square second</field>
      </param>
      <param humanName="Twist time" name="SIM_TWIST_TIME" documentation="Time that twist is applied on the vehicle">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="Ground behavior" name="SIM_GND_BEHAV" documentation="Ground behavior of aircraft (tailsitter, no movement, forward only)">
</param>
      <param humanName="IMU orientation" name="SIM_IMU_ORIENT" documentation="Simulated orientation of the IMUs" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">Yaw45</value>
          <value code="2">Yaw90</value>
          <value code="3">Yaw135</value>
          <value code="4">Yaw180</value>
          <value code="5">Yaw225</value>
          <value code="6">Yaw270</value>
          <value code="7">Yaw315</value>
          <value code="8">Roll180</value>
          <value code="9">Yaw45Roll180</value>
          <value code="10">Yaw90Roll180</value>
          <value code="11">Yaw135Roll180</value>
          <value code="12">Pitch180</value>
          <value code="13">Yaw225Roll180</value>
          <value code="14">Yaw270Roll180</value>
          <value code="15">Yaw315Roll180</value>
          <value code="16">Roll90</value>
          <value code="17">Yaw45Roll90</value>
          <value code="18">Yaw90Roll90</value>
          <value code="19">Yaw135Roll90</value>
          <value code="20">Roll270</value>
          <value code="21">Yaw45Roll270</value>
          <value code="22">Yaw90Roll270</value>
          <value code="23">Yaw135Roll270</value>
          <value code="24">Pitch90</value>
          <value code="25">Pitch270</value>
          <value code="26">Yaw90Pitch180</value>
          <value code="27">Yaw270Pitch180</value>
          <value code="28">Pitch90Roll90</value>
          <value code="29">Pitch90Roll180</value>
          <value code="30">Pitch90Roll270</value>
          <value code="31">Pitch180Roll90</value>
          <value code="32">Pitch180Roll270</value>
          <value code="33">Pitch270Roll90</value>
          <value code="34">Pitch270Roll180</value>
          <value code="35">Pitch270Roll270</value>
          <value code="36">Yaw90Pitch180Roll90</value>
          <value code="37">Yaw270Roll90</value>
          <value code="38">Yaw293Pitch68Roll180</value>
          <value code="39">Pitch315</value>
          <value code="40">Pitch315Roll90</value>
          <value code="42">Roll45</value>
          <value code="43">Roll315</value>
          <value code="100">Custom 4.1 and older</value>
          <value code="101">Custom 1</value>
          <value code="102">Custom 2</value>
        </values>
      </param>
      <param humanName="Wave enable" name="SIM_WAVE_ENABLE" documentation="Wave enable and modes">
        <values>
          <value code="0">disabled</value>
          <value code="1">roll and pitch</value>
          <value code="2">roll and pitch and heave</value>
        </values>
      </param>
      <param humanName="Wave length" name="SIM_WAVE_LENGTH" documentation="Wave length in SITL">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Wave amplitude" name="SIM_WAVE_AMP" documentation="Wave amplitude in SITL">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Wave direction" name="SIM_WAVE_DIR" documentation="Direction wave is coming from">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Wave speed" name="SIM_WAVE_SPEED" documentation="Wave speed in SITL">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Tide direction" name="SIM_TIDE_DIR" documentation="Tide direction wave is coming from">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Tide speed" name="SIM_TIDE_SPEED" documentation="Tide speed in simulation">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Original Position (Latitude)" name="SIM_OPOS_LAT" documentation="Specifies vehicle's startup latitude" user="Advanced">
</param>
      <param humanName="Original Position (Longitude)" name="SIM_OPOS_LNG" documentation="Specifies vehicle's startup longitude" user="Advanced">
</param>
      <param humanName="Original Position (Altitude)" name="SIM_OPOS_ALT" documentation="Specifies vehicle's startup altitude (AMSL)" user="Advanced">
</param>
      <param humanName="Original Position (Heading)" name="SIM_OPOS_HDG" documentation="Specifies vehicle's startup heading (0-360)" user="Advanced">
</param>
      <param humanName="Extra delay per main loop" name="SIM_LOOP_DELAY" documentation="Extra time delay per main loop">
        <field name="Units">us</field>
        <field name="UnitText">microseconds</field>
      </param>
      <param humanName="Type of Electronic Fuel Injection" name="SIM_EFI_TYPE" documentation="Different types of Electronic Fuel Injection (EFI) systems">
        <values>
          <value code="0">None</value>
          <value code="1">MegaSquirt EFI system</value>
          <value code="2">Löweheiser EFI system</value>
          <value code="8">Hirth engines</value>
        </values>
      </param>
      <param humanName="Motor harmonics" name="SIM_VIB_MOT_HMNC" documentation="Motor harmonics generated in SITL">
</param>
      <param humanName="Motor mask" name="SIM_VIB_MOT_MASK" documentation="Motor mask, allowing external simulators to mark motors">
</param>
      <param humanName="Max motor vibration frequency" name="SIM_VIB_MOT_MAX" documentation="Max frequency to use as baseline for adding motor noise for the gyros and accels">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Minimum throttle INS noise" name="SIM_INS_THR_MIN" documentation="Minimum throttle for simulated ins noise">
</param>
      <param humanName="Vibration motor scale" name="SIM_VIB_MOT_MULT" documentation="Amplitude scaling of motor noise relative to gyro/accel noise">
</param>
      <param humanName="Odometry enable" name="SIM_ODOM_ENABLE" documentation="SITL odometry enabl">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="LED layout" name="SIM_LED_LAYOUT" documentation="LED layout config value">
</param>
      <param humanName="Thermal scenarios" name="SIM_THML_SCENARI" documentation="Scenario for thermalling simulation, for soaring">
</param>
      <param humanName="Loop rate" name="SIM_RATE_HZ" documentation="SITL Loop rate">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="IMU count" name="SIM_IMU_COUNT" documentation="Number of simulated IMUs to create">
</param>
      <param humanName="Baro count" name="SIM_BARO_COUNT" documentation="Number of simulated baros to create in SITL">
        <field name="Range">0 3</field>
      </param>
      <param humanName="Loop time jitter" name="SIM_TIME_JITTER" documentation="Upper limit of random jitter in loop time" user="Advanced">
        <field name="Units">us</field>
        <field name="UnitText">microseconds</field>
      </param>
      <param humanName="Simulated ESC Telemetry" name="SIM_ESC_TELEM" documentation="enable perfect simulated ESC telemetry" user="Advanced">
</param>
      <param humanName="ESC RPM when armed" name="SIM_ESC_ARM_RPM" documentation="Simulated RPM when motors are armed" user="Advanced">
</param>
      <param humanName="UART byte loss percentage" name="SIM_UART_LOSS" documentation="Sets percentage of outgoing byte loss on UARTs" user="Advanced">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="Simulated ADSB Type mask" name="SIM_ADSB_TYPES" documentation="specifies which simulated ADSB types are active" user="Advanced">
        <bitmask>
          <bit code="0">MAVLink</bit>
          <bit code="3">SageTechMXS</bit>
        </bitmask>
        <field name="Bitmask">0:MAVLink,3:SageTechMXS</field>
      </param>
      <param humanName="Simulated OSD number of text columns" name="SIM_OSD_COLUMNS" documentation="Simulated OSD number of text columns">
        <field name="Range">10 100</field>
      </param>
      <param humanName="Simulated OSD number of text rows" name="SIM_OSD_ROWS" documentation="Simulated OSD number of text rows">
        <field name="Range">10 100</field>
      </param>
      <param humanName="Initial Latitude Offset" name="SIM_INIT_LAT_OFS" documentation="GPS initial lat offset from origin">
</param>
      <param humanName="Initial Longitude Offset" name="SIM_INIT_LON_OFS" documentation="GPS initial lon offset from origin">
</param>
      <param humanName="Initial Altitude Offset" name="SIM_INIT_ALT_OFS" documentation="GPS initial alt offset from origin">
</param>
      <param humanName="GPS Log Number" name="SIM_GPS_LOG_NUM" documentation="Log number for GPS:update_file()">
</param>
      <param humanName="Mag motor noise factor" name="SIM_MAG_RND" documentation="Scaling factor for simulated vibration from motors" user="Advanced">
</param>
      <param humanName="Motor magnetic interference" name="SIM_MAG_MOT_X" documentation="Simulates distortion of magnetometer readings caused by motor current (X-axis)" user="Advanced">
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
      </param>
      <param humanName="Motor magnetic interference" name="SIM_MAG_MOT_Y" documentation="Simulates distortion of magnetometer readings caused by motor current (Y-axis)" user="Advanced">
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
      </param>
      <param humanName="Motor magnetic interference" name="SIM_MAG_MOT_Z" documentation="Simulates distortion of magnetometer readings caused by motor current (Z-axis)" user="Advanced">
        <field name="Units">mGauss/A</field>
        <field name="UnitText">milligauss per ampere</field>
      </param>
      <param humanName="Mag measurement delay" name="SIM_MAG_DELAY" documentation="Magnetometer measurement delay" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="Magnetometer offset applied to SITL" name="SIM_MAG1_OFS_X" documentation="Magnetometer offset injected into the simulation (X-axis)" user="Advanced">
</param>
      <param humanName="Magnetometer offset applied to SITL" name="SIM_MAG1_OFS_Y" documentation="Magnetometer offset injected into the simulation (Y-axis)" user="Advanced">
</param>
      <param humanName="Magnetometer offset applied to SITL" name="SIM_MAG1_OFS_Z" documentation="Magnetometer offset injected into the simulation (Z-axis)" user="Advanced">
</param>
      <param humanName="NED anomaly vector at ground level" name="SIM_MAG_ALY_X" documentation="Simulates localized magnetic field distortions at ground level that decays with altitude. (X-axis)" user="Advanced">
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
      </param>
      <param humanName="NED anomaly vector at ground level" name="SIM_MAG_ALY_Y" documentation="Simulates localized magnetic field distortions at ground level that decays with altitude. (Y-axis)" user="Advanced">
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
      </param>
      <param humanName="NED anomaly vector at ground level" name="SIM_MAG_ALY_Z" documentation="Simulates localized magnetic field distortions at ground level that decays with altitude. (Z-axis)" user="Advanced">
        <field name="Units">mGauss</field>
        <field name="UnitText">milligauss</field>
      </param>
      <param humanName="Magnetic anomaly height" name="SIM_MAG_ALY_HGT" documentation="Height above ground where anomally strength has decayed to 1/8 of the ground level value" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Magnetometer soft-iron diagonal X component" name="SIM_MAG1_DIA_X" documentation="DIA_X in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron diagonal Y component" name="SIM_MAG1_DIA_Y" documentation="DIA_Y in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron diagonal Z component" name="SIM_MAG1_DIA_Z" documentation="DIA_Z in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron off-diagonal X component" name="SIM_MAG1_ODI_X" documentation="ODI_X in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron off-diagonal Y component" name="SIM_MAG1_ODI_Y" documentation="ODI_Y in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron off-diagonal Z component" name="SIM_MAG1_ODI_Z" documentation="ODI_Z in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="MAG1 Orientation" name="SIM_MAG1_ORIENT" documentation="MAG1 external compass orientation" user="Advanced">
</param>
      <param humanName="MAG1 Scaling factor" name="SIM_MAG1_SCALING" documentation="Scale the compass 1 to simulate sensor scale factor errors" user="Advanced">
</param>
      <param humanName="MAG1 Device ID" name="SIM_MAG1_DEVID" documentation="Device ID of simulated compass 1" user="Advanced">
</param>
      <param humanName="MAG2 Device ID" name="SIM_MAG2_DEVID" documentation="Device ID of simulated compass 2" user="Advanced">
</param>
      <param humanName="MAG3 Device ID" name="SIM_MAG3_DEVID" documentation="Device ID of simulated compass 3" user="Advanced">
</param>
      <param humanName="MAG2 Device ID" name="SIM_MAG4_DEVID" documentation="Device ID of simulated compass 4" user="Advanced">
</param>
      <param humanName="MAG5 Device ID" name="SIM_MAG5_DEVID" documentation="Device ID of simulated compass 5" user="Advanced">
</param>
      <param humanName="MAG6 Device ID" name="SIM_MAG6_DEVID" documentation="Device ID of simulated compass 6" user="Advanced">
</param>
      <param humanName="MAG7 Device ID" name="SIM_MAG7_DEVID" documentation="Device ID of simulated compass 7" user="Advanced">
</param>
      <param humanName="MAG8 Device ID" name="SIM_MAG8_DEVID" documentation="Device ID of simulated compass 8" user="Advanced">
</param>
      <param humanName="MAG1 Failure" name="SIM_MAG1_FAIL" documentation="Simulated failure of MAG1" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">MAG1 Failure</value>
        </values>
      </param>
      <param humanName="Magnetometer offset applied to SITL" name="SIM_MAG2_OFS_X" documentation="Magnetometer offset injected into the simulation (X-axis)" user="Advanced">
</param>
      <param humanName="Magnetometer offset applied to SITL" name="SIM_MAG2_OFS_Y" documentation="Magnetometer offset injected into the simulation (Y-axis)" user="Advanced">
</param>
      <param humanName="Magnetometer offset applied to SITL" name="SIM_MAG2_OFS_Z" documentation="Magnetometer offset injected into the simulation (Z-axis)" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron diagonal X component" name="SIM_MAG2_DIA_X" documentation="DIA_X in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron diagonal Y component" name="SIM_MAG2_DIA_Y" documentation="DIA_Y in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron diagonal Z component" name="SIM_MAG2_DIA_Z" documentation="DIA_Z in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron off-diagonal X component" name="SIM_MAG2_ODI_X" documentation="ODI_X in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron off-diagonal Y component" name="SIM_MAG2_ODI_Y" documentation="ODI_Y in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron off-diagonal Z component" name="SIM_MAG2_ODI_Z" documentation="ODI_Z in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="MAG2 Orientation" name="SIM_MAG2_ORIENT" documentation="MAG2 external compass orientation" user="Advanced">
</param>
      <param humanName="MAG2 Failure" name="SIM_MAG2_FAIL" documentation="Simulated failure of MAG2" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">MAG2 Failure</value>
        </values>
      </param>
      <param humanName="MAG2 Scaling factor" name="SIM_MAG2_SCALING" documentation="Scale the compass 2 to simulate sensor scale factor errors" user="Advanced">
</param>
      <param humanName="Magnetometer offset applied to SITL" name="SIM_MAG3_OFS_X" documentation="Magnetometer offset injected into the simulation (X-axis)" user="Advanced">
</param>
      <param humanName="Magnetometer offset applied to SITL" name="SIM_MAG3_OFS_Y" documentation="Magnetometer offset injected into the simulation (Y-axis)" user="Advanced">
</param>
      <param humanName="Magnetometer offset applied to SITL" name="SIM_MAG3_OFS_Z" documentation="Magnetometer offset injected into the simulation (Z-axis)" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron diagonal X component" name="SIM_MAG3_DIA_X" documentation="DIA_X in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron diagonal Y component" name="SIM_MAG3_DIA_Y" documentation="DIA_Y in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron diagonal Z component" name="SIM_MAG3_DIA_Z" documentation="DIA_Z in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron off-diagonal X component" name="SIM_MAG3_ODI_X" documentation="ODI_X in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron off-diagonal Y component" name="SIM_MAG3_ODI_Y" documentation="ODI_Y in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="Magnetometer soft-iron off-diagonal Z component" name="SIM_MAG3_ODI_Z" documentation="ODI_Z in the magnetometer soft-iron calibration matrix: [[DIA_X, ODI_X, ODI_Y], [ODI_X, DIA_Y, ODI_Z], [ODI_Y, ODI_Z, DIA_Z]]" user="Advanced">
</param>
      <param humanName="MAG3 Failure" name="SIM_MAG3_FAIL" documentation="Simulated failure of MAG3" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">MAG3 Failure</value>
        </values>
      </param>
      <param humanName="MAG3 Scaling factor" name="SIM_MAG3_SCALING" documentation="Scale the compass 3 to simulate sensor scale factor errors" user="Advanced">
</param>
      <param humanName="MAG3 Orientation" name="SIM_MAG3_ORIENT" documentation="MAG3 external compass orientation" user="Advanced">
</param>
      <param humanName="Save MAG devids on startup" name="SIM_MAG_SAVE_IDS" documentation="This forces saving of compass devids on startup so that simulated compasses start as calibrated" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="IMU temperature start" name="SIM_IMUT_START" documentation="Starting IMU temperature of a curve">
</param>
      <param humanName="IMU temperature end" name="SIM_IMUT_END" documentation="Ending IMU temperature of a curve">
</param>
      <param humanName="IMU temperature time constant" name="SIM_IMUT_TCONST" documentation="IMU temperature time constant of the curve">
</param>
      <param humanName="IMU fixed temperature" name="SIM_IMUT_FIXED" documentation="IMU fixed temperature by user">
</param>
      <param humanName="Accel 1 bias" name="SIM_ACC1_BIAS_X" documentation="bias of simulated accelerometer sensor (X-axis)" user="Advanced">
</param>
      <param humanName="Accel 1 bias" name="SIM_ACC1_BIAS_Y" documentation="bias of simulated accelerometer sensor (Y-axis)" user="Advanced">
</param>
      <param humanName="Accel 1 bias" name="SIM_ACC1_BIAS_Z" documentation="bias of simulated accelerometer sensor (Z-axis)" user="Advanced">
</param>
      <param humanName="Accel 2 bias" name="SIM_ACC2_BIAS_X" documentation="bias of simulated accelerometer sensor (X-axis)" user="Advanced">
</param>
      <param humanName="Accel 2 bias" name="SIM_ACC2_BIAS_Y" documentation="bias of simulated accelerometer sensor (Y-axis)" user="Advanced">
</param>
      <param humanName="Accel 2 bias" name="SIM_ACC2_BIAS_Z" documentation="bias of simulated accelerometer sensor (Z-axis)" user="Advanced">
</param>
      <param humanName="Accel 3 bias" name="SIM_ACC3_BIAS_X" documentation="bias of simulated accelerometer sensor (X-axis)" user="Advanced">
</param>
      <param humanName="Accel 3 bias" name="SIM_ACC3_BIAS_Y" documentation="bias of simulated accelerometer sensor (Y-axis)" user="Advanced">
</param>
      <param humanName="Accel 3 bias" name="SIM_ACC3_BIAS_Z" documentation="bias of simulated accelerometer sensor (Z-axis)" user="Advanced">
</param>
      <param humanName="Gyro 1 motor noise factor" name="SIM_GYR1_RND" documentation="scaling factor for simulated vibration from motors" user="Advanced">
</param>
      <param humanName="Gyro 2 motor noise factor" name="SIM_GYR2_RND" documentation="scaling factor for simulated vibration from motors" user="Advanced">
</param>
      <param humanName="Gyro 3 motor noise factor" name="SIM_GYR3_RND" documentation="scaling factor for simulated vibration from motors" user="Advanced">
</param>
      <param humanName="Accel 1 motor noise factor" name="SIM_ACC1_RND" documentation="scaling factor for simulated vibration from motors" user="Advanced">
</param>
      <param humanName="Accel 2 motor noise factor" name="SIM_ACC2_RND" documentation="scaling factor for simulated vibration from motors" user="Advanced">
</param>
      <param humanName="Accel 3 motor noise factor" name="SIM_ACC3_RND" documentation="scaling factor for simulated vibration from motors" user="Advanced">
</param>
      <param humanName="Gyro 1 scaling factor" name="SIM_GYR1_SCALE_X" documentation="scaling factors applied to simulated gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Gyro 1 scaling factor" name="SIM_GYR1_SCALE_Y" documentation="scaling factors applied to simulated gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Gyro 1 scaling factor" name="SIM_GYR1_SCALE_Z" documentation="scaling factors applied to simulated gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Gyro 2 scaling factor" name="SIM_GYR2_SCALE_X" documentation="scaling factors applied to simulated gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Gyro 2 scaling factor" name="SIM_GYR2_SCALE_Y" documentation="scaling factors applied to simulated gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Gyro 2 scaling factor" name="SIM_GYR2_SCALE_Z" documentation="scaling factors applied to simulated gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Gyro 3 scaling factor" name="SIM_GYR3_SCALE_X" documentation="scaling factors applied to simulated gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Gyro 3 scaling factor" name="SIM_GYR3_SCALE_Y" documentation="scaling factors applied to simulated gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Gyro 3 scaling factor" name="SIM_GYR3_SCALE_Z" documentation="scaling factors applied to simulated gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="ACCEL1 Failure" name="SIM_ACCEL1_FAIL" documentation="Simulated failure of ACCEL1" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">ACCEL1 Failure</value>
        </values>
      </param>
      <param humanName="ACCEL2 Failure" name="SIM_ACCEL2_FAIL" documentation="Simulated failure of ACCEL2" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">ACCEL2 Failure</value>
        </values>
      </param>
      <param humanName="ACCEL3 Failure" name="SIM_ACCEL3_FAIL" documentation="Simulated failure of ACCEL3" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">ACCEL3 Failure</value>
        </values>
      </param>
      <param humanName="Gyro Failure Mask" name="SIM_GYR_FAIL_MSK" documentation="Determines if the gyro reading updates are stopped when for an IMU simulated failure by ACCELx_FAIL params" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Readings stopped</value>
        </values>
      </param>
      <param humanName="Accelerometer Failure Mask" name="SIM_ACC_FAIL_MSK" documentation="Determines if the acclerometer reading updates are stopped when for an IMU simulated failure by ACCELx_FAIL params" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Readings stopped</value>
        </values>
      </param>
      <param humanName="Accel 1 scaling factor" name="SIM_ACC1_SCAL_X" documentation="scaling factors applied to simulated accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Accel 1 scaling factor" name="SIM_ACC1_SCAL_Y" documentation="scaling factors applied to simulated accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Accel 1 scaling factor" name="SIM_ACC1_SCAL_Z" documentation="scaling factors applied to simulated accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Accel 2 scaling factor" name="SIM_ACC2_SCAL_X" documentation="scaling factors applied to simulated accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Accel 2 scaling factor" name="SIM_ACC2_SCAL_Y" documentation="scaling factors applied to simulated accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Accel 2 scaling factor" name="SIM_ACC2_SCAL_Z" documentation="scaling factors applied to simulated accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Accel 3 scaling factor" name="SIM_ACC3_SCAL_X" documentation="scaling factors applied to simulated accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Accel 3 scaling factor" name="SIM_ACC3_SCAL_Y" documentation="scaling factors applied to simulated accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Accel 3 scaling factor" name="SIM_ACC3_SCAL_Z" documentation="scaling factors applied to simulated accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Accelerometer trim" name="SIM_ACC_TRIM_X" documentation="Trim applied to simulated accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Accelerometer trim" name="SIM_ACC_TRIM_Y" documentation="Trim applied to simulated accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Accelerometer trim" name="SIM_ACC_TRIM_Z" documentation="Trim applied to simulated accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="JSON master instance" name="SIM_JSON_MASTER" documentation="the instance number to  take servos from">
</param>
      <param humanName="SIM-on_hardware Output Enable Mask" name="SIM_OH_MASK" documentation="channels which are passed through to actual hardware when running sim on actual hardware">
</param>
      <param humanName="Gyro data to/from files" name="SIM_GYR_FILE_RW" documentation="Read and write gyro data to/from files">
        <values>
          <value code="0">Stop writing data</value>
          <value code="1">Read data from file</value>
          <value code="2">Write data to a file</value>
          <value code="3">Read data from file and stop on EOF</value>
        </values>
      </param>
      <param humanName="Accelerometer data to/from files" name="SIM_ACC_FILE_RW" documentation="Read and write accelerometer data to/from files">
        <values>
          <value code="0">Stop writing data</value>
          <value code="1">Read data from file</value>
          <value code="2">Write data to a file</value>
          <value code="3">Read data from file and stop on EOF</value>
        </values>
      </param>
      <param humanName="First Gyro bias" name="SIM_GYR1_BIAS_X" documentation="First Gyro bias (X-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="First Gyro bias" name="SIM_GYR1_BIAS_Y" documentation="First Gyro bias (Y-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="First Gyro bias" name="SIM_GYR1_BIAS_Z" documentation="First Gyro bias (Z-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Second Gyro bias" name="SIM_GYR2_BIAS_X" documentation="Second Gyro bias (X-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Second Gyro bias" name="SIM_GYR2_BIAS_Y" documentation="Second Gyro bias (Y-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Second Gyro bias" name="SIM_GYR2_BIAS_Z" documentation="Second Gyro bias (Z-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Third Gyro bias" name="SIM_GYR3_BIAS_X" documentation="Third Gyro bias (X-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Third Gyro bias" name="SIM_GYR3_BIAS_Y" documentation="Third Gyro bias (Y-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Third Gyro bias" name="SIM_GYR3_BIAS_Z" documentation="Third Gyro bias (Z-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Accel 4 scaling factor" name="SIM_ACC4_SCAL_X" documentation="scaling factors applied to simulated accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Accel 4 scaling factor" name="SIM_ACC4_SCAL_Y" documentation="scaling factors applied to simulated accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Accel 4 scaling factor" name="SIM_ACC4_SCAL_Z" documentation="scaling factors applied to simulated accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="ACCEL4 Failure" name="SIM_ACCEL4_FAIL" documentation="Simulated failure of ACCEL4" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">ACCEL4 Failure</value>
        </values>
      </param>
      <param humanName="Gyro 4 scaling factor" name="SIM_GYR4_SCALE_X" documentation="scaling factors applied to simulated gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Gyro 4 scaling factor" name="SIM_GYR4_SCALE_Y" documentation="scaling factors applied to simulated gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Gyro 4 scaling factor" name="SIM_GYR4_SCALE_Z" documentation="scaling factors applied to simulated gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Accel 4 motor noise factor" name="SIM_ACC4_RND" documentation="scaling factor for simulated vibration from motors" user="Advanced">
</param>
      <param humanName="Gyro 4 motor noise factor" name="SIM_GYR4_RND" documentation="scaling factor for simulated vibration from motors" user="Advanced">
</param>
      <param humanName="Accel 4 bias" name="SIM_ACC4_BIAS_X" documentation="bias of simulated accelerometer sensor (X-axis)" user="Advanced">
</param>
      <param humanName="Accel 4 bias" name="SIM_ACC4_BIAS_Y" documentation="bias of simulated accelerometer sensor (Y-axis)" user="Advanced">
</param>
      <param humanName="Accel 4 bias" name="SIM_ACC4_BIAS_Z" documentation="bias of simulated accelerometer sensor (Z-axis)" user="Advanced">
</param>
      <param humanName="Fourth Gyro bias" name="SIM_GYR4_BIAS_X" documentation="Fourth Gyro bias (X-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Fourth Gyro bias" name="SIM_GYR4_BIAS_Y" documentation="Fourth Gyro bias (Y-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Fourth Gyro bias" name="SIM_GYR4_BIAS_Z" documentation="Fourth Gyro bias (Z-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Accel 4 scaling factor" name="SIM_ACC5_SCAL_X" documentation="scaling factors applied to simulated accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Accel 4 scaling factor" name="SIM_ACC5_SCAL_Y" documentation="scaling factors applied to simulated accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Accel 4 scaling factor" name="SIM_ACC5_SCAL_Z" documentation="scaling factors applied to simulated accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="ACCEL5 Failure" name="SIM_ACCEL5_FAIL" documentation="Simulated failure of ACCEL5" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">ACCEL5 Failure</value>
        </values>
      </param>
      <param humanName="Gyro 5 scaling factor" name="SIM_GYR5_SCALE_X" documentation="scaling factors applied to simulated gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Gyro 5 scaling factor" name="SIM_GYR5_SCALE_Y" documentation="scaling factors applied to simulated gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Gyro 5 scaling factor" name="SIM_GYR5_SCALE_Z" documentation="scaling factors applied to simulated gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Accel 5 motor noise factor" name="SIM_ACC5_RND" documentation="scaling factor for simulated vibration from motors" user="Advanced">
</param>
      <param humanName="Gyro 5 motor noise factor" name="SIM_GYR5_RND" documentation="scaling factor for simulated vibration from motors" user="Advanced">
</param>
      <param humanName="Accel 5 bias" name="SIM_ACC5_BIAS_X" documentation="bias of simulated accelerometer sensor (X-axis)" user="Advanced">
</param>
      <param humanName="Accel 5 bias" name="SIM_ACC5_BIAS_Y" documentation="bias of simulated accelerometer sensor (Y-axis)" user="Advanced">
</param>
      <param humanName="Accel 5 bias" name="SIM_ACC5_BIAS_Z" documentation="bias of simulated accelerometer sensor (Z-axis)" user="Advanced">
</param>
      <param humanName="Fifth Gyro bias" name="SIM_GYR5_BIAS_X" documentation="Fifth Gyro bias (X-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Fifth Gyro bias" name="SIM_GYR5_BIAS_Y" documentation="Fifth Gyro bias (Y-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="Fifth Gyro bias" name="SIM_GYR5_BIAS_Z" documentation="Fifth Gyro bias (Z-axis)" user="Advanced">
        <field name="Units">rad/s</field>
        <field name="UnitText">radians per second</field>
      </param>
      <param humanName="SIM-on_hardware Relay Enable Mask" name="SIM_OH_RELAY_MSK" documentation="Allow relay output operation when running SIM-on-hardware">
</param>
      <param humanName="Simulated Clamp Channel" name="SIM_CLAMP_CH" documentation="If non-zero the vehicle will be clamped in position until the value on this servo channel passes 1800PWM">
</param>
      <param humanName="Enable simulated temperature disturbance for sensor data" name="SIM_IMUT1_ENABLE" documentation="Enable the injection of temperature disturbance to the accelerometer and gyroscope data to simulate temperature calibration" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enabled</value>
          <value code="2">Learn Calibration</value>
        </values>
      </param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT1_ACC1_X" documentation="This is the applied simulated acceleration to the 1st accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT1_ACC1_Y" documentation="This is the applied simulated acceleration to the 1st accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT1_ACC1_Z" documentation="This is the applied simulated acceleration to the 1st accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT1_ACC2_X" documentation="This is the applied simulated acceleration to the 2nd accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT1_ACC2_Y" documentation="This is the applied simulated acceleration to the 2nd accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT1_ACC2_Z" documentation="This is the applied simulated acceleration to the 2nd accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT1_ACC3_X" documentation="This is the applied simulated acceleration to the 3rd accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT1_ACC3_Y" documentation="This is the applied simulated acceleration to the 3rd accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT1_ACC3_Z" documentation="This is the applied simulated acceleration to the 3rd accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT1_GYR1_X" documentation="This is the applied simulated angular rate to the 1st gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT1_GYR1_Y" documentation="This is the applied simulated angular rate to the 1st gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT1_GYR1_Z" documentation="This is the applied simulated angular rate to the 1st gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT1_GYR2_X" documentation="This is the applied simulated angular rate to the 2nd gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT1_GYR2_Y" documentation="This is the applied simulated angular rate to the 2nd gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT1_GYR2_Z" documentation="This is the applied simulated angular rate to the 2nd gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT1_GYR3_X" documentation="This is the applied simulated angular rate to the 3rd gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT1_GYR3_Y" documentation="This is the applied simulated angular rate to the 3rd gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT1_GYR3_Z" documentation="This is the applied simulated angular rate to the 3rd gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Simulated temperature calibration max" name="SIM_IMUT1_TMAX" documentation="The maximum simulated temperature that the calibration is valid for. This must be at least 10 degrees above TMIN for calibration" user="Advanced">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Range">-70 80</field>
      </param>
      <param humanName="Simulated temperature calibration min" name="SIM_IMUT1_TMIN" documentation="The minimum simulated temperature that the calibration is valid for" user="Advanced">
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
        <field name="Range">-70 80</field>
      </param>
      <param humanName="Enable simulated temperature disturbance for sensor data" name="SIM_IMUT2_ENABLE" documentation="Enable the injection of temperature disturbance to the accelerometer and gyroscope data to simulate temperature calibration" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enabled</value>
          <value code="2">Learn Calibration</value>
        </values>
      </param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT2_ACC1_X" documentation="This is the applied simulated acceleration to the 1st accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT2_ACC1_Y" documentation="This is the applied simulated acceleration to the 1st accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT2_ACC1_Z" documentation="This is the applied simulated acceleration to the 1st accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT2_ACC2_X" documentation="This is the applied simulated acceleration to the 2nd accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT2_ACC2_Y" documentation="This is the applied simulated acceleration to the 2nd accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT2_ACC2_Z" documentation="This is the applied simulated acceleration to the 2nd accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT2_ACC3_X" documentation="This is the applied simulated acceleration to the 3rd accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT2_ACC3_Y" documentation="This is the applied simulated acceleration to the 3rd accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT2_ACC3_Z" documentation="This is the applied simulated acceleration to the 3rd accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT2_GYR1_X" documentation="This is the applied simulated angular rate to the 1st gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT2_GYR1_Y" documentation="This is the applied simulated angular rate to the 1st gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT2_GYR1_Z" documentation="This is the applied simulated angular rate to the 1st gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT2_GYR2_X" documentation="This is the applied simulated angular rate to the 2nd gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT2_GYR2_Y" documentation="This is the applied simulated angular rate to the 2nd gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT2_GYR2_Z" documentation="This is the applied simulated angular rate to the 2nd gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT2_GYR3_X" documentation="This is the applied simulated angular rate to the 3rd gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT2_GYR3_Y" documentation="This is the applied simulated angular rate to the 3rd gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT2_GYR3_Z" documentation="This is the applied simulated angular rate to the 3rd gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Simulated temperature calibration max" name="SIM_IMUT2_TMAX" documentation="The maximum simulated temperature that the calibration is valid for. This must be at least 10 degrees above TMIN for calibration" user="Advanced">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="Simulated temperature calibration min" name="SIM_IMUT2_TMIN" documentation="The minimum simulated temperature that the calibration is valid for" user="Advanced">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="Enable simulated temperature disturbance for sensor data" name="SIM_IMUT3_ENABLE" documentation="Enable the injection of temperature disturbance to the accelerometer and gyroscope data to simulate temperature calibration" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enabled</value>
          <value code="2">Learn Calibration</value>
        </values>
      </param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT3_ACC1_X" documentation="This is the applied simulated acceleration to the 1st accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT3_ACC1_Y" documentation="This is the applied simulated acceleration to the 1st accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT3_ACC1_Z" documentation="This is the applied simulated acceleration to the 1st accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT3_ACC2_X" documentation="This is the applied simulated acceleration to the 2nd accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT3_ACC2_Y" documentation="This is the applied simulated acceleration to the 2nd accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT3_ACC2_Z" documentation="This is the applied simulated acceleration to the 2nd accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT3_ACC3_X" documentation="This is the applied simulated acceleration to the 3rd accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT3_ACC3_Y" documentation="This is the applied simulated acceleration to the 3rd accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT3_ACC3_Z" documentation="This is the applied simulated acceleration to the 3rd accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT3_GYR1_X" documentation="This is the applied simulated angular rate to the 1st gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT3_GYR1_Y" documentation="This is the applied simulated angular rate to the 1st gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT3_GYR1_Z" documentation="This is the applied simulated angular rate to the 1st gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT3_GYR2_X" documentation="This is the applied simulated angular rate to the 2nd gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT3_GYR2_Y" documentation="This is the applied simulated angular rate to the 2nd gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT3_GYR2_Z" documentation="This is the applied simulated angular rate to the 2nd gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT3_GYR3_X" documentation="This is the applied simulated angular rate to the 3rd gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT3_GYR3_Y" documentation="This is the applied simulated angular rate to the 3rd gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT3_GYR3_Z" documentation="This is the applied simulated angular rate to the 3rd gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Simulated temperature calibration max" name="SIM_IMUT3_TMAX" documentation="The maximum simulated temperature that the calibration is valid for. This must be at least 10 degrees above TMIN for calibration" user="Advanced">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="Simulated temperature calibration min" name="SIM_IMUT3_TMIN" documentation="The minimum simulated temperature that the calibration is valid for" user="Advanced">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="Enable simulated temperature disturbance for sensor data" name="SIM_IMUT4_ENABLE" documentation="Enable the injection of temperature disturbance to the accelerometer and gyroscope data to simulate temperature calibration" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enabled</value>
          <value code="2">Learn Calibration</value>
        </values>
      </param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT4_ACC1_X" documentation="This is the applied simulated acceleration to the 1st accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT4_ACC1_Y" documentation="This is the applied simulated acceleration to the 1st accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT4_ACC1_Z" documentation="This is the applied simulated acceleration to the 1st accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT4_ACC2_X" documentation="This is the applied simulated acceleration to the 2nd accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT4_ACC2_Y" documentation="This is the applied simulated acceleration to the 2nd accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT4_ACC2_Z" documentation="This is the applied simulated acceleration to the 2nd accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT4_ACC3_X" documentation="This is the applied simulated acceleration to the 3rd accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT4_ACC3_Y" documentation="This is the applied simulated acceleration to the 3rd accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT4_ACC3_Z" documentation="This is the applied simulated acceleration to the 3rd accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT4_GYR1_X" documentation="This is the applied simulated angular rate to the 1st gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT4_GYR1_Y" documentation="This is the applied simulated angular rate to the 1st gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT4_GYR1_Z" documentation="This is the applied simulated angular rate to the 1st gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT4_GYR2_X" documentation="This is the applied simulated angular rate to the 2nd gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT4_GYR2_Y" documentation="This is the applied simulated angular rate to the 2nd gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT4_GYR2_Z" documentation="This is the applied simulated angular rate to the 2nd gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT4_GYR3_X" documentation="This is the applied simulated angular rate to the 3rd gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT4_GYR3_Y" documentation="This is the applied simulated angular rate to the 3rd gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT4_GYR3_Z" documentation="This is the applied simulated angular rate to the 3rd gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Simulated temperature calibration max" name="SIM_IMUT4_TMAX" documentation="The maximum simulated temperature that the calibration is valid for. This must be at least 10 degrees above TMIN for calibration" user="Advanced">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="Simulated temperature calibration min" name="SIM_IMUT4_TMIN" documentation="The minimum simulated temperature that the calibration is valid for" user="Advanced">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="Enable simulated temperature disturbance for sensor data" name="SIM_IMUT5_ENABLE" documentation="Enable the injection of temperature disturbance to the accelerometer and gyroscope data to simulate temperature calibration" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enabled</value>
          <value code="2">Learn Calibration</value>
        </values>
      </param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT5_ACC1_X" documentation="This is the applied simulated acceleration to the 1st accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT5_ACC1_Y" documentation="This is the applied simulated acceleration to the 1st accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT5_ACC1_Z" documentation="This is the applied simulated acceleration to the 1st accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT5_ACC2_X" documentation="This is the applied simulated acceleration to the 2nd accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT5_ACC2_Y" documentation="This is the applied simulated acceleration to the 2nd accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT5_ACC2_Z" documentation="This is the applied simulated acceleration to the 2nd accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT5_ACC3_X" documentation="This is the applied simulated acceleration to the 3rd accelerometer (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT5_ACC3_Y" documentation="This is the applied simulated acceleration to the 3rd accelerometer (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated acceleration to accelerometer" name="SIM_IMUT5_ACC3_Z" documentation="This is the applied simulated acceleration to the 3rd accelerometer (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT5_GYR1_X" documentation="This is the applied simulated angular rate to the 1st gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT5_GYR1_Y" documentation="This is the applied simulated angular rate to the 1st gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT5_GYR1_Z" documentation="This is the applied simulated angular rate to the 1st gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT5_GYR2_X" documentation="This is the applied simulated angular rate to the 2nd gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT5_GYR2_Y" documentation="This is the applied simulated angular rate to the 2nd gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT5_GYR2_Z" documentation="This is the applied simulated angular rate to the 2nd gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT5_GYR3_X" documentation="This is the applied simulated angular rate to the 3rd gyroscope (X-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT5_GYR3_Y" documentation="This is the applied simulated angular rate to the 3rd gyroscope (Y-axis)" user="Advanced">
</param>
      <param humanName="Applied simulated angular rate to gyroscope" name="SIM_IMUT5_GYR3_Z" documentation="This is the applied simulated angular rate to the 3rd gyroscope (Z-axis)" user="Advanced">
</param>
      <param humanName="Simulated temperature calibration max" name="SIM_IMUT5_TMAX" documentation="The maximum simulated temperature that the calibration is valid for. This must be at least 10 degrees above TMIN for calibration" user="Advanced">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
      <param humanName="Simulated temperature calibration min" name="SIM_IMUT5_TMIN" documentation="The minimum simulated temperature that the calibration is valid for" user="Advanced">
        <field name="Range">-70 80</field>
        <field name="Units">degC</field>
        <field name="UnitText">degrees Celsius</field>
      </param>
    </parameters>
    <parameters name="SIM_AIS_">
      <param humanName="Number of AIS vessels" name="SIM_AIS_COUNT" documentation="Total number of AIS simulated vessels">
</param>
      <param humanName="AIS radius stddev of vessels" name="SIM_AIS_RADIUS" documentation="Simulated standard deviation of radius in AIS of a vessel">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
    </parameters>
    <parameters name="SIM_ARSPD2_">
      <param humanName="Airspeed sensor noise" name="SIM_ARSPD2_RND" documentation="Simulated Airspeed sensor noise" user="Advanced">
        <field name="Units">Pa</field>
        <field name="UnitText">pascal</field>
      </param>
      <param humanName="Airspeed sensor offset" name="SIM_ARSPD2_OFS" documentation="Simulated Airspeed sensor offset" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Airspeed sensor failure" name="SIM_ARSPD2_FAIL" documentation="Simulates Airspeed sensor 1 failure" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Airspeed sensor failure pressure" name="SIM_ARSPD2_FAILP" documentation="Simulated airspeed sensor failure pressure" user="Advanced">
        <field name="Units">Pa</field>
        <field name="UnitText">pascal</field>
      </param>
      <param humanName="Airspeed pitot tube failure pressure" name="SIM_ARSPD2_PITOT" documentation="Simulated airspeed sensor pitot tube failure pressure" user="Advanced">
        <field name="Units">Pa</field>
        <field name="UnitText">pascal</field>
      </param>
      <param humanName="Airspeed signflip" name="SIM_ARSPD2_SIGN" documentation="Simulated airspeed sensor with reversed pitot/static connections" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Airspeed ratios" name="SIM_ARSPD2_RATIO" documentation="Simulated airspeed sensor ratio" user="Advanced">
</param>
    </parameters>
    <parameters name="SIM_ARSPD_">
      <param humanName="Airspeed sensor noise" name="SIM_ARSPD_RND" documentation="Simulated Airspeed sensor noise" user="Advanced">
        <field name="Units">Pa</field>
        <field name="UnitText">pascal</field>
      </param>
      <param humanName="Airspeed sensor offset" name="SIM_ARSPD_OFS" documentation="Simulated Airspeed sensor offset" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Airspeed sensor failure" name="SIM_ARSPD_FAIL" documentation="Simulates Airspeed sensor 1 failure" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Airspeed sensor failure pressure" name="SIM_ARSPD_FAILP" documentation="Simulated airspeed sensor failure pressure" user="Advanced">
        <field name="Units">Pa</field>
        <field name="UnitText">pascal</field>
      </param>
      <param humanName="Airspeed pitot tube failure pressure" name="SIM_ARSPD_PITOT" documentation="Simulated airspeed sensor pitot tube failure pressure" user="Advanced">
        <field name="Units">Pa</field>
        <field name="UnitText">pascal</field>
      </param>
      <param humanName="Airspeed signflip" name="SIM_ARSPD_SIGN" documentation="Simulated airspeed sensor with reversed pitot/static connections" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Airspeed ratios" name="SIM_ARSPD_RATIO" documentation="Simulated airspeed sensor ratio" user="Advanced">
</param>
    </parameters>
    <parameters name="SIM_BAR2_">
      <param humanName="Barometer noise" name="SIM_BAR2_RND" documentation="Barometer noise in height" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Barometer altitude drift" name="SIM_BAR2_DRIFT" documentation="Barometer altitude drifts at this rate" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Barometer disable" name="SIM_BAR2_DISABLE" documentation="Disable barometer in SITL" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Barometer glitch" name="SIM_BAR2_GLITCH" documentation="Barometer glitch height in SITL" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Barometer freeze" name="SIM_BAR2_FREEZE" documentation="Freeze barometer to last recorded altitude" user="Advanced">
</param>
      <param humanName="Barometer delay" name="SIM_BAR2_DELAY" documentation="Barometer data time delay" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="Wind coefficient forward" name="SIM_BAR2_WCF_FWD" documentation="Barometer wind coefficient direction forward in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient backward" name="SIM_BAR2_WCF_BAK" documentation="Barometer wind coefficient direction backward in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient right" name="SIM_BAR2_WCF_RGT" documentation="Barometer wind coefficient direction right in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient left" name="SIM_BAR2_WCF_LFT" documentation="Barometer wind coefficient direction left in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient up" name="SIM_BAR2_WCF_UP" documentation="Barometer wind coefficient direction up in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient down" name="SIM_BAR2_WCF_DN" documentation="Barometer wind coefficient direction down in SITL" user="Advanced">
</param>
    </parameters>
    <parameters name="SIM_BAR3_">
      <param humanName="Barometer noise" name="SIM_BAR3_RND" documentation="Barometer noise in height" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Barometer altitude drift" name="SIM_BAR3_DRIFT" documentation="Barometer altitude drifts at this rate" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Barometer disable" name="SIM_BAR3_DISABLE" documentation="Disable barometer in SITL" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Barometer glitch" name="SIM_BAR3_GLITCH" documentation="Barometer glitch height in SITL" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Barometer freeze" name="SIM_BAR3_FREEZE" documentation="Freeze barometer to last recorded altitude" user="Advanced">
</param>
      <param humanName="Barometer delay" name="SIM_BAR3_DELAY" documentation="Barometer data time delay" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="Wind coefficient forward" name="SIM_BAR3_WCF_FWD" documentation="Barometer wind coefficient direction forward in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient backward" name="SIM_BAR3_WCF_BAK" documentation="Barometer wind coefficient direction backward in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient right" name="SIM_BAR3_WCF_RGT" documentation="Barometer wind coefficient direction right in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient left" name="SIM_BAR3_WCF_LFT" documentation="Barometer wind coefficient direction left in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient up" name="SIM_BAR3_WCF_UP" documentation="Barometer wind coefficient direction up in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient down" name="SIM_BAR3_WCF_DN" documentation="Barometer wind coefficient direction down in SITL" user="Advanced">
</param>
    </parameters>
    <parameters name="SIM_BARO_">
      <param humanName="Barometer noise" name="SIM_BARO_RND" documentation="Barometer noise in height" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Barometer altitude drift" name="SIM_BARO_DRIFT" documentation="Barometer altitude drifts at this rate" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Barometer disable" name="SIM_BARO_DISABLE" documentation="Disable barometer in SITL" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Barometer glitch" name="SIM_BARO_GLITCH" documentation="Barometer glitch height in SITL" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Barometer freeze" name="SIM_BARO_FREEZE" documentation="Freeze barometer to last recorded altitude" user="Advanced">
</param>
      <param humanName="Barometer delay" name="SIM_BARO_DELAY" documentation="Barometer data time delay" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="Wind coefficient forward" name="SIM_BARO_WCF_FWD" documentation="Barometer wind coefficient direction forward in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient backward" name="SIM_BARO_WCF_BAK" documentation="Barometer wind coefficient direction backward in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient right" name="SIM_BARO_WCF_RGT" documentation="Barometer wind coefficient direction right in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient left" name="SIM_BARO_WCF_LFT" documentation="Barometer wind coefficient direction left in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient up" name="SIM_BARO_WCF_UP" documentation="Barometer wind coefficient direction up in SITL" user="Advanced">
</param>
      <param humanName="Wind coefficient down" name="SIM_BARO_WCF_DN" documentation="Barometer wind coefficient direction down in SITL" user="Advanced">
</param>
    </parameters>
    <parameters name="SIM_BZ_">
      <param humanName="Buzzer enable/disable" name="SIM_BZ_ENABLE" documentation="Allows you to enable (1) or disable (0) the simulated buzzer" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="buzzer pin" name="SIM_BZ_PIN" documentation="The pin number that the Buzzer is connected to (start at 1)" user="Advanced">
        <field name="Range">0 15</field>
      </param>
    </parameters>
    <parameters name="SIM_FTOWESC_">
      <param humanName="FETtec OneWire ESC simulator enable/disable" name="SIM_FTOWESC_ENA" documentation="Allows you to enable (1) or disable (0) the FETtecOneWireESC simulator" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Power off FETtec ESC mask" name="SIM_FTOWESC_POW" documentation="Allows you to turn power off to the simulated ESCs.  Bits correspond to the ESC ID, *NOT* their servo channel." user="Advanced">
</param>
    </parameters>
    <parameters name="SIM_GLD_">
      <param humanName="balloon burst height" name="SIM_GLD_BLN_BRST" documentation="balloon burst height">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="balloon climb rate" name="SIM_GLD_BLN_RATE" documentation="balloon climb rate. If the value is less than zero then the balloon is disabled.">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
    </parameters>
    <parameters name="SIM_GPS1_">
      <param humanName="GPS enable" name="SIM_GPS1_ENABLE" documentation="Enable simulated GPS" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="GPS Lag" name="SIM_GPS1_LAG_MS" documentation="GPS lag" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="GPS type" name="SIM_GPS1_TYPE" documentation="Sets the type of simulation used for GPS" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">UBlox</value>
          <value code="5">NMEA</value>
          <value code="6">SBP</value>
          <value code="7">File</value>
          <value code="8">Nova</value>
          <value code="9">SBP2</value>
          <value code="11">Trimble</value>
          <value code="19">MSP</value>
        </values>
      </param>
      <param humanName="GPS Byteloss" name="SIM_GPS1_BYTELOS" documentation="Percent of bytes lost from GPS" user="Advanced">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="GPS Num Satellites" name="SIM_GPS1_NUMSATS" documentation="Number of satellites GPS has in view">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS1_GLTCH_X" documentation="Glitch offsets of simulated GPS sensor (X-axis)" user="Advanced">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS1_GLTCH_Y" documentation="Glitch offsets of simulated GPS sensor (Y-axis)" user="Advanced">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS1_GLTCH_Z" documentation="Glitch offsets of simulated GPS sensor (Z-axis)" user="Advanced">
</param>
      <param humanName="GPS Hz" name="SIM_GPS1_HZ" documentation="GPS Update rate">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="GPS Altitude Drift" name="SIM_GPS1_DRFTALT" documentation="GPS altitude drift error" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS1_POS_X" documentation="GPS antenna phase center position relative to the body frame origin (X-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS1_POS_Y" documentation="GPS antenna phase center position relative to the body frame origin (Y-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS1_POS_Z" documentation="GPS antenna phase center position relative to the body frame origin (Z-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Noise" name="SIM_GPS1_NOISE" documentation="Amplitude of the GPS altitude error" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Lock Time" name="SIM_GPS1_LCKTIME" documentation="Delay in seconds before GPS acquires lock" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="GPS Altitude Offset" name="SIM_GPS1_ALT_OFS" documentation="GPS Altitude Error">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Heading" name="SIM_GPS1_HDG" documentation="Enable GPS output of NMEA heading HDT sentence or UBLOX_RELPOSNED" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Emit HDT</value>
          <value code="2">Emit THS</value>
          <value code="3">KSXT</value>
          <value code="4">Be Moving Baseline Base</value>
        </values>
      </param>
      <param humanName="GPS Accuracy" name="SIM_GPS1_ACC" documentation="GPS Accuracy" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS1_VERR_X" documentation="GPS Velocity Error Offsets in NED (X-axis)" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS1_VERR_Y" documentation="GPS Velocity Error Offsets in NED (Y-axis)" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS1_VERR_Z" documentation="GPS Velocity Error Offsets in NED (Z-axis)" user="Advanced">
</param>
      <param humanName="GPS jamming enable" name="SIM_GPS1_JAM" documentation="Enable simulated GPS jamming" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPS heading offset" name="SIM_GPS1_HDG_OFS" documentation="GPS heading offset in degrees. how off the simulated GPS heading is from the actual heading" user="Advanced">
</param>
      <param humanName="GPS Options" name="SIM_GPS1_OPTIONS" documentation="GPS Options bitmask" user="Advanced">
        <bitmask>
          <bit code="0">UBlox GPS is F9P</bit>
        </bitmask>
        <field name="Bitmask">0:UBlox GPS is F9P</field>
      </param>
    </parameters>
    <parameters name="SIM_GPS2_">
      <param humanName="GPS enable" name="SIM_GPS2_ENABLE" documentation="Enable simulated GPS" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="GPS Lag" name="SIM_GPS2_LAG_MS" documentation="GPS lag" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="GPS type" name="SIM_GPS2_TYPE" documentation="Sets the type of simulation used for GPS" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">UBlox</value>
          <value code="5">NMEA</value>
          <value code="6">SBP</value>
          <value code="7">File</value>
          <value code="8">Nova</value>
          <value code="9">SBP2</value>
          <value code="11">Trimble</value>
          <value code="19">MSP</value>
        </values>
      </param>
      <param humanName="GPS Byteloss" name="SIM_GPS2_BYTELOS" documentation="Percent of bytes lost from GPS" user="Advanced">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="GPS Num Satellites" name="SIM_GPS2_NUMSATS" documentation="Number of satellites GPS has in view">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS2_GLTCH_X" documentation="Glitch offsets of simulated GPS sensor (X-axis)" user="Advanced">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS2_GLTCH_Y" documentation="Glitch offsets of simulated GPS sensor (Y-axis)" user="Advanced">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS2_GLTCH_Z" documentation="Glitch offsets of simulated GPS sensor (Z-axis)" user="Advanced">
</param>
      <param humanName="GPS Hz" name="SIM_GPS2_HZ" documentation="GPS Update rate">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="GPS Altitude Drift" name="SIM_GPS2_DRFTALT" documentation="GPS altitude drift error" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS2_POS_X" documentation="GPS antenna phase center position relative to the body frame origin (X-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS2_POS_Y" documentation="GPS antenna phase center position relative to the body frame origin (Y-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS2_POS_Z" documentation="GPS antenna phase center position relative to the body frame origin (Z-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Noise" name="SIM_GPS2_NOISE" documentation="Amplitude of the GPS altitude error" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Lock Time" name="SIM_GPS2_LCKTIME" documentation="Delay in seconds before GPS acquires lock" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="GPS Altitude Offset" name="SIM_GPS2_ALT_OFS" documentation="GPS Altitude Error">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Heading" name="SIM_GPS2_HDG" documentation="Enable GPS output of NMEA heading HDT sentence or UBLOX_RELPOSNED" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Emit HDT</value>
          <value code="2">Emit THS</value>
          <value code="3">KSXT</value>
          <value code="4">Be Moving Baseline Base</value>
        </values>
      </param>
      <param humanName="GPS Accuracy" name="SIM_GPS2_ACC" documentation="GPS Accuracy" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS2_VERR_X" documentation="GPS Velocity Error Offsets in NED (X-axis)" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS2_VERR_Y" documentation="GPS Velocity Error Offsets in NED (Y-axis)" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS2_VERR_Z" documentation="GPS Velocity Error Offsets in NED (Z-axis)" user="Advanced">
</param>
      <param humanName="GPS jamming enable" name="SIM_GPS2_JAM" documentation="Enable simulated GPS jamming" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPS heading offset" name="SIM_GPS2_HDG_OFS" documentation="GPS heading offset in degrees. how off the simulated GPS heading is from the actual heading" user="Advanced">
</param>
      <param humanName="GPS Options" name="SIM_GPS2_OPTIONS" documentation="GPS Options bitmask" user="Advanced">
        <bitmask>
          <bit code="0">UBlox GPS is F9P</bit>
        </bitmask>
        <field name="Bitmask">0:UBlox GPS is F9P</field>
      </param>
    </parameters>
    <parameters name="SIM_GPS3_">
      <param humanName="GPS enable" name="SIM_GPS3_ENABLE" documentation="Enable simulated GPS" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="GPS Lag" name="SIM_GPS3_LAG_MS" documentation="GPS lag" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="GPS type" name="SIM_GPS3_TYPE" documentation="Sets the type of simulation used for GPS" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">UBlox</value>
          <value code="5">NMEA</value>
          <value code="6">SBP</value>
          <value code="7">File</value>
          <value code="8">Nova</value>
          <value code="9">SBP2</value>
          <value code="11">Trimble</value>
          <value code="19">MSP</value>
        </values>
      </param>
      <param humanName="GPS Byteloss" name="SIM_GPS3_BYTELOS" documentation="Percent of bytes lost from GPS" user="Advanced">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="GPS Num Satellites" name="SIM_GPS3_NUMSATS" documentation="Number of satellites GPS has in view">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS3_GLTCH_X" documentation="Glitch offsets of simulated GPS sensor (X-axis)" user="Advanced">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS3_GLTCH_Y" documentation="Glitch offsets of simulated GPS sensor (Y-axis)" user="Advanced">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS3_GLTCH_Z" documentation="Glitch offsets of simulated GPS sensor (Z-axis)" user="Advanced">
</param>
      <param humanName="GPS Hz" name="SIM_GPS3_HZ" documentation="GPS Update rate">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="GPS Altitude Drift" name="SIM_GPS3_DRFTALT" documentation="GPS altitude drift error" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS3_POS_X" documentation="GPS antenna phase center position relative to the body frame origin (X-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS3_POS_Y" documentation="GPS antenna phase center position relative to the body frame origin (Y-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS3_POS_Z" documentation="GPS antenna phase center position relative to the body frame origin (Z-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Noise" name="SIM_GPS3_NOISE" documentation="Amplitude of the GPS altitude error" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Lock Time" name="SIM_GPS3_LCKTIME" documentation="Delay in seconds before GPS acquires lock" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="GPS Altitude Offset" name="SIM_GPS3_ALT_OFS" documentation="GPS Altitude Error">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Heading" name="SIM_GPS3_HDG" documentation="Enable GPS output of NMEA heading HDT sentence or UBLOX_RELPOSNED" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Emit HDT</value>
          <value code="2">Emit THS</value>
          <value code="3">KSXT</value>
          <value code="4">Be Moving Baseline Base</value>
        </values>
      </param>
      <param humanName="GPS Accuracy" name="SIM_GPS3_ACC" documentation="GPS Accuracy" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS3_VERR_X" documentation="GPS Velocity Error Offsets in NED (X-axis)" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS3_VERR_Y" documentation="GPS Velocity Error Offsets in NED (Y-axis)" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS3_VERR_Z" documentation="GPS Velocity Error Offsets in NED (Z-axis)" user="Advanced">
</param>
      <param humanName="GPS jamming enable" name="SIM_GPS3_JAM" documentation="Enable simulated GPS jamming" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPS heading offset" name="SIM_GPS3_HDG_OFS" documentation="GPS heading offset in degrees. how off the simulated GPS heading is from the actual heading" user="Advanced">
</param>
      <param humanName="GPS Options" name="SIM_GPS3_OPTIONS" documentation="GPS Options bitmask" user="Advanced">
        <bitmask>
          <bit code="0">UBlox GPS is F9P</bit>
        </bitmask>
        <field name="Bitmask">0:UBlox GPS is F9P</field>
      </param>
    </parameters>
    <parameters name="SIM_GPS4_">
      <param humanName="GPS enable" name="SIM_GPS4_ENABLE" documentation="Enable simulated GPS" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="GPS Lag" name="SIM_GPS4_LAG_MS" documentation="GPS lag" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="GPS type" name="SIM_GPS4_TYPE" documentation="Sets the type of simulation used for GPS" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">UBlox</value>
          <value code="5">NMEA</value>
          <value code="6">SBP</value>
          <value code="7">File</value>
          <value code="8">Nova</value>
          <value code="9">SBP2</value>
          <value code="11">Trimble</value>
          <value code="19">MSP</value>
        </values>
      </param>
      <param humanName="GPS Byteloss" name="SIM_GPS4_BYTELOS" documentation="Percent of bytes lost from GPS" user="Advanced">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
      </param>
      <param humanName="GPS Num Satellites" name="SIM_GPS4_NUMSATS" documentation="Number of satellites GPS has in view">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS4_GLTCH_X" documentation="Glitch offsets of simulated GPS sensor (X-axis)" user="Advanced">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS4_GLTCH_Y" documentation="Glitch offsets of simulated GPS sensor (Y-axis)" user="Advanced">
</param>
      <param humanName="GPS Glitch" name="SIM_GPS4_GLTCH_Z" documentation="Glitch offsets of simulated GPS sensor (Z-axis)" user="Advanced">
</param>
      <param humanName="GPS Hz" name="SIM_GPS4_HZ" documentation="GPS Update rate">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="GPS Altitude Drift" name="SIM_GPS4_DRFTALT" documentation="GPS altitude drift error" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS4_POS_X" documentation="GPS antenna phase center position relative to the body frame origin (X-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS4_POS_Y" documentation="GPS antenna phase center position relative to the body frame origin (Y-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Position" name="SIM_GPS4_POS_Z" documentation="GPS antenna phase center position relative to the body frame origin (Z-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Noise" name="SIM_GPS4_NOISE" documentation="Amplitude of the GPS altitude error" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Lock Time" name="SIM_GPS4_LCKTIME" documentation="Delay in seconds before GPS acquires lock" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="GPS Altitude Offset" name="SIM_GPS4_ALT_OFS" documentation="GPS Altitude Error">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS Heading" name="SIM_GPS4_HDG" documentation="Enable GPS output of NMEA heading HDT sentence or UBLOX_RELPOSNED" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Emit HDT</value>
          <value code="2">Emit THS</value>
          <value code="3">KSXT</value>
          <value code="4">Be Moving Baseline Base</value>
        </values>
      </param>
      <param humanName="GPS Accuracy" name="SIM_GPS4_ACC" documentation="GPS Accuracy" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS4_VERR_X" documentation="GPS Velocity Error Offsets in NED (X-axis)" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS4_VERR_Y" documentation="GPS Velocity Error Offsets in NED (Y-axis)" user="Advanced">
</param>
      <param humanName="GPS Velocity Error" name="SIM_GPS4_VERR_Z" documentation="GPS Velocity Error Offsets in NED (Z-axis)" user="Advanced">
</param>
      <param humanName="GPS jamming enable" name="SIM_GPS4_JAM" documentation="Enable simulated GPS jamming" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="GPS heading offset" name="SIM_GPS4_HDG_OFS" documentation="GPS heading offset in degrees. how off the simulated GPS heading is from the actual heading" user="Advanced">
</param>
      <param humanName="GPS Options" name="SIM_GPS4_OPTIONS" documentation="GPS Options bitmask" user="Advanced">
        <bitmask>
          <bit code="0">UBlox GPS is F9P</bit>
        </bitmask>
        <field name="Bitmask">0:UBlox GPS is F9P</field>
      </param>
    </parameters>
    <parameters name="SIM_GRPE_">
      <param humanName="Gripper servo Sim enable/disable" name="SIM_GRPE_ENABLE" documentation="Allows you to enable (1) or disable (0) the gripper servo simulation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Gripper emp pin" name="SIM_GRPE_PIN" documentation="The pin number that the gripper emp is connected to. (start at 1)" user="Advanced">
        <field name="Range">0 15</field>
      </param>
    </parameters>
    <parameters name="SIM_GRPS_">
      <param humanName="Gripper servo Sim enable/disable" name="SIM_GRPS_ENABLE" documentation="Allows you to enable (1) or disable (0) the gripper servo simulation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Gripper servo pin" name="SIM_GRPS_PIN" documentation="The pin number that the gripper servo is connected to. (start at 1)" user="Advanced">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Gripper Grab PWM" name="SIM_GRPS_GRAB" documentation="PWM value in microseconds sent to Gripper to initiate grabbing the cargo" user="Advanced">
        <field name="Range">1000 2000</field>
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
      </param>
      <param humanName="Gripper Release PWM" name="SIM_GRPS_RELEASE" documentation="PWM value in microseconds sent to Gripper to release the cargo" user="Advanced">
        <field name="Range">1000 2000</field>
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
      </param>
      <param humanName="Gripper close direction" name="SIM_GRPS_REVERSE" documentation="Reverse the closing direction." user="Advanced">
        <values>
          <value code="0">Normal</value>
          <value code="1">Reverse</value>
        </values>
      </param>
    </parameters>
    <parameters name="SIM_IE24_">
      <param humanName="IntelligentEnergy 2.4kWh FuelCell sim enable/disable" name="SIM_IE24_ENABLE" documentation="Allows you to enable (1) or disable (0) the FuelCell simulator" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">V1 Protocol</value>
          <value code="2">V2 Protocol</value>
        </values>
      </param>
      <param humanName="Explicitly set state" name="SIM_IE24_STATE" documentation="Explicitly specify a state for the generator to be in" user="Advanced">
</param>
      <param humanName="Explicitly set error code" name="SIM_IE24_ERROR" documentation="Explicitly specify an error code to send to the generator" user="Advanced">
</param>
    </parameters>
    <parameters name="SIM_PARA_">
      <param humanName="Parachute Sim enable/disable" name="SIM_PARA_ENABLE" documentation="Allows you to enable (1) or disable (0) the Parachute simulation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Parachute pin" name="SIM_PARA_PIN" documentation="The pin number that the Parachute pyrotechnics are connected to. (start at 1)" user="Advanced">
        <field name="Range">0 15</field>
      </param>
    </parameters>
    <parameters name="SIM_PLD_">
      <param humanName="Preland device Sim enable/disable" name="SIM_PLD_ENABLE" documentation="Allows you to enable (1) or disable (0) the Preland simulation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Precland device center's latitude" name="SIM_PLD_LAT" documentation="Precland device center's latitude" user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">0.000001</field>
        <field name="Range">-90 90</field>
      </param>
      <param humanName="Precland device center's longitude" name="SIM_PLD_LON" documentation="Precland device center's longitude" user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">0.000001</field>
        <field name="Range">-180 180</field>
      </param>
      <param humanName="Precland device center's height SITL origin" name="SIM_PLD_HEIGHT" documentation="Precland device center's height above SITL origin. Assumes a 2x2m square as station base" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">1</field>
        <field name="Range">0 10000</field>
      </param>
      <param humanName="Precland device systems rotation from north" name="SIM_PLD_YAW" documentation="Precland device systems rotation from north" user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Increment">1</field>
        <field name="Range">-180 +180</field>
      </param>
      <param humanName="Precland device update rate" name="SIM_PLD_RATE" documentation="Precland device rate. e.g led patter refresh rate, RF message rate, etc." user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 200</field>
      </param>
      <param humanName="Precland device radiance type" name="SIM_PLD_TYPE" documentation="Precland device radiance type: it can be a cylinder, a cone, or a sphere." user="Advanced">
        <values>
          <value code="0">cylinder</value>
          <value code="1">cone</value>
          <value code="2">sphere</value>
        </values>
      </param>
      <param humanName="Precland device alt range" name="SIM_PLD_ALT_LMT" documentation="Precland device maximum range altitude" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 100</field>
      </param>
      <param humanName="Precland device lateral range" name="SIM_PLD_DIST_LMT" documentation="Precland device maximum lateral range" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">5 100</field>
      </param>
      <param humanName="Precland device orientation" name="SIM_PLD_ORIENT" documentation="Precland device orientation vector" user="Advanced">
        <values>
          <value code="0">Front</value>
          <value code="4">Back</value>
          <value code="24">Up</value>
        </values>
      </param>
      <param humanName="SIM_Precland extra options" name="SIM_PLD_OPTIONS" documentation="SIM_Precland extra options" user="Advanced">
        <bitmask>
          <bit code="0">Enable target distance</bit>
        </bitmask>
        <field name="Bitmask">0: Enable target distance</field>
      </param>
      <param humanName="SIM_Precland follow ship" name="SIM_PLD_SHIP" documentation="This makes the position of the landing beacon follow the simulated ship from SIM_SHIP. The ship movement is controlled with the SIM_SHIP parameters" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
    </parameters>
    <parameters name="SIM_RFL_">
      <param humanName="FlightAxis options" name="SIM_RFL_OPTS" documentation="Bitmask of FlightAxis options" user="Advanced">
        <bitmask>
          <bit code="0">Reset position on startup</bit>
          <bit code="1">Swap first 4 and last 4 servos (for quadplane testing)</bit>
          <bit code="2">Demix heli servos and send roll/pitch/collective/yaw</bit>
          <bit code="3">Don't print frame rate stats</bit>
          <bit code="4">Don't log Dt stats</bit>
        </bitmask>
        <field name="Bitmask">0: Reset position on startup, 1: Swap first 4 and last 4 servos (for quadplane testing), 2: Demix heli servos and send roll/pitch/collective/yaw, 3: Don't print frame rate stats, 4: Don't log Dt stats</field>
      </param>
      <param humanName="FlightAxis IMU synthetic sample rate" name="SIM_RFL_SAMPLEHZ" documentation="FlightAxis IMU synthetic sample rate" user="Advanced">
</param>
    </parameters>
    <parameters name="SIM_RICH_">
      <param humanName="RichenPower Generator sim enable/disable" name="SIM_RICH_ENABLE" documentation="Allows you to enable (1) or disable (0) the RichenPower simulator" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Pin RichenPower is connectred to" name="SIM_RICH_CTRL" documentation="The pin number that the RichenPower spinner servo is connected to. (start at 1)" user="Advanced">
        <field name="Range">0 15</field>
      </param>
    </parameters>
    <parameters name="SIM_SB_">
      <param humanName="mass" name="SIM_SB_MASS" documentation="mass of blimp not including lifting gas">
        <field name="Units">kg</field>
        <field name="UnitText">kilograms</field>
      </param>
      <param humanName="helium mass" name="SIM_SB_HMASS" documentation="mass of lifting gas">
        <field name="Units">kg</field>
        <field name="UnitText">kilograms</field>
      </param>
      <param humanName="arm length" name="SIM_SB_ARM_LEN" documentation="distance from center of mass to one motor">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="motor thrust" name="SIM_SB_MOT_THST" documentation="thrust at max throttle for one motor">
        <field name="Units">N</field>
        <field name="UnitText">Newtons</field>
      </param>
      <param humanName="drag in forward direction" name="SIM_SB_DRAG_FWD" documentation="drag on X axis">
</param>
      <param humanName="drag in sidewards direction" name="SIM_SB_DRAG_SIDE" documentation="drag on Y axis">
</param>
      <param humanName="drag in upward direction" name="SIM_SB_DRAG_UP" documentation="drag on Z axis">
</param>
      <param humanName="moment of inertia in yaw" name="SIM_SB_MOI_YAW" documentation="moment of inertia in yaw">
</param>
      <param humanName="moment of inertia in roll" name="SIM_SB_MOI_ROLL" documentation="moment of inertia in roll">
</param>
      <param humanName="moment of inertia in pitch" name="SIM_SB_MOI_PITCH" documentation="moment of inertia in pitch">
</param>
      <param humanName="altitude target" name="SIM_SB_ALT_TARG" documentation="altitude target">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="target climb rate" name="SIM_SB_CLMB_RT" documentation="target climb rate">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="yaw rate" name="SIM_SB_YAW_RT" documentation="maximum yaw rate with full left throttle at target altitude">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
      </param>
      <param humanName="motor angle" name="SIM_SB_MOT_ANG" documentation="maximum motor tilt angle">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="center of lift" name="SIM_SB_COL" documentation="center of lift position above CoG">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="weathervaning offset" name="SIM_SB_WVANE" documentation="center of drag for weathervaning">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="free lift rate" name="SIM_SB_FLR" documentation="amount of additional lift generated by the helper balloon (for the purpose of ascent), as a proportion of the 'neutral buoyancy' lift">
</param>
    </parameters>
    <parameters name="SIM_SERVO_">
      <param humanName="servo speed" name="SIM_SERVO_SPEED" documentation="servo speed (time for 60 degree deflection). If DELAY and FILTER are not set then this is converted to a 1p lowpass filter. If DELAY or FILTER are set then this is treated as a rate of change limit">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="servo delay" name="SIM_SERVO_DELAY" documentation="servo delay">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
      </param>
      <param humanName="servo filter" name="SIM_SERVO_FILTER" documentation="servo filter">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
    </parameters>
    <parameters name="SIM_SHIP_">
      <param humanName="Ship landing Enable" name="SIM_SHIP_ENABLE" documentation="Enable ship landing simulation">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Ship Speed" name="SIM_SHIP_SPEED" documentation="Speed of the ship">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Path Size" name="SIM_SHIP_PSIZE" documentation="Diameter of the circle the ship is traveling on">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="System ID" name="SIM_SHIP_SYSID" documentation="System ID of the ship">
        <field name="Range">1 255</field>
      </param>
      <param humanName="Deck Size" name="SIM_SHIP_DSIZE" documentation="Size of the ship's deck">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Ship landing pad offset" name="SIM_SHIP_OFS_X" documentation="Defines the offset of the ship's landing pad w.r.t. the ship's origin, i.e. where the beacon is placed on the ship (X-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Ship landing pad offset" name="SIM_SHIP_OFS_Y" documentation="Defines the offset of the ship's landing pad w.r.t. the ship's origin, i.e. where the beacon is placed on the ship (Y-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Ship landing pad offset" name="SIM_SHIP_OFS_Z" documentation="Defines the offset of the ship's landing pad w.r.t. the ship's origin, i.e. where the beacon is placed on the ship (Z-axis)">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
    </parameters>
    <parameters name="SIM_SLUP_">
      <param humanName="Slung Payload Sim enable/disable" name="SIM_SLUP_ENABLE" documentation="Slung Payload Sim enable/disable" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Slung Payload weight" name="SIM_SLUP_WEIGHT" documentation="Slung Payload weight in kg" user="Advanced">
        <field name="Units">kg</field>
        <field name="UnitText">kilograms</field>
        <field name="Range">0 15</field>
      </param>
      <param humanName="Slung Payload line length" name="SIM_SLUP_LINELEN" documentation="Slung Payload line length in meters" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 100</field>
      </param>
      <param humanName="Slung Payload drag coefficient" name="SIM_SLUP_DRAG" documentation="Slung Payload drag coefficient.  Higher values increase drag and slow the payload more quickly" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 10</field>
      </param>
      <param humanName="Slung Payload MAVLink system ID" name="SIM_SLUP_SYSID" documentation="Slung Payload MAVLink system id to distinguish it from others on the same network" user="Advanced">
        <field name="Range">0 255</field>
      </param>
    </parameters>
    <parameters name="SIM_SPR_">
      <param humanName="Sprayer Sim enable/disable" name="SIM_SPR_ENABLE" documentation="Allows you to enable (1) or disable (0) the Sprayer simulation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Sprayer pump pin" name="SIM_SPR_PUMP" documentation="The pin number that the Sprayer pump is connected to. (start at 1)" user="Advanced">
        <field name="Range">0 15</field>
      </param>
      <param humanName="Sprayer spinner servo pin" name="SIM_SPR_SPIN" documentation="The pin number that the Sprayer spinner servo is connected to. (start at 1)" user="Advanced">
        <field name="Range">0 15</field>
      </param>
    </parameters>
    <parameters name="SIM_TA_">
      <param humanName="ToneAlarm enable/disable" name="SIM_TA_ENABLE" documentation="Allows you to enable (1) or disable (0) the simulated tonealarm" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
    </parameters>
    <parameters name="SIM_TETH_">
      <param humanName="Tether Simulation Enable/Disable" name="SIM_TETH_ENABLE" documentation="Enable or disable the tether simulation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Tether Wire Density" name="SIM_TETH_DENSITY" documentation="Linear mass density of the tether wire" user="Advanced">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Tether Maximum Line Length" name="SIM_TETH_LINELEN" documentation="Maximum length of the tether line in meters" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 100</field>
      </param>
      <param humanName="Tether Simulation MAVLink System ID" name="SIM_TETH_SYSID" documentation="MAVLink system ID for the tether simulation, used to distinguish it from other systems on the network" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Tether Stuck Enable/Disable" name="SIM_TETH_STUCK" documentation="Enable or disable a stuck tether simulation" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Tether Spring Constant" name="SIM_TETH_SPGCNST" documentation="Spring constant for the tether to simulate elastic forces when stretched beyond its maximum length" user="Advanced">
        <field name="Range">0 255</field>
      </param>
      <param humanName="Tether Damping Constant" name="SIM_TETH_DMPCNST" documentation="Damping constant for the tether to simulate resistance based on change in stretch" user="Advanced">
        <field name="Range">0 255</field>
      </param>
    </parameters>
    <parameters name="SIM_VICON_">
      <param humanName="SITL vicon position on vehicle in Forward direction" name="SIM_VICON_POS_X" documentation="SITL vicon position on vehicle in Forward direction" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 10</field>
      </param>
      <param humanName="SITL vicon position on vehicle in Right direction" name="SIM_VICON_POS_Y" documentation="SITL vicon position on vehicle in Right direction" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 10</field>
      </param>
      <param humanName="SITL vicon position on vehicle in Down direction" name="SIM_VICON_POS_Z" documentation="SITL vicon position on vehicle in Down direction" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 10</field>
      </param>
      <param humanName="SITL vicon position glitch North" name="SIM_VICON_GLIT_X" documentation="SITL vicon position glitch North" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="SITL vicon position glitch East" name="SIM_VICON_GLIT_Y" documentation="SITL vicon position glitch East" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="SITL vicon position glitch Down" name="SIM_VICON_GLIT_Z" documentation="SITL vicon position glitch Down" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="SITL vicon failure" name="SIM_VICON_FAIL" documentation="SITL vicon failure" user="Advanced">
        <values>
          <value code="0">Vicon Healthy</value>
          <value code="1">Vicon Failed</value>
        </values>
      </param>
      <param humanName="SITL vicon yaw angle in earth frame" name="SIM_VICON_YAW" documentation="SITL vicon yaw angle in earth frame" user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="SITL vicon yaw error" name="SIM_VICON_YAWERR" documentation="SITL vicon yaw added to reported yaw sent to vehicle" user="Advanced">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
      </param>
      <param humanName="SITL vicon type mask" name="SIM_VICON_TMASK" documentation="SITL vicon messages sent" user="Advanced">
        <bitmask>
          <bit code="0">VISION_POSITION_ESTIMATE</bit>
          <bit code="1">VISION_SPEED_ESTIMATE</bit>
          <bit code="2">VICON_POSITION_ESTIMATE</bit>
          <bit code="3">VISION_POSITION_DELTA</bit>
          <bit code="4">ODOMETRY</bit>
        </bitmask>
        <field name="Bitmask">0:VISION_POSITION_ESTIMATE, 1:VISION_SPEED_ESTIMATE, 2:VICON_POSITION_ESTIMATE, 3:VISION_POSITION_DELTA, 4:ODOMETRY</field>
      </param>
      <param humanName="SITL vicon velocity glitch North" name="SIM_VICON_VGLI_X" documentation="SITL vicon velocity glitch North" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="SITL vicon velocity glitch East" name="SIM_VICON_VGLI_Y" documentation="SITL vicon velocity glitch East" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="SITL vicon velocity glitch Down" name="SIM_VICON_VGLI_Z" documentation="SITL vicon velocity glitch Down" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="SITL vicon position standard deviation for gaussian noise" name="SIM_VICON_P_SD" documentation="SITL vicon position standard deviation for gaussian noise" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="SITL vicon velocity standard deviation for gaussian noise" name="SIM_VICON_V_SD" documentation="SITL vicon velocity standard deviation for gaussian noise" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="SITL vicon rate" name="SIM_VICON_RATE" documentation="SITL vicon rate" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="SITL vicon odometry quality" name="SIM_VICON_QUAL" documentation="SITL vicon odometry quality field sent in MAVLink ODOMETRY message (-1=failure, 0=unknown, 1-100=quality)" user="Advanced">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">-1 100</field>
      </param>
    </parameters>
    <parameters name="SIM_VOLZ_">
      <param humanName="Volz simulator enable/disable" name="SIM_VOLZ_ENA" documentation="Allows you to enable (1) or disable (0) the Volz simulator" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Volz override mask" name="SIM_VOLZ_MASK" documentation="mask of servo output channels to override with values from Volz protocol.  Note these are indexed from 0 - so channel 3 (usually throttle) has value 4 in this bitmask (1&lt;&lt;2)." user="Advanced">
</param>
      <param humanName="Volz fail mask" name="SIM_VOLZ_FMASK" documentation="fail servo at current position.  Channel 1 is bit 0." user="Advanced">
</param>
    </parameters>
    <parameters name="SOAR_">
      <param humanName="Is the soaring mode enabled or not" name="SOAR_ENABLE" documentation="Toggles the soaring mode on and off" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Vertical v-speed" name="SOAR_VSPEED" documentation="Rate of climb to trigger themalling speed" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0 10</field>
      </param>
      <param humanName="Process noise" name="SOAR_Q1" documentation="Standard deviation of noise in process for strength" user="Advanced">
        <field name="Range">0.0001 0.01</field>
      </param>
      <param humanName="Process noise" name="SOAR_Q2" documentation="Standard deviation of noise in process for position and radius" user="Advanced">
        <field name="Range">0.01 1</field>
      </param>
      <param humanName="Measurement noise" name="SOAR_R" documentation="Standard deviation of noise in measurement" user="Advanced">
        <field name="Range">0.01 1</field>
      </param>
      <param humanName="Distance to thermal center" name="SOAR_DIST_AHEAD" documentation="Initial guess of the distance to the thermal center" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 100</field>
      </param>
      <param humanName="Minimum thermalling time" name="SOAR_MIN_THML_S" documentation="Minimum number of seconds to spend thermalling" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 600</field>
      </param>
      <param humanName="Minimum cruising time" name="SOAR_MIN_CRSE_S" documentation="Minimum number of seconds to spend cruising" user="Advanced">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Range">0 600</field>
      </param>
      <param humanName="Zero lift drag coef." name="SOAR_POLAR_CD0" documentation="Zero lift drag coefficient" user="Advanced">
        <field name="Range">0.005 0.5</field>
      </param>
      <param humanName="Induced drag coeffient" name="SOAR_POLAR_B" documentation="Induced drag coeffient" user="Advanced">
        <field name="Range">0.005 0.05</field>
      </param>
      <param humanName="Cl factor" name="SOAR_POLAR_K" documentation="Cl factor 2*m*g/(rho*S)" user="Advanced">
        <field name="Units">m.m/s/s</field>
        <field name="UnitText">square meter per square second</field>
        <field name="Range">20 400</field>
      </param>
      <param humanName="Maximum soaring altitude, relative to the home location" name="SOAR_ALT_MAX" documentation="Don't thermal any higher than this." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 5000.0</field>
      </param>
      <param humanName="Minimum soaring altitude, relative to the home location" name="SOAR_ALT_MIN" documentation="Don't get any lower than this." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 1000.0</field>
      </param>
      <param humanName="Maximum power altitude, relative to the home location" name="SOAR_ALT_CUTOFF" documentation="Cut off throttle at this alt." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 5000.0</field>
      </param>
      <param humanName="(Optional) Maximum drift distance to allow when thermalling." name="SOAR_MAX_DRIFT" documentation="The previous mode will be restored if the horizontal distance to the thermalling start location exceeds this value. -1 to disable." user="Advanced">
        <field name="Range">0 1000</field>
      </param>
      <param humanName="(Optional) Maximum distance from home" name="SOAR_MAX_RADIUS" documentation="RTL will be entered when a thermal is exited and the plane is more than this distance from home. -1 to disable." user="Advanced">
        <field name="Range">0 1000</field>
      </param>
      <param humanName="Thermalling bank angle" name="SOAR_THML_BANK" documentation="This parameter sets the bank angle to use when thermalling. Typically 30 - 45 degrees works well." user="Advanced">
        <field name="Range">20 50</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Specific setting for airspeed when soaring in THERMAL mode." name="SOAR_THML_ARSPD" documentation="If non-zero this airspeed will be used when thermalling. A value of 0 will use AIRSPEED_CRUISE." user="Advanced">
        <field name="Range">0 50</field>
      </param>
      <param humanName="Specific setting for airspeed when soaring in AUTO mode." name="SOAR_CRSE_ARSPD" documentation="If non-zero this airspeed will be used when cruising between thermals in AUTO. If set to -1, airspeed will be selected based on speed-to-fly theory. If set to 0, then AIRSPEED_CRUISE will be used while cruising between thermals." user="Advanced">
        <field name="Range">-1 50</field>
      </param>
      <param humanName="Flap percent to be used during thermalling flight." name="SOAR_THML_FLAP" documentation="This sets the flap when in LOITER with soaring active. Overrides the usual auto flap behaviour." user="Advanced">
        <field name="Range">0 100</field>
      </param>
    </parameters>
    <parameters name="STAT">
      <param humanName="Boot Count" name="STAT_BOOTCNT" documentation="Number of times board has been booted" user="Standard">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Total FlightTime" name="STAT_FLTTIME" documentation="Total FlightTime (seconds)" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Total RunTime" name="STAT_RUNTIME" documentation="Total time autopilot has run" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Statistics Reset Time" name="STAT_RESET" documentation="Seconds since January 1st 2016 (Unix epoch+1451606400) since statistics reset (set to 0 to reset statistics, other set values will be ignored)" user="Standard">
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Total Flight Count" name="STAT_FLTCNT" documentation="Total number of flights" user="Standard">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Total Distance Flown" name="STAT_DISTFLWN" documentation="Estimate of total distance flown since statistics reset" user="Standard">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="ReadOnly">True</field>
      </param>
    </parameters>
    <parameters name="STEER2SRV_">
      <param humanName="Steering Time Constant" name="STEER2SRV_TCONST" documentation="This controls the time constant in seconds from demanded to achieved steering angle. A value of 0.75 is a good default and will work with nearly all rovers. Ground steering in aircraft needs a bit smaller time constant, and a value of 0.5 is recommended for best ground handling in fixed wing aircraft. A value of 0.75 means that the controller will try to correct any deviation between the desired and actual steering angle in 0.75 seconds. Advanced users may want to reduce this time to obtain a faster response but there is no point setting a time less than the vehicle can achieve." user="Advanced">
        <field name="Range">0.4 1.0</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Steering turning gain" name="STEER2SRV_P" documentation="The proportional gain for steering. This should be approximately equal to the diameter of the turning circle of the vehicle at low speed and maximum steering angle" user="Standard">
        <field name="Range">0.1 10.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Integrator Gain" name="STEER2SRV_I" documentation="This is the gain from the integral of steering angle. Increasing this gain causes the controller to trim out steady offsets due to an out of trim vehicle." user="Standard">
        <field name="Range">0 1.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Damping Gain" name="STEER2SRV_D" documentation="This adjusts the damping of the steering control loop. This gain helps to reduce steering jitter with vibration. It should be increased in 0.01 increments as too high a value can lead to a high frequency steering oscillation that could overstress the vehicle." user="Standard">
        <field name="Range">0 0.1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Integrator limit" name="STEER2SRV_IMAX" documentation="This limits the number of degrees of steering in centi-degrees over which the integrator will operate. At the default setting of 1500 centi-degrees, the integrator will be limited to +- 15 degrees of servo travel. The maximum servo deflection is +- 45 centi-degrees, so the default value represents a 1/3rd of the total control throw which is adequate unless the vehicle is severely out of trim." user="Advanced">
        <field name="Range">0 4500</field>
        <field name="Increment">10</field>
        <field name="Units">cdeg</field>
        <field name="UnitText">centidegrees</field>
      </param>
      <param humanName="Minimum speed" name="STEER2SRV_MINSPD" documentation="This is the minimum assumed ground speed in meters/second for steering. Having a minimum speed prevents oscillations when the vehicle first starts moving. The vehicle can still drive slower than this limit, but the steering calculations will be done based on this minimum speed." user="Standard">
        <field name="Range">0 5</field>
        <field name="Increment">0.1</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Steering feed forward" name="STEER2SRV_FF" documentation="The feed forward gain for steering this is the ratio of the achieved turn rate to applied steering. A value of 1 means that the vehicle would yaw at a rate of 45 degrees per second with full steering deflection at 1m/s ground speed." user="Standard">
        <field name="Range">0.0 10.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Derating speed" name="STEER2SRV_DRTSPD" documentation="Speed after that the maximum degree of steering will start to derate. Set this speed to a maximum speed that a plane can do controlled turn at maximum angle of steering wheel without rolling to wing. If 0 then no derating is used." user="Advanced">
        <field name="Range">0.0 30.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="Derating factor" name="STEER2SRV_DRTFCT" documentation="Degrees of steering wheel to derate at each additional m/s of speed above &quot;Derating speed&quot;. Should be set so that at higher speeds the plane does not roll to the wing in turns." user="Advanced">
        <field name="Range">0.0 50.0</field>
        <field name="Increment">0.1</field>
        <field name="Units">deg/m/s</field>
        <field name="UnitText">degrees per meter per second</field>
      </param>
      <param humanName="Minimum angle of wheel" name="STEER2SRV_DRTMIN" documentation="The angle that limits smallest angle of steering wheel at maximum speed. Even if it should derate below, it will stop derating at this angle." user="Advanced">
        <field name="Range">0 4500</field>
        <field name="Increment">10</field>
        <field name="Units">cdeg</field>
        <field name="UnitText">centidegrees</field>
      </param>
    </parameters>
    <parameters name="TECS_">
      <param humanName="Maximum Climb Rate (metres/sec)" name="TECS_CLMB_MAX" documentation="Maximum demanded climb rate. Do not set higher than the climb speed at THR_MAX at AIRSPEED_CRUISE when the battery is at low voltage. Reduce value if airspeed cannot be maintained on ascent. Increase value if throttle does not increase significantly to ascend." user="Standard">
        <field name="Increment">0.1</field>
        <field name="Range">0.1 20.0</field>
      </param>
      <param humanName="Minimum Sink Rate (metres/sec)" name="TECS_SINK_MIN" documentation="Minimum sink rate when at THR_MIN and AIRSPEED_CRUISE." user="Standard">
        <field name="Increment">0.1</field>
        <field name="Range">0.1 10.0</field>
      </param>
      <param humanName="Controller time constant (sec)" name="TECS_TIME_CONST" documentation="Time constant of the TECS control algorithm. Small values make faster altitude corrections but can cause overshoot and aggressive behavior." user="Advanced">
        <field name="Range">3.0 10.0</field>
        <field name="Increment">0.2</field>
      </param>
      <param humanName="Controller throttle damping" name="TECS_THR_DAMP" documentation="Damping gain for throttle demand loop. Increase to add throttle activity to dampen oscillations in speed and height." user="Advanced">
        <field name="Range">0.1 1.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Controller integrator" name="TECS_INTEG_GAIN" documentation="Integrator gain to trim out long-term speed and height errors." user="Advanced">
        <field name="Range">0.0 0.5</field>
        <field name="Increment">0.02</field>
      </param>
      <param humanName="Vertical Acceleration Limit (metres/sec^2)" name="TECS_VERT_ACC" documentation="Maximum vertical acceleration used to correct speed or height errors." user="Advanced">
        <field name="Range">1.0 10.0</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Height complementary filter frequency (radians/sec)" name="TECS_HGT_OMEGA" documentation="This is the cross-over frequency of the complementary filter used to fuse vertical acceleration and baro alt to obtain an estimate of height rate and height." user="Advanced">
        <field name="Range">1.0 5.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Speed complementary filter frequency (radians/sec)" name="TECS_SPD_OMEGA" documentation="This is the cross-over frequency of the complementary filter used to fuse longitudinal acceleration and airspeed to obtain a lower noise and lag estimate of airspeed." user="Advanced">
        <field name="Range">0.5 2.0</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Bank angle compensation gain" name="TECS_RLL2THR" documentation="Gain from bank angle to throttle to compensate for loss of airspeed from drag in turns. Set to approximately 10x the sink rate in m/s caused by a 45-degree turn. High efficiency models may need less while less efficient aircraft may need more. Should be tuned in an automatic mission with waypoints and turns greater than 90 degrees. Tune with PTCH2SRV_RLL and KFF_RDDRMIX to achieve constant airspeed, constant altitude turns." user="Advanced">
        <field name="Range">5.0 30.0</field>
        <field name="Increment">1.0</field>
      </param>
      <param humanName="Weighting applied to speed control" name="TECS_SPDWEIGHT" documentation="Mixing of pitch and throttle correction for height and airspeed errors. Pitch controls altitude and throttle controls airspeed if set to 0. Pitch controls airspeed and throttle controls altitude if set to 2 (good for gliders). Blended if set to 1." user="Advanced">
        <field name="Range">0.0 2.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Controller pitch damping" name="TECS_PTCH_DAMP" documentation="Damping gain for pitch control from TECS control.  Increasing may correct for oscillations in speed and height, but too much may cause additional oscillation and degraded control." user="Advanced">
        <field name="Range">0.1 1.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Maximum Descent Rate (metres/sec)" name="TECS_SINK_MAX" documentation="Maximum demanded descent rate. Do not set higher than the vertical speed the aircraft can maintain at THR_MIN, TECS_PITCH_MIN, and AIRSPEED_MAX." user="Standard">
        <field name="Increment">0.1</field>
        <field name="Range">0.0 20.0</field>
      </param>
      <param humanName="Airspeed during landing approach (m/s)" name="TECS_LAND_ARSPD" documentation="When performing an autonomous landing, this value is used as the goal airspeed during approach.  Max airspeed allowed is Trim Airspeed or AIRSPEED_MAX as defined by LAND_OPTIONS bitmask.  Note that this parameter is not useful if your platform does not have an airspeed sensor (use TECS_LAND_THR instead).  If negative then this value is halfway between AIRSPEED_MIN and AIRSPEED_CRUISE speed for fixed wing autolandings." user="Standard">
        <field name="Range">-1 127</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Cruise throttle during landing approach (percentage)" name="TECS_LAND_THR" documentation="Use this parameter instead of LAND_ARSPD if your platform does not have an airspeed sensor.  It is the cruise throttle during landing approach.  If this value is negative then it is disabled and TECS_LAND_ARSPD is used instead." user="Standard">
        <field name="Range">-1 100</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Weighting applied to speed control during landing." name="TECS_LAND_SPDWGT" documentation="Same as SPDWEIGHT parameter, with the exception that this parameter is applied during landing flight stages.  A value closer to 2 will result in the plane ignoring height error during landing and our experience has been that the plane will therefore keep the nose up -- sometimes good for a glider landing (with the side effect that you will likely glide a ways past the landing point).  A value closer to 0 results in the plane ignoring speed error -- use caution when lowering the value below 1 -- ignoring speed could result in a stall. Values between 0 and 2 are valid values for a fixed landing weight. When using -1 the weight will be scaled during the landing. At the start of the landing approach it starts with TECS_SPDWEIGHT and scales down to 0 by the time you reach the land point. Example: Halfway down the landing approach you'll effectively have a weight of TECS_SPDWEIGHT/2." user="Advanced">
        <field name="Range">-1.0 2.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Maximum pitch in auto flight" name="TECS_PITCH_MAX" documentation="Overrides PTCH_LIM_MAX_DEG in automatic throttle modes to reduce climb rates. Uses PTCH_LIM_MAX_DEG if set to 0. For proper TECS tuning, set to the angle that the aircraft can climb at AIRSPEED_CRUISE and THR_MAX." user="Advanced">
        <field name="Range">0 45</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Minimum pitch in auto flight" name="TECS_PITCH_MIN" documentation="Overrides PTCH_LIM_MIN_DEG in automatic throttle modes to reduce descent rates. Uses PTCH_LIM_MIN_DEG if set to 0. For proper TECS tuning, set to the angle that the aircraft can descend at without overspeeding." user="Advanced">
        <field name="Range">-45 0</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Sink rate for final landing stage" name="TECS_LAND_SINK" documentation="The sink rate in meters/second for the final stage of landing." user="Advanced">
        <field name="Range">0.0 2.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Land controller time constant (sec)" name="TECS_LAND_TCONST" documentation="This is the time constant of the TECS control algorithm when in final landing stage of flight. It should be smaller than TECS_TIME_CONST to allow for faster flare" user="Advanced">
        <field name="Range">1.0 5.0</field>
        <field name="Increment">0.2</field>
      </param>
      <param humanName="Controller sink rate to pitch gain during flare" name="TECS_LAND_DAMP" documentation="This is the sink rate gain for the pitch demand loop when in final landing stage of flight. It should be larger than TECS_PTCH_DAMP to allow for better sink rate control during flare." user="Advanced">
        <field name="Range">0.1 1.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Maximum pitch during final stage of landing" name="TECS_LAND_PMAX" documentation="This limits the pitch used during the final stage of automatic landing. During the final landing stage most planes need to keep their pitch small to avoid stalling. A maximum of 10 degrees is usually good. A value of zero means to use the normal pitch limits." user="Advanced">
        <field name="Range">-5 40</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Sink rate max for landing approach stage" name="TECS_APPR_SMAX" documentation="The sink rate max for the landing approach stage of landing. This will need to be large for steep landing approaches especially when using reverse thrust. If 0, then use TECS_SINK_MAX." user="Advanced">
        <field name="Range">0.0 20.0</field>
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Land sink rate change" name="TECS_LAND_SRC" documentation="When zero, the flare sink rate (TECS_LAND_SINK) is a fixed sink demand. With this enabled the flare sink rate will increase/decrease the flare sink demand as you get further beyond the LAND waypoint. Has no effect before the waypoint. This value is added to TECS_LAND_SINK proportional to distance traveled after wp. With an increasing sink rate you can still land in a given distance if you're traveling too fast and cruise passed the land point. A positive value will force the plane to land sooner proportional to distance passed land point. A negative number will tell the plane to slowly climb allowing for a pitched-up stall landing. Recommend 0.2 as initial value." user="Advanced">
        <field name="Range">-2.0 2.0</field>
        <field name="Units">m/s/m</field>
        <field name="UnitText">meters per second per meter</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Controller throttle damping when landing" name="TECS_LAND_TDAMP" documentation="Damping gain for the throttle demand loop during an auto-landing. Same as TECS_THR_DAMP but only in effect during an auto-land. Increase to add throttle activity to dampen oscillations in speed and height. When set to 0 landing throttle damping is controlled by TECS_THR_DAMP." user="Advanced">
        <field name="Range">0.1 1.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Controller integrator during landing" name="TECS_LAND_IGAIN" documentation="This is the integrator gain on the control loop during landing. When set to 0 then TECS_INTEG_GAIN is used. Increase to increase the rate at which speed and height offsets are trimmed out. Typically values lower than TECS_INTEG_GAIN work best" user="Advanced">
        <field name="Range">0.0 0.5</field>
        <field name="Increment">0.02</field>
      </param>
      <param humanName="Controller integrator during takeoff" name="TECS_TKOFF_IGAIN" documentation="This is the integrator gain on the control loop during takeoff. Increase to increase the rate at which speed and height offsets are trimmed out." user="Advanced">
        <field name="Range">0.0 0.5</field>
        <field name="Increment">0.02</field>
      </param>
      <param humanName="Pitch damping gain when landing" name="TECS_LAND_PDAMP" documentation="This is the damping gain for the pitch demand loop during landing. Increase to add damping  to correct for oscillations in speed and height. If set to 0 then TECS_PTCH_DAMP will be used instead." user="Advanced">
        <field name="Range">0.1 1.0</field>
        <field name="Increment">0.1</field>
      </param>
      <param humanName="Enable the use of synthetic airspeed" name="TECS_SYNAIRSPEED" documentation="This enables the use of synthetic airspeed in TECS for aircraft that don't have a real airspeed sensor. This is useful for development testing where the user is aware of the considerable limitations of the synthetic airspeed system, such as very poor estimates when a wind estimate is not accurate. Do not enable this option unless you fully understand the limitations of a synthetic airspeed estimate. This option has no effect if a healthy airspeed sensor is being used for airspeed measurements." user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Extra TECS options" name="TECS_OPTIONS" documentation="This allows the enabling of special features in the speed/height controller." user="Advanced">
        <bitmask>
          <bit code="0">GliderOnly</bit>
          <bit code="1">AllowDescentSpeedup</bit>
        </bitmask>
        <field name="Bitmask">0:GliderOnly,1:AllowDescentSpeedup</field>
      </param>
      <param humanName="Baseline airspeed for pitch feed-forward." name="TECS_PTCH_FF_V0" documentation="This parameter sets the airspeed at which no feed-forward is applied between demanded airspeed and pitch. It should correspond to the airspeed in metres per second at which the plane glides at neutral pitch including STAB_PITCH_DOWN." user="Advanced">
        <field name="Range">5.0 50.0</field>
      </param>
      <param humanName="Gain for pitch feed-forward." name="TECS_PTCH_FF_K" documentation="This parameter sets the gain between demanded airspeed and pitch. It has units of radians per metre per second and should generally be negative. A good starting value is -0.04 for gliders and -0.08 for draggy airframes. The default (0.0) disables this feed-forward." user="Advanced">
        <field name="Range">-5.0 0.0</field>
      </param>
      <param humanName="Forward throttle external limit slew rate" name="TECS_THR_ERATE" documentation="The externally set forward throttle lower limit applied within TECS will be reduced by this many percentage points per second after being set. Set to a non positive value to hold the lower limit for one frame only." user="Advanced">
        <field name="Units">%/s</field>
        <field name="UnitText">percent per second</field>
        <field name="Range">0 100</field>
      </param>
      <param humanName="Flare holdoff height" name="TECS_FLARE_HGT" documentation="When height above ground is below this, the sink rate will be held at TECS_LAND_SINK. Use this to perform a hold-off manoeuvre when combined with small values for TECS_LAND_SINK." user="Advanced">
        <field name="Range">0 15</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Height Demand Time Constant" name="TECS_HDEM_TCONST" documentation="This sets the time constant of the low pass filter that is applied to the height demand input when bit 0 of TECS_OPTIONS is not selected." user="Advanced">
        <field name="Range">1.0 5.0</field>
        <field name="Units">s</field>
        <field name="UnitText">seconds</field>
        <field name="Increment">0.2</field>
      </param>
    </parameters>
    <parameters name="TEMP">
      <param humanName="Logging" name="TEMP_LOG" documentation="Enables temperature sensor logging" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Log all instances</value>
          <value code="2">Log only instances with sensor source set to None</value>
        </values>
      </param>
    </parameters>
    <parameters name="TEMP1_">
      <param humanName="Temperature Sensor Type" name="TEMP1_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP1_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP1_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP1_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP1_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP1_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP1_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP1_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP1_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP1_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP1_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP1_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP1_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP1_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP1_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP2_">
      <param humanName="Temperature Sensor Type" name="TEMP2_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP2_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP2_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP2_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP2_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP2_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP2_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP2_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP2_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP2_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP2_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP2_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP2_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP2_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP2_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP3_">
      <param humanName="Temperature Sensor Type" name="TEMP3_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP3_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP3_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP3_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP3_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP3_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP3_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP3_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP3_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP3_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP3_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP3_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP3_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP3_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP3_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP4_">
      <param humanName="Temperature Sensor Type" name="TEMP4_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP4_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP4_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP4_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP4_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP4_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP4_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP4_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP4_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP4_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP4_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP4_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP4_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP4_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP4_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP5_">
      <param humanName="Temperature Sensor Type" name="TEMP5_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP5_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP5_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP5_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP5_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP5_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP5_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP5_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP5_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP5_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP5_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP5_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP5_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP5_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP5_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP6_">
      <param humanName="Temperature Sensor Type" name="TEMP6_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP6_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP6_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP6_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP6_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP6_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP6_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP6_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP6_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP6_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP6_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP6_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP6_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP6_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP6_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP7_">
      <param humanName="Temperature Sensor Type" name="TEMP7_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP7_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP7_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP7_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP7_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP7_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP7_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP7_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP7_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP7_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP7_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP7_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP7_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP7_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP7_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP8_">
      <param humanName="Temperature Sensor Type" name="TEMP8_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP8_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP8_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP8_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP8_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP8_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP8_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP8_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP8_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP8_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP8_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP8_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP8_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP8_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP8_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP9_">
      <param humanName="Temperature Sensor Type" name="TEMP9_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP9_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP9_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP9_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP9_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP9_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP9_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP9_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP9_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP9_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP9_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP9_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP9_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP9_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP9_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP10_">
      <param humanName="Temperature Sensor Type" name="TEMP10_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP10_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP10_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP10_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP10_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP10_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP10_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP10_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP10_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP10_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP10_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP10_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP10_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP10_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP10_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP11_">
      <param humanName="Temperature Sensor Type" name="TEMP11_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP11_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP11_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP11_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP11_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP11_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP11_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP11_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP11_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP11_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP11_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP11_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP11_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP11_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP11_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP12_">
      <param humanName="Temperature Sensor Type" name="TEMP12_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP12_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP12_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP12_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP12_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP12_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP12_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP12_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP12_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP12_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP12_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP12_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP12_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP12_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP12_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP13_">
      <param humanName="Temperature Sensor Type" name="TEMP13_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP13_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP13_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP13_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP13_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP13_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP13_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP13_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP13_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP13_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP13_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP13_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP13_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP13_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP13_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP14_">
      <param humanName="Temperature Sensor Type" name="TEMP14_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP14_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP14_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP14_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP14_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP14_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP14_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP14_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP14_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP14_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP14_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP14_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP14_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP14_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP14_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TEMP15_">
      <param humanName="Temperature Sensor Type" name="TEMP15_TYPE" documentation="Enables temperature sensors" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TSYS01</value>
          <value code="2">MCP9600</value>
          <value code="3">MAX31865 2 or 4 wire</value>
          <value code="4">TSYS03</value>
          <value code="5">Analog</value>
          <value code="6">DroneCAN</value>
          <value code="7">MLX90614</value>
          <value code="8">SHT3x</value>
          <value code="9">MAX31865 3 wire</value>
          <value code="10">TMP119</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor bus" name="TEMP15_BUS" documentation="Temperature sensor bus number, typically used to select from multiple I2C buses" user="Advanced">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Temperature sensor address" name="TEMP15_ADDR" documentation="Temperature sensor address, typically used for I2C address" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Sensor Source" name="TEMP15_SRC" documentation="Sensor Source is used to designate which device's temperature report will be replaced by this temperature sensor's data. If 0 (None) then the data is only available via log. In the future a new Motor temperature report will be created for returning data directly." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">ESC</value>
          <value code="2">Motor</value>
          <value code="3">Battery Index</value>
          <value code="4">Battery ID/SerialNumber</value>
          <value code="5">CAN based Pitot tube</value>
          <value code="6">DroneCAN-out on AP_Periph</value>
          <value code="7">Servo motor</value>
          <value code="8">Servo PCB</value>
        </values>
      </param>
      <param humanName="Sensor Source Identification" name="TEMP15_SRC_ID" documentation="Sensor Source Identification is used to replace a specific instance of a system component's temperature report with the temp sensor's. Examples: TEMP_SRC = 1 (ESC), TEMP_SRC_ID = 1 will set the temp of ESC1. TEMP_SRC = 3 (BatteryIndex),TEMP_SRC_ID = 2 will set the temp of BATT2. TEMP_SRC = 4 (BatteryId/SerialNum),TEMP_SRC_ID=42 will set the temp of all batteries that have param BATTn_SERIAL = 42.">
</param>
      <param humanName="Temperature sensor analog voltage sensing pin" name="TEMP15_PIN" documentation="Sets the analog input pin that should be used for temprature monitoring. Values for some autopilots are given as examples. Search wiki for &quot;Analog pins&quot;." user="Standard">
        <values>
          <value code="-1">Disabled</value>
          <value code="2">Pixhawk/Pixracer/Navio2/Pixhawk2_PM1</value>
          <value code="5">Navigator</value>
          <value code="13">Pixhawk2_PM2/CubeOrange_PM2</value>
          <value code="14">CubeOrange</value>
          <value code="16">Durandal</value>
          <value code="100">PX4-v1</value>
        </values>
        <field name="Range">-1 127</field>
      </param>
      <param humanName="Temperature sensor analog 0th polynomial coefficient" name="TEMP15_A0" documentation="a0 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 1st polynomial coefficient" name="TEMP15_A1" documentation="a1 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 2nd polynomial coefficient" name="TEMP15_A2" documentation="a2 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 3rd polynomial coefficient" name="TEMP15_A3" documentation="a3 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 4th polynomial coefficient" name="TEMP15_A4" documentation="a4 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor analog 5th polynomial coefficient" name="TEMP15_A5" documentation="a5 in polynomial of form temperature in deg = a0 + a1*voltage + a2*voltage^2 + a3*voltage^3 + a4*voltage^4 + a5*voltage^5">
</param>
      <param humanName="Temperature sensor DroneCAN message ID" name="TEMP15_MSG_ID" documentation="Sets the message device ID this backend listens for">
        <field name="Range">0 65535</field>
      </param>
      <param humanName="Nominal RTD resistance" name="TEMP15_RTD_NOM" documentation="Nominal RTD resistance used to calculate temperature, typically 100 or 1000 ohms." user="Standard">
</param>
      <param humanName="RTD reference resistance" name="TEMP15_RTD_REF" documentation="Reference resistance used to calculate temperature, in ohms" user="Standard">
</param>
    </parameters>
    <parameters name="TERRAIN_">
      <param humanName="Terrain data enable" name="TERRAIN_ENABLE" documentation="enable terrain data. This enables the vehicle storing a database of terrain data on the SD card. The terrain data is requested from the ground station as needed, and stored for later use on the SD card. To be useful the ground station must support TERRAIN_REQUEST messages and have access to a terrain database, such as the SRTM database." user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Terrain grid spacing" name="TERRAIN_SPACING" documentation="Distance between terrain grid points in meters. This controls the horizontal resolution of the terrain data that is stored on te SD card and requested from the ground station. If your GCS is using the ArduPilot SRTM database like Mission Planner or MAVProxy, then a resolution of 100 meters is appropriate. Grid spacings lower than 100 meters waste SD card space if the GCS cannot provide that resolution. The grid spacing also controls how much data is kept in memory during flight. A larger grid spacing will allow for a larger amount of data in memory. A grid spacing of 100 meters results in the vehicle keeping 12 grid squares in memory with each grid square having a size of 2.7 kilometers by 3.2 kilometers. Any additional grid squares are stored on the SD once they are fetched from the GCS and will be loaded as needed." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Terrain options" name="TERRAIN_OPTIONS" documentation="Options to change behavior of terrain system. The Accept Old Terrain Data option can be used to accept terrain data generated from before the terrain database bugs were fixed. The bugs in the data were all fixed from 24th February 2026. If you really want to risk using the old terrain data then you can set this option, otherwise remove the old terrain data by formatting your microSD card or renaming the /APM/TERRAIN folder. Then downloaded updated data from https://terrain.ardupilot.org, or let the automatic terrain download repopulate your terrain data." user="Advanced">
        <bitmask>
          <bit code="0">Disable Download</bit>
          <bit code="1">Disable Disk</bit>
          <bit code="2">Accept Old Terrain Data</bit>
        </bitmask>
        <field name="Bitmask">0:Disable Download,1:Disable Disk,2:Accept Old Terrain Data</field>
      </param>
      <param humanName="Acceptance margin" name="TERRAIN_MARGIN" documentation="Margin in centi-meters to accept terrain data from the GCS. This can be used to allow older terrain data generated with less accurate latitude/longitude scaling to be used" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.05 50000</field>
      </param>
      <param humanName="Terrain reference offset maximum" name="TERRAIN_OFS_MAX" documentation="The maximum adjustment of terrain altitude based on the assumption that the vehicle is on the ground when it is armed. When the vehicle is armed the location of the vehicle is recorded, and when terrain data is available for that location a height adjustment for terrain data is calculated that aligns the terrain height at that location with the altitude recorded at arming. This height adjustment is applied to all terrain data. This parameter clamps the amount of adjustment. A value of zero disables the use of terrain height adjustment." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 50</field>
      </param>
      <param humanName="Terrain cache size" name="TERRAIN_CACHE_SZ" documentation="The number of 32x28 cache blocks to keep in memory. Each block uses about 1800 bytes of memory" user="Advanced">
        <field name="Range">0 128</field>
      </param>
    </parameters>
    <parameters name="TKOFF_">
      <param humanName="Takeoff mode altitude" name="TKOFF_ALT" documentation="This is the target altitude for TAKEOFF mode" user="Standard">
        <field name="Range">0 200</field>
        <field name="Increment">1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Takeoff mode altitude level altitude" name="TKOFF_LVL_ALT" documentation="This is the altitude below which the wings are held level for TAKEOFF and AUTO modes. Below this altitude, roll demand is restricted to LEVEL_ROLL_LIMIT. Normal-flight roll restriction resumes above TKOFF_LVL_ALT*3 or TKOFF_ALT, whichever is lower. Roll limits are scaled while between TKOFF_LVL_ALT and those altitudes for a smooth transition." user="Standard">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Takeoff mode altitude initial pitch" name="TKOFF_LVL_PITCH" documentation="This is the target pitch during the takeoff." user="Standard">
        <field name="Range">0 30</field>
        <field name="Increment">1</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Takeoff mode distance" name="TKOFF_DIST" documentation="This is the distance from the takeoff location where the plane will loiter. The loiter point will be in the direction of takeoff (the direction the plane is facing when the plane begins takeoff)" user="Standard">
        <field name="Range">0 500</field>
        <field name="Increment">1</field>
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="Takeoff run pitch demand" name="TKOFF_GND_PITCH" documentation="Degrees of pitch angle demanded during the takeoff run before speed reaches TKOFF_ROTATE_SPD. For taildraggers set to 3-point ground pitch angle and use TKOFF_TDRAG_ELEV to prevent nose tipover. For nose-wheel steer aircraft set to the ground pitch angle and if a reduction in nose-wheel load is required as speed rises, use a positive offset in TKOFF_GND_PITCH of up to 5 degrees above the angle on ground, starting at the measured pitch angle and incrementing in 1 degree steps whilst checking for premature rotation and takeoff with each increment. To increase nose-wheel load, use a negative TKOFF_TDRAG_ELEV and refer to notes on TKOFF_TDRAG_ELEV before making adjustments." user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-5.0 10.0</field>
        <field name="Increment">0.1</field>
      </param>
    </parameters>
    <parameters name="TUNE_">
      <param humanName="Transmitter tuning parameter or set of parameters" name="TUNE_PARAM" documentation="This sets which parameter or set of parameters will be tuned. Values greater than 100 indicate a set of parameters rather than a single parameter. Parameters less than 50 are for QuadPlane vertical lift motors only." user="Standard">
        <values>
          <value code="0">None</value>
          <value code="1">RateRollPI</value>
          <value code="2">RateRollP</value>
          <value code="3">RateRollI</value>
          <value code="4">RateRollD</value>
          <value code="5">RatePitchPI</value>
          <value code="6">RatePitchP</value>
          <value code="7">RatePitchI</value>
          <value code="8">RatePitchD</value>
          <value code="9">RateYawPI</value>
          <value code="10">RateYawP</value>
          <value code="11">RateYawI</value>
          <value code="12">RateYawD</value>
          <value code="13">AngleRollP</value>
          <value code="14">AnglePitchP</value>
          <value code="15">AngleYawP</value>
          <value code="16">PosXYP</value>
          <value code="17">PosZP</value>
          <value code="18">VelXYP</value>
          <value code="19">VelXYI</value>
          <value code="20">VelZP</value>
          <value code="21">AccelZP</value>
          <value code="22">AccelZI</value>
          <value code="23">AccelZD</value>
          <value code="24">RatePitchFF</value>
          <value code="25">RateRollFF</value>
          <value code="26">RateYawFF</value>
          <value code="50">FixedWingRollP</value>
          <value code="51">FixedWingRollI</value>
          <value code="52">FixedWingRollD</value>
          <value code="53">FixedWingRollFF</value>
          <value code="54">FixedWingPitchP</value>
          <value code="55">FixedWingPitchI</value>
          <value code="56">FixedWingPitchD</value>
          <value code="57">FixedWingPitchFF</value>
          <value code="101">Set_RateRollPitch</value>
          <value code="102">Set_RateRoll</value>
          <value code="103">Set_RatePitch</value>
          <value code="104">Set_RateYaw</value>
          <value code="105">Set_AngleRollPitch</value>
          <value code="106">Set_VelXY</value>
          <value code="107">Set_AccelZ</value>
          <value code="108">Set_RatePitchDP</value>
          <value code="109">Set_RateRollDP</value>
          <value code="110">Set_RateYawDP</value>
        </values>
      </param>
      <param humanName="Transmitter tuning channel" name="TUNE_CHAN" documentation="This sets the channel for transmitter tuning. This should be connected to a knob or slider on your transmitter. It needs to be setup to use the PWM range given by TUNE_CHAN_MIN to TUNE_CHAN_MAX" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="5">Chan5</value>
          <value code="6">Chan6</value>
          <value code="7">Chan7</value>
          <value code="8">Chan8</value>
          <value code="9">Chan9</value>
          <value code="10">Chan10</value>
          <value code="11">Chan11</value>
          <value code="12">Chan12</value>
          <value code="13">Chan13</value>
          <value code="14">Chan14</value>
          <value code="15">Chan15</value>
          <value code="16">Chan16</value>
        </values>
      </param>
      <param humanName="Transmitter tuning channel minimum pwm" name="TUNE_CHAN_MIN" documentation="This sets the PWM lower limit for the tuning channel" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="Transmitter tuning channel maximum pwm" name="TUNE_CHAN_MAX" documentation="This sets the PWM upper limit for the tuning channel" user="Standard">
        <field name="Range">900 2100</field>
      </param>
      <param humanName="Transmitter tuning selector channel" name="TUNE_SELECTOR" documentation="This sets the channel for the transmitter tuning selector switch. This should be a 2 position switch, preferably spring loaded. A PWM above 1700 means high, below 1300 means low. If no selector is set then you won't be able to switch between parameters during flight or re-center the tuning knob" user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Chan1</value>
          <value code="2">Chan3</value>
          <value code="3">Chan3</value>
          <value code="4">Chan4</value>
          <value code="5">Chan5</value>
          <value code="6">Chan6</value>
          <value code="7">Chan7</value>
          <value code="8">Chan8</value>
          <value code="9">Chan9</value>
          <value code="10">Chan10</value>
          <value code="11">Chan11</value>
          <value code="12">Chan12</value>
          <value code="13">Chan13</value>
          <value code="14">Chan14</value>
          <value code="15">Chan15</value>
          <value code="16">Chan16</value>
        </values>
      </param>
      <param humanName="Transmitter tuning range" name="TUNE_RANGE" documentation="This sets the range over which tuning will change a parameter. A value of 2 means the tuning parameter will go from 0.5 times the start value to 2x the start value over the range of the tuning channel" user="Standard">
</param>
      <param humanName="Revert on mode change" name="TUNE_MODE_REVERT" documentation="This controls whether tuning values will revert on a flight mode change." user="Standard">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Controller error threshold" name="TUNE_ERR_THRESH" documentation="This sets the controller error threshold above which an alarm will sound and a message will be sent to the GCS to warn of controller instability while tuning. The error is the rms value of the P+D corrections in the loop. High values in hover indicate possible instability due to too high PID gains or excessively high D to P gain ratios.-1 will disable this message." user="Standard">
        <field name="Range">0 1</field>
      </param>
    </parameters>
    <parameters name="VISO">
      <param humanName="Visual odometry camera connection type" name="VISO_TYPE" documentation="Visual odometry camera connection type" user="Advanced">
        <values>
          <value code="0">None</value>
          <value code="1">MAVLink</value>
          <value code="2">IntelT265</value>
          <value code="3">VOXL(ModalAI)</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Visual odometry camera X position offset" name="VISO_POS_X" documentation="X position of the camera in body frame. Positive X is forward of the origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Visual odometry camera Y position offset" name="VISO_POS_Y" documentation="Y position of the camera in body frame. Positive Y is to the right of the origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Visual odometry camera Z position offset" name="VISO_POS_Z" documentation="Z position of the camera in body frame. Positive Z is down from the origin." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">-5 5</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Visual odometery camera orientation" name="VISO_ORIENT" documentation="Visual odometery camera orientation" user="Advanced">
        <values>
          <value code="0">Forward</value>
          <value code="2">Right</value>
          <value code="4">Back</value>
          <value code="6">Left</value>
          <value code="24">Up</value>
          <value code="25">Down</value>
        </values>
      </param>
      <param humanName="Visual odometry scaling factor" name="VISO_SCALE" documentation="Visual odometry scaling factor applied to position estimates from sensor" user="Advanced">
</param>
      <param humanName="Visual odometry sensor delay" name="VISO_DELAY_MS" documentation="Visual odometry sensor delay relative to inertial measurements" user="Advanced">
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
        <field name="Range">0 250</field>
      </param>
      <param humanName="Visual odometry velocity measurement noise" name="VISO_VEL_M_NSE" documentation="Visual odometry velocity measurement noise in m/s" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
        <field name="Range">0.05 5.0</field>
      </param>
      <param humanName="Visual odometry position measurement noise" name="VISO_POS_M_NSE" documentation="Visual odometry position measurement noise minimum (meters). This value will be used if the sensor provides a lower noise value (or no noise value)" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0.1 10.0</field>
      </param>
      <param humanName="Visual odometry yaw measurement noise" name="VISO_YAW_M_NSE" documentation="Visual odometry yaw measurement noise minimum (radians), This value will be used if the sensor provides a lower noise value (or no noise value)" user="Advanced">
        <field name="Units">rad</field>
        <field name="UnitText">radians</field>
        <field name="Range">0.05 1.0</field>
      </param>
      <param humanName="Visual odometry minimum quality" name="VISO_QUAL_MIN" documentation="Visual odometry will only be sent to EKF if over this value. -1 to always send (even bad values), 0 to send if good or unknown" user="Advanced">
        <field name="Units">%</field>
        <field name="UnitText">percent</field>
        <field name="Range">-1 100</field>
      </param>
    </parameters>
    <parameters name="VTX_">
      <param humanName="Is the Video Transmitter enabled or not" name="VTX_ENABLE" documentation="Toggles the Video Transmitter on and off">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Video Transmitter Power Level" name="VTX_POWER" documentation="Video Transmitter Power Level. Different VTXs support different power levels, the power level chosen will be rounded down to the nearest supported power level">
        <field name="Range">1 1000</field>
      </param>
      <param humanName="Video Transmitter Channel" name="VTX_CHANNEL" documentation="Video Transmitter Channel" user="Standard">
        <field name="Range">0 7</field>
      </param>
      <param humanName="Video Transmitter Band" name="VTX_BAND" documentation="Video Transmitter Band" user="Standard">
        <values>
          <value code="0">Band A</value>
          <value code="1">Band B</value>
          <value code="2">Band E</value>
          <value code="3">Airwave</value>
          <value code="4">RaceBand</value>
          <value code="5">Low RaceBand</value>
          <value code="6">1G3 Band A</value>
          <value code="7">1G3 Band B</value>
          <value code="8">Band X</value>
          <value code="9">3G3 Band A</value>
          <value code="10">3G3 Band B</value>
        </values>
      </param>
      <param humanName="Video Transmitter Frequency" name="VTX_FREQ" documentation="Video Transmitter Frequency. The frequency is derived from the setting of BAND and CHANNEL" user="Standard">
        <field name="ReadOnly">True</field>
        <field name="Range">1000 6000</field>
      </param>
      <param humanName="Video Transmitter Options" name="VTX_OPTIONS" documentation="Video Transmitter Options. Pitmode puts the VTX in a low power state. Unlocked enables certain restricted frequencies and power levels. Do not enable the Unlocked option unless you have appropriate permissions in your jurisdiction to transmit at high power levels. One stop-bit may be required for VTXs that erroneously mimic iNav behaviour." user="Advanced">
        <bitmask>
          <bit code="0">Pitmode</bit>
          <bit code="1">Pitmode until armed</bit>
          <bit code="2">Pitmode when disarmed</bit>
          <bit code="3">Unlocked</bit>
          <bit code="4">Add leading zero byte to requests</bit>
          <bit code="5">Use 1 stop-bit in SmartAudio</bit>
          <bit code="6">Ignore CRC in SmartAudio</bit>
          <bit code="7">Ignore status updates in CRSF and blindly set VTX options</bit>
        </bitmask>
        <field name="Bitmask">0:Pitmode,1:Pitmode until armed,2:Pitmode when disarmed,3:Unlocked,4:Add leading zero byte to requests,5:Use 1 stop-bit in SmartAudio,6:Ignore CRC in SmartAudio,7:Ignore status updates in CRSF and blindly set VTX options</field>
      </param>
      <param humanName="Video Transmitter Max Power Level" name="VTX_MAX_POWER" documentation="Video Transmitter Maximum Power Level. Different VTXs support different power levels, this prevents the power aux switch from requesting too high a power level. The switch supports 6 power levels and the selected power will be a subdivision between 0 and this setting.">
        <field name="Range">25 1000</field>
      </param>
    </parameters>
    <parameters name="YAW">
      <param humanName="Sideslip control gain" name="YAW2SRV_SLIP" documentation="Gain from lateral acceleration to demanded yaw rate for aircraft with enough fuselage area to detect lateral acceleration and sideslips. Do not enable for flying wings and gliders. Actively coordinates flight more than just yaw damping. Set after YAW2SRV_DAMP and YAW2SRV_INT are tuned." user="Advanced">
        <field name="Range">0 4</field>
        <field name="Increment">0.25</field>
      </param>
      <param humanName="Sideslip control integrator" name="YAW2SRV_INT" documentation="Integral gain from lateral acceleration error. Effectively trims rudder to eliminate long-term sideslip." user="Advanced">
        <field name="Range">0 2</field>
        <field name="Increment">0.25</field>
      </param>
      <param humanName="Yaw damping" name="YAW2SRV_DAMP" documentation="Gain from yaw rate to rudder. Most effective at yaw damping and should be tuned after KFF_RDDRMIX. Also disables YAW2SRV_INT if set to 0." user="Advanced">
        <field name="Range">0 2</field>
        <field name="Increment">0.25</field>
      </param>
      <param humanName="Yaw coordination gain" name="YAW2SRV_RLL" documentation="Gain to the yaw rate required to keep it consistent with the turn rate in a coordinated turn. Corrects for yaw tendencies after the turn is established. Increase yaw into the turn by raising. Increase yaw out of the turn by decreasing. Values outside of 0.9-1.1 range indicate airspeed calibration problems." user="Advanced">
        <field name="Range">0.8 1.2</field>
        <field name="Increment">0.05</field>
      </param>
      <param humanName="Integrator limit" name="YAW2SRV_IMAX" documentation="Limit of yaw integrator gain in centi-degrees of servo travel. Servos are assumed to have +/- 4500 centi-degrees of travel, so a value of 1500 allows trim of up to 1/3 of servo travel range." user="Advanced">
        <field name="Range">0 4500</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Yaw rate enable" name="YAW_RATE_ENABLE" documentation="Enable yaw rate controller for aerobatic flight" user="Advanced">
        <values>
          <value code="0">Disable</value>
          <value code="1">Enable</value>
        </values>
      </param>
      <param humanName="Yaw axis rate controller P gain" name="YAW_RATE_P" documentation="Yaw axis rate controller P gain.  Corrects in proportion to the difference between the desired yaw rate vs actual yaw rate" user="Standard">
        <field name="Range">0.08 0.35</field>
        <field name="Increment">0.005</field>
      </param>
      <param humanName="Yaw axis rate controller I gain" name="YAW_RATE_I" documentation="Yaw axis rate controller I gain.  Corrects long-term difference in desired yaw rate vs actual yaw rate" user="Standard">
        <field name="Range">0.01 0.6</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Yaw axis rate controller I gain maximum" name="YAW_RATE_IMAX" documentation="Yaw axis rate controller I gain maximum.  Constrains the maximum that the I term will output" user="Standard">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Yaw axis rate controller D gain" name="YAW_RATE_D" documentation="Yaw axis rate controller D gain.  Compensates for short-term change in desired yaw rate vs actual yaw rate" user="Standard">
        <field name="Range">0.001 0.03</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Yaw axis rate controller feed forward" name="YAW_RATE_FF" documentation="Yaw axis rate controller feed forward" user="Standard">
        <field name="Range">0 3.0</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Yaw axis rate controller target frequency in Hz" name="YAW_RATE_FLTT" documentation="Yaw axis rate controller target frequency in Hz" user="Standard">
        <field name="Range">2 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Yaw axis rate controller error frequency in Hz" name="YAW_RATE_FLTE" documentation="Yaw axis rate controller error frequency in Hz" user="Standard">
        <field name="Range">2 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Yaw axis rate controller derivative frequency in Hz" name="YAW_RATE_FLTD" documentation="Yaw axis rate controller derivative frequency in Hz" user="Standard">
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="Yaw slew rate limit" name="YAW_RATE_SMAX" documentation="Sets an upper limit on the slew rate produced by the combined P and D gains. If the amplitude of the control action produced by the rate feedback exceeds this value, then the D+P gain is reduced to respect the limit. This limits the amplitude of high frequency oscillations caused by an excessive gain. The limit should be set to no more than 25% of the actuators maximum slew rate to allow for load effects. Note: The gain will not be reduced to less than 10% of the nominal value. A value of zero will disable this feature." user="Advanced">
        <field name="Range">0 200</field>
        <field name="Increment">0.5</field>
      </param>
      <param humanName="Yaw axis rate controller PD sum maximum" name="YAW_RATE_PDMX" documentation="Yaw axis rate controller PD sum maximum.  The maximum/minimum value that the sum of the P and D term can output">
        <field name="Range">0 1</field>
        <field name="Increment">0.01</field>
      </param>
      <param humanName="Yaw Derivative FeedForward Gain" name="YAW_RATE_D_FF" documentation="FF D Gain which produces an output that is proportional to the rate of change of the target" user="Advanced">
        <field name="Range">0 0.03</field>
        <field name="Increment">0.001</field>
      </param>
      <param humanName="Yaw Target notch filter index" name="YAW_RATE_NTF" documentation="Yaw Target notch filter index" user="Advanced">
        <field name="Range">1 8</field>
      </param>
      <param humanName="Yaw Error notch filter index" name="YAW_RATE_NEF" documentation="Yaw Error notch filter index" user="Advanced">
        <field name="Range">1 8</field>
      </param>
    </parameters>
  </libraries>
</paramfile>
