diff --git a/ground/openpilotgcs/src/plugins/config/outputchannelform.ui b/ground/openpilotgcs/src/plugins/config/outputchannelform.ui
index 622b76c5d..9c2c62f47 100644
--- a/ground/openpilotgcs/src/plugins/config/outputchannelform.ui
+++ b/ground/openpilotgcs/src/plugins/config/outputchannelform.ui
@@ -7,7 +7,7 @@
0
0
813
- 56
+ 58
@@ -20,315 +20,19 @@
1
- -
-
+
-
+
0
0
-
-
- 20
- 0
-
-
- Channel Number
-
-
- Qt::LeftToRight
+ Current value of slider.
- TextLabel
-
-
- Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 110
- 0
-
-
-
- TextLabel
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
- Minimum PWM value, beware of not overdriving your servo.
-
-
- 9999
-
-
-
- -
-
-
- Qt::Horizontal
-
-
- QSizePolicy::Minimum
-
-
-
- 0
- 20
-
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 0
- 0
-
-
-
- 9999
-
-
- Qt::Horizontal
-
-
-
- -
-
-
- Qt::Horizontal
-
-
- QSizePolicy::Minimum
-
-
-
- 5
- 20
-
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 40
- 0
-
-
-
- Check to invert the channel.
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 40
- 0
-
-
-
- Output mode
-
-
-
- -
-
-
- Maximum PWM value, beware of not overdriving your servo.
-
-
- 9999
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 75
- false
- true
-
-
-
- background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
-color: rgb(255, 255, 255);
-border-radius: 5;
-font:bold;
-margin:1px;
-
-
- Assignment
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 75
- false
- true
-
-
-
- background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
-color: rgb(255, 255, 255);
-border-radius: 5;
-font:bold;
-margin:1px;
-
-
- Min
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 75
- false
- true
-
-
-
- background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
-color: rgb(255, 255, 255);
-border-radius: 5;
-font:bold;
-margin:1px;
-
-
- Neutral (slowest for motor)
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 75
- false
- true
-
-
-
- background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
-color: rgb(255, 255, 255);
-border-radius: 5;
-font:bold;
-margin:1px;
-
-
- Max
-
-
- Qt::AlignCenter
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 75
- false
- true
-
-
-
- background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
-color: rgb(255, 255, 255);
-border-radius: 5;
-font:bold;
-margin:1px;
-
-
- Rev.
-
-
- Qt::AlignCenter
+ 0000
@@ -362,19 +66,25 @@ margin:1px;
- -
-
+
-
+
0
0
-
- Current value of slider.
+
+
+ 110
+ 0
+
- 0000
+ TextLabel
+
+
+ Qt::AlignCenter
@@ -414,8 +124,320 @@ margin:1px;
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 20
+ 0
+
+
+
+ Channel Number
+
+
+ Qt::LeftToRight
+
+
+ TextLabel
+
+
+ Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
+
+
+
+ -
+
+
+ Qt::StrongFocus
+
+
+ Minimum PWM value, beware of not overdriving your servo.
+
+
+ 9999
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 40
+ 0
+
+
+
+ Qt::StrongFocus
+
+
+ Check to invert the channel.
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 75
+ false
+ true
+
+
+
+ background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
+color: rgb(255, 255, 255);
+border-radius: 5;
+font:bold;
+margin:1px;
+
+
+ Neutral (slowest for motor)
+
+
+ Qt::AlignCenter
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 75
+ false
+ true
+
+
+
+ background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
+color: rgb(255, 255, 255);
+border-radius: 5;
+font:bold;
+margin:1px;
+
+
+ Assignment
+
+
+ Qt::AlignCenter
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+ QSizePolicy::Minimum
+
+
+
+ 0
+ 20
+
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 75
+ false
+ true
+
+
+
+ background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
+color: rgb(255, 255, 255);
+border-radius: 5;
+font:bold;
+margin:1px;
+
+
+ Min
+
+
+ Qt::AlignCenter
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 75
+ false
+ true
+
+
+
+ background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
+color: rgb(255, 255, 255);
+border-radius: 5;
+font:bold;
+margin:1px;
+
+
+ Max
+
+
+ Qt::AlignCenter
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 40
+ 0
+
+
+
+ Qt::StrongFocus
+
+
+ Output mode
+
+
+
+ -
+
+
+ Qt::Horizontal
+
+
+ QSizePolicy::Minimum
+
+
+
+ 5
+ 20
+
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 75
+ false
+ true
+
+
+
+ background-color: qlineargradient(spread:reflect, x1:0.507, y1:0, x2:0.507, y2:0.772, stop:0.208955 rgba(74, 74, 74, 255), stop:0.78607 rgba(36, 36, 36, 255));
+color: rgb(255, 255, 255);
+border-radius: 5;
+font:bold;
+margin:1px;
+
+
+ Rev.
+
+
+ Qt::AlignCenter
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+ 0
+
+
+
+ Qt::StrongFocus
+
+
+ 9999
+
+
+ Qt::Horizontal
+
+
+
+ -
+
+
+ Qt::StrongFocus
+
+
+ Maximum PWM value, beware of not overdriving your servo.
+
+
+ 9999
+
+
+
+
+ actuatorMin
+ actuatorNeutral
+ actuatorMax
+ actuatorRev
+ actuatorLink
+
diff --git a/ground/openpilotgcs/src/plugins/config/stabilization.ui b/ground/openpilotgcs/src/plugins/config/stabilization.ui
index a8d99f817..5c79c104f 100755
--- a/ground/openpilotgcs/src/plugins/config/stabilization.ui
+++ b/ground/openpilotgcs/src/plugins/config/stabilization.ui
@@ -6,8 +6,8 @@
0
0
- 732
- 685
+ 738
+ 748
@@ -496,7 +496,7 @@
0
0
- 667
+ 673
880
@@ -1128,6 +1128,9 @@ border-radius: 3;
0
+
+ Qt::StrongFocus
+
@@ -3377,6 +3380,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -3424,6 +3430,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -3472,6 +3481,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -3516,6 +3528,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -3564,6 +3579,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -3608,6 +3626,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -3659,6 +3680,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -3703,6 +3727,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -3735,6 +3762,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -3779,6 +3809,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -3811,6 +3844,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -3855,6 +3891,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -4506,6 +4545,9 @@ border-radius: 3;
0
+
+ Qt::StrongFocus
+
@@ -6697,6 +6739,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -6741,6 +6786,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -6789,6 +6837,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -6833,6 +6884,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -6881,6 +6935,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -6925,6 +6982,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -6992,6 +7052,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -7036,6 +7099,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -7068,6 +7134,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -7112,6 +7181,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -7144,6 +7216,9 @@ border-radius: 5;
25
+
+ Qt::StrongFocus
+
@@ -7188,6 +7263,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
200
@@ -10141,6 +10219,9 @@ Angle
25
+
+ Qt::StrongFocus
+
@@ -10184,6 +10265,9 @@ Angle
22
+
+ Qt::StrongFocus
+
200
@@ -10231,6 +10315,9 @@ Angle
25
+
+ Qt::StrongFocus
+
@@ -10274,6 +10361,9 @@ Angle
22
+
+ Qt::StrongFocus
+
200
@@ -10321,6 +10411,9 @@ Angle
25
+
+ Qt::StrongFocus
+
@@ -10364,6 +10457,9 @@ Angle
22
+
+ Qt::StrongFocus
+
200
@@ -10415,6 +10511,9 @@ Rate
25
+
+ Qt::StrongFocus
+
@@ -10459,6 +10558,9 @@ Rate
22
+
+ Qt::StrongFocus
+
200
@@ -10491,6 +10593,9 @@ Rate
25
+
+ Qt::StrongFocus
+
@@ -10535,6 +10640,9 @@ Rate
22
+
+ Qt::StrongFocus
+
200
@@ -10567,6 +10675,9 @@ Rate
25
+
+ Qt::StrongFocus
+
@@ -10611,6 +10722,9 @@ Rate
22
+
+ Qt::StrongFocus
+
200
@@ -10663,6 +10777,9 @@ Attitude
25
+
+ Qt::StrongFocus
+
@@ -10707,6 +10824,9 @@ Attitude
22
+
+ Qt::StrongFocus
+
200
@@ -10739,6 +10859,9 @@ Attitude
25
+
+ Qt::StrongFocus
+
@@ -10783,6 +10906,9 @@ Attitude
22
+
+ Qt::StrongFocus
+
200
@@ -10815,6 +10941,9 @@ Attitude
25
+
+ Qt::StrongFocus
+
@@ -10859,6 +10988,9 @@ Attitude
22
+
+ Qt::StrongFocus
+
200
@@ -11753,8 +11885,8 @@ border-radius: 4;
0
- 0
- 667
+ -403
+ 673
1079
@@ -14600,6 +14732,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
Slowly raise Kp until you start seeing clear oscillations when you fly.
Then lower the value by 20% or so.
@@ -14645,6 +14780,9 @@ Then lower the value by 20% or so.
22
+
+ Qt::StrongFocus
+
Slowly raise Kp until you start seeing clear oscillations when you fly.
Then lower the value by 20% or so.
@@ -14690,6 +14828,9 @@ Then lower the value by 20% or so.
22
+
+ Qt::StrongFocus
+
Slowly raise Kp until you start seeing clear oscillations when you fly.
Then lower the value by 20% or so.
@@ -14772,6 +14913,9 @@ You can usually go for higher values for Yaw factors.
22
+
+ Qt::StrongFocus
+
As a rule of thumb, you can set the Ki at roughly the same
value as the Kp.
@@ -14833,6 +14977,9 @@ value as the Kp.
22
+
+ Qt::StrongFocus
+
As a rule of thumb, you can set the Ki at roughly the same
value as the Kp.
@@ -14894,6 +15041,9 @@ value as the Kp.
22
+
+ Qt::StrongFocus
+
As a rule of thumb, you can set the Ki at roughly the same
value as the Kp.
@@ -14970,6 +15120,9 @@ value as the Kp.
22
+
+ Qt::StrongFocus
+
@@ -14980,7 +15133,7 @@ value as the Kp.
6
- 1.000000000000000
+ 0.000001000000000
@@ -15014,6 +15167,9 @@ value as the Kp.
22
+
+ Qt::StrongFocus
+
@@ -15021,7 +15177,7 @@ value as the Kp.
6
- 1.000000000000000
+ 0.000001000000000
@@ -15055,6 +15211,9 @@ value as the Kp.
22
+
+ Qt::StrongFocus
+
@@ -15065,7 +15224,7 @@ value as the Kp.
6
- 1.000000000000000
+ 0.000001000000000
@@ -15103,7 +15262,7 @@ value as the Kp.
- ILimit
+ K_i*ILimit
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
@@ -15130,6 +15289,9 @@ value as the Kp.
22
+
+ Qt::StrongFocus
+
@@ -15139,9 +15301,12 @@ value as the Kp.
6
-
+
1.000000000000000
+
+ 0.001000000000000
+
objname:StabilizationSettings
@@ -15174,15 +15339,21 @@ value as the Kp.
22
+
+ Qt::StrongFocus
+
6
-
+
1.000000000000000
+
+ 0.001000000000000
+
objname:StabilizationSettings
@@ -15215,6 +15386,9 @@ value as the Kp.
22
+
+ Qt::StrongFocus
+
@@ -15224,9 +15398,12 @@ value as the Kp.
6
-
+
1.000000000000000
+
+ 0.001000000000000
+
objname:StabilizationSettings
@@ -18115,6 +18292,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
@@ -18159,6 +18339,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
@@ -18200,6 +18383,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
@@ -18279,6 +18465,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
@@ -18339,6 +18528,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
@@ -18396,6 +18588,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
@@ -18444,7 +18639,7 @@ border-radius: 5;
- ILimit
+ K_i*ILimit
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
@@ -18471,6 +18666,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
@@ -18515,6 +18713,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
@@ -18556,6 +18757,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
@@ -21412,6 +21616,9 @@ angle(deg)
22
+
+ Qt::StrongFocus
+
@@ -21458,6 +21665,9 @@ angle(deg)
22
+
+ Qt::StrongFocus
+
@@ -21537,6 +21747,9 @@ rate(deg/s)
22
+
+ Qt::StrongFocus
+
@@ -21600,6 +21813,9 @@ rate(deg/s)
22
+
+ Qt::StrongFocus
+
@@ -21660,6 +21876,9 @@ rate(deg/s)
22
+
+ Qt::StrongFocus
+
@@ -21739,6 +21958,9 @@ rate(deg/s)
22
+
+ Qt::StrongFocus
+
@@ -21786,6 +22008,9 @@ rate(deg/s)
22
+
+ Qt::StrongFocus
+
@@ -21830,6 +22055,9 @@ rate(deg/s)
22
+
+ Qt::StrongFocus
+
@@ -21877,6 +22105,9 @@ rate(deg/s)
22
+
+ Qt::StrongFocus
+
@@ -24702,6 +24933,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
GyroTau is a gyro filter, the higher the factor the more filtering is applied to the gyros
@@ -24715,7 +24949,7 @@ border-radius: 5;
1000000.000000000000000
- 1.000000000000000
+ 0.001000000000000
@@ -24748,6 +24982,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
The proportional term for the accelerometer, the higher this term the more weight the accel is given
@@ -24761,7 +24998,7 @@ border-radius: 5;
1000000.000000000000000
- 1.000000000000000
+ 0.010000000000000
@@ -24794,6 +25031,9 @@ border-radius: 5;
22
+
+ Qt::StrongFocus
+
The intergral term for the accelerometer within the filter
@@ -24807,7 +25047,7 @@ border-radius: 5;
1000000.000000000000000
- 1.000000000000000
+ 0.000100000000000
@@ -25598,6 +25838,109 @@ border-radius: 4;
+
+ tabWidget
+ scrollArea
+ checkBox_7
+ pushButton_19
+ pushButton_20
+ horizontalSlider_76
+ spinBox_7
+ PitchPSlider
+ spinBox_PitchRateP
+ horizontalSlider_78
+ spinBox_12
+ horizontalSlider_79
+ spinBox_8
+ horizontalSlider_80
+ spinBox_9
+ horizontalSlider_81
+ spinBox_10
+ checkBox_8
+ pushButton_21
+ pushButton_22
+ horizontalSlider_82
+ spinBox_13
+ horizontalSlider_83
+ spinBox_14
+ horizontalSlider_84
+ spinBox_15
+ horizontalSlider_85
+ spinBox_18
+ horizontalSlider_86
+ spinBox_19
+ horizontalSlider_87
+ spinBox_20
+ pushButton_23
+ pushButton_24
+ horizontalSlider_88
+ spinBox_16
+ horizontalSlider_89
+ spinBox_17
+ horizontalSlider_90
+ spinBox_21
+ horizontalSlider_91
+ spinBox_22
+ horizontalSlider_92
+ spinBox_23
+ horizontalSlider_93
+ spinBox_24
+ horizontalSlider_94
+ spinBox_25
+ horizontalSlider_95
+ spinBox_26
+ horizontalSlider_96
+ spinBox_27
+ lowThrottleZeroIntegral_8
+ realTimeUpdates_6
+ stabilizationReloadBoardData_6
+ saveStabilizationToRAM_6
+ saveStabilizationToSD_6
+ scrollArea_2
+ checkBox_3
+ pushButton_4
+ RateRollKp_2
+ RatePitchKp
+ RateYawKp
+ RateRollKi_2
+ RatePitchKi
+ RateYawKi
+ RollRateKd
+ PitchRateKd
+ YawRateKd
+ RateRollILimit_2
+ RatePitchILimit
+ RateYawILimit
+ checkBox_2
+ pushButton_2
+ AttitudeRollKp
+ AttitudePitchKp_2
+ AttitudeYawKp
+ AttitudeRollKi
+ AttitudePitchKi_2
+ AttitudeYawKi
+ AttitudeRollILimit
+ AttitudePitchILimit_2
+ AttitudeYawILimit
+ pushButton_3
+ rateRollKp_3
+ ratePitchKp_4
+ rateYawKp_3
+ rateRollKi_3
+ ratePitchKi_4
+ rateYawKi_3
+ rateRollILimit_3
+ ratePitchILimit_4
+ rateYawILimit_3
+ pushButton_5
+ GyroTau
+ AccelKp
+ AccelKi
+ lowThrottleZeroIntegral_9
+ realTimeUpdates_7
+ saveStabilizationToRAM_7
+ saveStabilizationToSD_7
+