<?xml version="1.0"?>

<!--
************************************************************************
Setup for a CH-Flightstick compatible joystick with
stick, throttle, one digital hat, and four buttons.

Layout:
  Axis 0: ailerons
  Axis 1: elevator
  Axis 2: throttle

  Hat:
    Axis 3: rudder
    Axis 4: elevator trim

  Button 0: brakes
  Button 1: center rudder
  Button 2: flaps up
  Button 3: flaps down
************************************************************************
-->

<PropertyList>

 <name>Analog 3-axis 4-button 1-hat CHF joystick</name>


 <axis n="0">
  <desc>Aileron</desc>
  <binding>
   <command>property-scale</command>
   <property>/controls/aileron</property>
   <squared type="bool">true</squared>
  </binding>
 </axis>

 <axis n="1">
  <desc>Elevator</desc>
  <binding>
   <command>property-scale</command>
   <property>/controls/elevator</property>
   <factor type="double">-1.0</factor>
   <squared type="bool">true</squared>
  </binding>
 </axis>

 <axis n="2">
  <desc>Throttle</desc>
  <binding>
   <command>property-scale</command>
   <property>/controls/throttle[0]</property>
   <offset type="double">-1.0</offset>
   <factor type="double">-0.5</factor>
  </binding>
  <binding>
   <command>property-scale</command>
   <property>/controls/throttle[1]</property>
   <offset type="double">-1.0</offset>
   <factor type="double">-0.5</factor>
  </binding>
 </axis>

 <axis n="3">
  <desc>Rudder</desc>
  <binding><command>null</command></binding>
  <low>
   <repeatable type="bool">true</repeatable>
   <binding>
    <command>property-adjust</command>
    <property>/controls/rudder</property>
    <step type="double">-0.05</step>
   </binding>
  </low>
  <high>
   <repeatable type="bool">true</repeatable>
   <binding>
    <command>property-adjust</command>
    <property>/controls/rudder</property>
    <step type="double">0.05</step>
   </binding>
  </high>
 </axis>

 <axis n="4">
  <desc>Elevator trim</desc>
  <binding><command>null</command></binding>
  <low>
   <repeatable type="bool">true</repeatable>
   <binding>
    <command>property-adjust</command>
    <property>/controls/elevator-trim</property>
    <step type="double">0.001</step>
   </binding>
  </low>
  <high>
   <repeatable type="bool">true</repeatable>
   <binding>
    <command>property-adjust</command>
    <property>/controls/elevator-trim</property>
    <step type="double">-0.001</step>
   </binding>
  </high>
 </axis>

 <button n="0">
  <desc>Brakes</desc>
  <binding>
   <command>property-assign</command>
   <property>/controls/brakes[0]</property>
   <value type="double">1.0</value>
  </binding>
  <binding>
   <command>property-assign</command>
   <property>/controls/brakes[1]</property>
   <value type="double">1.0</value>
  </binding>
  <binding>
   <command>property-assign</command>
   <property>/controls/brakes[2]</property>
   <value type="double">1.0</value>
  </binding>
  <mod-up>
   <binding>
    <command>property-assign</command>
    <property>/controls/brakes[0]</property>
    <value type="double">0.0</value>
   </binding>
   <binding>
    <command>property-assign</command>
    <property>/controls/brakes[1]</property>
    <value type="double">0.0</value>
   </binding>
   <binding>
    <command>property-assign</command>
    <property>/controls/brakes[2]</property>
    <value type="double">0.0</value>
   </binding>
  </mod-up>
 </button>

 <button n="1">
  <repeatable type="bool">false</repeatable>
  <binding>
   <desc>Center rudder</desc>
   <command>property-assign</command>
   <property>/controls/rudder</property>
   <value type="double">0.0</value>
  </binding>
 </button>

 <button n="2">
  <repeatable type="bool">false</repeatable>
  <binding>
   <desc>Flaps up</desc>
   <command>property-adjust</command>
   <property>/controls/flaps</property>
   <step type="double">-0.34</step>
  </binding>
 </button>

 <button n="3">
  <repeatable type="bool">false</repeatable>
  <binding>
   <desc>Flaps down</desc>
   <command>property-adjust</command>
   <property>/controls/flaps</property>
   <step type="double">0.34</step>
  </binding>
 </button>

</PropertyList>

<!-- end of chf.xml -->
