Merge branch 'next' into corvuscorax/OP-1156_pathfollower-unification
[librepilot.git] / shared / uavobjectdefinition / flightmodesettings.xml
blob5511345ae01eb9886f5f9aaaf50dbc5d76ae0b45
1 <xml>
2     <object name="FlightModeSettings" singleinstance="true" settings="true" category="Control">
3         <description>Settings to control arming and flight mode</description>
5         <field name="Arming" units="" type="enum" elements="1" options="Always Disarmed,Always Armed,Roll Left,Roll Right,Pitch Forward,Pitch Aft,Yaw Left,Yaw Right,Accessory 0,Accessory 1,Accessory 2" defaultvalue="Always Disarmed"/>
7         <!-- Note these options should be identical to those in StabilizationDesired.StabilizationMode -->
8         <field name="Stabilization1Settings" units="" type="enum"
9                 elementnames="Roll,Pitch,Yaw,Thrust"
10                 options="Manual,Rate,Attitude,AxisLock,WeakLeveling,VirtualBar,Rattitude,RelayRate,RelayAttitude,AltitudeHold,AltitudeVario,CruiseControl"
11                 defaultvalue="Attitude,Attitude,AxisLock,Manual"
12                 limits="%NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
13                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
14                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
15                         %NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude,\
16                         %0401NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario,\
17                         %0402NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario;"
18                         />
19         <field name="Stabilization2Settings" units="" type="enum"
20                 elementnames="Roll,Pitch,Yaw,Thrust"
21                 options="Manual,Rate,Attitude,AxisLock,WeakLeveling,VirtualBar,Rattitude,RelayRate,RelayAttitude,AltitudeHold,AltitudeVario,CruiseControl"
22                 defaultvalue="Attitude,Attitude,Rate,Manual"
23                 limits="%NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
24                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
25                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
26                         %NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude,\
27                         %0401NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario,\
28                         %0402NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario;"
29                         />
30         <field name="Stabilization3Settings" units="" type="enum"
31                 elementnames="Roll,Pitch,Yaw,Thrust"
32                 options="Manual,Rate,Attitude,AxisLock,WeakLeveling,VirtualBar,Rattitude,RelayRate,RelayAttitude,AltitudeHold,AltitudeVario,CruiseControl"
33                 defaultvalue="Rate,Rate,Rate,Manual"
34                 limits="%NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
35                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
36                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
37                         %NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude,\
38                         %0401NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario,\
39                         %0402NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario;"
40                         />
41         <field name="Stabilization4Settings" units="" type="enum"
42                 elementnames="Roll,Pitch,Yaw,Thrust"
43                 options="Manual,Rate,Attitude,AxisLock,WeakLeveling,VirtualBar,Rattitude,RelayRate,RelayAttitude,AltitudeHold,AltitudeVario,CruiseControl"
44                 defaultvalue="Attitude,Attitude,AxisLock,CruiseControl"
45                 limits="%NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
46                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
47                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
48                         %NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude,\
49                         %0401NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario,\
50                         %0402NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario;"
51                         />
52         <field name="Stabilization5Settings" units="" type="enum"
53                 elementnames="Roll,Pitch,Yaw,Thrust"
54                 options="Manual,Rate,Attitude,AxisLock,WeakLeveling,VirtualBar,Rattitude,RelayRate,RelayAttitude,AltitudeHold,AltitudeVario,CruiseControl"
55                 defaultvalue="Attitude,Attitude,Rate,CruiseControl"
56                 limits="%NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
57                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
58                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
59                         %NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude,\
60                         %0401NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario,\
61                         %0402NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario;"
62                         />
63         <field name="Stabilization6Settings" units="" type="enum"
64                 elementnames="Roll,Pitch,Yaw,Thrust"
65                 options="Manual,Rate,Attitude,AxisLock,WeakLeveling,VirtualBar,Rattitude,RelayRate,RelayAttitude,AltitudeHold,AltitudeVario,CruiseControl"
66                 defaultvalue="Rate,Rate,Rate,CruiseControl"
67                 limits="%NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
68                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
69                         %NE:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario:CruiseControl; \
70                         %NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude,\
71                         %0401NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario,\
72                         %0402NE:Rate:Attitude:AxisLock:WeakLeveling:VirtualBar:Rattitude:RelayRate:RelayAttitude:AltitudeHold:AltitudeVario;"
73                         />
75         <!-- Note these options values should be identical to those defined in FlightMode -->
76         <!-- Currently only some modes are enabled for UI using limits attribute per board. Update when more modes will be operational -->
77         <field name="FlightModePosition"
78                units=""
79                type="enum"
80                elements="6"
81                options="Manual,Stabilized1,Stabilized2,Stabilized3,Stabilized4,Stabilized5,Stabilized6,Autotune,PositionHold,PositionVarioFPV,PositionVarioLOS,PositionVarioNSEW,ReturnToBase,Land,PathPlanner,POI,AutoCruise"
82                defaultvalue="Stabilized1,Stabilized2,Stabilized3,Stabilized4,Stabilized5,Stabilized6"
83                limits="\
84                        %0401NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
85                        %0402NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
86                        %0903NE:POI:PathPlanner:Autotune:AutoCruise:Land;\
87                        \
88                        %0401NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
89                        %0402NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
90                        %0903NE:POI:PathPlanner:Autotune:AutoCruise:Land;\
91                        \
92                        %0401NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
93                        %0402NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
94                        %0903NE:POI:PathPlanner:Autotune:AutoCruise:Land;\
95                        \
96                        %0401NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
97                        %0402NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
98                        %0903NE:POI:PathPlanner:Autotune:AutoCruise:Land;\
99                        \
100                        %0401NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
101                        %0402NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
102                        %0903NE:POI:PathPlanner:Autotune:AutoCruise:Land;\
103                        \
104                        %0401NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
105                        %0402NE:Autotune:PositionHold:PositionVarioFPV:PositionVarioLOS:PositionVarioNSEW:ReturnToBase:Land:PathPlanner:POI:AutoCruise,\
106                        %0903NE:POI:PathPlanner:Autotune:AutoCruise:Land;"/>
108         <field name="ArmedTimeout" units="ms" type="uint16" elements="1" defaultvalue="30000"/>
109         <field name="ArmingSequenceTime" units="ms" type="uint16" elements="1" defaultvalue="1000"/>
110         <field name="DisarmingSequenceTime" units="ms" type="uint16" elements="1" defaultvalue="1000"/>
111         <field name="DisableSanityChecks" units="" type="enum" elements="1" options="FALSE,TRUE" defaultvalue="FALSE"/>
112         <field name="ReturnToBaseAltitudeOffset" units="m" type="float" elements="1" defaultvalue="10"/>
113         <field name="LandingVelocity" units="m" type="float" elements="1" defaultvalue="0.4"/>
114         <field name="PositionHoldOffset" units="m" type="float" elementnames="Horizontal,Vertical" defaultvalue="10,2"/>
115         <!-- optimized for current vtolpathfollower,
116              for fixed wing pathfollower set to Horizontal=500,Vertical=5 -->
117         <access gcs="readwrite" flight="readwrite"/>
118         <telemetrygcs acked="true" updatemode="onchange" period="0"/>
119         <telemetryflight acked="true" updatemode="onchange" period="0"/>
120         <logging updatemode="manual" period="0"/>
121     </object>
122 </xml>