Add <name>Logitech Logitech Extreme 3D</name>.
[fg:toms-fgdata.git] / Input / Joysticks / Logitech / extreme-3d-pro.xml
1 <?xml version="1.0" ?>
2
3 <!--
4 ************************************************************************
5 * Bindings for Logitech Extreme Digital 3D Pro joystick.
6 *
7 *
8 * Axis 0: ailerons
9 * Axis 1: elevator
10 * Axis 2 (twist): rudder
11 * Axis 3 (slider): throttle
12 * Axes 4 and 5 (hat): view direction
13 *
14 * Buttons according to the numbers printed on the joystick:
15 * Button 1: all brakes
16 * Button 4: flap down
17 * Button 6: flap up
18 * Button 5: elevator trim up
19 * Button 3: elevator trim down
20 * Button 11: left brake only
21 * Button 12: right brake only
22 ************************************************************************
23 $Id$
24 -->
25
26 <PropertyList>
27
28  <name>Logitech Logitech Extreme 3D Pro</name>
29  <name>Logitech Extreme 3D Pro</name>
30  <name>Logitech Extreme 3D Pro USB</name>
31  <name>Logitech  Extreme  3D  Pro USB</name>
32  <name>Logitech Extreme 3D</name>
33  <name>Logitech Logitech Extreme 3D</name>
34
35  <axis n="0">
36   <desc>Aileron</desc>
37   <binding>
38    <command>property-scale</command>
39    <property>/controls/flight/aileron</property>
40    <squared type="bool">true</squared>
41   </binding>
42  </axis>
43
44  <axis n="1">
45   <desc>Elevator</desc>
46   <binding>
47    <command>property-scale</command>
48    <property>/controls/flight/elevator</property>
49    <factor type="double">-1.0</factor>
50    <squared type="bool">true</squared>
51   </binding>
52  </axis>
53
54  <axis>
55   <desc>Rudder</desc>
56   <number>
57    <unix>2</unix>
58    <windows>3</windows>
59    <mac>2</mac>
60   </number>
61   <binding>
62    <command>property-scale</command>
63    <property>/controls/flight/rudder</property>
64    <factor type="double">1.0</factor>
65   </binding>
66  </axis>
67
68  <axis>
69   <desc>Throttle</desc>
70   <number>
71    <unix>3</unix>
72    <windows>2</windows>
73    <mac>3</mac>
74   </number>
75   <binding>
76    <command>nasal</command>
77    <script>controls.throttleAxis()</script>
78   </binding>
79  </axis>
80
81  <axis>
82   <desc>View Direction</desc>
83   <number>
84    <unix>4</unix>
85    <windows>6</windows>
86    <mac>4</mac>
87   </number>
88   <low>
89    <repeatable>true</repeatable>
90    <binding>
91     <command>property-adjust</command>
92     <property>/sim/current-view/goal-heading-offset-deg</property>
93     <step type="double">5.0</step>
94    </binding>
95   </low>
96   <high>
97    <repeatable>true</repeatable>
98    <binding>
99     <command>property-adjust</command>
100     <property>/sim/current-view/goal-heading-offset-deg</property>
101     <step type="double">-5.0</step>
102    </binding>
103   </high>
104  </axis>
105
106  <axis>
107   <desc>View Elevation</desc>
108   <number>
109    <unix>5</unix>
110    <windows>7</windows>
111    <mac>5</mac>
112   </number>
113   <low>
114    <repeatable>true</repeatable>
115    <binding>
116     <command>property-adjust</command>
117     <property>/sim/current-view/goal-pitch-offset-deg</property>
118     <step type="double">5.0</step>
119    </binding>
120   </low>
121   <high>
122    <repeatable>true</repeatable>
123    <binding>
124     <command>property-adjust</command>
125     <property>/sim/current-view/goal-pitch-offset-deg</property>
126     <step type="double">-5.0</step>
127    </binding>
128   </high>
129  </axis>
130
131  <button n="0">
132   <desc>Brakes</desc>
133   <binding>
134    <command>nasal</command>
135    <script>controls.applyBrakes(1)</script>
136   </binding>
137   <mod-up>
138    <binding>
139     <command>nasal</command>
140     <script>controls.applyBrakes(0)</script>
141    </binding>
142   </mod-up>
143  </button>
144
145  <button n="4">
146   <desc>Elevator trim up</desc>
147   <repeatable type="bool">true</repeatable>
148   <binding>
149    <command>property-adjust</command>
150    <property>/controls/flight/elevator-trim</property>
151    <step type="double">0.001</step>
152   </binding>
153  </button>
154
155  <button n="2">
156   <desc>Elevator trim down</desc>
157   <repeatable type="bool">true</repeatable>
158   <binding>
159    <command>property-adjust</command>
160    <property>/controls/flight/elevator-trim</property>
161    <step type="double">-0.001</step>
162   </binding>
163  </button>
164
165  <button n="3">
166   <desc>Flaps down</desc>
167   <binding>
168    <command>nasal</command>
169    <script>controls.flapsDown(1)</script>
170   </binding>
171   <mod-up>
172    <binding>
173     <command>nasal</command>
174     <script>controls.flapsDown(0)</script>
175    </binding>
176   </mod-up>
177  </button>
178
179  <button n="5">
180   <desc>Flaps up</desc>
181   <repeatable>false</repeatable>
182   <binding>
183    <command>nasal</command>
184    <script>controls.flapsDown(-1)</script>
185   </binding>
186   <mod-up>
187    <binding>
188     <command>nasal</command>
189     <script>controls.flapsDown(0)</script>
190    </binding>
191   </mod-up>
192  </button>
193
194  <button n="10">
195   <desc>Left brake</desc>
196   <binding>
197    <command>nasal</command>
198    <script>controls.applyBrakes(1, -1)</script>
199   </binding>
200   <mod-up>
201    <binding>
202     <command>nasal</command>
203     <script>controls.applyBrakes(0, -1)</script>
204    </binding>
205   </mod-up>
206  </button>
207
208  <button n="11">
209   <desc>Right brake</desc>
210   <binding>
211    <command>nasal</command>
212    <script>controls.applyBrakes(1, 1)</script>
213   </binding>
214   <mod-up>
215    <binding>
216     <command>nasal</command>
217     <script>controls.applyBrakes(0, 1)</script>
218    </binding>
219   </mod-up>
220  </button>
221
222 </PropertyList>
223
224