1
0
Fork 0
mirror of https://github.com/iNavFlight/inav-configurator.git synced 2025-07-24 00:35:20 +03:00

load custom smix rules

This commit is contained in:
Pawel Spychalski (DzikuVx) 2018-01-20 11:43:31 +01:00
parent d158a9283c
commit 912864bc19
6 changed files with 53 additions and 7 deletions

View file

@ -1130,10 +1130,6 @@
"transponderEepromSaved": { "transponderEepromSaved": {
"message": "EEPROM <span style=\"color: #37a8db\">saved</span>" "message": "EEPROM <span style=\"color: #37a8db\">saved</span>"
}, },
"servosFirmwareUpgradeRequired": {
"message": "Servos requires firmware &gt;= 1.10.0. and target support."
},
"servosChangeDirection": { "servosChangeDirection": {
"message": "Change Direction in TX To Match" "message": "Change Direction in TX To Match"
}, },

View file

@ -90,6 +90,7 @@ sources.js = [
'./js/localization.js', './js/localization.js',
'./js/boards.js', './js/boards.js',
'./js/tasks.js', './js/tasks.js',
'./js/servoMixRule.js',
'./main.js', './main.js',
'./tabs/*.js', './tabs/*.js',
'./js/eventFrequencyAnalyzer.js', './js/eventFrequencyAnalyzer.js',

View file

@ -350,6 +350,19 @@ var mspHelper = (function (gui) {
} }
break; break;
case MSPCodes.MSP_SERVO_MIX_RULES: case MSPCodes.MSP_SERVO_MIX_RULES:
SERVO_RULES = [];
if (data.byteLength % 7 === 0) {
for (i = 0; i < data.byteLength; i += 7) {
SERVO_RULES.push(new ServoMixRule(
data.getInt8(i + 0, true),
data.getInt8(i + 1, true),
data.getInt8(i + 2, true),
data.getInt8(i + 3, true)
));
}
}
break; break;
case MSPCodes.MSP_SERVO_CONFIGURATIONS: case MSPCodes.MSP_SERVO_CONFIGURATIONS:
@ -2464,5 +2477,9 @@ var mspHelper = (function (gui) {
MSP.send_message(MSPCodes.MSP_SERVO_CONFIGURATIONS, false, false, callback); MSP.send_message(MSPCodes.MSP_SERVO_CONFIGURATIONS, false, false, callback);
}; };
self.loadServoMixRules = function (callback) {
MSP.send_message(MSPCodes.MSP_SERVO_MIX_RULES, false, false, callback);
}
return self; return self;
})(GUI); })(GUI);

View file

@ -9,7 +9,7 @@ var MSPChainerClass = function () {
self.exitPoint = null; self.exitPoint = null;
self.chainIndex = 0; self.chainIndex = 0;
self.setChain = function(chain) { self.setChain = function (chain) {
self.chain = chain; self.chain = chain;
}; };
@ -26,7 +26,7 @@ var MSPChainerClass = function () {
} }
}; };
self.execute = function() { self.execute = function () {
self.chainIndex = 0; self.chainIndex = 0;
self.chain[self.chainIndex](self.returnCallback); self.chain[self.chainIndex](self.returnCallback);
}; };

31
js/servoMixRule.js Normal file
View file

@ -0,0 +1,31 @@
/*global $*/
'use strict';
var ServoMixRule = function (target, input, rate, speed) {
var self = {};
// self.target = target;
// self.input = input;
// self.rate = rate;
// self.speed = speed;
self.getTarget = function () {
return target;
};
self.getInput = function () {
return input;
};
self.getRate = function () {
return rate;
};
self.getSpeed = function () {
return speed;
};
return self;
};

View file

@ -13,7 +13,8 @@ TABS.servos.initialize = function (callback) {
loadChainer.setChain([ loadChainer.setChain([
mspHelper.loadServoConfiguration, mspHelper.loadServoConfiguration,
mspHelper.loadRcData mspHelper.loadRcData,
mspHelper.loadServoMixRules
]); ]);
loadChainer.setExitPoint(load_html); loadChainer.setExitPoint(load_html);
loadChainer.execute(); loadChainer.execute();