|
|
|
@ -88,15 +88,6 @@ var mspHelper = (function (gui) {
|
|
|
|
|
CONFIG.profile = data.getUint8(10);
|
|
|
|
|
gui.updateProfileChange();
|
|
|
|
|
gui.updateStatusBar();
|
|
|
|
|
|
|
|
|
|
/*
|
|
|
|
|
* Update sensor status only for older firmwares
|
|
|
|
|
* Newer firmwares use MSP_SENSOR_STATUS instead
|
|
|
|
|
*/
|
|
|
|
|
if (semver.lt(CONFIG.flightControllerVersion, "1.5.0")) {
|
|
|
|
|
sensor_status(CONFIG.activeSensors);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
break;
|
|
|
|
|
case MSPCodes.MSP_STATUS_EX:
|
|
|
|
|
CONFIG.cycleTime = data.getUint16(0, true);
|
|
|
|
@ -110,14 +101,7 @@ var mspHelper = (function (gui) {
|
|
|
|
|
|
|
|
|
|
CONFIG.profile = data.getUint8(10);
|
|
|
|
|
CONFIG.cpuload = data.getUint16(11, true);
|
|
|
|
|
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.5.0")) {
|
|
|
|
|
CONFIG.armingFlags = data.getUint16(13, true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (semver.lt(CONFIG.flightControllerVersion, "1.5.0")) {
|
|
|
|
|
sensor_status(CONFIG.activeSensors);
|
|
|
|
|
}
|
|
|
|
|
CONFIG.armingFlags = data.getUint16(13, true);
|
|
|
|
|
gui.updateStatusBar();
|
|
|
|
|
gui.updateProfileChange();
|
|
|
|
|
break;
|
|
|
|
@ -158,9 +142,7 @@ var mspHelper = (function (gui) {
|
|
|
|
|
SENSOR_STATUS.rangeHwStatus = data.getUint8(6);
|
|
|
|
|
SENSOR_STATUS.speedHwStatus = data.getUint8(7);
|
|
|
|
|
SENSOR_STATUS.flowHwStatus = data.getUint8(8);
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.5.0")) {
|
|
|
|
|
sensor_status_ex(SENSOR_STATUS);
|
|
|
|
|
}
|
|
|
|
|
sensor_status_ex(SENSOR_STATUS);
|
|
|
|
|
break;
|
|
|
|
|
|
|
|
|
|
case MSPCodes.MSP_RAW_IMU:
|
|
|
|
@ -234,10 +216,7 @@ var mspHelper = (function (gui) {
|
|
|
|
|
break;
|
|
|
|
|
case MSPCodes.MSP_ALTITUDE:
|
|
|
|
|
SENSOR_DATA.altitude = parseFloat((data.getInt32(0, true) / 100.0).toFixed(2)); // correct scale factor
|
|
|
|
|
// On 1.6 and above this provides also baro raw altitude
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.6.0")) {
|
|
|
|
|
SENSOR_DATA.barometer = parseFloat((data.getInt32(6, true) / 100.0).toFixed(2)); // correct scale factor
|
|
|
|
|
}
|
|
|
|
|
SENSOR_DATA.barometer = parseFloat((data.getInt32(6, true) / 100.0).toFixed(2)); // correct scale factor
|
|
|
|
|
break;
|
|
|
|
|
case MSPCodes.MSP_SONAR:
|
|
|
|
|
SENSOR_DATA.sonar = data.getInt32(0, true);
|
|
|
|
@ -1208,12 +1187,8 @@ var mspHelper = (function (gui) {
|
|
|
|
|
PID_ADVANCED.rollPitchItermIgnoreRate = data.getUint16(0, true);
|
|
|
|
|
PID_ADVANCED.yawItermIgnoreRate = data.getUint16(2, true);
|
|
|
|
|
PID_ADVANCED.yawPLimit = data.getUint16(4, true);
|
|
|
|
|
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.6.0")) {
|
|
|
|
|
PID_ADVANCED.dtermSetpointWeight = data.getUint8(9);
|
|
|
|
|
PID_ADVANCED.pidSumLimit = data.getUint16(10, true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
PID_ADVANCED.dtermSetpointWeight = data.getUint8(9);
|
|
|
|
|
PID_ADVANCED.pidSumLimit = data.getUint16(10, true);
|
|
|
|
|
PID_ADVANCED.axisAccelerationLimitRollPitch = data.getUint16(13, true);
|
|
|
|
|
PID_ADVANCED.axisAccelerationLimitYaw = data.getUint16(15, true);
|
|
|
|
|
break;
|
|
|
|
@ -2063,15 +2038,9 @@ var mspHelper = (function (gui) {
|
|
|
|
|
buffer.push(0); //BF: currentProfile->pidProfile.vbatPidCompensation
|
|
|
|
|
buffer.push(0); //BF: currentProfile->pidProfile.setpointRelaxRatio
|
|
|
|
|
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.6.0")) {
|
|
|
|
|
buffer.push(PID_ADVANCED.dtermSetpointWeight);
|
|
|
|
|
buffer.push(lowByte(PID_ADVANCED.pidSumLimit));
|
|
|
|
|
buffer.push(highByte(PID_ADVANCED.pidSumLimit));
|
|
|
|
|
} else {
|
|
|
|
|
buffer.push(0);
|
|
|
|
|
buffer.push(0); // reserved
|
|
|
|
|
buffer.push(0); // reserved
|
|
|
|
|
}
|
|
|
|
|
buffer.push(PID_ADVANCED.dtermSetpointWeight);
|
|
|
|
|
buffer.push(lowByte(PID_ADVANCED.pidSumLimit));
|
|
|
|
|
buffer.push(highByte(PID_ADVANCED.pidSumLimit));
|
|
|
|
|
|
|
|
|
|
buffer.push(0); //BF: currentProfile->pidProfile.itermThrottleGain
|
|
|
|
|
|
|
|
|
@ -2788,19 +2757,11 @@ var mspHelper = (function (gui) {
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
self.loadSensorConfig = function (callback) {
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.5.0")) {
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_SENSOR_CONFIG, false, false, callback);
|
|
|
|
|
} else {
|
|
|
|
|
callback();
|
|
|
|
|
}
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_SENSOR_CONFIG, false, false, callback);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
self.loadSensorStatus = function (callback) {
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.5.0")) {
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_SENSOR_STATUS, false, false, callback);
|
|
|
|
|
} else {
|
|
|
|
|
callback();
|
|
|
|
|
}
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_SENSOR_STATUS, false, false, callback);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
self.loadRcDeadband = function (callback) {
|
|
|
|
@ -2900,43 +2861,23 @@ var mspHelper = (function (gui) {
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
self.saveSensorConfig = function (callback) {
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.5.0")) {
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_SET_SENSOR_CONFIG, mspHelper.crunch(MSPCodes.MSP_SET_SENSOR_CONFIG), false, callback);
|
|
|
|
|
} else {
|
|
|
|
|
callback();
|
|
|
|
|
}
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_SET_SENSOR_CONFIG, mspHelper.crunch(MSPCodes.MSP_SET_SENSOR_CONFIG), false, callback);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
self.loadNavPosholdConfig = function (callback) {
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.6.0")) {
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_NAV_POSHOLD, false, false, callback);
|
|
|
|
|
} else {
|
|
|
|
|
callback();
|
|
|
|
|
}
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_NAV_POSHOLD, false, false, callback);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
self.saveNavPosholdConfig = function (callback) {
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.6.0")) {
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_SET_NAV_POSHOLD, mspHelper.crunch(MSPCodes.MSP_SET_NAV_POSHOLD), false, callback);
|
|
|
|
|
} else {
|
|
|
|
|
callback();
|
|
|
|
|
}
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_SET_NAV_POSHOLD, mspHelper.crunch(MSPCodes.MSP_SET_NAV_POSHOLD), false, callback);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
self.loadPositionEstimationConfig = function (callback) {
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.6.0")) {
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_POSITION_ESTIMATION_CONFIG, false, false, callback);
|
|
|
|
|
} else {
|
|
|
|
|
callback();
|
|
|
|
|
}
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_POSITION_ESTIMATION_CONFIG, false, false, callback);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
self.savePositionEstimationConfig = function (callback) {
|
|
|
|
|
if (semver.gte(CONFIG.flightControllerVersion, "1.6.0")) {
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_SET_POSITION_ESTIMATION_CONFIG, mspHelper.crunch(MSPCodes.MSP_SET_POSITION_ESTIMATION_CONFIG), false, callback);
|
|
|
|
|
} else {
|
|
|
|
|
callback();
|
|
|
|
|
}
|
|
|
|
|
MSP.send_message(MSPCodes.MSP_SET_POSITION_ESTIMATION_CONFIG, mspHelper.crunch(MSPCodes.MSP_SET_POSITION_ESTIMATION_CONFIG), false, callback);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
self.loadCalibrationData = function (callback) {
|
|
|
|
|