mirror of
https://github.com/iNavFlight/inav-configurator.git
synced 2025-07-15 04:15:28 +03:00
Cleanup INAV 2.0.0
This commit is contained in:
parent
0016746d93
commit
cb1ff69703
19 changed files with 1274 additions and 3246 deletions
|
@ -231,49 +231,26 @@ var mspHelper = (function (gui) {
|
|||
ANALOG.amperage = data.getInt16(5, true) / 100; // A
|
||||
break;
|
||||
case MSPCodes.MSPV2_INAV_ANALOG:
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
var tmp = data.getUint8(offset++);
|
||||
ANALOG.battery_full_when_plugged_in = (tmp & 1 ? true : false);
|
||||
ANALOG.use_capacity_thresholds = ((tmp & 2) >> 1 ? true : false);
|
||||
ANALOG.battery_state = (tmp & 12) >> 2;
|
||||
ANALOG.cell_count = (tmp & 0xF0) >> 4;
|
||||
ANALOG.voltage = data.getUint16(offset, true) / 100.0;
|
||||
offset += 2;
|
||||
ANALOG.amperage = data.getInt16(offset, true) / 100; // A
|
||||
offset += 2;
|
||||
ANALOG.power = data.getInt32(offset, true) / 100.0;
|
||||
offset += 4;
|
||||
ANALOG.mAhdrawn = data.getInt32(offset, true);
|
||||
offset += 4;
|
||||
ANALOG.mWhdrawn = data.getInt32(offset, true);
|
||||
offset += 4;
|
||||
ANALOG.battery_remaining_capacity = data.getUint32(offset, true);
|
||||
offset += 4;
|
||||
ANALOG.battery_percentage = data.getUint8(offset++);
|
||||
ANALOG.rssi = data.getUint16(offset, true); // 0-1023
|
||||
offset += 2;
|
||||
} else {
|
||||
ANALOG.voltage = data.getUint16(offset, true) / 100.0;
|
||||
offset += 2;
|
||||
ANALOG.cell_count = data.getUint8(offset++);
|
||||
ANALOG.battery_percentage = data.getUint8(offset++);
|
||||
ANALOG.power = data.getUint16(offset, true);
|
||||
offset += 2;
|
||||
ANALOG.mAhdrawn = data.getUint16(offset, true);
|
||||
offset += 2;
|
||||
ANALOG.mWhdrawn = data.getUint16(offset, true);
|
||||
offset += 2;
|
||||
ANALOG.rssi = data.getUint16(offset, true); // 0-1023
|
||||
offset += 2;
|
||||
ANALOG.amperage = data.getInt16(offset, true) / 100; // A
|
||||
offset += 2;
|
||||
var battery_flags = data.getUint8(offset++);
|
||||
ANALOG.battery_full_when_plugged_in = (battery_flags & 1 ? true : false);
|
||||
ANALOG.use_capacity_thresholds = ((battery_flags & 2) >> 1 ? true : false);
|
||||
ANALOG.battery_state = (battery_flags & 12) >> 2;
|
||||
ANALOG.battery_remaining_capacity = data.getUint32(offset, true);
|
||||
offset += 4;
|
||||
}
|
||||
let tmp = data.getUint8(offset++);
|
||||
ANALOG.battery_full_when_plugged_in = (tmp & 1 ? true : false);
|
||||
ANALOG.use_capacity_thresholds = ((tmp & 2) >> 1 ? true : false);
|
||||
ANALOG.battery_state = (tmp & 12) >> 2;
|
||||
ANALOG.cell_count = (tmp & 0xF0) >> 4;
|
||||
ANALOG.voltage = data.getUint16(offset, true) / 100.0;
|
||||
offset += 2;
|
||||
ANALOG.amperage = data.getInt16(offset, true) / 100; // A
|
||||
offset += 2;
|
||||
ANALOG.power = data.getInt32(offset, true) / 100.0;
|
||||
offset += 4;
|
||||
ANALOG.mAhdrawn = data.getInt32(offset, true);
|
||||
offset += 4;
|
||||
ANALOG.mWhdrawn = data.getInt32(offset, true);
|
||||
offset += 4;
|
||||
ANALOG.battery_remaining_capacity = data.getUint32(offset, true);
|
||||
offset += 4;
|
||||
ANALOG.battery_percentage = data.getUint8(offset++);
|
||||
ANALOG.rssi = data.getUint16(offset, true); // 0-1023
|
||||
offset += 2;
|
||||
//noinspection JSValidateTypes
|
||||
dataHandler.analog_last_received_timestamp = Date.now();
|
||||
break;
|
||||
|
@ -385,12 +362,10 @@ var mspHelper = (function (gui) {
|
|||
offset += 2;
|
||||
MISC.vbatscale = data.getUint16(offset, true);
|
||||
offset += 2;
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
MISC.voltage_source = data.getUint8(offset++);
|
||||
MISC.battery_cells = data.getUint8(offset++);
|
||||
MISC.vbatdetectcellvoltage = data.getUint16(offset, true) / 100;
|
||||
offset += 2;
|
||||
}
|
||||
MISC.voltage_source = data.getUint8(offset++);
|
||||
MISC.battery_cells = data.getUint8(offset++);
|
||||
MISC.vbatdetectcellvoltage = data.getUint16(offset, true) / 100;
|
||||
offset += 2;
|
||||
MISC.vbatmincellvoltage = data.getUint16(offset, true) / 100;
|
||||
offset += 2;
|
||||
MISC.vbatmaxcellvoltage = data.getUint16(offset, true) / 100;
|
||||
|
@ -411,12 +386,10 @@ var mspHelper = (function (gui) {
|
|||
case MSPCodes.MSPV2_INAV_BATTERY_CONFIG:
|
||||
BATTERY_CONFIG.vbatscale = data.getUint16(offset, true);
|
||||
offset += 2;
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
BATTERY_CONFIG.voltage_source = data.getUint8(offset++);
|
||||
BATTERY_CONFIG.battery_cells = data.getUint8(offset++);
|
||||
BATTERY_CONFIG.vbatdetectcellvoltage = data.getUint16(offset, true) / 100;
|
||||
offset += 2;
|
||||
}
|
||||
BATTERY_CONFIG.voltage_source = data.getUint8(offset++);
|
||||
BATTERY_CONFIG.battery_cells = data.getUint8(offset++);
|
||||
BATTERY_CONFIG.vbatdetectcellvoltage = data.getUint16(offset, true) / 100;
|
||||
offset += 2;
|
||||
BATTERY_CONFIG.vbatmincellvoltage = data.getUint16(offset, true) / 100;
|
||||
offset += 2;
|
||||
BATTERY_CONFIG.vbatmaxcellvoltage = data.getUint16(offset, true) / 100;
|
||||
|
@ -634,9 +607,7 @@ var mspHelper = (function (gui) {
|
|||
SENSOR_ALIGNMENT.align_gyro = data.getUint8(offset++);
|
||||
SENSOR_ALIGNMENT.align_acc = data.getUint8(offset++);
|
||||
SENSOR_ALIGNMENT.align_mag = data.getUint8(offset++);
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
SENSOR_ALIGNMENT.align_opflow = data.getUint8(offset++);
|
||||
}
|
||||
SENSOR_ALIGNMENT.align_opflow = data.getUint8(offset++);
|
||||
break;
|
||||
case MSPCodes.MSP_SET_RAW_RC:
|
||||
break;
|
||||
|
@ -1224,11 +1195,9 @@ var mspHelper = (function (gui) {
|
|||
FILTER_CONFIG.gyroNotchHz2 = data.getUint16(13, true);
|
||||
FILTER_CONFIG.gyroNotchCutoff2 = data.getUint16(15, true);
|
||||
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
FILTER_CONFIG.accNotchHz = data.getUint16(17, true);
|
||||
FILTER_CONFIG.accNotchCutoff = data.getUint16(19, true);
|
||||
FILTER_CONFIG.gyroStage2LowpassHz = data.getUint16(21, true);
|
||||
}
|
||||
FILTER_CONFIG.accNotchHz = data.getUint16(17, true);
|
||||
FILTER_CONFIG.accNotchCutoff = data.getUint16(19, true);
|
||||
FILTER_CONFIG.gyroStage2LowpassHz = data.getUint16(21, true);
|
||||
|
||||
break;
|
||||
|
||||
|
@ -1693,12 +1662,10 @@ var mspHelper = (function (gui) {
|
|||
buffer.push(highByte(Math.round(MISC.mag_declination * 10)));
|
||||
buffer.push(lowByte(MISC.vbatscale));
|
||||
buffer.push(highByte(MISC.vbatscale));
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
buffer.push(MISC.voltage_source);
|
||||
buffer.push(MISC.battery_cells);
|
||||
buffer.push(lowByte(Math.round(MISC.vbatdetectcellvoltage * 100)));
|
||||
buffer.push(highByte(Math.round(MISC.vbatdetectcellvoltage * 100)));
|
||||
}
|
||||
buffer.push(MISC.voltage_source);
|
||||
buffer.push(MISC.battery_cells);
|
||||
buffer.push(lowByte(Math.round(MISC.vbatdetectcellvoltage * 100)));
|
||||
buffer.push(highByte(Math.round(MISC.vbatdetectcellvoltage * 100)));
|
||||
buffer.push(lowByte(Math.round(MISC.vbatmincellvoltage * 100)));
|
||||
buffer.push(highByte(Math.round(MISC.vbatmincellvoltage * 100)));
|
||||
buffer.push(lowByte(Math.round(MISC.vbatmaxcellvoltage * 100)));
|
||||
|
@ -1716,12 +1683,10 @@ var mspHelper = (function (gui) {
|
|||
case MSPCodes.MSPV2_INAV_SET_BATTERY_CONFIG:
|
||||
buffer.push(lowByte(BATTERY_CONFIG.vbatscale));
|
||||
buffer.push(highByte(BATTERY_CONFIG.vbatscale));
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
buffer.push(BATTERY_CONFIG.voltage_source);
|
||||
buffer.push(BATTERY_CONFIG.battery_cells);
|
||||
buffer.push(lowByte(Math.round(BATTERY_CONFIG.vbatdetectcellvoltage * 100)));
|
||||
buffer.push(highByte(Math.round(BATTERY_CONFIG.vbatdetectcellvoltage * 100)));
|
||||
}
|
||||
buffer.push(BATTERY_CONFIG.voltage_source);
|
||||
buffer.push(BATTERY_CONFIG.battery_cells);
|
||||
buffer.push(lowByte(Math.round(BATTERY_CONFIG.vbatdetectcellvoltage * 100)));
|
||||
buffer.push(highByte(Math.round(BATTERY_CONFIG.vbatdetectcellvoltage * 100)));
|
||||
buffer.push(lowByte(Math.round(BATTERY_CONFIG.vbatmincellvoltage * 100)));
|
||||
buffer.push(highByte(Math.round(BATTERY_CONFIG.vbatmincellvoltage * 100)));
|
||||
buffer.push(lowByte(Math.round(BATTERY_CONFIG.vbatmaxcellvoltage * 100)));
|
||||
|
@ -1874,9 +1839,7 @@ var mspHelper = (function (gui) {
|
|||
buffer.push(SENSOR_ALIGNMENT.align_gyro);
|
||||
buffer.push(SENSOR_ALIGNMENT.align_acc);
|
||||
buffer.push(SENSOR_ALIGNMENT.align_mag);
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
buffer.push(SENSOR_ALIGNMENT.align_opflow);
|
||||
}
|
||||
buffer.push(SENSOR_ALIGNMENT.align_opflow);
|
||||
break;
|
||||
|
||||
case MSPCodes.MSP_SET_ADVANCED_CONFIG:
|
||||
|
@ -2072,16 +2035,14 @@ var mspHelper = (function (gui) {
|
|||
buffer.push(lowByte(FILTER_CONFIG.gyroNotchCutoff2));
|
||||
buffer.push(highByte(FILTER_CONFIG.gyroNotchCutoff2));
|
||||
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
buffer.push(lowByte(FILTER_CONFIG.accNotchHz));
|
||||
buffer.push(highByte(FILTER_CONFIG.accNotchHz));
|
||||
buffer.push(lowByte(FILTER_CONFIG.accNotchHz));
|
||||
buffer.push(highByte(FILTER_CONFIG.accNotchHz));
|
||||
|
||||
buffer.push(lowByte(FILTER_CONFIG.accNotchCutoff));
|
||||
buffer.push(highByte(FILTER_CONFIG.accNotchCutoff));
|
||||
buffer.push(lowByte(FILTER_CONFIG.accNotchCutoff));
|
||||
buffer.push(highByte(FILTER_CONFIG.accNotchCutoff));
|
||||
|
||||
buffer.push(lowByte(FILTER_CONFIG.gyroStage2LowpassHz));
|
||||
buffer.push(highByte(FILTER_CONFIG.gyroStage2LowpassHz));
|
||||
}
|
||||
buffer.push(lowByte(FILTER_CONFIG.gyroStage2LowpassHz));
|
||||
buffer.push(highByte(FILTER_CONFIG.gyroStage2LowpassHz));
|
||||
|
||||
break;
|
||||
|
||||
|
@ -2838,10 +2799,7 @@ var mspHelper = (function (gui) {
|
|||
};
|
||||
|
||||
self.queryFcStatus = function (callback) {
|
||||
if (semver.gte(CONFIG.flightControllerVersion, '2.0.0'))
|
||||
MSP.send_message(MSPCodes.MSPV2_INAV_STATUS, false, false, callback);
|
||||
else
|
||||
MSP.send_message(MSPCodes.MSP_STATUS_EX, false, false, callback);
|
||||
MSP.send_message(MSPCodes.MSPV2_INAV_STATUS, false, false, callback);
|
||||
};
|
||||
|
||||
self.loadMisc = function (callback) {
|
||||
|
@ -2853,12 +2811,7 @@ var mspHelper = (function (gui) {
|
|||
};
|
||||
|
||||
self.loadOutputMapping = function (callback) {
|
||||
if (semver.gte(CONFIG.flightControllerVersion, '2.0.0'))
|
||||
MSP.send_message(MSPCodes.MSPV2_INAV_OUTPUT_MAPPING, false, false, callback);
|
||||
else {
|
||||
OUTPUT_MAPPING.flush();
|
||||
callback();
|
||||
}
|
||||
MSP.send_message(MSPCodes.MSPV2_INAV_OUTPUT_MAPPING, false, false, callback);
|
||||
};
|
||||
|
||||
self.loadBatteryConfig = function (callback) {
|
||||
|
@ -3042,9 +2995,6 @@ var mspHelper = (function (gui) {
|
|||
};
|
||||
|
||||
self._getSetting = function (name) {
|
||||
if (semver.lt(CONFIG.flightControllerVersion, '2.0.0')) {
|
||||
return self._getLegacySetting(name);
|
||||
}
|
||||
if (SETTINGS[name]) {
|
||||
return Promise.resolve(SETTINGS[name]);
|
||||
}
|
||||
|
@ -3101,31 +3051,6 @@ var mspHelper = (function (gui) {
|
|||
});
|
||||
}
|
||||
|
||||
|
||||
self._getLegacySetting = function (name) {
|
||||
var promise;
|
||||
if (SETTINGS) {
|
||||
promise = Promise.resolve(SETTINGS);
|
||||
} else {
|
||||
promise = new Promise(function (resolve, reject) {
|
||||
$.ajax({
|
||||
url: chrome.runtime.getURL('/resources/settings.json'),
|
||||
dataType: 'json',
|
||||
error: function (jqXHR, text, error) {
|
||||
reject(error);
|
||||
},
|
||||
success: function (data) {
|
||||
SETTINGS = data;
|
||||
resolve(data);
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
return promise.then(function (data) {
|
||||
return data[name];
|
||||
});
|
||||
};
|
||||
|
||||
self._encodeSettingReference = function (name, index, data) {
|
||||
if (Number.isInteger(index)) {
|
||||
data.push8(0);
|
||||
|
@ -3286,35 +3211,19 @@ var mspHelper = (function (gui) {
|
|||
};
|
||||
|
||||
self.loadMixerConfig = function (callback) {
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "1.9.1")) {
|
||||
MSP.send_message(MSPCodes.MSP2_INAV_MIXER, false, false, callback);
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
MSP.send_message(MSPCodes.MSP2_INAV_MIXER, false, false, callback);
|
||||
};
|
||||
|
||||
self.saveMixerConfig = function (callback) {
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "1.9.1")) {
|
||||
MSP.send_message(MSPCodes.MSP2_INAV_SET_MIXER, mspHelper.crunch(MSPCodes.MSP2_INAV_SET_MIXER), false, callback);
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
MSP.send_message(MSPCodes.MSP2_INAV_SET_MIXER, mspHelper.crunch(MSPCodes.MSP2_INAV_SET_MIXER), false, callback);
|
||||
};
|
||||
|
||||
self.loadVTXConfig = function (callback) {
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
MSP.send_message(MSPCodes.MSP_VTX_CONFIG, false, false, callback);
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
MSP.send_message(MSPCodes.MSP_VTX_CONFIG, false, false, callback);
|
||||
};
|
||||
|
||||
self.saveVTXConfig = function(callback) {
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
MSP.send_message(MSPCodes.MSP_SET_VTX_CONFIG, mspHelper.crunch(MSPCodes.MSP_SET_VTX_CONFIG), false, callback);
|
||||
} else {
|
||||
callback();
|
||||
}
|
||||
MSP.send_message(MSPCodes.MSP_SET_VTX_CONFIG, mspHelper.crunch(MSPCodes.MSP_SET_VTX_CONFIG), false, callback);
|
||||
};
|
||||
|
||||
self.loadBrakingConfig = function(callback) {
|
||||
|
@ -3334,22 +3243,18 @@ var mspHelper = (function (gui) {
|
|||
};
|
||||
|
||||
self.loadParameterGroups = function(callback) {
|
||||
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
|
||||
MSP.send_message(MSPCodes.MSP2_COMMON_PG_LIST, false, false, function (resp) {
|
||||
var groups = [];
|
||||
while (resp.data.offset < resp.data.byteLength) {
|
||||
var id = resp.data.readU16();
|
||||
var start = resp.data.readU16();
|
||||
var end = resp.data.readU16();
|
||||
groups.push({id: id, start: start, end: end});
|
||||
}
|
||||
if (callback) {
|
||||
callback(groups);
|
||||
}
|
||||
});
|
||||
} else if (callback) {
|
||||
callback();
|
||||
}
|
||||
MSP.send_message(MSPCodes.MSP2_COMMON_PG_LIST, false, false, function (resp) {
|
||||
var groups = [];
|
||||
while (resp.data.offset < resp.data.byteLength) {
|
||||
var id = resp.data.readU16();
|
||||
var start = resp.data.readU16();
|
||||
var end = resp.data.readU16();
|
||||
groups.push({id: id, start: start, end: end});
|
||||
}
|
||||
if (callback) {
|
||||
callback(groups);
|
||||
}
|
||||
});
|
||||
};
|
||||
|
||||
self.loadBrakingConfig = function(callback) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue