From 6f4d04eb9036cb6f190bff297eb77a0f1f828d89 Mon Sep 17 00:00:00 2001 From: Dominic Clifton Date: Mon, 25 Aug 2014 10:50:25 +0100 Subject: [PATCH] Fix aux channel configuration when using an rc system with 3 aux channels. --- changelog.html | 4 ++++ manifest.json | 2 +- tabs/auxiliary_configuration.js | 28 +++++++++++++++++++--------- 3 files changed, 24 insertions(+), 10 deletions(-) diff --git a/changelog.html b/changelog.html index f14ae2cec8..a6ebbd1427 100755 --- a/changelog.html +++ b/changelog.html @@ -1,3 +1,7 @@ +08.25.2014 - 0.49.1 cleanflight +

+ - Fix auxiliary configuration tab when using an rc system with 3 aux channels.
+

08.18.2014 - 0.49

- Motor indicators now display signal length in tooltips
diff --git a/manifest.json b/manifest.json index 7bd834d306..4021c2e79b 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "manifest_version": 2, "minimum_chrome_version": "36", - "version": "0.49", + "version": "0.49.1", "author": "Hydra", "name": "Cleanflight - Configurator", diff --git a/tabs/auxiliary_configuration.js b/tabs/auxiliary_configuration.js index b0c3d92710..df54efe0d6 100755 --- a/tabs/auxiliary_configuration.js +++ b/tabs/auxiliary_configuration.js @@ -48,24 +48,32 @@ TABS.auxiliary_configuration.initialize = function (callback) { var line = ''; line += '' + AUX_CONFIG[i] + ''; + + var switches = ''; + var auxChannelCount = RC.active_channels - 4; + var bitIndex = 0; var chunks = 1; - if (bit_check(CONFIG.capability, 5) && (RC.active_channels - 4) > 4) { + if (bit_check(CONFIG.capability, 5) && (auxChannelCount) > 4) { chunks = 2; } + + var channelsRemaining = auxChannelCount; var channelsPerChunk = 4; for (var chunk = 0; chunk < chunks; chunk++) { - for (var j = 0; j < channelsPerChunk * 3; j++) { - if (bit_check(AUX_CONFIG_values[i], bitIndex++)) { - line += ''; - } else { - line += ''; + for (var chunkChannel = 0; chunkChannel < channelsPerChunk && channelsRemaining; chunkChannel++, channelsRemaining--) { + for (var j = 0; j < 3; j++) { + if (bit_check(AUX_CONFIG_values[i], bitIndex++)) { + switches += ''; + } else { + switches += ''; + } } } bitIndex += 16 - (4 * 3); } - line += ''; + line += switches + ''; $('.boxes > tbody:last').append(line); } @@ -76,9 +84,11 @@ TABS.auxiliary_configuration.initialize = function (callback) { var main_needle = 0; var needle = 0; + var auxChannelCount = RC.active_channels - 4; + var boxCountFor4AuxChannels = 3 * 4; - var boxCountPerLine = boxCountFor4AuxChannels; - if (bit_check(CONFIG.capability, 5) && (RC.active_channels - 4) > 4) { + var boxCountPerLine = auxChannelCount * 3; + if (bit_check(CONFIG.capability, 5) && (auxChannelCount) > 4) { boxCountPerLine = boxCountFor4AuxChannels * 2; }