diff --git a/_locales/en/messages.json b/_locales/en/messages.json index e3cbcd7c..0c98c68a 100755 --- a/_locales/en/messages.json +++ b/_locales/en/messages.json @@ -3574,9 +3574,6 @@ "platformConfiguration": { "message": "Platform configuration" }, - "platformHasFlaps": { - "message": "Has flaps" - }, "mixerPreset": { "message": "Mixer preset" }, diff --git a/js/fc.js b/js/fc.js index 7c95327e..4e1a5a96 100644 --- a/js/fc.js +++ b/js/fc.js @@ -999,7 +999,7 @@ var FC = { 'RC Channel 8', // 11 'Gimbal Pitch', // 12 'Gimbal Roll', // 13 - 'Flaps', // 14 + 'Flaperon Mode', // 14 'RC Channel 9', // 15 'RC Channel 10', // 16 'RC Channel 11', // 17 diff --git a/js/model.js b/js/model.js index 330bd8fd..273de731 100644 --- a/js/model.js +++ b/js/model.js @@ -2,10 +2,12 @@ const SERVO_GIMBAL_PITCH = 0, SERVO_GIMBAL_ROLL = 1, - SERVO_ELEVATOR = 2, - SERVO_FLAPPERON_1 = 3, - SERVO_FLAPPERON_2 = 4, - SERVO_RUDDER = 5, + SERVO_ELEVATOR = 1, + SERVO_ELEVON_1 = 1, + SERVO_ELEVON_2 = 2, + SERVO_FLAPPERON_1 = 2, + SERVO_FLAPPERON_2 = 3, + SERVO_RUDDER = 4, SERVO_BICOPTER_LEFT = 4, SERVO_BICOPTER_RIGHT = 5, SERVO_DUALCOPTER_LEFT = 4, @@ -162,10 +164,10 @@ const mixerList = [ new MotorMixRule(1.0, 0.0, 0.0, 0.0), ], servoMixer: [ - new ServoMixRule(SERVO_FLAPPERON_1, INPUT_STABILIZED_ROLL, 50, 0), - new ServoMixRule(SERVO_FLAPPERON_1, INPUT_STABILIZED_PITCH, 50, 0), - new ServoMixRule(SERVO_FLAPPERON_2, INPUT_STABILIZED_ROLL, -50, 0), - new ServoMixRule(SERVO_FLAPPERON_2, INPUT_STABILIZED_PITCH, 50, 0), + new ServoMixRule(SERVO_ELEVON_1, INPUT_STABILIZED_ROLL, 50, 0), + new ServoMixRule(SERVO_ELEVON_1, INPUT_STABILIZED_PITCH, 50, 0), + new ServoMixRule(SERVO_ELEVON_2, INPUT_STABILIZED_ROLL, -50, 0), + new ServoMixRule(SERVO_ELEVON_2, INPUT_STABILIZED_PITCH, 50, 0), ] }, // 8 { @@ -181,10 +183,10 @@ const mixerList = [ new MotorMixRule(1.0, 0.0, 0.0, -0.1) ], servoMixer: [ - new ServoMixRule(SERVO_FLAPPERON_1, INPUT_STABILIZED_ROLL, 50, 0), - new ServoMixRule(SERVO_FLAPPERON_1, INPUT_STABILIZED_PITCH, 50, 0), - new ServoMixRule(SERVO_FLAPPERON_2, INPUT_STABILIZED_ROLL, -50, 0), - new ServoMixRule(SERVO_FLAPPERON_2, INPUT_STABILIZED_PITCH, 50, 0), + new ServoMixRule(SERVO_ELEVON_1, INPUT_STABILIZED_ROLL, 50, 0), + new ServoMixRule(SERVO_ELEVON_1, INPUT_STABILIZED_PITCH, 50, 0), + new ServoMixRule(SERVO_ELEVON_2, INPUT_STABILIZED_ROLL, -50, 0), + new ServoMixRule(SERVO_ELEVON_2, INPUT_STABILIZED_PITCH, 50, 0), ] }, // 27 { @@ -289,6 +291,7 @@ const mixerList = [ enabled: true, legacy: true, platform: PLATFORM_AIRPLANE, + hasFlaps: true, motorMixer: [ new MotorMixRule(1.0, 0.0, 0.0, 0.0), new MotorMixRule(1.0, 0.0, 0.0, 0.0), @@ -296,9 +299,9 @@ const mixerList = [ servoMixer: [ new ServoMixRule(SERVO_ELEVATOR, INPUT_STABILIZED_PITCH, 100, 0), new ServoMixRule(SERVO_FLAPPERON_1, INPUT_STABILIZED_ROLL, 100, 0), - new ServoMixRule(SERVO_FLAPPERON_1, INPUT_FEATURE_FLAPS, 100, 0), + /*new ServoMixRule(SERVO_FLAPPERON_1, INPUT_FEATURE_FLAPS, 100, 0),*/ new ServoMixRule(SERVO_FLAPPERON_2, INPUT_STABILIZED_ROLL, 100, 0), - new ServoMixRule(SERVO_FLAPPERON_2, INPUT_FEATURE_FLAPS, -100, 0), + /*new ServoMixRule(SERVO_FLAPPERON_2, INPUT_FEATURE_FLAPS, -100, 0),*/ new ServoMixRule(SERVO_RUDDER, INPUT_STABILIZED_YAW, 100, 0), ] }, // 14 @@ -448,6 +451,7 @@ const mixerList = [ enabled: true, legacy: false, platform: PLATFORM_AIRPLANE, + hasFlaps: true, motorMixer: [ new MotorMixRule(1.0, 0.0, 0.0, 0.3), new MotorMixRule(1.0, 0.0, 0.0, -0.3) @@ -455,9 +459,9 @@ const mixerList = [ servoMixer: [ new ServoMixRule(SERVO_ELEVATOR, INPUT_STABILIZED_PITCH, 100, 0), new ServoMixRule(SERVO_FLAPPERON_1, INPUT_STABILIZED_ROLL, 100, 0), - new ServoMixRule(SERVO_FLAPPERON_1, INPUT_FEATURE_FLAPS, 100, 0), + /*new ServoMixRule(SERVO_FLAPPERON_1, INPUT_FEATURE_FLAPS, 100, 0),*/ new ServoMixRule(SERVO_FLAPPERON_2, INPUT_STABILIZED_ROLL, 100, 0), - new ServoMixRule(SERVO_FLAPPERON_2, INPUT_FEATURE_FLAPS, -100, 0), + /*new ServoMixRule(SERVO_FLAPPERON_2, INPUT_FEATURE_FLAPS, -100, 0),*/ new ServoMixRule(SERVO_RUDDER, INPUT_STABILIZED_YAW, 100, 0), ] }, @@ -469,16 +473,19 @@ const mixerList = [ enabled: true, legacy: false, platform: PLATFORM_AIRPLANE, + hasFlaps: true, motorMixer: [ new MotorMixRule(1.0, 0.0, 0.0, 0.0), ], servoMixer: [ + new ServoMixRule(1, INPUT_STABILIZED_ROLL, 100, 0), + /*new ServoMixRule(1, INPUT_FEATURE_FLAPS, 100, 0),*/ new ServoMixRule(2, INPUT_STABILIZED_ROLL, 100, 0), - new ServoMixRule(3, INPUT_STABILIZED_ROLL, 100, 0), - new ServoMixRule(4, INPUT_STABILIZED_PITCH, 50, 0), - new ServoMixRule(4, INPUT_STABILIZED_YAW, -50, 0), - new ServoMixRule(5, INPUT_STABILIZED_PITCH, -50, 0), - new ServoMixRule(5, INPUT_STABILIZED_YAW, -50, 0) + /*new ServoMixRule(2, INPUT_FEATURE_FLAPS, 100, 0),*/ + new ServoMixRule(3, INPUT_STABILIZED_PITCH, 50, 0), + new ServoMixRule(3, INPUT_STABILIZED_YAW, -50, 0), + new ServoMixRule(4, INPUT_STABILIZED_PITCH, -50, 0), + new ServoMixRule(4, INPUT_STABILIZED_YAW, -50, 0) ] }, { @@ -493,11 +500,11 @@ const mixerList = [ new MotorMixRule(1.0, 0.0, 0.0, 0.0), ], servoMixer: [ - new ServoMixRule(2, INPUT_STABILIZED_ROLL, 100, 0), - new ServoMixRule(3, INPUT_STABILIZED_PITCH, 50, 0), + new ServoMixRule(1, INPUT_STABILIZED_ROLL, 100, 0), + new ServoMixRule(2, INPUT_STABILIZED_PITCH, 50, 0), + new ServoMixRule(2, INPUT_STABILIZED_YAW, -50, 0), + new ServoMixRule(3, INPUT_STABILIZED_PITCH, -50, 0), new ServoMixRule(3, INPUT_STABILIZED_YAW, -50, 0), - new ServoMixRule(4, INPUT_STABILIZED_PITCH, -50, 0), - new ServoMixRule(4, INPUT_STABILIZED_YAW, -50, 0), ] }, { @@ -508,13 +515,16 @@ const mixerList = [ enabled: true, legacy: false, platform: PLATFORM_AIRPLANE, + hasFlaps: true, motorMixer: [ new MotorMixRule(1.0, 0.0, 0.0, 0.0), ], servoMixer: [ new ServoMixRule(SERVO_ELEVATOR, INPUT_STABILIZED_PITCH, 100, 0), new ServoMixRule(SERVO_FLAPPERON_1, INPUT_STABILIZED_ROLL, 100, 0), + /*new ServoMixRule(SERVO_FLAPPERON_1, INPUT_FEATURE_FLAPS, 100, 0),*/ new ServoMixRule(SERVO_FLAPPERON_2, INPUT_STABILIZED_ROLL, 100, 0), + /*new ServoMixRule(SERVO_FLAPPERON_2, INPUT_FEATURE_FLAPS, 100, 0),*/ ] }, { diff --git a/src/css/tabs/mixer.css b/src/css/tabs/mixer.css index 3d99dba0..08e01e7b 100644 --- a/src/css/tabs/mixer.css +++ b/src/css/tabs/mixer.css @@ -84,6 +84,12 @@ } .mixer_btn_add { + float: right; + margin: 15px 0 10px; +} + +.mixer_btn_logic { + float: left; margin: 15px 0 10px; } diff --git a/tabs/mixer.html b/tabs/mixer.html index 844a4923..777a6f01 100644 --- a/tabs/mixer.html +++ b/tabs/mixer.html @@ -15,12 +15,6 @@ -
- - -
@@ -118,12 +112,12 @@ -
- -
+
+ +
diff --git a/tabs/mixer.js b/tabs/mixer.js index 00822794..b1e727e2 100644 --- a/tabs/mixer.js +++ b/tabs/mixer.js @@ -124,6 +124,10 @@ TABS.mixer.initialize = function (callback, scrollPosition) { GUI.fillSelect($row.find(".mix-rule-input"), FC.getServoMixInputNames(), servoRule.getInput()); + if (!MIXER_CONFIG.hasFlaps) { + $row.find(".mix-rule-input").children('option[value="14"]').remove(); + } + $row.find(".mix-rule-input").val(servoRule.getInput()).change(function () { servoRule.setInput($(this).val()); updateFixedValueVisibility($row, $(this)); @@ -272,8 +276,6 @@ TABS.mixer.initialize = function (callback, scrollPosition) { let $platformSelect = $('#platform-type'), platforms = helper.platform.getList(), - $hasFlapsWrapper = $('#has-flaps-wrapper'), - $hasFlaps = $('#has-flaps'), $mixerPreset = $('#mixer-preset'), $wizardButton = $("#mixer-wizard"); @@ -354,30 +356,12 @@ TABS.mixer.initialize = function (callback, scrollPosition) { } } - $hasFlaps.prop("checked", MIXER_CONFIG.hasFlaps); - $hasFlaps.change(function () { - if ($(this).is(":checked")) { - MIXER_CONFIG.hasFlaps = 1; - } else { - MIXER_CONFIG.hasFlaps = 0; - } - }); - $hasFlaps.change(); - $platformSelect.change(function () { MIXER_CONFIG.platformType = parseInt($platformSelect.val(), 10); currentPlatform = helper.platform.getById(MIXER_CONFIG.platformType); var $platformSelectParent = $platformSelect.parent('.select'); - if (currentPlatform.flapsPossible) { - $hasFlapsWrapper.removeClass('is-hidden'); - $platformSelectParent.removeClass('no-bottom-border'); - } else { - $hasFlapsWrapper.addClass('is-hidden'); - $platformSelectParent.addClass('no-bottom-border'); - } - fillMixerPreset(); $mixerPreset.change(); }); @@ -430,6 +414,7 @@ TABS.mixer.initialize = function (callback, scrollPosition) { $('#load-mixer-button').click(function () { helper.mixer.loadServoRules(currentMixerPreset); helper.mixer.loadMotorRules(currentMixerPreset); + MIXER_CONFIG.hasFlaps = (currentMixerPreset.hasFlaps === true) ? true : false; renderServoMixRules(); renderMotorMixRules(); renderOutputMapping();