mirror of
https://github.com/iNavFlight/inav-configurator.git
synced 2025-07-15 12:25:13 +03:00
Fix VTX power levels
Power levels are 1-5 for Tramp and 1-4 for SmartAudio, not 0-4 for both.
This commit is contained in:
parent
8e823748f4
commit
f6407a9598
4 changed files with 47 additions and 29 deletions
2
js/fc.js
2
js/fc.js
|
@ -301,7 +301,7 @@ var FC = {
|
||||||
};
|
};
|
||||||
|
|
||||||
VTX_CONFIG = {
|
VTX_CONFIG = {
|
||||||
device_type: VTXDEV_UNKNOWN,
|
device_type: VTX.DEV_UNKNOWN,
|
||||||
band: 0,
|
band: 0,
|
||||||
channel: 1,
|
channel: 1,
|
||||||
power: 0,
|
power: 0,
|
||||||
|
|
|
@ -1102,7 +1102,7 @@ var mspHelper = (function (gui) {
|
||||||
break;
|
break;
|
||||||
case MSPCodes.MSP_VTX_CONFIG:
|
case MSPCodes.MSP_VTX_CONFIG:
|
||||||
VTX_CONFIG.device_type = data.getUint8(offset++);
|
VTX_CONFIG.device_type = data.getUint8(offset++);
|
||||||
if (VTX_CONFIG.device_type != VTXDEV_UNKNOWN) {
|
if (VTX_CONFIG.device_type != VTX.DEV_UNKNOWN) {
|
||||||
VTX_CONFIG.band = data.getUint8(offset++);
|
VTX_CONFIG.band = data.getUint8(offset++);
|
||||||
VTX_CONFIG.channel = data.getUint8(offset++);
|
VTX_CONFIG.channel = data.getUint8(offset++);
|
||||||
VTX_CONFIG.power = data.getUint8(offset++);
|
VTX_CONFIG.power = data.getUint8(offset++);
|
||||||
|
@ -1463,7 +1463,7 @@ var mspHelper = (function (gui) {
|
||||||
buffer.push16(((VTX_CONFIG.band - 1) * 8) + (VTX_CONFIG.channel - 1));
|
buffer.push16(((VTX_CONFIG.band - 1) * 8) + (VTX_CONFIG.channel - 1));
|
||||||
} else {
|
} else {
|
||||||
// This tells the firmware to ignore this value.
|
// This tells the firmware to ignore this value.
|
||||||
buffer.push16(VTX_MAX_FREQUENCY_MHZ + 1);
|
buffer.push16(VTX.MAX_FREQUENCY_MHZ + 1);
|
||||||
}
|
}
|
||||||
buffer.push(VTX_CONFIG.power);
|
buffer.push(VTX_CONFIG.power);
|
||||||
// Don't enable PIT mode
|
// Don't enable PIT mode
|
||||||
|
|
40
js/vtx.js
40
js/vtx.js
|
@ -1,23 +1,39 @@
|
||||||
var VTXDEV_UNKNOWN = 0xFF;
|
var VTX = (function() {
|
||||||
|
var self = {};
|
||||||
|
|
||||||
var VTX_BANDS = [
|
self.DEV_SMARTAUDIO = 3;
|
||||||
|
self.DEV_TRAMP = 4;
|
||||||
|
self.DEV_UNKNOWN = 0xFF;
|
||||||
|
|
||||||
|
self.BANDS = [
|
||||||
{code: 1, name: 'Boscam A'},
|
{code: 1, name: 'Boscam A'},
|
||||||
{code: 2, name: 'Boscam B'},
|
{code: 2, name: 'Boscam B'},
|
||||||
{code: 3, name: 'Boscam E'},
|
{code: 3, name: 'Boscam E'},
|
||||||
{code: 4, name: 'Fatshark'},
|
{code: 4, name: 'Fatshark'},
|
||||||
{code: 5, name: 'Raceband'},
|
{code: 5, name: 'Raceband'},
|
||||||
];
|
];
|
||||||
|
|
||||||
var VTX_BAND_MIN = 1;
|
self.BAND_MIN = 1;
|
||||||
var VTX_BAND_MAX = 5;
|
self.BAND_MAX = 5;
|
||||||
|
|
||||||
var VTX_CHANNEL_MIN = 1;
|
self.CHANNEL_MIN = 1;
|
||||||
var VTX_CHANNEL_MAX = 8;
|
self.CHANNEL_MAX = 8;
|
||||||
|
|
||||||
var VTX_POWER_MIN = 0;
|
self.getMinPower = function(vtxDev) {
|
||||||
var VTX_POWER_MAX = 4;
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
var VTX_LOW_POWER_DISARM_MIN = 0;
|
self.getMaxPower = function(vtxDev) {
|
||||||
var VTX_LOW_POWER_DISARM_MAX = 2;
|
if (vtxDev == self.DEV_SMARTAUDIO) {
|
||||||
|
return 4;
|
||||||
|
}
|
||||||
|
return 5;
|
||||||
|
}
|
||||||
|
|
||||||
var VTX_MAX_FREQUENCY_MHZ = 5999;
|
self.LOW_POWER_DISARM_MIN = 0;
|
||||||
|
self.LOW_POWER_DISARM_MAX = 2;
|
||||||
|
|
||||||
|
self.MAX_FREQUENCY_MHZ = 5999;
|
||||||
|
|
||||||
|
return self;
|
||||||
|
})();
|
||||||
|
|
|
@ -273,22 +273,22 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
|
||||||
|
|
||||||
// VTX
|
// VTX
|
||||||
var config_vtx = $('.config-vtx');
|
var config_vtx = $('.config-vtx');
|
||||||
if (VTX_CONFIG.device_type != VTXDEV_UNKNOWN) {
|
if (VTX_CONFIG.device_type != VTX.DEV_UNKNOWN) {
|
||||||
|
|
||||||
var vtx_band = $('#vtx_band');
|
var vtx_band = $('#vtx_band');
|
||||||
vtx_band.empty();
|
vtx_band.empty();
|
||||||
var vtx_no_band_note = $('#vtx_no_band');
|
var vtx_no_band_note = $('#vtx_no_band');
|
||||||
if (VTX_CONFIG.band < VTX_BAND_MIN || VTX_CONFIG.band > VTX_BAND_MAX) {
|
if (VTX_CONFIG.band < VTX.BAND_MIN || VTX_CONFIG.band > VTX.BAND_MAX) {
|
||||||
var noBandName = chrome.i18n.getMessage("configurationNoBand");
|
var noBandName = chrome.i18n.getMessage("configurationNoBand");
|
||||||
$('<option value="0">' + noBandName + '</option>').appendTo(vtx_band);
|
$('<option value="0">' + noBandName + '</option>').appendTo(vtx_band);
|
||||||
vtx_no_band_note.show();
|
vtx_no_band_note.show();
|
||||||
} else {
|
} else {
|
||||||
vtx_no_band_note.hide();
|
vtx_no_band_note.hide();
|
||||||
}
|
}
|
||||||
for (var ii = 0; ii < VTX_BANDS.length; ii++) {
|
for (var ii = 0; ii < VTX.BANDS.length; ii++) {
|
||||||
var band_name = VTX_BANDS[ii].name;
|
var band_name = VTX.BANDS[ii].name;
|
||||||
var option = $('<option value="' + VTX_BANDS[ii].code + '">' + band_name + '</option>');
|
var option = $('<option value="' + VTX.BANDS[ii].code + '">' + band_name + '</option>');
|
||||||
if (VTX_BANDS[ii].code == VTX_CONFIG.band) {
|
if (VTX.BANDS[ii].code == VTX_CONFIG.band) {
|
||||||
option.prop('selected', true);
|
option.prop('selected', true);
|
||||||
}
|
}
|
||||||
option.appendTo(vtx_band);
|
option.appendTo(vtx_band);
|
||||||
|
@ -299,7 +299,7 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
|
||||||
|
|
||||||
var vtx_channel = $('#vtx_channel');
|
var vtx_channel = $('#vtx_channel');
|
||||||
vtx_channel.empty();
|
vtx_channel.empty();
|
||||||
for (var ii = VTX_CHANNEL_MIN; ii <= VTX_CHANNEL_MAX; ii++) {
|
for (var ii = VTX.CHANNEL_MIN; ii <= VTX.CHANNEL_MAX; ii++) {
|
||||||
var option = $('<option value="' + ii + '">' + ii + '</option>');
|
var option = $('<option value="' + ii + '">' + ii + '</option>');
|
||||||
if (ii == VTX_CONFIG.channel) {
|
if (ii == VTX_CONFIG.channel) {
|
||||||
option.prop('selected', true);
|
option.prop('selected', true);
|
||||||
|
@ -312,7 +312,9 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
|
||||||
|
|
||||||
var vtx_power = $('#vtx_power');
|
var vtx_power = $('#vtx_power');
|
||||||
vtx_power.empty();
|
vtx_power.empty();
|
||||||
for (var ii = VTX_POWER_MIN; ii <= VTX_POWER_MAX; ii++) {
|
var minPower = VTX.getMinPower(VTX_CONFIG.device_type);
|
||||||
|
var maxPower = VTX.getMaxPower(VTX_CONFIG.device_type);
|
||||||
|
for (var ii = minPower; ii <= maxPower; ii++) {
|
||||||
var option = $('<option value="' + ii + '">' + ii + '</option>');
|
var option = $('<option value="' + ii + '">' + ii + '</option>');
|
||||||
if (ii == VTX_CONFIG.power) {
|
if (ii == VTX_CONFIG.power) {
|
||||||
option.prop('selected', true);
|
option.prop('selected', true);
|
||||||
|
@ -325,7 +327,7 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
|
||||||
|
|
||||||
var vtx_low_power_disarm = $('#vtx_low_power_disarm');
|
var vtx_low_power_disarm = $('#vtx_low_power_disarm');
|
||||||
vtx_low_power_disarm.empty();
|
vtx_low_power_disarm.empty();
|
||||||
for (var ii = VTX_LOW_POWER_DISARM_MIN; ii <= VTX_LOW_POWER_DISARM_MAX; ii++) {
|
for (var ii = VTX.LOW_POWER_DISARM_MIN; ii <= VTX.LOW_POWER_DISARM_MAX; ii++) {
|
||||||
var name = chrome.i18n.getMessage("configurationVTXLowPowerDisarmValue_" + ii);
|
var name = chrome.i18n.getMessage("configurationVTXLowPowerDisarmValue_" + ii);
|
||||||
if (!name) {
|
if (!name) {
|
||||||
name = ii;
|
name = ii;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue