1
0
Fork 0
mirror of https://github.com/betaflight/betaflight-configurator.git synced 2025-07-19 14:25:14 +03:00

Remove hard coded number

This commit is contained in:
Károly Kiripolszky 2020-07-28 01:49:08 +02:00
parent 87f839d168
commit 2071181c9a
3 changed files with 56 additions and 48 deletions

View file

@ -497,6 +497,54 @@ const FC = {
rcSmoothingDerivativeType: 0, rcSmoothingDerivativeType: 0,
rcSmoothingAutoSmoothness: 0, rcSmoothingAutoSmoothness: 0,
usbCdcHidType: 0, usbCdcHidType: 0,
serialRxTypes: [
'SPEKTRUM1024',
'SPEKTRUM2048',
'SBUS',
'SUMD',
'SUMH',
'XBUS_MODE_B',
'XBUS_MODE_B_RJ01',
],
getSerialRxTypes: () => {
const apiVersion = this.CONFIG.apiVersion;
const flightControllerIdentifier = this.CONFIG.flightControllerIdentifier;
const flightControllerVersion = this.CONFIG.flightControllerVersion;
// js way of cloning an array
const result = [...this.RX_CONFIG.serialRxTypes];
if (semver.gte(apiVersion, "1.15.0")) {
result.push('IBUS');
}
if ((flightControllerIdentifier === 'BTFL' && semver.gte(flightControllerVersion, "2.6.0")) ||
(flightControllerIdentifier === 'CLFL' && semver.gte(apiVersion, "1.31.0"))) {
result.push('JETIEXBUS');
}
if (semver.gte(apiVersion, "1.31.0")) {
result.push('CRSF');
}
if (semver.gte(apiVersion, "1.24.0")) {
result.push('SPEKTRUM2048/SRXL');
}
if (semver.gte(apiVersion, "1.35.0")) {
result.push('TARGET_CUSTOM');
}
if (semver.gte(apiVersion, "1.37.0")) {
result.push('FrSky FPort');
}
if (semver.gte(apiVersion, "1.42.0")) {
result.push('SPEKTRUM SRXL2');
}
return result;
},
}; };
this.FAILSAFE_CONFIG = { this.FAILSAFE_CONFIG = {

View file

@ -843,52 +843,12 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
gpsBaudrateElement.parent().hide(); gpsBaudrateElement.parent().hide();
} }
// generate serial RX const serialRXSelectEl = $('select.serialRX');
var serialRXtypes = [ FC.RX_CONFIG.getSerialRxTypes().forEach((serialRxType, index) => {
'SPEKTRUM1024', serialRXSelectEl.append(`<option value="${index}">${serialRxType}</option>`);
'SPEKTRUM2048', });
'SBUS',
'SUMD',
'SUMH',
'XBUS_MODE_B',
'XBUS_MODE_B_RJ01'
];
if (semver.gte(FC.CONFIG.apiVersion, "1.15.0")) { serialRXSelectEl.change(function () {
serialRXtypes.push('IBUS');
}
if ((FC.CONFIG.flightControllerIdentifier === 'BTFL' && semver.gte(FC.CONFIG.flightControllerVersion, "2.6.0")) ||
(FC.CONFIG.flightControllerIdentifier === 'CLFL' && semver.gte(FC.CONFIG.apiVersion, "1.31.0"))) {
serialRXtypes.push('JETIEXBUS');
}
if (semver.gte(FC.CONFIG.apiVersion, "1.31.0")) {
serialRXtypes.push('CRSF');
}
if (semver.gte(FC.CONFIG.apiVersion, "1.24.0")) {
serialRXtypes.push('SPEKTRUM2048/SRXL');
}
if (semver.gte(FC.CONFIG.apiVersion, "1.35.0")) {
serialRXtypes.push('TARGET_CUSTOM');
}
if (semver.gte(FC.CONFIG.apiVersion, "1.37.0")) {
serialRXtypes.push('FrSky FPort');
}
if (semver.gte(FC.CONFIG.apiVersion, "1.42.0")) {
serialRXtypes.push('SPEKTRUM SRXL2');
}
var serialRX_e = $('select.serialRX');
for (var i = 0; i < serialRXtypes.length; i++) {
serialRX_e.append('<option value="' + i + '">' + serialRXtypes[i] + '</option>');
}
serialRX_e.change(function () {
var serialRxValue = parseInt($(this).val()); var serialRxValue = parseInt($(this).val());
var newValue; var newValue;
@ -901,7 +861,7 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
}); });
// select current serial RX type // select current serial RX type
serialRX_e.val(FC.RX_CONFIG.serialrx_provider); serialRXSelectEl.val(FC.RX_CONFIG.serialrx_provider);
if (semver.gte(FC.CONFIG.apiVersion, "1.31.0")) { if (semver.gte(FC.CONFIG.apiVersion, "1.31.0")) {
var spiRxTypes = [ var spiRxTypes = [

View file

@ -346,8 +346,8 @@ OSD.generateTemperaturePreview = function (osd_data, temperature) {
} }
OSD.generateLQPreview = function() { OSD.generateLQPreview = function() {
const CRSF_PROVIDER = 9; const crsfIndex = FC.RX_CONFIG.getSerialRxTypes().findIndex(name => name === 'CRSF');
let isXF = FC.RX_CONFIG.serialrx_provider == CRSF_PROVIDER; const isXF = crsfIndex === FC.RX_CONFIG.serialrx_provider;
return FONT.symbol(SYM.LINK_QUALITY) + (isXF ? '2:100' : '8'); return FONT.symbol(SYM.LINK_QUALITY) + (isXF ? '2:100' : '8');
} }