1
0
Fork 0
mirror of https://github.com/iNavFlight/inav-configurator.git synced 2025-07-21 15:25:19 +03:00

MSP layer for MSP_SENSOR_CONFIG

This commit is contained in:
Pawel Spychalski (DzikuVx) 2016-12-17 20:32:16 +01:00
parent f7ff9f1b8b
commit 55293812d2
4 changed files with 75 additions and 11 deletions

View file

@ -42,12 +42,13 @@ var INAV_PID_CONFIG;
var PID_ADVANCED;
var FILTER_CONFIG;
var SENSOR_STATUS;
var SENSOR_CONFIG;
var FC = {
isRatesInDps: function () {
return !!(typeof CONFIG != "undefined" && CONFIG.flightControllerIdentifier == "INAV" && semver.gt(CONFIG.flightControllerVersion, "1.1.0"));
},
resetState: function() {
resetState: function () {
SENSOR_STATUS = {
isHardwareHealthy: 0,
gyroHwStatus: 0,
@ -60,6 +61,15 @@ var FC = {
flowHwStatus: 0
};
SENSOR_CONFIG = {
accelerometer: 0,
barometer: 0,
magnetometer: 0,
pitot: 0,
rangefinder: 0,
opflow: 0
};
CONFIG = {
apiVersion: "0.0.0",
flightControllerIdentifier: '',
@ -628,5 +638,20 @@ var FC = {
},
getOsdDisabledFields: function () {
return ['CRAFT_NAME', 'VTX_CHANNEL']
},
getAccelerometerNames: function () {
return [ "NONE", "AUTO", "ADXL345", "MPU6050", "MMA845x", "BMA280", "LSM303DLHC", "MPU6000", "MPU6500", "MPU9250", "FAKE"];
},
getMagnetometerNames: function () {
return ["NONE", "HMC5883", "AK8975", "GPSMAG", "MAG3110", "AK8963", "IST8310", "FAKE"];
},
getBarometerNames: function () {
return ["NONE", "BMP085", "MS5611", "BMP280", "FAKE"];
},
getPitotNames: function () {
return ["NONE", "MS4525", "FAKE"];
},
getRangefinderNames: function () {
return ["NONE", "HCSR04", "SRF10"];
}
};

View file

@ -54,6 +54,8 @@ var MSPCodes = {
MSP_SET_FILTER_CONFIG: 93,
MSP_PID_ADVANCED: 94,
MSP_SET_PID_ADVANCED: 95,
MSP_SENSOR_CONFIG: 96,
MSP_SET_SENSOR_CONFIG: 97,
// Multiwii MSP commands
MSP_IDENT: 100,

View file

@ -834,6 +834,19 @@ var mspHelper = (function (gui) {
console.log("PID advanced saved");
break;
case MSPCodes.MSP_SENSOR_CONFIG:
SENSOR_CONFIG.accelerometer = data.getUint8(0, true);
SENSOR_CONFIG.barometer = data.getUint8(1, true);
SENSOR_CONFIG.magnetometer = data.getUint8(2, true);
SENSOR_CONFIG.pitot = data.getUint8(3, true);
SENSOR_CONFIG.rangefinder = data.getUint8(4, true);
SENSOR_CONFIG.opflow = data.getUint8(5, true);
break;
case MSPCodes.MSP_SET_SENSOR_CONFIG:
console.log("Sensor config saved");
break;
case MSPCodes.MSP_INAV_PID:
INAV_PID_CONFIG.asynchronousMode = data.getUint8(0);
INAV_PID_CONFIG.accelerometerTaskFrequency = data.getUint16(1, true);
@ -1208,6 +1221,15 @@ var mspHelper = (function (gui) {
buffer.push(highByte(PID_ADVANCED.axisAccelerationLimitYaw));
break;
case MSPCodes.MSP_SET_SENSOR_CONFIG:
buffer.push(SENSOR_CONFIG.accelerometer);
buffer.push(SENSOR_CONFIG.barometer);
buffer.push(SENSOR_CONFIG.magnetometer);
buffer.push(SENSOR_CONFIG.pitot);
buffer.push(SENSOR_CONFIG.rangefinder);
buffer.push(SENSOR_CONFIG.opflow);
break;
default:
return false;
}

View file

@ -52,7 +52,7 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
}
function loadINAVPidConfig() {
var next_callback = load_html;
var next_callback = loadSensorConfig;
if (semver.gt(CONFIG.flightControllerVersion, "1.3.0")) {
MSP.send_message(MSPCodes.MSP_INAV_PID, false, false, next_callback);
} else {
@ -60,6 +60,15 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
}
}
function loadSensorConfig() {
var next_callback = load_html;
if (semver.gte(CONFIG.flightControllerVersion, "1.5.0")) {
MSP.send_message(MSPCodes.MSP_SENSOR_CONFIG, false, false, next_callback);
} else {
next_callback();
}
}
//Update Analog/Battery Data
function load_analog() {
MSP.send_message(MSPCodes.MSP_ANALOG, false, false, function () {
@ -497,6 +506,12 @@ TABS.configuration.initialize = function (callback, scrollPosition) {
$(".requires-v1_4").hide();
}
if (semver.gte(CONFIG.flightControllerVersion, "1.5.0")) {
$(".requires-v1_5").show();
} else {
$(".requires-v1_5").hide();
}
$('input[name="3ddeadbandlow"]').val(_3D.deadband3d_low);
$('input[name="3ddeadbandhigh"]').val(_3D.deadband3d_high);