<?xml version="1.0" encoding="utf-8"?>
<!-- Dynamically generated list of documented parameters (generated by param_parse.py) -->
<paramfile>
  <vehicles>
    <parameters name="AP_Periph">
      <param humanName="Eeprom format version number" name="AP_Periph:FORMAT_VERSION" documentation="This value is incremented when changes are made to the eeprom format" user="Advanced">
</param>
      <param humanName="DroneCAN node ID used by this node on all networks" name="AP_Periph:CAN_NODE" documentation="Value of 0 requests any ID from a DNA server, any other value sets that ID ignoring DNA" user="Advanced">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitrate of CAN interface" name="AP_Periph:CAN_BAUDRATE" documentation="Bit rate can be set up to from 10000 to 1000000" user="Advanced">
        <field name="Range">10000 1000000</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="SLCAN Route" name="AP_Periph: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="Enable CAN software termination in this node" name="AP_Periph:CAN_TERMINATE" documentation="Enable CAN software termination in this node" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Enable use of specific protocol to be used on this port" name="AP_Periph:CAN_PROTOCOL" documentation="Enabling this option starts selected protocol that will use this virtual driver. At least one CAN port must be UAVCAN or else CAN1 gets set to UAVCAN" user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">UAVCAN</value>
          <value code="4">PiccoloCAN</value>
          <value code="6">EFI_NWPMU</value>
          <value code="7">USD1</value>
          <value code="8">KDECAN</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Bitrate of CAN2 interface" name="AP_Periph:CAN2_BAUDRATE" documentation="Bit rate can be set up to from 10000 to 1000000" user="Advanced">
        <field name="Range">10000 1000000</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Enable use of specific protocol to be used on this port" name="AP_Periph:CAN2_PROTOCOL" documentation="Enabling this option starts selected protocol that will use this virtual driver. At least one CAN port must be UAVCAN or else CAN1 gets set to UAVCAN" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">Disabled</value>
          <value code="1">UAVCAN</value>
          <value code="4">PiccoloCAN</value>
          <value code="6">EFI_NWPMU</value>
          <value code="7">USD1</value>
          <value code="8">KDECAN</value>
        </values>
      </param>
      <param humanName="Enable CAN software termination in this node" name="AP_Periph:CAN2_TERMINATE" documentation="Enable CAN software termination in this node" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Bitrate of CAN3 interface" name="AP_Periph:CAN3_BAUDRATE" documentation="Bit rate can be set up to from 10000 to 1000000" user="Advanced">
        <field name="Range">10000 1000000</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Enable use of specific protocol to be used on this port" name="AP_Periph:CAN3_PROTOCOL" documentation="Enabling this option starts selected protocol that will use this virtual driver. At least one CAN port must be UAVCAN or else CAN1 gets set to UAVCAN" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">Disabled</value>
          <value code="1">UAVCAN</value>
          <value code="4">PiccoloCAN</value>
          <value code="6">EFI_NWPMU</value>
          <value code="7">USD1</value>
          <value code="8">KDECAN</value>
        </values>
      </param>
      <param humanName="Enable CAN software termination in this node" name="AP_Periph:CAN3_TERMINATE" documentation="Enable CAN software termination in this node" user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="Enable CANFD mode" name="AP_Periph:CAN_FDMODE" documentation="Enabling this option sets the CAN bus to be in CANFD mode with BRS." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Set up bitrate for data section on CAN1" name="AP_Periph:CAN_FDBAUDRATE" documentation="This sets the bitrate for the data section of CAN1." 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>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Set up bitrate for data section on CAN2" name="AP_Periph:CAN2_FDBAUDRATE" documentation="This sets the bitrate for the data section of CAN2." user="Advanced">
        <field name="RebootRequired">True</field>
        <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="Trigger bootloader update" name="AP_Periph:FLASH_BOOTLOADER" documentation="DANGER! When enabled, the App will perform a bootloader update by copying the embedded bootloader over the existing bootloader. This may take a few seconds to perform and should only be done if you know what you're doing." user="Advanced">
        <field name="Range">0 1</field>
      </param>
      <param humanName="Debug" name="AP_Periph:DEBUG" documentation="Debug" user="Advanced">
        <bitmask>
          <bit code="0">Show free stack space</bit>
          <bit code="1">Auto Reboot after 15sec</bit>
          <bit code="2">Enable sending stats</bit>
        </bitmask>
        <field name="Bitmask">0:Show free stack space, 1:Auto Reboot after 15sec, 2:Enable sending stats</field>
      </param>
      <param humanName="Serial number of device" name="AP_Periph:BRD_SERIAL_NUM" documentation="Non-zero positive values will be shown on the CAN App Name string" user="Advanced">
        <field name="Range">0 2147483648</field>
      </param>
      <param humanName="Buzzer volume" name="AP_Periph:BUZZER_VOLUME" documentation="Control the volume of the buzzer" 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="GPS Serial Port" name="AP_Periph:GPS_PORT" documentation="This is the serial port number where SERIALx_PROTOCOL will be set to GPS." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Moving Baseline CAN Port option" name="AP_Periph:MB_CAN_PORT" documentation="Autoselect dedicated CAN port on which moving baseline data will be transmitted." user="Advanced">
        <values>
          <value code="0">Sends moving baseline data on all ports</value>
          <value code="1">auto select remaining port for transmitting Moving baseline Data</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Battery hide mask" name="AP_Periph:BATT_HIDE_MASK" documentation="Instance mask of local battery index(es) to prevent transmitting their status over CAN. This is useful for hiding a &quot;battery&quot; instance that is used locally in the peripheral but don't want them to be treated as a battery source(s) to the autopilot. For example, an AP_Periph battery monitor with multiple batteries that monitors each locally for diagnostic or other purposes, but only reports as a single SUM battery monitor to the autopilot." user="Advanced">
        <bitmask>
          <bit code="0">BATT</bit>
          <bit code="1">BATT2</bit>
          <bit code="2">BATT3</bit>
          <bit code="3">BATT4</bit>
          <bit code="4">BATT5</bit>
          <bit code="5">BATT6</bit>
          <bit code="6">BATT7</bit>
          <bit code="7">BATT8</bit>
          <bit code="8">BATT9</bit>
          <bit code="9">BATTA</bit>
          <bit code="10">BATTB</bit>
          <bit code="11">BATTC</bit>
          <bit code="12">BATTD</bit>
          <bit code="13">BATTE</bit>
          <bit code="14">BATTF</bit>
          <bit code="15">BATTG</bit>
        </bitmask>
        <field name="Bitmask">0:BATT, 1:BATT2, 2:BATT3, 3:BATT4, 4:BATT5, 5:BATT6, 6:BATT7, 7:BATT8, 8:BATT9, 9:BATTA, 10:BATTB, 11:BATTC, 12:BATTD, 13:BATTE, 14:BATTF, 15:BATTG</field>
      </param>
      <param humanName="Barometer Enable" name="AP_Periph:BARO_ENABLE" documentation="Barometer Enable" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
      </param>
      <param humanName="LED Brightness" name="AP_Periph:LED_BRIGHTNESS" documentation="Select the RGB LED brightness level." 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="Rangefinder serial baudrate" name="AP_Periph:RNGFND_BAUDRATE" documentation="Rangefinder serial baudrate." user="Standard">
        <values>
          <value code="1200">1200</value>
          <value code="2400">2400</value>
          <value code="4800">4800</value>
          <value code="9600">9600</value>
          <value code="19200">19200</value>
          <value code="38400">38400</value>
          <value code="57600">57600</value>
          <value code="111100">111100</value>
          <value code="115200">115200</value>
          <value code="230400">230400</value>
          <value code="256000">256000</value>
          <value code="460800">460800</value>
          <value code="500000">500000</value>
          <value code="921600">921600</value>
          <value code="1500000">1500000</value>
        </values>
        <field name="Range">1200 20000000</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Rangefinder Serial Port" name="AP_Periph:RNGFND_PORT" documentation="This is the serial port number where SERIALx_PROTOCOL will be set to Rangefinder." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Rangefinder serial baudrate" name="AP_Periph:RNGFND2_BAUDRATE" documentation="Rangefinder serial baudrate." user="Standard">
        <field name="Increment">1</field>
        <field name="Range">1200 20000000</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="1200">1200</value>
          <value code="2400">2400</value>
          <value code="4800">4800</value>
          <value code="9600">9600</value>
          <value code="19200">19200</value>
          <value code="38400">38400</value>
          <value code="57600">57600</value>
          <value code="111100">111100</value>
          <value code="115200">115200</value>
          <value code="230400">230400</value>
          <value code="256000">256000</value>
          <value code="460800">460800</value>
          <value code="500000">500000</value>
          <value code="921600">921600</value>
          <value code="1500000">1500000</value>
        </values>
      </param>
      <param humanName="Rangefinder Serial Port" name="AP_Periph:RNGFND2_PORT" documentation="This is the serial port number where SERIALx_PROTOCOL will be set to Rangefinder." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Rangefinder max rate" name="AP_Periph:RNGFND_MAX_RATE" documentation="This is the maximum rate we send rangefinder data in Hz. Zero means no limit" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="ADSB serial baudrate" name="AP_Periph:ADSB_BAUDRATE" documentation="ADSB serial baudrate." user="Standard">
        <field name="Increment">1</field>
        <field name="Range">1200 20000000</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="1200">1200</value>
          <value code="2400">2400</value>
          <value code="4800">4800</value>
          <value code="9600">9600</value>
          <value code="19200">19200</value>
          <value code="38400">38400</value>
          <value code="57600">57600</value>
          <value code="111100">111100</value>
          <value code="115200">115200</value>
          <value code="230400">230400</value>
          <value code="256000">256000</value>
          <value code="460800">460800</value>
          <value code="500000">500000</value>
          <value code="921600">921600</value>
          <value code="1500000">1500000</value>
        </values>
      </param>
      <param humanName="ADSB Serial Port" name="AP_Periph:ADSB_PORT" documentation="This is the serial port number where SERIALx_PROTOCOL will be set to ADSB." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Hardpoint ID" name="AP_Periph:HARDPOINT_ID" documentation="Hardpoint ID" user="Advanced">
</param>
      <param humanName="Hardpoint PWM rate" name="AP_Periph:HARDPOINT_RATE" documentation="Hardpoint PWM rate" user="Advanced">
        <field name="Range">10 100</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="ESC number" name="AP_Periph:ESC_NUMBER" documentation="This is the ESC number to report as in UAVCAN ESC telemetry feedback packets." user="Advanced">
        <field name="Increment">1</field>
      </param>
      <param humanName="ESC Update Rate" name="AP_Periph:ESC_RATE" documentation="Rate in Hz that ESC PWM outputs (function is MotorN) will update at" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">50 400</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="Output PWM type" name="AP_Periph:ESC_PWM_TYPE" documentation="This selects the output PWM type, allowing for normal PWM continuous output, OneShot, brushed or DShot motor output" user="Advanced">
        <values>
          <value code="1">Normal</value>
          <value code="2">OneShot</value>
          <value code="3">OneShot125</value>
          <value code="4">Brushed</value>
          <value code="5">DShot150</value>
          <value code="6">DShot300</value>
          <value code="7">DShot600</value>
          <value code="8">DShot1200</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ESC Command Timeout" name="AP_Periph:ESC_CMD_TIMO" documentation="This is the duration (ms) with which to hold the last driven ESC command before timing out and zeroing the ESC outputs. To disable zeroing of outputs in event of CAN loss, use 0. Use values greater than the expected duration between two CAN frames to ensure Periph is not starved of ESC Raw Commands." user="Advanced">
        <field name="Range">0 10000</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="ESC Telemetry Serial Port" name="AP_Periph:ESC_TELEM_PORT" documentation="This is the serial port number where SERIALx_PROTOCOL will be set to ESC Telemetry" user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ESC Telemetry update rate" name="AP_Periph:ESC_TELEM_RATE" documentation="This is the rate at which ESC Telemetry will be sent across the CAN bus" user="Advanced">
        <field name="Range">0 1000</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="MSP Serial Port" name="AP_Periph:MSP_PORT" documentation="This is the serial port number where SERIALx_PROTOCOL will be set to MSP" user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Log bitmask" name="AP_Periph:LOG_BITMASK" documentation="4 byte bitmap of log types to enable" user="Standard">
        <bitmask>
          <bit code="2">GPS</bit>
        </bitmask>
        <field name="Bitmask">2:GPS</field>
      </param>
      <param humanName="EFI serial baudrate" name="AP_Periph:EFI_BAUDRATE" documentation="EFI  serial baudrate." user="Standard">
        <field name="Increment">1</field>
        <field name="Range">1200 20000000</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="1200">1200</value>
          <value code="2400">2400</value>
          <value code="4800">4800</value>
          <value code="9600">9600</value>
          <value code="19200">19200</value>
          <value code="38400">38400</value>
          <value code="57600">57600</value>
          <value code="111100">111100</value>
          <value code="115200">115200</value>
          <value code="230400">230400</value>
          <value code="256000">256000</value>
          <value code="460800">460800</value>
          <value code="500000">500000</value>
          <value code="921600">921600</value>
          <value code="1500000">1500000</value>
        </values>
      </param>
      <param humanName="EFI Serial Port" name="AP_Periph:EFI_PORT" documentation="This is the serial port number where SERIALx_PROTOCOL will be set to EFI." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Proximity Sensor serial baudrate" name="AP_Periph:PRX_BAUDRATE" documentation="Proximity Sensor serial baudrate." user="Standard">
        <field name="Increment">1</field>
        <field name="Range">1200 20000000</field>
        <field name="RebootRequired">True</field>
        <values>
          <value code="1200">1200</value>
          <value code="2400">2400</value>
          <value code="4800">4800</value>
          <value code="9600">9600</value>
          <value code="19200">19200</value>
          <value code="38400">38400</value>
          <value code="57600">57600</value>
          <value code="111100">111100</value>
          <value code="115200">115200</value>
          <value code="230400">230400</value>
          <value code="256000">256000</value>
          <value code="460800">460800</value>
          <value code="500000">500000</value>
          <value code="921600">921600</value>
          <value code="1500000">1500000</value>
        </values>
      </param>
      <param humanName="Proximity Sensor Serial Port" name="AP_Periph:PRX_PORT" documentation="This is the serial port number where SERIALx_PROTOCOL will be set to Proximity Sensor." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Proximity Sensor max rate" name="AP_Periph:PRX_MAX_RATE" documentation="This is the maximum rate we send Proximity Sensor data in Hz. Zero means no limit" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="ESC APD Serial 1" name="AP_Periph:ESC_APD_SERIAL_1" documentation="Which serial port to use for APD ESC data" user="Advanced">
        <field name="Range">0 6</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="ESC APD Serial 2" name="AP_Periph:ESC_APD_SERIAL_2" documentation="Which serial port to use for APD ESC data" user="Advanced">
        <field name="Range">0 6</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="CAN ports to mirror traffic between" name="AP_Periph:CAN_MIRROR_PORTS" documentation="Any set ports will participate in blindly mirroring traffic from one port to the other. It is the users responsibility to ensure that no loops exist that cause traffic to be infinitly repeated, and both ports must be running the same baud rates." user="Advanced">
        <bitmask>
          <bit code="0">CAN1</bit>
          <bit code="1">CAN2</bit>
          <bit code="2">CAN3</bit>
        </bitmask>
        <field name="Bitmask">0:CAN1, 1:CAN2, 2:CAN3</field>
      </param>
      <param humanName="Temperature sensor message rate" name="AP_Periph:TEMP_MSG_RATE" documentation="This is the rate Temperature sensor data is sent in Hz. Zero means no send. Each sensor with source DroneCAN is sent in turn." user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="AP Periph Options" name="AP_Periph:OPTIONS" documentation="Bitmask of AP Periph Options" user="Standard">
        <bitmask>
          <bit code="0">Enable continuous sensor probe</bit>
        </bitmask>
        <field name="Bitmask">0: Enable continuous sensor probe</field>
      </param>
      <param humanName="RPM sensor message rate" name="AP_Periph:RPM_MSG_RATE" documentation="This is the rate RPM sensor data is sent in Hz. Zero means no send. Each sensor with a set ID is sent in turn." user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 200</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="ESC Extended telemetry message rate" name="AP_Periph:ESC_EXT_TLM_RATE" documentation="This is the rate at which extended ESC Telemetry will be sent across the CAN bus for each ESC" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 50</field>
        <field name="Increment">1</field>
      </param>
      <param humanName="IMU Sample Rate" name="AP_Periph:IMU_SAMPLE_RATE" documentation="IMU Sample Rate" user="Standard">
        <field name="Range">0 1000</field>
      </param>
      <param humanName="Servo Command Timeout" name="AP_Periph:SRV_CMD_TIME_OUT" documentation="This is the duration (ms) with which to hold the last driven servo command before timing out and zeroing the servo outputs. To disable zeroing of outputs in event of CAN loss, use 0. Use values greater than the expected duration between two CAN frames to ensure Periph is not starved of ESC Raw Commands." user="Advanced">
        <field name="Range">0 10000</field>
        <field name="Units">ms</field>
        <field name="UnitText">milliseconds</field>
      </param>
      <param humanName="Servo telemetry message rate" name="AP_Periph:SRV_TLM_MSG_RATE" documentation="This is the rate servo telem data is sent in Hz. Zero means no send. Each servo is sent in turn." user="Standard">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 200</field>
        <field name="Increment">1</field>
      </param>
    </parameters>
  </vehicles>
  <libraries>
    <parameters name="Lua Script">
      <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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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="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 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="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="Number of CircuitStatus monitors" name="DCS_NUM_CIRCUITS" documentation="Number of DroneCAN CircuitStatus battery monitor instances. The per-instance DCSx_ parameters are created based on this value." user="Standard">
        <field name="Range">0 9</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="CircuitStatus circuit ID" name="DCS1_CIRCUIT_ID" documentation="circuit_id of the CircuitStatus message to use for this instance. Set to -1 to disable." user="Standard">
        <field name="Range">-1 65535</field>
      </param>
      <param humanName="CircuitStatus battery index" name="DCS1_BATT_IDX" documentation="Battery monitor instance to feed with this circuit. Set to 1 for BATT, 2 for BATT2 etc. The corresponding BATTn_MONITOR must be 29 (scripting). Set to 0 to disable." user="Standard">
        <field name="Range">0 9</field>
      </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="1">ParseTelemetry</bit>
          <bit code="2">SendPosAsNamedValueFloat</bit>
        </bitmask>
        <field name="Bitmask">1:ParseTelemetry,2:SendPosAsNamedValueFloat</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="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="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="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="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="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="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="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="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="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="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="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="ACT">
      <param humanName="Number of actuator channels" name="ACT_NUM_CHANS" documentation="Number of actuator channels to monitor for telemetry." user="Standard">
        <field name="Range">0 4</field>
      </param>
      <param humanName="Current sensing pin 1" name="ACT_CURR_PIN1" documentation="Analog input pin number for current sensing on channel 1. Set to -1 to disable." user="Standard">
        <values>
          <value code="-1">Disabled</value>
        </values>
        <field name="Range">-1 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Current sensor offset" name="ACT_AMP_OFFSET" documentation="Voltage offset at zero current on the current sensor." user="Standard">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="Amps per volt" name="ACT_AMP_PERVLT" documentation="Current sensor scale factor." user="Standard">
        <field name="Units">A/V</field>
        <field name="UnitText">ampere per volt</field>
      </param>
      <param humanName="Maximum current" name="ACT_CURR_MAX" documentation="Maximum expected current for this channel." user="Standard">
        <field name="Units">A</field>
        <field name="UnitText">ampere</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="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="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>
    </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="20">Scripting</value>
          <value code="100">SITL</value>
        </values>
        <field name="RebootRequired">True</field>
      </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="20">Scripting</value>
          <value code="100">SITL</value>
        </values>
        <field name="RebootRequired">True</field>
      </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="20">Scripting</value>
          <value code="100">SITL</value>
        </values>
        <field name="RebootRequired">True</field>
      </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="20">Scripting</value>
          <value code="100">SITL</value>
        </values>
        <field name="RebootRequired">True</field>
      </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="20">Scripting</value>
          <value code="100">SITL</value>
        </values>
        <field name="RebootRequired">True</field>
      </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="20">Scripting</value>
          <value code="100">SITL</value>
        </values>
        <field name="RebootRequired">True</field>
      </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="BAL">
      <param humanName="Number of battery cells" name="BAL_NUM_CELLS" documentation="Number of battery cells to monitor">
        <field name="Range">0 64</field>
      </param>
      <param humanName="Battery ID" name="BAL_ID" documentation="Battery ID to match against other batteries">
        <field name="Range">0 127</field>
      </param>
      <param humanName="Send Rate" name="BAL_RATE" documentation="Rate to send cell information">
        <field name="Range">0 20</field>
      </param>
      <param humanName="First analog pin" name="BAL_CELL1_PIN" documentation="Analog pin of the first cell. Later cells must be sequential">
        <field name="Range">0 127</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="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>
      <param humanName="Thrust compensation filter cutoff" name="BARO_THST_FILT" documentation="Low-pass filter cutoff frequency for thrust compensation. This smooths the throttle input to prevent rapid baro altitude changes during throttle transients. Set to 0 to disable filtering." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATT2_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATT3_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATT4_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATT5_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATT6_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATT7_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATT8_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATT9_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATTA_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATTB_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATTC_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATTD_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATTE_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATTF_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATTG_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </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="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="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 in decimal. 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="Increment">0.0001</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="Increment">0.0001</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>
      <param humanName="Battery BMS configuration" name="BATT_CFG_UPDATE" documentation="Controls startup configuration behavior. 1 writes configuration once then clears to 0. 2 checks current configuration and writes only if needed." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Write configuration once</value>
          <value code="2">Check and update if needed</value>
        </values>
      </param>
    </parameters>
    <parameters name="BMS">
      <param humanName="Battery Sleep Timeout" name="BMSSLEEP_SEC" documentation="Battery sleep timeout in seconds.  If there is no activity for this many seconds the battery will enter sleep mode.  Set to 0 to disable sleep mode" user="Advanced">
        <field name="Range">0 600</field>
      </param>
    </parameters>
    <parameters name="BTAG">
      <param humanName="Number of cycles" name="BTAG_NUM_CYCLES" documentation="Number of cycles the battery has been through">
</param>
      <param humanName="Number of armed hours" name="BTAG_ARM_HOURS" documentation="Number of hours the battery has been armed">
</param>
      <param humanName="Battery capacity" name="BTAG_CAPACITY" documentation="Battery capacity in mAh">
</param>
      <param humanName="First use time" name="BTAG_FIRST_USE" documentation="First use time in minutes since 1/1/1970">
</param>
      <param humanName="Last use time" name="BTAG_LAST_USE" documentation="Last use time in minutes since 1/1/1970">
</param>
      <param humanName="Serial number" name="BTAG_SERIAL" documentation="Serial number">
</param>
      <param humanName="Cycle minimum time" name="BTAG_CYCLE_MIN" documentation="Cycle minimum time. Minimum time that vehicle is armed in minutes for counting a battery cycle">
</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. EKF-Learning uses the offsets learnt by the active EKF state estimator; those offsets are saved when you disarm the vehicle, and it does nothing on firmware built without the CompassLearnCopyFromEKF feature. If InFlight learning is enabled then the compass will 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>
          <bit code="24">AF9838</bit>
          <bit code="25">AK09940A</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,24:AF9838,25:AK09940A</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>
    </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="DAC1_">
      <param humanName="DAC Type" name="DAC1_TYPE" documentation="DAC Type" user="Standard">
        <values>
          <value code="0">Disabled</value>
          <value code="1">TIx3204</value>
          <value code="2">MCP401x</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="I2C bus" name="DAC1_BUS" documentation="I2C bus number" user="Standard">
        <field name="Range">0 3</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="I2C address" name="DAC1_ADDR" documentation="I2C address" user="Standard">
        <field name="Range">0 127</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Voltage reference" name="DAC1_VREF" documentation="Voltage reference" user="Standard">
        <field name="Range">0 1000</field>
      </param>
      <param humanName="Voltage" name="DAC1_VOLTS" documentation="Voltage" user="Standard">
        <field name="Range">0 1000</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="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="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>
      <param humanName="Harmonic Notch Filter ESC mask" name="INS_HNTC2_ESCMSK" documentation="Bitmask of ESC channels to use in ESC Telemetry mode. 0 uses all available ESCs." 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>
    </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>
      <param humanName="Harmonic Notch Filter ESC mask" name="INS_HNTC3_ESCMSK" documentation="Bitmask of ESC channels to use in ESC Telemetry mode. 0 uses all available ESCs." 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>
    </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>
      <param humanName="Harmonic Notch Filter ESC mask" name="INS_HNTC4_ESCMSK" documentation="Bitmask of ESC channels to use in ESC Telemetry mode. 0 uses all available ESCs." 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>
    </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>
      <param humanName="Harmonic Notch Filter ESC mask" name="INS_HNTCH_ESCMSK" documentation="Bitmask of ESC channels to use in ESC Telemetry mode. 0 uses all available ESCs." 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>
    </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="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>
        <field name="RebootRequired">True</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. The value is capped at a board-dependent maximum." 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. IDs above 255 require MAVLink2 with 32-bit system ID support on every communicating device. MAVLink1 ports cannot transmit with these IDs." user="Advanced">
        <field name="Range">1 4294967295</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 4294967295</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 4294967295</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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV1_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV2_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV3_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV4_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV5_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV6_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV7_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV8_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV9_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV10_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV11_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV12_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV13_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV14_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV15_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV16_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV17_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV18_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV19_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV20_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV21_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV22_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV23_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV24_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV25_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV26_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV27_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV28_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV29_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV30_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV31_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </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. Unicast blocks forwarding of broadcasts to/from this link, but allows packets addressed to a learned system/component pair. A missing or zero target system or component is a broadcast. Unicast sends heartbeat but does not start the normal telemetry streams; devices can request messages with MAV_CMD_SET_MESSAGE_INTERVAL or MAV_CMD_REQUEST_MESSAGE. Local processing is unaffected." 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>
          <bit code="4">Unicast</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, 4:Unicast</field>
      </param>
      <param humanName="DeviceID" name="MAV32_DEVID" documentation="ID of device using this MAVLink channel" user="Advanced">
        <field name="ReadOnly">True</field>
        <values>
          <value code="0">Unknown</value>
          <value code="65542">SERIAL0 (USB on ChibiOS)</value>
          <value code="65798">SERIAL1</value>
          <value code="66054">SERIAL2</value>
          <value code="66310">SERIAL3</value>
          <value code="66566">SERIAL4</value>
          <value code="66822">SERIAL5</value>
          <value code="67078">SERIAL6</value>
          <value code="67334">SERIAL7</value>
          <value code="67590">SERIAL8</value>
          <value code="67846">SERIAL9</value>
          <value code="131078">NET_P1</value>
          <value code="131334">NET_P2</value>
          <value code="131590">NET_P3</value>
          <value code="131846">NET_P4</value>
          <value code="196614">CAN_D1_UC_S1</value>
          <value code="196870">CAN_D1_UC_S2</value>
          <value code="197126">CAN_D1_UC_S3</value>
          <value code="196622">CAN_D2_UC_S1</value>
          <value code="196878">CAN_D2_UC_S2</value>
          <value code="197134">CAN_D2_UC_S3</value>
          <value code="262150">SCR_SDEV1</value>
          <value code="262406">SCR_SDEV2</value>
          <value code="262662">SCR_SDEV3</value>
        </values>
      </param>
    </parameters>
    <parameters name="NET_">
      <param humanName="PPP serial port" name="NET_PPP_PORT" documentation="PPP serial port">
        <field name="Range">-1 10</field>
      </param>
      <param humanName="PPP serial baudrate" name="NET_PPP_BAUD" documentation="PPP serial baudrate" 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>
    </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_P5_">
      <param humanName="Port type" name="NET_P5_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_P5_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_P5_PORT" documentation="Port number" user="Advanced">
        <field name="Range">0 65535</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P5_IP">
      <param humanName="IPv4 Address 1st byte" name="NET_P5_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_P5_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_P5_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_P5_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_P6_">
      <param humanName="Port type" name="NET_P6_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_P6_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_P6_PORT" documentation="Port number" user="Advanced">
        <field name="Range">0 65535</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P6_IP">
      <param humanName="IPv4 Address 1st byte" name="NET_P6_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_P6_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_P6_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_P6_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_P7_">
      <param humanName="Port type" name="NET_P7_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_P7_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_P7_PORT" documentation="Port number" user="Advanced">
        <field name="Range">0 65535</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P7_IP">
      <param humanName="IPv4 Address 1st byte" name="NET_P7_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_P7_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_P7_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_P7_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_P8_">
      <param humanName="Port type" name="NET_P8_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_P8_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_P8_PORT" documentation="Port number" user="Advanced">
        <field name="Range">0 65535</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P8_IP">
      <param humanName="IPv4 Address 1st byte" name="NET_P8_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_P8_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_P8_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_P8_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_P9_">
      <param humanName="Port type" name="NET_P9_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_P9_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_P9_PORT" documentation="Port number" user="Advanced">
        <field name="Range">0 65535</field>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="NET_P9_IP">
      <param humanName="IPv4 Address 1st byte" name="NET_P9_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_P9_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_P9_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_P9_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_PASS1_">
      <param humanName="Enable Passthrough" name="NET_PASS1_ENABLE" documentation="Enable Passthrough of any UART, Network, or CAN ports to any UART, Network, or CAN ports." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 1" name="NET_PASS1_EP1" documentation="Passthrough Endpoint 1. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 2." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 2" name="NET_PASS1_EP2" documentation="Passthrough Endpoint 2. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 1." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
      </param>
      <param humanName="Endpoint 1 Baud Rate" name="NET_PASS1_BAUD1" documentation="The baud rate used for Endpoint 1. Only applies to serial ports." 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="Endpoint 2 Baud Rate" name="NET_PASS1_BAUD2" documentation="The baud rate used for Endpoint 2. Only applies to serial ports." 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 Port Options EP1" name="NET_PASS1_OPT1" documentation="Control over UART options for Endpoint 1. Only applies to serial ports." 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 Port Options EP2" name="NET_PASS1_OPT2" documentation="Control over UART options for Endpoint 2. Only applies to serial ports." 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="NET_PASS2_">
      <param humanName="Enable Passthrough" name="NET_PASS2_ENABLE" documentation="Enable Passthrough of any UART, Network, or CAN ports to any UART, Network, or CAN ports." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 1" name="NET_PASS2_EP1" documentation="Passthrough Endpoint 1. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 2." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 2" name="NET_PASS2_EP2" documentation="Passthrough Endpoint 2. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 1." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
      </param>
      <param humanName="Endpoint 1 Baud Rate" name="NET_PASS2_BAUD1" documentation="The baud rate used for Endpoint 1. Only applies to serial ports." 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="Endpoint 2 Baud Rate" name="NET_PASS2_BAUD2" documentation="The baud rate used for Endpoint 2. Only applies to serial ports." 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 Port Options EP1" name="NET_PASS2_OPT1" documentation="Control over UART options for Endpoint 1. Only applies to serial ports." 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 Port Options EP2" name="NET_PASS2_OPT2" documentation="Control over UART options for Endpoint 2. Only applies to serial ports." 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="NET_PASS3_">
      <param humanName="Enable Passthrough" name="NET_PASS3_ENABLE" documentation="Enable Passthrough of any UART, Network, or CAN ports to any UART, Network, or CAN ports." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 1" name="NET_PASS3_EP1" documentation="Passthrough Endpoint 1. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 2." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 2" name="NET_PASS3_EP2" documentation="Passthrough Endpoint 2. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 1." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
      </param>
      <param humanName="Endpoint 1 Baud Rate" name="NET_PASS3_BAUD1" documentation="The baud rate used for Endpoint 1. Only applies to serial ports." 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="Endpoint 2 Baud Rate" name="NET_PASS3_BAUD2" documentation="The baud rate used for Endpoint 2. Only applies to serial ports." 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 Port Options EP1" name="NET_PASS3_OPT1" documentation="Control over UART options for Endpoint 1. Only applies to serial ports." 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 Port Options EP2" name="NET_PASS3_OPT2" documentation="Control over UART options for Endpoint 2. Only applies to serial ports." 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="NET_PASS4_">
      <param humanName="Enable Passthrough" name="NET_PASS4_ENABLE" documentation="Enable Passthrough of any UART, Network, or CAN ports to any UART, Network, or CAN ports." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 1" name="NET_PASS4_EP1" documentation="Passthrough Endpoint 1. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 2." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 2" name="NET_PASS4_EP2" documentation="Passthrough Endpoint 2. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 1." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
      </param>
      <param humanName="Endpoint 1 Baud Rate" name="NET_PASS4_BAUD1" documentation="The baud rate used for Endpoint 1. Only applies to serial ports." 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="Endpoint 2 Baud Rate" name="NET_PASS4_BAUD2" documentation="The baud rate used for Endpoint 2. Only applies to serial ports." 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 Port Options EP1" name="NET_PASS4_OPT1" documentation="Control over UART options for Endpoint 1. Only applies to serial ports." 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 Port Options EP2" name="NET_PASS4_OPT2" documentation="Control over UART options for Endpoint 2. Only applies to serial ports." 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="NET_PASS5_">
      <param humanName="Enable Passthrough" name="NET_PASS5_ENABLE" documentation="Enable Passthrough of any UART, Network, or CAN ports to any UART, Network, or CAN ports." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 1" name="NET_PASS5_EP1" documentation="Passthrough Endpoint 1. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 2." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 2" name="NET_PASS5_EP2" documentation="Passthrough Endpoint 2. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 1." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
      </param>
      <param humanName="Endpoint 1 Baud Rate" name="NET_PASS5_BAUD1" documentation="The baud rate used for Endpoint 1. Only applies to serial ports." 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="Endpoint 2 Baud Rate" name="NET_PASS5_BAUD2" documentation="The baud rate used for Endpoint 2. Only applies to serial ports." 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 Port Options EP1" name="NET_PASS5_OPT1" documentation="Control over UART options for Endpoint 1. Only applies to serial ports." 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 Port Options EP2" name="NET_PASS5_OPT2" documentation="Control over UART options for Endpoint 2. Only applies to serial ports." 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="NET_PASS6_">
      <param humanName="Enable Passthrough" name="NET_PASS6_ENABLE" documentation="Enable Passthrough of any UART, Network, or CAN ports to any UART, Network, or CAN ports." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 1" name="NET_PASS6_EP1" documentation="Passthrough Endpoint 1. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 2." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 2" name="NET_PASS6_EP2" documentation="Passthrough Endpoint 2. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 1." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
      </param>
      <param humanName="Endpoint 1 Baud Rate" name="NET_PASS6_BAUD1" documentation="The baud rate used for Endpoint 1. Only applies to serial ports." 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="Endpoint 2 Baud Rate" name="NET_PASS6_BAUD2" documentation="The baud rate used for Endpoint 2. Only applies to serial ports." 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 Port Options EP1" name="NET_PASS6_OPT1" documentation="Control over UART options for Endpoint 1. Only applies to serial ports." 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 Port Options EP2" name="NET_PASS6_OPT2" documentation="Control over UART options for Endpoint 2. Only applies to serial ports." 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="NET_PASS7_">
      <param humanName="Enable Passthrough" name="NET_PASS7_ENABLE" documentation="Enable Passthrough of any UART, Network, or CAN ports to any UART, Network, or CAN ports." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 1" name="NET_PASS7_EP1" documentation="Passthrough Endpoint 1. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 2." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 2" name="NET_PASS7_EP2" documentation="Passthrough Endpoint 2. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 1." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
      </param>
      <param humanName="Endpoint 1 Baud Rate" name="NET_PASS7_BAUD1" documentation="The baud rate used for Endpoint 1. Only applies to serial ports." 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="Endpoint 2 Baud Rate" name="NET_PASS7_BAUD2" documentation="The baud rate used for Endpoint 2. Only applies to serial ports." 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 Port Options EP1" name="NET_PASS7_OPT1" documentation="Control over UART options for Endpoint 1. Only applies to serial ports." 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 Port Options EP2" name="NET_PASS7_OPT2" documentation="Control over UART options for Endpoint 2. Only applies to serial ports." 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="NET_PASS8_">
      <param humanName="Enable Passthrough" name="NET_PASS8_ENABLE" documentation="Enable Passthrough of any UART, Network, or CAN ports to any UART, Network, or CAN ports." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 1" name="NET_PASS8_EP1" documentation="Passthrough Endpoint 1. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 2." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 2" name="NET_PASS8_EP2" documentation="Passthrough Endpoint 2. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 1." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
      </param>
      <param humanName="Endpoint 1 Baud Rate" name="NET_PASS8_BAUD1" documentation="The baud rate used for Endpoint 1. Only applies to serial ports." 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="Endpoint 2 Baud Rate" name="NET_PASS8_BAUD2" documentation="The baud rate used for Endpoint 2. Only applies to serial ports." 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 Port Options EP1" name="NET_PASS8_OPT1" documentation="Control over UART options for Endpoint 1. Only applies to serial ports." 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 Port Options EP2" name="NET_PASS8_OPT2" documentation="Control over UART options for Endpoint 2. Only applies to serial ports." 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="NET_PASS9_">
      <param humanName="Enable Passthrough" name="NET_PASS9_ENABLE" documentation="Enable Passthrough of any UART, Network, or CAN ports to any UART, Network, or CAN ports." user="Advanced">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 1" name="NET_PASS9_EP1" documentation="Passthrough Endpoint 1. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 2." user="Advanced">
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Endpoint 2" name="NET_PASS9_EP2" documentation="Passthrough Endpoint 2. This can be a serial port UART, a Network port, or a CAN port. The selected port will route to Endport 1." user="Advanced">
        <field name="RebootRequired">True</field>
        <values>
          <value code="-1">Disabled</value>
          <value code="0">Serial0(usually USB)</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>
          <value code="7">Serial7</value>
          <value code="8">Serial8</value>
          <value code="9">Serial9</value>
          <value code="21">Network Port1</value>
          <value code="22">Network Port2</value>
          <value code="23">Network Port3</value>
          <value code="24">Network Port4</value>
          <value code="25">Network Port5</value>
          <value code="26">Network Port6</value>
          <value code="27">Network Port7</value>
          <value code="28">Network Port8</value>
          <value code="29">Network Port9</value>
          <value code="41">CAN1 Port1</value>
          <value code="42">CAN1 Port2</value>
          <value code="43">CAN1 Port3</value>
          <value code="44">CAN1 Port4</value>
          <value code="45">CAN1 Port5</value>
          <value code="46">CAN1 Port6</value>
          <value code="47">CAN1 Port7</value>
          <value code="48">CAN1 Port8</value>
          <value code="49">CAN1 Port9</value>
          <value code="51">CAN2 Port1</value>
          <value code="52">CAN2 Port2</value>
          <value code="53">CAN2 Port3</value>
          <value code="54">CAN2 Port4</value>
          <value code="55">CAN2 Port5</value>
          <value code="56">CAN2 Port6</value>
          <value code="57">CAN2 Port7</value>
          <value code="58">CAN2 Port8</value>
          <value code="59">CAN2 Port9</value>
        </values>
      </param>
      <param humanName="Endpoint 1 Baud Rate" name="NET_PASS9_BAUD1" documentation="The baud rate used for Endpoint 1. Only applies to serial ports." 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="Endpoint 2 Baud Rate" name="NET_PASS9_BAUD2" documentation="The baud rate used for Endpoint 2. Only applies to serial ports." 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 Port Options EP1" name="NET_PASS9_OPT1" documentation="Control over UART options for Endpoint 1. Only applies to serial ports." 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 Port Options EP2" name="NET_PASS9_OPT2" documentation="Control over UART options for Endpoint 2. Only applies to serial ports." 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="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="Node">
      <param humanName="Boot Count" name="Node_BOOTCNT" documentation="Number of times board has been booted" user="Standard">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Total FlightTime" name="Node_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="Node_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="Node_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="Node_FLTCNT" documentation="Total number of flights" user="Standard">
        <field name="ReadOnly">True</field>
      </param>
      <param humanName="Total Distance Flown" name="Node_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="OUT">
      <param humanName="Servo default output rate" name="OUT_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="OUT_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="OUT_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="OUT_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="OUT_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="OUT_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="OUT1_">
      <param humanName="Minimum PWM" name="OUT1_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="OUT1_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="OUT1_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="OUT1_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="OUT1_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT2_">
      <param humanName="Minimum PWM" name="OUT2_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="OUT2_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="OUT2_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="OUT2_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="OUT2_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT3_">
      <param humanName="Minimum PWM" name="OUT3_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="OUT3_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="OUT3_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="OUT3_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="OUT3_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT4_">
      <param humanName="Minimum PWM" name="OUT4_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="OUT4_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="OUT4_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="OUT4_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="OUT4_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT5_">
      <param humanName="Minimum PWM" name="OUT5_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="OUT5_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="OUT5_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="OUT5_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="OUT5_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT6_">
      <param humanName="Minimum PWM" name="OUT6_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="OUT6_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="OUT6_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="OUT6_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="OUT6_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT7_">
      <param humanName="Minimum PWM" name="OUT7_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="OUT7_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="OUT7_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="OUT7_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="OUT7_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT8_">
      <param humanName="Minimum PWM" name="OUT8_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="OUT8_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="OUT8_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="OUT8_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="OUT8_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT9_">
      <param humanName="Minimum PWM" name="OUT9_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="OUT9_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="OUT9_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="OUT9_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="OUT9_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT10_">
      <param humanName="Minimum PWM" name="OUT10_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="OUT10_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="OUT10_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="OUT10_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="OUT10_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT11_">
      <param humanName="Minimum PWM" name="OUT11_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="OUT11_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="OUT11_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="OUT11_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="OUT11_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT12_">
      <param humanName="Minimum PWM" name="OUT12_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="OUT12_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="OUT12_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="OUT12_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="OUT12_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT13_">
      <param humanName="Minimum PWM" name="OUT13_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="OUT13_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="OUT13_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="OUT13_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="OUT13_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT14_">
      <param humanName="Minimum PWM" name="OUT14_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="OUT14_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="OUT14_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="OUT14_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="OUT14_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT15_">
      <param humanName="Minimum PWM" name="OUT15_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="OUT15_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="OUT15_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="OUT15_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="OUT15_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT16_">
      <param humanName="Minimum PWM" name="OUT16_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="OUT16_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="OUT16_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="OUT16_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="OUT16_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT17_">
      <param humanName="Minimum PWM" name="OUT17_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="OUT17_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="OUT17_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="OUT17_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="OUT17_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT18_">
      <param humanName="Minimum PWM" name="OUT18_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="OUT18_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="OUT18_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="OUT18_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="OUT18_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT19_">
      <param humanName="Minimum PWM" name="OUT19_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="OUT19_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="OUT19_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="OUT19_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="OUT19_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT20_">
      <param humanName="Minimum PWM" name="OUT20_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="OUT20_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="OUT20_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="OUT20_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="OUT20_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT21_">
      <param humanName="Minimum PWM" name="OUT21_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="OUT21_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="OUT21_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="OUT21_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="OUT21_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT22_">
      <param humanName="Minimum PWM" name="OUT22_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="OUT22_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="OUT22_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="OUT22_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="OUT22_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT23_">
      <param humanName="Minimum PWM" name="OUT23_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="OUT23_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="OUT23_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="OUT23_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="OUT23_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT24_">
      <param humanName="Minimum PWM" name="OUT24_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="OUT24_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="OUT24_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="OUT24_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="OUT24_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT25_">
      <param humanName="Minimum PWM" name="OUT25_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="OUT25_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="OUT25_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="OUT25_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="OUT25_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT26_">
      <param humanName="Minimum PWM" name="OUT26_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="OUT26_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="OUT26_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="OUT26_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="OUT26_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT27_">
      <param humanName="Minimum PWM" name="OUT27_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="OUT27_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="OUT27_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="OUT27_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="OUT27_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT28_">
      <param humanName="Minimum PWM" name="OUT28_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="OUT28_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="OUT28_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="OUT28_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="OUT28_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT29_">
      <param humanName="Minimum PWM" name="OUT29_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="OUT29_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="OUT29_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="OUT29_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="OUT29_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT30_">
      <param humanName="Minimum PWM" name="OUT30_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="OUT30_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="OUT30_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="OUT30_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="OUT30_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT31_">
      <param humanName="Minimum PWM" name="OUT31_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="OUT31_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="OUT31_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="OUT31_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="OUT31_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT32_">
      <param humanName="Minimum PWM" name="OUT32_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="OUT32_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="OUT32_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="OUT32_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="OUT32_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="138">Alarm</value>
          <value code="139">Alarm Inverted</value>
          <value code="81">BoostThrottle</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="180">CameraZoom</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="31">HeliRSC</value>
          <value code="32">HeliTailRSC</value>
          <value code="67">Ignition</value>
          <value code="29">LandingGear</value>
          <value code="89">Main Sail</value>
          <value code="33">Motor1</value>
          <value code="83">Motor10</value>
          <value code="84">Motor11</value>
          <value code="85">Motor12</value>
          <value code="34">Motor2</value>
          <value code="35">Motor3</value>
          <value code="36">Motor4</value>
          <value code="37">Motor5</value>
          <value code="38">Motor6</value>
          <value code="39">Motor7</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="137">SailMastRotation</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="72">TrackerPitch</value>
          <value code="71">TrackerYaw</value>
          <value code="79">VTailLeft</value>
          <value code="80">VTailRight</value>
          <value code="88">Winch</value>
          <value code="133">Winch Clutch</value>
          <value code="128">WingSailElevator</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
    </parameters>
    <parameters name="OUT_BLH_">
      <param humanName="BLHeli Channel Bitmask" name="OUT_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="OUT_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="OUT_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="OUT_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="OUT_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="OUT_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="OUT_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="OUT_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="OUT_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="OUT_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="OUT_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="OUT_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="OUT_FTW_">
      <param humanName="Servo channel output bitmask" name="OUT_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="OUT_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="OUT_FTW_POLES" documentation="Number of motor electrical poles" user="Standard">
        <field name="Range">2 50</field>
      </param>
    </parameters>
    <parameters name="OUT_ROB_">
      <param humanName="Robotis servo position min" name="OUT_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="OUT_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="OUT_SBUS_">
      <param humanName="SBUS default output rate" name="OUT_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="OUT_VOLZ_">
      <param humanName="Channel Bitmask" name="OUT_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="OUT_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="PRX">
      <param humanName="Proximity raw distances log" name="PRX_LOG_RAW" documentation="Set this parameter to one if logging unfiltered(raw) distances from sensor should be enabled" user="Advanced">
        <values>
          <value code="0">Off</value>
          <value code="1">On</value>
        </values>
      </param>
      <param humanName="Proximity filter cutoff frequency" name="PRX_FILT" documentation="Cutoff frequency for low pass filter applied to each face in the proximity boundary" user="Advanced">
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
        <field name="Range">0 20</field>
      </param>
    </parameters>
    <parameters name="PRX1">
      <param humanName="Proximity type" name="PRX1_TYPE" documentation="What type of proximity sensor is connected" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="12">AirSimSITL</value>
          <value code="13">CygbotD1</value>
          <value code="14">DroneCAN</value>
          <value code="18">HexsoonRadar</value>
          <value code="16">LD06</value>
          <value code="7">LightwareSF40c</value>
          <value code="8">LightwareSF45B</value>
          <value code="2">MAVLink</value>
          <value code="17">MR72_CAN</value>
          <value code="5">RPLidarA2</value>
          <value code="4">RangeFinder</value>
          <value code="10">SITL</value>
          <value code="15">Scripting</value>
          <value code="3">TeraRangerTower</value>
          <value code="6">TeraRangerTowerEvo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Proximity sensor orientation" name="PRX1_ORIENT" documentation="Proximity sensor orientation" user="Standard">
        <values>
          <value code="0">Default</value>
          <value code="1">Upside Down</value>
        </values>
      </param>
      <param humanName="Proximity sensor yaw correction" name="PRX1_YAW_CORR" documentation="Proximity sensor yaw correction" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
      </param>
      <param humanName="Proximity sensor ignore angle 1" name="PRX1_IGN_ANG1" documentation="Proximity sensor ignore angle 1" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 1" name="PRX1_IGN_WID1" documentation="Proximity sensor ignore width 1" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 2" name="PRX1_IGN_ANG2" documentation="Proximity sensor ignore angle 2" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 2" name="PRX1_IGN_WID2" documentation="Proximity sensor ignore width 2" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 3" name="PRX1_IGN_ANG3" documentation="Proximity sensor ignore angle 3" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 3" name="PRX1_IGN_WID3" documentation="Proximity sensor ignore width 3" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 4" name="PRX1_IGN_ANG4" documentation="Proximity sensor ignore angle 4" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 4" name="PRX1_IGN_WID4" documentation="Proximity sensor ignore width 4" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity minimum range" name="PRX1_MIN" documentation="Minimum expected range for Proximity Sensor. Setting this to 0 will set value to manufacturer reported range." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="Proximity maximum range" name="PRX1_MAX" documentation="Maximum expected range for Proximity Sensor. Setting this to 0 will set value to manufacturer reported range." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="Bus address of sensor" name="PRX1_ADDR" documentation="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>
    </parameters>
    <parameters name="PRX1_">
      <param humanName="CAN receive ID" name="PRX1_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>
    </parameters>
    <parameters name="PRX2">
      <param humanName="Proximity type" name="PRX2_TYPE" documentation="What type of proximity sensor is connected" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="12">AirSimSITL</value>
          <value code="13">CygbotD1</value>
          <value code="14">DroneCAN</value>
          <value code="18">HexsoonRadar</value>
          <value code="16">LD06</value>
          <value code="7">LightwareSF40c</value>
          <value code="8">LightwareSF45B</value>
          <value code="2">MAVLink</value>
          <value code="17">MR72_CAN</value>
          <value code="5">RPLidarA2</value>
          <value code="4">RangeFinder</value>
          <value code="10">SITL</value>
          <value code="15">Scripting</value>
          <value code="3">TeraRangerTower</value>
          <value code="6">TeraRangerTowerEvo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Proximity sensor orientation" name="PRX2_ORIENT" documentation="Proximity sensor orientation" user="Standard">
        <values>
          <value code="0">Default</value>
          <value code="1">Upside Down</value>
        </values>
      </param>
      <param humanName="Proximity sensor yaw correction" name="PRX2_YAW_CORR" documentation="Proximity sensor yaw correction" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
      </param>
      <param humanName="Proximity sensor ignore angle 1" name="PRX2_IGN_ANG1" documentation="Proximity sensor ignore angle 1" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 1" name="PRX2_IGN_WID1" documentation="Proximity sensor ignore width 1" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 2" name="PRX2_IGN_ANG2" documentation="Proximity sensor ignore angle 2" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 2" name="PRX2_IGN_WID2" documentation="Proximity sensor ignore width 2" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 3" name="PRX2_IGN_ANG3" documentation="Proximity sensor ignore angle 3" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 3" name="PRX2_IGN_WID3" documentation="Proximity sensor ignore width 3" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 4" name="PRX2_IGN_ANG4" documentation="Proximity sensor ignore angle 4" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 4" name="PRX2_IGN_WID4" documentation="Proximity sensor ignore width 4" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity minimum range" name="PRX2_MIN" documentation="Minimum expected range for Proximity Sensor. Setting this to 0 will set value to manufacturer reported range." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="Proximity maximum range" name="PRX2_MAX" documentation="Maximum expected range for Proximity Sensor. Setting this to 0 will set value to manufacturer reported range." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="Bus address of sensor" name="PRX2_ADDR" documentation="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>
    </parameters>
    <parameters name="PRX2_">
      <param humanName="CAN receive ID" name="PRX2_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>
    </parameters>
    <parameters name="PRX3">
      <param humanName="Proximity type" name="PRX3_TYPE" documentation="What type of proximity sensor is connected" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="12">AirSimSITL</value>
          <value code="13">CygbotD1</value>
          <value code="14">DroneCAN</value>
          <value code="18">HexsoonRadar</value>
          <value code="16">LD06</value>
          <value code="7">LightwareSF40c</value>
          <value code="8">LightwareSF45B</value>
          <value code="2">MAVLink</value>
          <value code="17">MR72_CAN</value>
          <value code="5">RPLidarA2</value>
          <value code="4">RangeFinder</value>
          <value code="10">SITL</value>
          <value code="15">Scripting</value>
          <value code="3">TeraRangerTower</value>
          <value code="6">TeraRangerTowerEvo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Proximity sensor orientation" name="PRX3_ORIENT" documentation="Proximity sensor orientation" user="Standard">
        <values>
          <value code="0">Default</value>
          <value code="1">Upside Down</value>
        </values>
      </param>
      <param humanName="Proximity sensor yaw correction" name="PRX3_YAW_CORR" documentation="Proximity sensor yaw correction" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
      </param>
      <param humanName="Proximity sensor ignore angle 1" name="PRX3_IGN_ANG1" documentation="Proximity sensor ignore angle 1" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 1" name="PRX3_IGN_WID1" documentation="Proximity sensor ignore width 1" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 2" name="PRX3_IGN_ANG2" documentation="Proximity sensor ignore angle 2" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 2" name="PRX3_IGN_WID2" documentation="Proximity sensor ignore width 2" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 3" name="PRX3_IGN_ANG3" documentation="Proximity sensor ignore angle 3" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 3" name="PRX3_IGN_WID3" documentation="Proximity sensor ignore width 3" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 4" name="PRX3_IGN_ANG4" documentation="Proximity sensor ignore angle 4" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 4" name="PRX3_IGN_WID4" documentation="Proximity sensor ignore width 4" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity minimum range" name="PRX3_MIN" documentation="Minimum expected range for Proximity Sensor. Setting this to 0 will set value to manufacturer reported range." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="Proximity maximum range" name="PRX3_MAX" documentation="Maximum expected range for Proximity Sensor. Setting this to 0 will set value to manufacturer reported range." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="Bus address of sensor" name="PRX3_ADDR" documentation="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>
    </parameters>
    <parameters name="PRX3_">
      <param humanName="CAN receive ID" name="PRX3_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>
    </parameters>
    <parameters name="PRX4">
      <param humanName="Proximity type" name="PRX4_TYPE" documentation="What type of proximity sensor is connected" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="12">AirSimSITL</value>
          <value code="13">CygbotD1</value>
          <value code="14">DroneCAN</value>
          <value code="18">HexsoonRadar</value>
          <value code="16">LD06</value>
          <value code="7">LightwareSF40c</value>
          <value code="8">LightwareSF45B</value>
          <value code="2">MAVLink</value>
          <value code="17">MR72_CAN</value>
          <value code="5">RPLidarA2</value>
          <value code="4">RangeFinder</value>
          <value code="10">SITL</value>
          <value code="15">Scripting</value>
          <value code="3">TeraRangerTower</value>
          <value code="6">TeraRangerTowerEvo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Proximity sensor orientation" name="PRX4_ORIENT" documentation="Proximity sensor orientation" user="Standard">
        <values>
          <value code="0">Default</value>
          <value code="1">Upside Down</value>
        </values>
      </param>
      <param humanName="Proximity sensor yaw correction" name="PRX4_YAW_CORR" documentation="Proximity sensor yaw correction" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
      </param>
      <param humanName="Proximity sensor ignore angle 1" name="PRX4_IGN_ANG1" documentation="Proximity sensor ignore angle 1" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 1" name="PRX4_IGN_WID1" documentation="Proximity sensor ignore width 1" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 2" name="PRX4_IGN_ANG2" documentation="Proximity sensor ignore angle 2" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 2" name="PRX4_IGN_WID2" documentation="Proximity sensor ignore width 2" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 3" name="PRX4_IGN_ANG3" documentation="Proximity sensor ignore angle 3" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 3" name="PRX4_IGN_WID3" documentation="Proximity sensor ignore width 3" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 4" name="PRX4_IGN_ANG4" documentation="Proximity sensor ignore angle 4" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 4" name="PRX4_IGN_WID4" documentation="Proximity sensor ignore width 4" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity minimum range" name="PRX4_MIN" documentation="Minimum expected range for Proximity Sensor. Setting this to 0 will set value to manufacturer reported range." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="Proximity maximum range" name="PRX4_MAX" documentation="Maximum expected range for Proximity Sensor. Setting this to 0 will set value to manufacturer reported range." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="Bus address of sensor" name="PRX4_ADDR" documentation="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>
    </parameters>
    <parameters name="PRX4_">
      <param humanName="CAN receive ID" name="PRX4_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>
    </parameters>
    <parameters name="PRX5">
      <param humanName="Proximity type" name="PRX5_TYPE" documentation="What type of proximity sensor is connected" user="Standard">
        <values>
          <value code="0">None</value>
          <value code="12">AirSimSITL</value>
          <value code="13">CygbotD1</value>
          <value code="14">DroneCAN</value>
          <value code="18">HexsoonRadar</value>
          <value code="16">LD06</value>
          <value code="7">LightwareSF40c</value>
          <value code="8">LightwareSF45B</value>
          <value code="2">MAVLink</value>
          <value code="17">MR72_CAN</value>
          <value code="5">RPLidarA2</value>
          <value code="4">RangeFinder</value>
          <value code="10">SITL</value>
          <value code="15">Scripting</value>
          <value code="3">TeraRangerTower</value>
          <value code="6">TeraRangerTowerEvo</value>
        </values>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="Proximity sensor orientation" name="PRX5_ORIENT" documentation="Proximity sensor orientation" user="Standard">
        <values>
          <value code="0">Default</value>
          <value code="1">Upside Down</value>
        </values>
      </param>
      <param humanName="Proximity sensor yaw correction" name="PRX5_YAW_CORR" documentation="Proximity sensor yaw correction" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">-180 180</field>
      </param>
      <param humanName="Proximity sensor ignore angle 1" name="PRX5_IGN_ANG1" documentation="Proximity sensor ignore angle 1" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 1" name="PRX5_IGN_WID1" documentation="Proximity sensor ignore width 1" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 2" name="PRX5_IGN_ANG2" documentation="Proximity sensor ignore angle 2" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 2" name="PRX5_IGN_WID2" documentation="Proximity sensor ignore width 2" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 3" name="PRX5_IGN_ANG3" documentation="Proximity sensor ignore angle 3" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 3" name="PRX5_IGN_WID3" documentation="Proximity sensor ignore width 3" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity sensor ignore angle 4" name="PRX5_IGN_ANG4" documentation="Proximity sensor ignore angle 4" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 360</field>
      </param>
      <param humanName="Proximity sensor ignore width 4" name="PRX5_IGN_WID4" documentation="Proximity sensor ignore width 4" user="Standard">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
        <field name="Range">0 127</field>
      </param>
      <param humanName="Proximity minimum range" name="PRX5_MIN" documentation="Minimum expected range for Proximity Sensor. Setting this to 0 will set value to manufacturer reported range." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="Proximity maximum range" name="PRX5_MAX" documentation="Maximum expected range for Proximity Sensor. Setting this to 0 will set value to manufacturer reported range." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
        <field name="Range">0 500</field>
      </param>
      <param humanName="Bus address of sensor" name="PRX5_ADDR" documentation="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>
    </parameters>
    <parameters name="PRX5_">
      <param humanName="CAN receive ID" name="PRX5_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>
    </parameters>
    <parameters name="RC">
      <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>
        </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</field>
      </param>
      <param humanName="DroneCAN RC Message rate" name="RC_MSGRATE" documentation="Rate at which RC input is sent via DroneCAN" user="Advanced">
        <field name="Increment">1</field>
        <field name="Range">0 255</field>
        <field name="Units">Hz</field>
        <field name="UnitText">hertz</field>
      </param>
      <param humanName="RC input port" name="RC1_PORT" documentation="This is the serial port number where SERIALx_PROTOCOL will be set to RC input." user="Advanced">
        <field name="Range">0 10</field>
        <field name="Increment">1</field>
        <field name="RebootRequired">True</field>
      </param>
      <param humanName="RC input port serial options" name="RC1_PORT_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.">
        <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</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate</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, 11: DisableFIFO, 12: Ignore Streamrate</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="10">DroneCAN Hardpoint ID 0</value>
          <value code="11">DroneCAN Hardpoint ID 1</value>
          <value code="12">DroneCAN Hardpoint ID 2</value>
          <value code="13">DroneCAN Hardpoint ID 3</value>
          <value code="14">DroneCAN Hardpoint ID 4</value>
          <value code="15">DroneCAN Hardpoint ID 5</value>
          <value code="16">DroneCAN Hardpoint ID 6</value>
          <value code="17">DroneCAN Hardpoint ID 7</value>
          <value code="18">DroneCAN Hardpoint ID 8</value>
          <value code="19">DroneCAN Hardpoint ID 9</value>
          <value code="20">DroneCAN Hardpoint ID 10</value>
          <value code="21">DroneCAN Hardpoint ID 11</value>
          <value code="22">DroneCAN Hardpoint ID 12</value>
          <value code="23">DroneCAN Hardpoint ID 13</value>
          <value code="24">DroneCAN Hardpoint ID 14</value>
          <value code="25">DroneCAN Hardpoint ID 15</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="RNGFND1_">
      <param humanName="Rangefinder type" name="RNGFND1_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <field name="RebootRequired">True</field>
        <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-I2C</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-Serial</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. For MAVLink rangefinders, this sets the DISTANCE_SENSOR message id to accept. A value of zero accepts any id." 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="RNGFND2_">
      <param humanName="Rangefinder type" name="RNGFND2_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <field name="RebootRequired">True</field>
        <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-I2C</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-Serial</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. For MAVLink rangefinders, this sets the DISTANCE_SENSOR message id to accept. A value of zero accepts any id." 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="RNGFND3_">
      <param humanName="Rangefinder type" name="RNGFND3_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <field name="RebootRequired">True</field>
        <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-I2C</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-Serial</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. For MAVLink rangefinders, this sets the DISTANCE_SENSOR message id to accept. A value of zero accepts any id." 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="RNGFND4_">
      <param humanName="Rangefinder type" name="RNGFND4_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <field name="RebootRequired">True</field>
        <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-I2C</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-Serial</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. For MAVLink rangefinders, this sets the DISTANCE_SENSOR message id to accept. A value of zero accepts any id." 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="RNGFND5_">
      <param humanName="Rangefinder type" name="RNGFND5_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <field name="RebootRequired">True</field>
        <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-I2C</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-Serial</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. For MAVLink rangefinders, this sets the DISTANCE_SENSOR message id to accept. A value of zero accepts any id." 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="RNGFND6_">
      <param humanName="Rangefinder type" name="RNGFND6_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <field name="RebootRequired">True</field>
        <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-I2C</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-Serial</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. For MAVLink rangefinders, this sets the DISTANCE_SENSOR message id to accept. A value of zero accepts any id." 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="RNGFND7_">
      <param humanName="Rangefinder type" name="RNGFND7_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <field name="RebootRequired">True</field>
        <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-I2C</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-Serial</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. For MAVLink rangefinders, this sets the DISTANCE_SENSOR message id to accept. A value of zero accepts any id." 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="RNGFND8_">
      <param humanName="Rangefinder type" name="RNGFND8_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <field name="RebootRequired">True</field>
        <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-I2C</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-Serial</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. For MAVLink rangefinders, this sets the DISTANCE_SENSOR message id to accept. A value of zero accepts any id." 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="RNGFND9_">
      <param humanName="Rangefinder type" name="RNGFND9_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <field name="RebootRequired">True</field>
        <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-I2C</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-Serial</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. For MAVLink rangefinders, this sets the DISTANCE_SENSOR message id to accept. A value of zero accepts any id." 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="RNGFNDA_">
      <param humanName="Rangefinder type" name="RNGFNDA_TYPE" documentation="Type of connected rangefinder" user="Standard">
        <field name="RebootRequired">True</field>
        <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-I2C</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-Serial</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. For MAVLink rangefinders, this sets the DISTANCE_SENSOR message id to accept. A value of zero accepts any id." 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="RPM1_">
      <param humanName="RPM type" name="RPM1_TYPE" documentation="What type of RPM sensor is connected" user="Standard">
        <field name="RebootRequired">True</field>
        <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 send as on AP-Periph -1 disables" 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">
        <field name="RebootRequired">True</field>
        <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 send as on AP-Periph -1 disables" 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">
        <field name="RebootRequired">True</field>
        <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 send as on AP-Periph -1 disables" 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">
        <field name="RebootRequired">True</field>
        <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 send as on AP-Periph -1 disables" user="Advanced">
        <field name="Range">-1 10</field>
        <field name="Increment">1</field>
      </param>
    </parameters>
    <parameters name="RTC">
      <param humanName="Allowed sources of RTC time" name="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="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="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="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="Simulated battery resting voltage" name="SIM_BATT_VOLTAGE" documentation="Simulated battery resting voltage (no load sag). Defaults to and clipped to the battery model's maximum voltage. Changes re-initialize the state of charge, and values below the maximum indicate a partially-charged battery. For batteries with unlimited capacity, see `SIM_BATT_CAP_AH`. Value ignored when receiving battery state updates from an external source." 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. Changes re-initialize the state of charge of the battery. Set to 0 for unlimited capacity. Value ignored when receiving battery state updates from an external source." user="Advanced">
        <field name="Units">Ah</field>
        <field name="UnitText">ampere hour</field>
      </param>
      <param humanName="Simulated battery internal resistance" name="SIM_BATT_RES_OHM" documentation="Simulated battery internal resistance, used to model voltage sag under load (sag = current * resistance) and temperature growth. A negative value implies &quot;use previous resistance&quot;, which is the default in order that a model-provided resistance is the default behavior. Set to 0 to disable voltage sag and temperature growth entirely." user="Advanced">
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
        <field name="RebootRequired">True</field>
      </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="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="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="Board mounting trim" name="SIM_BRD_TRIM_X" documentation="Rigid board mounting offset (roll, pitch, yaw in radians) applied as a rotation to the simulated accelerometers, gyros and compasses, as a tilted autopilot mounting would be. Intended to be cancelled by AHRS_TRIM. (X-axis)" user="Advanced">
</param>
      <param humanName="Board mounting trim" name="SIM_BRD_TRIM_Y" documentation="Rigid board mounting offset (roll, pitch, yaw in radians) applied as a rotation to the simulated accelerometers, gyros and compasses, as a tilted autopilot mounting would be. Intended to be cancelled by AHRS_TRIM. (Y-axis)" user="Advanced">
</param>
      <param humanName="Board mounting trim" name="SIM_BRD_TRIM_Z" documentation="Rigid board mounting offset (roll, pitch, yaw in radians) applied as a rotation to the simulated accelerometers, gyros and compasses, as a tilted autopilot mounting would be. Intended to be cancelled by AHRS_TRIM. (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="Sim AHRS offset roll" name="SIM_AHRS_OFF_RLL" documentation="Roll offset applied to SIM AHRS type. For testing stepless handover between AHRS estimators.">
        <field name="Range">-10 10</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Sim AHRS offset pitch" name="SIM_AHRS_OFF_PIT" documentation="Pitch offset applied to SIM AHRS type. For testing stepless handover between AHRS estimators.">
        <field name="Range">-10 10</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="Sim AHRS offset yaw" name="SIM_AHRS_OFF_YAW" documentation="Yaw offset applied to SIM AHRS type. For testing stepless handover between AHRS estimators.">
        <field name="Range">-10 10</field>
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </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>
      <param humanName="Sonar rotation" name="SIM_SONAR_ROT" documentation="Sonar rotation from rotations enumeration">
</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="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="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="Sonar measurement offset." name="SIM_SONAR_OFFSET" documentation="Sonar measurement offset, in meters. Can be used for error injection." user="Advanced">
</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>
      <param humanName="Barometer ground effect altitude error" name="SIM_BAR2_GEFF_M" documentation="Maximum simulated barometer altitude error from rotor-downwash ground effect, applied when motors are running. Decays linearly to zero at 2m AGL. Set to 0 to disable." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </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>
      <param humanName="Barometer ground effect altitude error" name="SIM_BAR3_GEFF_M" documentation="Maximum simulated barometer altitude error from rotor-downwash ground effect, applied when motors are running. Decays linearly to zero at 2m AGL. Set to 0 to disable." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </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>
      <param humanName="Barometer ground effect altitude error" name="SIM_BARO_GEFF_M" documentation="Maximum simulated barometer altitude error from rotor-downwash ground effect, applied when motors are running. Decays linearly to zero at 2m AGL. Set to 0 to disable." user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </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_FRM_">
      <param humanName="model mass" name="SIM_FRM_MASS" documentation="mass of the multicopter model">
        <field name="Units">kg</field>
        <field name="UnitText">kilograms</field>
      </param>
      <param humanName="model diagonal size" name="SIM_FRM_DIAG_SZ" documentation="diagonal motor to motor distance of the model">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="reference speed" name="SIM_FRM_REF_SPD" documentation="airspeed in the drag reference test, at a fixed lean angle">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="reference angle" name="SIM_FRM_REF_ANG" documentation="lean angle in the drag reference test">
        <field name="Units">deg</field>
        <field name="UnitText">degrees</field>
      </param>
      <param humanName="reference voltage" name="SIM_FRM_REF_VOLT" documentation="battery voltage in the drag reference test">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="reference current" name="SIM_FRM_REF_AMP" documentation="battery current in the drag reference test">
        <field name="Units">A</field>
        <field name="UnitText">ampere</field>
      </param>
      <param humanName="reference altitude" name="SIM_FRM_REF_ALT" documentation="altitude AMSL of the drag reference test">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="battery resistance" name="SIM_FRM_BAT_RES" documentation="battery resistance">
        <field name="Units">Ohm</field>
        <field name="UnitText">Ohm</field>
      </param>
      <param humanName="battery full voltage" name="SIM_FRM_BAT_VOLT" documentation="full pack battery voltage">
        <field name="Units">V</field>
        <field name="UnitText">volt</field>
      </param>
      <param humanName="battery capacity" name="SIM_FRM_BAT_CAP" documentation="battery capacity, zero for unlimited">
        <field name="Units">Ah</field>
        <field name="UnitText">ampere hour</field>
      </param>
      <param humanName="hover throttle" name="SIM_FRM_HOVR_THR" documentation="throttle output (CTUN.ThO) at hover at the reference altitude">
        <field name="Range">0.05 1</field>
      </param>
      <param humanName="thrust expo" name="SIM_FRM_EXPO" documentation="motor thrust expo, matching MOT_THST_EXPO">
</param>
      <param humanName="rotation rate" name="SIM_FRM_ROT_RATE" documentation="terminal yaw rotation rate">
        <field name="Units">deg/s</field>
        <field name="UnitText">degrees per second</field>
      </param>
      <param humanName="minimum PWM" name="SIM_FRM_PWM_MIN" documentation="minimum motor PWM in the reference test, matching MOT_PWM_MIN">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
      </param>
      <param humanName="maximum PWM" name="SIM_FRM_PWM_MAX" documentation="maximum motor PWM in the reference test, matching MOT_PWM_MAX">
        <field name="Units">PWM</field>
        <field name="UnitText">PWM in microseconds</field>
      </param>
      <param humanName="motor spin minimum" name="SIM_FRM_SPIN_MIN" documentation="minimum motor spin fraction, matching MOT_SPIN_MIN">
        <field name="Range">0 1</field>
      </param>
      <param humanName="motor spin maximum" name="SIM_FRM_SPIN_MAX" documentation="maximum motor spin fraction, matching MOT_SPIN_MAX">
        <field name="Range">0 1</field>
      </param>
      <param humanName="motor slew rate" name="SIM_FRM_SLEW_MAX" documentation="maximum motor slew rate in throttle fraction per second">
        <field name="Units">1/s</field>
        <field name="UnitText">per second</field>
      </param>
      <param humanName="rotor disc area" name="SIM_FRM_DISCAREA" documentation="total rotor disc area. Coaxial rotors count as one rotor only">
        <field name="Units">m.m</field>
        <field name="UnitText">square meter</field>
      </param>
      <param humanName="momentum drag coefficient" name="SIM_FRM_MDRAG" documentation="momentum drag coefficient of the rotors. Defaults to zero on planes where the plane model handles drag">
</param>
      <param humanName="bluff body drag coefficient" name="SIM_FRM_BBDRAG" documentation="scaling of the bluff body drag derived from the reference test, zero for no bluff body drag. Defaults to zero on planes where the plane model handles drag">
</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 vertical noise" name="SIM_GPS1_NOISE" documentation="Amplitude of the GPS vertical position 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>
      <param humanName="GPS Fix Type" name="SIM_GPS1_FIXTYPE" documentation="Allow setting which fix type (only some GPS's supported); matches AP_GPS_FixType" user="Advanced">
        <values>
          <value code="0">No GPS connected</value>
          <value code="1">No Fix</value>
          <value code="2">2D Fix</value>
          <value code="3">3D Fix</value>
          <value code="4">3D DGPS Fix</value>
          <value code="5">3D RTK Float</value>
          <value code="6">3D RTK Fixed</value>
        </values>
      </param>
      <param humanName="GPS horizontal noise" name="SIM_GPS1_HNSE" documentation="Radius of the GPS horizontal position error in meters" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS1_GLTV_X" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (X-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS1_GLTV_Y" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (Y-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS1_GLTV_Z" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (Z-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</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 vertical noise" name="SIM_GPS2_NOISE" documentation="Amplitude of the GPS vertical position 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>
      <param humanName="GPS Fix Type" name="SIM_GPS2_FIXTYPE" documentation="Allow setting which fix type (only some GPS's supported); matches AP_GPS_FixType" user="Advanced">
        <values>
          <value code="0">No GPS connected</value>
          <value code="1">No Fix</value>
          <value code="2">2D Fix</value>
          <value code="3">3D Fix</value>
          <value code="4">3D DGPS Fix</value>
          <value code="5">3D RTK Float</value>
          <value code="6">3D RTK Fixed</value>
        </values>
      </param>
      <param humanName="GPS horizontal noise" name="SIM_GPS2_HNSE" documentation="Radius of the GPS horizontal position error in meters" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS2_GLTV_X" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (X-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS2_GLTV_Y" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (Y-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS2_GLTV_Z" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (Z-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</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 vertical noise" name="SIM_GPS3_NOISE" documentation="Amplitude of the GPS vertical position 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>
      <param humanName="GPS Fix Type" name="SIM_GPS3_FIXTYPE" documentation="Allow setting which fix type (only some GPS's supported); matches AP_GPS_FixType" user="Advanced">
        <values>
          <value code="0">No GPS connected</value>
          <value code="1">No Fix</value>
          <value code="2">2D Fix</value>
          <value code="3">3D Fix</value>
          <value code="4">3D DGPS Fix</value>
          <value code="5">3D RTK Float</value>
          <value code="6">3D RTK Fixed</value>
        </values>
      </param>
      <param humanName="GPS horizontal noise" name="SIM_GPS3_HNSE" documentation="Radius of the GPS horizontal position error in meters" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS3_GLTV_X" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (X-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS3_GLTV_Y" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (Y-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS3_GLTV_Z" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (Z-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</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 vertical noise" name="SIM_GPS4_NOISE" documentation="Amplitude of the GPS vertical position 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>
      <param humanName="GPS Fix Type" name="SIM_GPS4_FIXTYPE" documentation="Allow setting which fix type (only some GPS's supported); matches AP_GPS_FixType" user="Advanced">
        <values>
          <value code="0">No GPS connected</value>
          <value code="1">No Fix</value>
          <value code="2">2D Fix</value>
          <value code="3">3D Fix</value>
          <value code="4">3D DGPS Fix</value>
          <value code="5">3D RTK Float</value>
          <value code="6">3D RTK Fixed</value>
        </values>
      </param>
      <param humanName="GPS horizontal noise" name="SIM_GPS4_HNSE" documentation="Radius of the GPS horizontal position error in meters" user="Advanced">
        <field name="Units">m</field>
        <field name="UnitText">meters</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS4_GLTV_X" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (X-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS4_GLTV_Y" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (Y-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</field>
      </param>
      <param humanName="GPS velocity glitch" name="SIM_GPS4_GLTV_Z" documentation="Glitch offsets of simulated GPS velocity in NED. The reported position also moves continuously with this velocity, so position and velocity stay consistent (e.g. to simulate GPS spoofing that drifts the position). The accumulated position offset is cleared when all three components are zero at a GPS update, so when changing axes set the new component before zeroing the old one (Z-axis)" user="Advanced">
        <field name="Units">m/s</field>
        <field name="UnitText">meters per second</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 4294967295</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 4294967295</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 4294967295</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="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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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>
          <value code="9">Rangefinder</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="UART0_">
      <param humanName="Serial options" name="UART0_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.">
        <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</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate</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, 11: DisableFIFO, 12: Ignore Streamrate</field>
      </param>
      <param humanName="Serial1 flow control" name="UART0_RTSCTS" documentation="Enable flow control. You must have the RTS and CTS pins available on the port. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
        </values>
      </param>
    </parameters>
    <parameters name="UART1_">
      <param humanName="Serial options" name="UART1_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.">
        <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</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate</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, 11: DisableFIFO, 12: Ignore Streamrate</field>
      </param>
      <param humanName="Serial1 flow control" name="UART1_RTSCTS" documentation="Enable flow control. You must have the RTS and CTS pins available on the port. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
        </values>
      </param>
    </parameters>
    <parameters name="UART2_">
      <param humanName="Serial options" name="UART2_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.">
        <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</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate</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, 11: DisableFIFO, 12: Ignore Streamrate</field>
      </param>
      <param humanName="Serial1 flow control" name="UART2_RTSCTS" documentation="Enable flow control. You must have the RTS and CTS pins available on the port. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
        </values>
      </param>
    </parameters>
    <parameters name="UART3_">
      <param humanName="Serial options" name="UART3_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.">
        <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</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate</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, 11: DisableFIFO, 12: Ignore Streamrate</field>
      </param>
      <param humanName="Serial1 flow control" name="UART3_RTSCTS" documentation="Enable flow control. You must have the RTS and CTS pins available on the port. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
        </values>
      </param>
    </parameters>
    <parameters name="UART4_">
      <param humanName="Serial options" name="UART4_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.">
        <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</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate</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, 11: DisableFIFO, 12: Ignore Streamrate</field>
      </param>
      <param humanName="Serial1 flow control" name="UART4_RTSCTS" documentation="Enable flow control. You must have the RTS and CTS pins available on the port. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
        </values>
      </param>
    </parameters>
    <parameters name="UART5_">
      <param humanName="Serial options" name="UART5_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.">
        <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</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate</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, 11: DisableFIFO, 12: Ignore Streamrate</field>
      </param>
      <param humanName="Serial1 flow control" name="UART5_RTSCTS" documentation="Enable flow control. You must have the RTS and CTS pins available on the port. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
        </values>
      </param>
    </parameters>
    <parameters name="UART6_">
      <param humanName="Serial options" name="UART6_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.">
        <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</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate</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, 11: DisableFIFO, 12: Ignore Streamrate</field>
      </param>
      <param humanName="Serial1 flow control" name="UART6_RTSCTS" documentation="Enable flow control. You must have the RTS and CTS pins available on the port. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
        </values>
      </param>
    </parameters>
    <parameters name="UART7_">
      <param humanName="Serial options" name="UART7_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.">
        <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</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate</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, 11: DisableFIFO, 12: Ignore Streamrate</field>
      </param>
      <param humanName="Serial1 flow control" name="UART7_RTSCTS" documentation="Enable flow control. You must have the RTS and CTS pins available on the port. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
        </values>
      </param>
    </parameters>
    <parameters name="UART8_">
      <param humanName="Serial options" name="UART8_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.">
        <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</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate</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, 11: DisableFIFO, 12: Ignore Streamrate</field>
      </param>
      <param humanName="Serial1 flow control" name="UART8_RTSCTS" documentation="Enable flow control. You must have the RTS and CTS pins available on the port. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
        </values>
      </param>
    </parameters>
    <parameters name="UART9_">
      <param humanName="Serial options" name="UART9_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.">
        <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</bit>
          <bit code="11">DisableFIFO</bit>
          <bit code="12">Ignore Streamrate</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, 11: DisableFIFO, 12: Ignore Streamrate</field>
      </param>
      <param humanName="Serial1 flow control" name="UART9_RTSCTS" documentation="Enable flow control. You must have the RTS and CTS pins available on the port. If this is set to 2 then flow control will be auto-detected by checking for the output buffer filling on startup.">
        <values>
          <value code="0">Disabled</value>
          <value code="1">Enabled</value>
          <value code="2">Auto</value>
        </values>
      </param>
    </parameters>
  </libraries>
</paramfile>
