StabilizationWidget
0
0
683
685
0
0
0
240
240
240
255
255
255
247
247
247
120
120
120
160
160
160
0
0
0
255
255
255
0
0
0
255
255
255
240
240
240
0
0
0
247
247
247
255
255
220
0
0
0
0
0
0
240
240
240
255
255
255
247
247
247
120
120
120
160
160
160
0
0
0
255
255
255
0
0
0
255
255
255
240
240
240
0
0
0
247
247
247
255
255
220
0
0
0
120
120
120
240
240
240
255
255
255
247
247
247
120
120
120
160
160
160
120
120
120
255
255
255
120
120
120
240
240
240
240
240
240
0
0
0
240
240
240
255
255
220
0
0
0
Stabilization
false
30
30
false
-
-
0
0
0
0
Qt::TabFocus
true
true
QTabWidget::North
0
true
Basic
-
QFrame::NoFrame
0
true
0
-162
648
802
-
Qt::Vertical
QSizePolicy::Fixed
20
10
-
Qt::Horizontal
QSizePolicy::Fixed
20
10
-
0
16
9
75
true
Rate Stabilization (Inner Loop)
-
0
0
0
181
16777215
181
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
248
248
248
255
255
220
0
0
0
false
#RateStabilizationGroup_15{background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0 rgba(243, 243, 243, 255), stop:1 rgba(250, 250, 250, 255));
border: 1px outset #999;
border-radius: 3;
}
Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
0
0
Link Roll and Pitch
-
0
0
81
28
81
28
false
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Default
button:default
buttongroup:1
-
0
0
51
28
51
28
false
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Wiki
button:help
url:http://wiki.openpilot.org/display/Doc/Stabilization+panel
-
0
0
0
131
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
0
0
0
0
0
0
0
0
0
248
248
248
255
255
220
0
0
0
false
true
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Roll
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Pitch
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Yaw
Qt::AlignCenter
-
0
0
69
16
Proportional
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
25
100
51
51
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:RollRatePID
element:Kp
haslimits:yes
scale:0.0001
buttongroup:1,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:RollRatePID
element:Kp
haslimits:yes
scale:0.0001
buttongroup:1,10
-
Qt::Horizontal
QSizePolicy::Fixed
3
22
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:PitchRatePID
element:Kp
haslimits:yes
scale:0.0001
buttongroup:1,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:RollRatePID
element:Kp
haslimits:yes
scale:0.0001
buttongroup:1,10
-
Qt::Horizontal
QSizePolicy::Fixed
3
22
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:YawRatePID
element:Kp
haslimits:yes
scale:0.0001
buttongroup:1,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:YawRatePID
element:Kp
haslimits:yes
scale:0.0001
buttongroup:1,10
-
0
0
Integral
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:RollRatePID
element:Ki
haslimits:yes
scale:0.0001
buttongroup:1,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:RollRatePID
element:Ki
haslimits:yes
scale:0.0001
buttongroup:1,10
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:PitchRatePID
element:Ki
haslimits:yes
scale:0.0001
buttongroup:1,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:PitchRatePID
element:Ki
haslimits:yes
scale:0.0001
buttongroup:1,10
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:YawRatePID
element:Ki
haslimits:yes
scale:0.0001
buttongroup:1,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:YawRatePID
element:Ki
haslimits:yes
scale:0.0001
buttongroup:1,10
-
Qt::Vertical
QSizePolicy::Fixed
20
15
-
Qt::Horizontal
QSizePolicy::Fixed
20
13
-
0
16
9
75
true
Attitude Stabilization (Outer Loop)
-
0
0
0
181
16777215
181
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
248
248
248
255
255
220
0
0
0
false
#RateStabilizationGroup_17{background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0 rgba(243, 243, 243, 255), stop:1 rgba(250, 250, 250, 255));
border: 1px outset #999;
border-radius: 3;
}
Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
0
0
Link Roll and Pitch
-
0
0
81
28
81
28
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Default
button:default
buttongroup:2
-
0
0
0
131
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
0
0
0
0
0
0
0
0
0
248
248
248
255
255
220
0
0
0
false
true
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Roll
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Pitch
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Yaw
Qt::AlignCenter
-
0
0
69
16
Proportional
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:RollPI
element:Kp
scale:0.1
haslimits:yes
buttongroup:2,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:RollPI
element:Kp
scale:0.1
haslimits:yes
buttongroup:2,10
-
Qt::Horizontal
QSizePolicy::Fixed
3
22
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:PitchPI
element:Kp
scale:0.1
haslimits:yes
buttongroup:2,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:PitchPI
element:Kp
scale:0.1
haslimits:yes
buttongroup:2,10
-
Qt::Horizontal
QSizePolicy::Fixed
3
22
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:YawPI
element:Kp
scale:0.1
haslimits:yes
buttongroup:2,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:YawPI
element:Kp
scale:0.1
haslimits:yes
buttongroup:2,10
-
Qt::Horizontal
QSizePolicy::Fixed
3
22
-
0
0
Integral
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:RollPI
element:Ki
scale:0.1
haslimits:yes
buttongroup:2,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:RollPI
element:Ki
scale:0.1
haslimits:yes
buttongroup:2,10
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:PitchPI
element:Ki
scale:0.1
haslimits:yes
buttongroup:2,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:PitchPI
element:Ki
scale:0.1
haslimits:yes
buttongroup:2,10
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:YawPI
element:Ki
scale:0.1
haslimits:yes
buttongroup:2,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:YawPI
element:Ki
scale:0.1
haslimits:yes
buttongroup:2,10
-
0
0
51
28
51
28
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Wiki
button:help
url:http://wiki.openpilot.org/display/Doc/Stabilization+panel
-
Qt::Horizontal
QSizePolicy::Fixed
2
10
-
Qt::Vertical
QSizePolicy::Fixed
20
15
-
Qt::Horizontal
QSizePolicy::Fixed
20
13
-
0
16
9
75
true
Stick Range and Limits
-
0
0
0
211
16777215
211
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
248
248
248
255
255
220
0
0
0
false
#RateStabilizationGroup_19{background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0 rgba(243, 243, 243, 255), stop:1 rgba(250, 250, 250, 255));
border: 1px outset #999;
border-radius: 3;
}
Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
-
Qt::Horizontal
QSizePolicy::Preferred
10
10
-
0
0
51
28
51
28
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Wiki
button:help
url:http://wiki.openpilot.org/display/Doc/Stabilization+panel
-
0
0
81
28
81
28
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Default
button:default
buttongroup:3
-
0
0
0
161
16777215
161
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
0
0
0
0
0
0
0
0
0
248
248
248
255
255
220
0
0
0
false
true
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Roll
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Pitch
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Yaw
Qt::AlignCenter
-
0
0
69
16
Full Stick
Angle
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:RollMax
haslimits:yes
scale:1.8
buttongroup:3,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:RollMax
haslimits:yes
scale:1.8
buttongroup:3,10
-
Qt::Horizontal
QSizePolicy::Fixed
3
22
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:PitchMax
haslimits:yes
scale:1.8
buttongroup:3,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:PitchMax
haslimits:yes
scale:1.8
buttongroup:3,10
-
Qt::Horizontal
QSizePolicy::Fixed
3
22
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:YawMax
haslimits:yes
scale:1.8
buttongroup:3,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:YawMax
haslimits:yes
scale:1.8
buttongroup:3,10
-
0
0
Full Stick
Rate
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:ManualRate
element:Roll
haslimits:yes
scale:5
buttongroup:3,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:ManualRate
element:Roll
haslimits:yes
scale:5
buttongroup:3,10
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:ManualRate
element:Pitch
haslimits:yes
scale:5
buttongroup:3,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:ManualRate
element:Pitch
haslimits:yes
scale:5
buttongroup:3,10
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:ManualRate
element:Yaw
haslimits:yes
scale:5
buttongroup:3,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:ManualRate
element:Yaw
haslimits:yes
scale:5
buttongroup:3,10
-
0
0
Max Rate in
Attitude
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:MaximumRate
element:Roll
haslimits:yes
scale:5
buttongroup:3,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:MaximumRate
element:Roll
haslimits:yes
scale:5
buttongroup:3,10
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:MaximumRate
element:Pitch
haslimits:yes
scale:5
buttongroup:3,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:MaximumRate
element:Pitch
haslimits:yes
scale:5
buttongroup:3,10
-
0
0
0
25
100
50
Qt::Horizontal
QSlider::TicksBelow
25
objname:StabilizationSettings
fieldname:MaximumRate
element:Yaw
haslimits:yes
scale:5
buttongroup:3,10
-
43
22
43
22
200
200
objname:StabilizationSettings
fieldname:MaximumRate
element:Yaw
haslimits:yes
scale:5
buttongroup:3,10
-
Qt::Vertical
QSizePolicy::Fixed
20
10
-
Qt::Vertical
QSizePolicy::Preferred
20
180
-
Qt::Horizontal
QSizePolicy::Fixed
2
10
-
0
0
0
79
16777215
79
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
248
248
248
255
255
220
0
0
0
false
#RateStabilizationGroup_21{background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0 rgba(243, 243, 243, 255), stop:1 rgba(250, 250, 250, 255));
border: 1px outset #999;
border-radius: 3;
}
Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
-
0
0
239
20
When the throttle is low, zero the intergral term to prevent intergral wind-up
Zero the integral when throttle is low
objname:StabilizationSettings
fieldname:LowThrottleZeroIntegral
-
0
0
136
20
If you check this, the GCS will udpate the stabilization factors
automatically every 300ms, which will help for fast tuning.
Update in real time
-
Qt::Horizontal
111
10
-
0
0
120
28
120
28
8
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Reload Board Data
button:reload
buttongroup:10
-
0
0
60
28
60
28
8
Send settings to the board but do not save to the non-volatile memory
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Apply
button:apply
-
0
0
60
28
60
28
8
Send settings to the board and save to the non-volatile memory
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Save
button:save
Expert
-
QFrame::NoFrame
true
0
-350
648
990
-
Qt::Vertical
QSizePolicy::Fixed
25
10
-
Qt::Horizontal
QSizePolicy::Fixed
20
10
-
241
16
9
75
true
Rate Stabization Coefficients (Inner Loop)
-
0
0
0
210
16777215
210
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
248
248
248
255
255
220
0
0
0
false
#RateStabilizationGroup_8{background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0 rgba(243, 243, 243, 255), stop:1 rgba(250, 250, 250, 255));
border: 1px outset #999;
border-radius: 3;
}
Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
false
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
Link Roll and Pitch
-
0
0
81
28
81
28
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Default
objname:StabilizationSettings
button:default
buttongroup:4
-
0
0
0
151
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
0
0
0
0
0
0
0
0
0
248
248
248
255
255
220
0
0
0
false
true
2
-
Qt::Horizontal
QSizePolicy::Fixed
110
13
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Roll
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Pitch
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Yaw
Qt::AlignCenter
-
0
0
69
16
Proportional
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
22
16777215
22
Slowly raise Kp until you start seeing clear oscillations when you fly.
Then lower the value by 20% or so.
6
0.000100000000000
objname:StabilizationSettings
fieldname:RollRatePID
element:Kp
haslimits:no
scale:1
buttongroup:4,20
-
0
0
0
22
16777215
22
Slowly raise Kp until you start seeing clear oscillations when you fly.
Then lower the value by 20% or so.
6
0.000100000000000
objname:StabilizationSettings
fieldname:PitchRatePID
element:Kp
haslimits:no
scale:1
buttongroup:4,20
-
0
0
0
22
16777215
22
Slowly raise Kp until you start seeing clear oscillations when you fly.
Then lower the value by 20% or so.
You can usually go for higher values for Yaw factors.
6
0.000100000000000
objname:StabilizationSettings
fieldname:YawRatePID
element:Kp
haslimits:no
scale:1
buttongroup:4,20
-
0
0
Integral
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
0
0
0
22
16777215
22
As a rule of thumb, you can set the Ki at roughly the same
value as the Kp.
6
0.000100000000000
objname:StabilizationSettings
fieldname:RollRatePID
element:Ki
haslimits:no
scale:1
buttongroup:4,20
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
0
0
0
22
16777215
22
As a rule of thumb, you can set the Ki at roughly the same
value as the Kp.
6
0.000100000000000
objname:StabilizationSettings
fieldname:PitchRatePID
element:Ki
haslimits:no
scale:1
buttongroup:4,20
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
0
0
0
22
16777215
22
As a rule of thumb, you can set the Ki at roughly the same
value as the Kp.
6
0.000100000000000
objname:StabilizationSettings
fieldname:YawRatePID
element:Ki
haslimits:no
scale:1
buttongroup:4,20
-
0
0
58
0
16777215
16777215
Derivative
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
22
16777215
22
6
1.000000000000000
objname:StabilizationSettings
fieldname:RollRatePID
element:Kd
haslimits:no
scale:1
buttongroup:4,20
-
0
0
0
22
16777215
22
6
1.000000000000000
objname:StabilizationSettings
fieldname:PitchRatePID
element:Kd
haslimits:no
scale:1
buttongroup:4,20
-
0
0
0
22
16777215
22
6
1.000000000000000
objname:StabilizationSettings
fieldname:YawRatePID
element:Kd
haslimits:no
scale:1
buttongroup:4,20
-
0
0
50
0
16777215
16777215
ILimit
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
22
16777215
22
6
1.000000000000000
objname:StabilizationSettings
fieldname:RollRatePID
element:ILimit
haslimits:no
scale:1
buttongroup:4,20
-
0
0
0
22
16777215
22
6
1.000000000000000
objname:StabilizationSettings
fieldname:PitchRatePID
element:ILimit
haslimits:no
scale:1
buttongroup:4,20
-
0
0
0
22
16777215
22
6
1.000000000000000
objname:StabilizationSettings
fieldname:YawRatePID
element:ILimit
haslimits:no
scale:1
buttongroup:4,20
-
Qt::Horizontal
QSizePolicy::Fixed
2
10
-
Qt::Horizontal
QSizePolicy::Fixed
2
10
-
Qt::Vertical
QSizePolicy::Fixed
20
15
-
Qt::Horizontal
QSizePolicy::Fixed
20
10
-
241
16
9
75
true
Attitude Stabization Coefficients (Outer Loop)
-
0
0
0
181
16777215
181
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
248
248
248
255
255
220
0
0
0
false
#RateStabilizationGroup_4{background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0 rgba(243, 243, 243, 255), stop:1 rgba(250, 250, 250, 255));
border: 1px outset #999;
border-radius: 3;
}
Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
false
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
Link Roll and Pitch
-
0
0
81
28
81
28
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Default
objname:StabilizationSettings
button:default
buttongroup:5
-
0
0
0
131
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
0
0
0
0
0
0
0
0
0
248
248
248
255
255
220
0
0
0
false
true
-
Qt::Horizontal
QSizePolicy::Fixed
110
13
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Roll
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Pitch
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Yaw
Qt::AlignCenter
-
0
0
69
16
Proportional
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
22
16777215
22
6
0.100000000000000
objname:StabilizationSettings
fieldname:RollPI
element:Kp
haslimits:no
scale:1
buttongroup:5,20
-
0
0
0
22
16777215
22
6
0.100000000000000
objname:StabilizationSettings
fieldname:PitchPI
element:Kp
haslimits:no
scale:1
buttongroup:5,20
-
0
0
0
22
16777215
22
6
0.100000000000000
objname:StabilizationSettings
fieldname:YawPI
element:Kp
haslimits:no
scale:1
buttongroup:5,20
-
0
0
Integral
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
0
0
0
22
16777215
22
6
0.100000000000000
objname:StabilizationSettings
fieldname:RollPI
element:Ki
haslimits:no
scale:1
buttongroup:5,20
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
0
0
0
22
16777215
22
6
0.100000000000000
objname:StabilizationSettings
fieldname:PitchPI
element:Ki
haslimits:no
scale:1
buttongroup:5,20
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
0
0
0
22
16777215
22
6
0.100000000000000
objname:StabilizationSettings
fieldname:YawPI
element:Ki
haslimits:no
scale:1
buttongroup:5,20
-
0
0
50
0
16777215
16777215
ILimit
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
22
16777215
22
6
0.100000000000000
objname:StabilizationSettings
fieldname:RollPI
element:ILimit
haslimits:no
scale:1
buttongroup:5,20
-
0
0
0
22
16777215
22
6
0.100000000000000
objname:StabilizationSettings
fieldname:PitchPI
element:ILimit
haslimits:no
scale:1
buttongroup:5,20
-
0
0
0
22
16777215
22
6
0.100000000000000
objname:StabilizationSettings
fieldname:YawPI
element:ILimit
haslimits:no
scale:1
buttongroup:5,20
-
Qt::Vertical
QSizePolicy::Fixed
20
15
-
Qt::Horizontal
QSizePolicy::Fixed
20
10
-
180
16
9
75
true
Stick Range and Limits
-
0
0
0
211
16777215
211
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
248
248
248
255
255
220
0
0
0
false
#RateStabilizationGroup_6{background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0 rgba(243, 243, 243, 255), stop:1 rgba(250, 250, 250, 255));
border: 1px outset #999;
border-radius: 3;
}
Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
-
Qt::Horizontal
QSizePolicy::Preferred
10
10
-
0
0
81
28
81
28
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Default
objname:StabilizationSettings
button:default
buttongroup:6
-
0
0
0
160
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
0
0
0
0
0
0
0
0
0
248
248
248
255
255
220
0
0
0
false
true
-
Qt::Horizontal
QSizePolicy::Fixed
110
13
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Roll
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Pitch
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
Yaw
Qt::AlignCenter
-
0
0
69
16
Full stick
angle(deg)
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
22
16777215
22
0
1000000.000000000000000
1.000000000000000
objname:StabilizationSettings
fieldname:RollMax
haslimits:no
scale:1
buttongroup:6,20
-
0
0
0
22
16777215
22
0
1000000.000000000000000
1.000000000000000
objname:StabilizationSettings
fieldname:PitchMax
haslimits:no
scale:1
buttongroup:6,20
-
0
0
Full stick rate
rate(deg/s)
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
0
0
0
22
16777215
22
6
1000000.000000000000000
0.100000000000000
objname:StabilizationSettings
fieldname:ManualRate
element:Roll
haslimits:no
scale:1
buttongroup:6,20
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
0
0
0
22
16777215
22
6
1000000.000000000000000
0.100000000000000
objname:StabilizationSettings
fieldname:ManualRate
element:Pitch
haslimits:no
scale:1
buttongroup:6,20
-
Qt::Horizontal
QSizePolicy::Fixed
10
10
-
0
0
0
22
16777215
22
6
1000000.000000000000000
0.100000000000000
objname:StabilizationSettings
fieldname:ManualRate
element:Yaw
haslimits:no
scale:1
buttongroup:6,20
-
0
0
50
0
16777215
16777215
Max rate in attitude
mode(deg/s)
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
0
0
0
22
16777215
22
6
1000000.000000000000000
0.100000000000000
objname:StabilizationSettings
fieldname:MaximumRate
element:Roll
haslimits:no
scale:1
buttongroup:6,20
-
0
0
0
22
16777215
22
6
1000000.000000000000000
0.100000000000000
objname:StabilizationSettings
fieldname:MaximumRate
element:Pitch
haslimits:no
scale:1
buttongroup:6,20
-
0
0
0
22
16777215
22
6
1000000.000000000000000
0.100000000000000
objname:StabilizationSettings
fieldname:MaximumRate
element:Yaw
haslimits:no
scale:1
buttongroup:6,20
-
0
0
0
22
16777215
22
0
1000000.000000000000000
1.000000000000000
objname:StabilizationSettings
fieldname:YawMax
haslimits:no
scale:1
buttongroup:6,20
-
Qt::Vertical
QSizePolicy::Fixed
20
10
-
Qt::Horizontal
QSizePolicy::Fixed
20
10
-
180
16
9
75
true
Sensor Tunning
-
0
0
0
125
16777215
125
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
248
248
248
255
255
220
0
0
0
false
#RateStabilizationGroup_23{background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0 rgba(243, 243, 243, 255), stop:1 rgba(250, 250, 250, 255));
border: 1px outset #999;
border-radius: 3;
}
Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
2
-
Qt::Horizontal
QSizePolicy::Preferred
459
10
-
0
0
81
28
81
28
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Default
objname:StabilizationSettings
button:default
buttongroup:8,2
-
0
0
0
70
16777215
72
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
0
0
0
0
0
0
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
0
0
0
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
0
0
0
0
0
0
0
0
0
248
248
248
255
255
220
0
0
0
false
true
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
GyroTau
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
AccelKp
Qt::AlignCenter
-
0
0
0
16
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
19
19
19
255
255
220
0
0
0
255
255
255
74
74
74
36
36
36
58
58
58
48
48
48
19
19
19
26
26
26
255
255
255
255
255
255
255
255
255
74
74
74
36
36
36
74
74
74
36
36
36
0
0
0
39
39
39
255
255
220
0
0
0
75
true
false
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;
AccelKi
Qt::AlignCenter
-
0
0
0
22
16777215
22
GyroTau is a gyro filter, the higher the factor the more filtering is applied to the gyros
0
1000000.000000000000000
1.000000000000000
objname:StabilizationSettings
fieldname:GyroTau
haslimits:no
scale:1
buttongroup:8,20
-
0
0
0
22
16777215
22
The proportional term for the accelerometer, the higher this term the more weight the accel is given
0
1000000.000000000000000
1.000000000000000
objname:AttitudeSettings
fieldname:AccelKp
haslimits:no
scale:1
buttongroup:8,20
-
0
0
0
22
16777215
22
The intergral term for the accelerometer within the filter
0
1000000.000000000000000
1.000000000000000
objname:AttitudeSettings
fieldname:AccelKi
haslimits:no
scale:1
buttongroup:8,20
-
Qt::Vertical
QSizePolicy::Fixed
20
10
-
0
0
0
79
16777215
79
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
0
0
0
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
0
0
0
255
255
255
0
0
0
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
251
251
251
255
255
220
0
0
0
124
124
124
243
243
243
250
250
250
255
255
255
251
251
251
124
124
124
165
165
165
124
124
124
255
255
255
124
124
124
243
243
243
250
250
250
243
243
243
250
250
250
0
0
0
248
248
248
255
255
220
0
0
0
false
#RateStabilizationGroup_22{background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0 rgba(243, 243, 243, 255), stop:1 rgba(250, 250, 250, 255));
border: 1px outset #999;
border-radius: 3;
}
Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter
-
0
0
239
20
When the throttle is low, zero the intergral term to prevent intergral wind-up
Zero the integral when throttle is low
objname:StabilizationSettings
fieldname:LowThrottleZeroIntegral
-
0
0
9
50
false
If you check this, the GCS will udpate the stabilization factors
automatically every 300ms, which will help for fast tuning.
Update in real time
-
Qt::Horizontal
40
20
-
0
0
60
28
60
28
8
Send settings to the board but do not save to the non-volatile memory
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Apply
button:apply
-
0
0
60
28
60
28
8
Send settings to the board and save to the non-volatile memory
QPushButton {
border: 1px outset #999;
border-radius: 5;
background-color: qlineargradient(spread:pad, x1:0.507, y1:0.869318, x2:0.507, y2:0.0965909, stop:0.28 rgba(236, 236, 236, 255), stop:1 rgba(252, 252, 252, 255));
}
QPushButton:pressed {
border-style: inset;
background-color: qlineargradient(spread:pad, x1:0.502, y1:0.664864, x2:0.502, y2:0.034, stop:0.358209 rgba(250, 250, 250, 255), stop:0.626866 rgba(235, 235, 235, 255));
}
QPushButton:hover {
border: 1px outset #999;
border-color: rgb(83, 83, 83);
border-radius: 4;
}
Save
button:save