Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/iNavFlight/inav-configurator.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-x_locales/en/messages.json10
-rw-r--r--js/fc.js2
-rw-r--r--src/css/tabs/servos.css4
-rwxr-xr-xtabs/servos.js22
4 files changed, 24 insertions, 14 deletions
diff --git a/_locales/en/messages.json b/_locales/en/messages.json
index 0ddad621..03579521 100755
--- a/_locales/en/messages.json
+++ b/_locales/en/messages.json
@@ -1223,8 +1223,11 @@
"servosMax": {
"message": "MAX"
},
- "servosDirectionAndRate": {
- "message": "Direction and rate"
+ "servosReverse": {
+ "message": "Reverse"
+ },
+ "servosRate": {
+ "message": "Rate (%)"
},
"servosLiveMode": {
"message": "Enable Live mode"
@@ -1235,9 +1238,6 @@
"servosNormal": {
"message": "Normal"
},
- "servosReverse": {
- "message": "Reverse"
- },
"servosEepromSave": {
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>"
},
diff --git a/js/fc.js b/js/fc.js
index bfc7c989..c9b91b60 100644
--- a/js/fc.js
+++ b/js/fc.js
@@ -57,7 +57,7 @@ var CONFIG,
var FC = {
MAX_SERVO_RATE: 125,
- MIN_SERVO_RATE: -125,
+ MIN_SERVO_RATE: 0,
isNewMixer: function () {
return !!(typeof CONFIG != "undefined" && semver.gte(CONFIG.flightControllerVersion, "2.0.0"));
},
diff --git a/src/css/tabs/servos.css b/src/css/tabs/servos.css
index 935656b2..de4b664e 100644
--- a/src/css/tabs/servos.css
+++ b/src/css/tabs/servos.css
@@ -57,7 +57,7 @@
}
.tab-servos table .channel {
- width: 40px;
+ width: 22px;
text-align: center;
}
@@ -139,5 +139,5 @@
}
.tab-servos .short {
- width: 40px;
+ width: 32px;
} \ No newline at end of file
diff --git a/tabs/servos.js b/tabs/servos.js
index 88641fc6..3ab13c84 100755
--- a/tabs/servos.js
+++ b/tabs/servos.js
@@ -55,7 +55,7 @@ TABS.servos.initialize = function (callback) {
for (i = 0; i < RC.active_channels - 4; i++) {
servoHeader = servoHeader + '<th class="short">CH' + (i + 5) + '</th>';
}
- servoHeader = servoHeader + '<th data-i18n="servosDirectionAndRate"></th>';
+ servoHeader = servoHeader + '<th data-i18n="servosRate"></th><th data-i18n="servosReverse"></th>';
for (i = 0; i < RC.active_channels; i++) {
servoCheckbox = servoCheckbox + '<td class="channel"><input type="checkbox"/></td>';
@@ -68,7 +68,8 @@ TABS.servos.initialize = function (callback) {
<th data-i18n="servosMid"></th>\
<th data-i18n="servosMin"></th>\
<th data-i18n="servosMax"></th>\
- <th data-i18n="servosDirectionAndRate"></th>\
+ <th data-i18n="servosRate"></th>\
+ <th data-i18n="servosReverse"></th>\
');
}
@@ -81,7 +82,8 @@ TABS.servos.initialize = function (callback) {
<td class="min"><input type="number" min="500" max="2500" value="' + SERVO_CONFIG[obj].min + '" /></td>\
<td class="max"><input type="number" min="500" max="2500" value="' + SERVO_CONFIG[obj].max + '" /></td>\
' + servoCheckbox + '\
- <td class="text-center direction">\
+ <td class="text-center rate">\
+ <td class="text-center reverse">\
</td>\
</tr> \
');
@@ -92,8 +94,12 @@ TABS.servos.initialize = function (callback) {
}
// adding select box and generating options
- $servoConfigTable.find('tr:last td.direction').append(
- '<input class="rate-input" type="number" min="' + FC.MIN_SERVO_RATE + '" max="' + FC.MAX_SERVO_RATE + '" value="' + SERVO_CONFIG[obj].rate + '" />'
+ $servoConfigTable.find('tr:last td.rate').append(
+ '<input class="rate-input" type="number" min="' + FC.MIN_SERVO_RATE + '" max="' + FC.MAX_SERVO_RATE + '" value="' + Math.abs(SERVO_CONFIG[obj].rate) + '" />'
+ );
+
+ $servoConfigTable.find('tr:last td.reverse').append(
+ '<input type="checkbox" class="reverse-input togglemedium" ' + (SERVO_CONFIG[obj].rate < 0 ? ' checked ' : '') + '/>'
);
$servoConfigTable.find('tr:last').data('info', { 'obj': obj });
@@ -123,7 +129,11 @@ TABS.servos.initialize = function (callback) {
SERVO_CONFIG[info.obj].middle = parseInt($('.middle input', this).val());
SERVO_CONFIG[info.obj].min = parseInt($('.min input', this).val());
SERVO_CONFIG[info.obj].max = parseInt($('.max input', this).val());
- SERVO_CONFIG[info.obj].rate = parseInt($('.rate-input', this).val());
+ var rate = parseInt($('.rate-input', this).val());
+ if ($('.reverse-input', this).is(':checked')) {
+ rate = -rate;
+ }
+ SERVO_CONFIG[info.obj].rate = rate;
});
//Save configuration to FC