You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
inav-configurator/js/periodicStatusUpdater.js

121 lines
3.6 KiB
JavaScript

'use strict';
var helper = helper || {};
helper.periodicStatusUpdater = (function () {
var publicScope = {},
privateScope = {};
/**
*
* @param {number=} baudSpeed
* @returns {number}
*/
publicScope.getUpdateInterval = function (baudSpeed) {
if (!baudSpeed) {
baudSpeed = 115200;
}
if (baudSpeed >= 115200) {
return 300;
} else if (baudSpeed >= 57600) {
return 600;
} else if (baudSpeed >= 38400) {
return 800;
} else {
return 1000;
}
};
privateScope.updateView = function () {
var active = ((Date.now() - MSP.analog_last_received_timestamp) < publicScope.getUpdateInterval(serial.bitrate) * 3);
if (FC.isModeEnabled('ARM'))
$(".armedicon").css({
'background-image': 'url("../images/icons/cf_icon_armed_active.svg")'
});
else
$(".armedicon").css({
'background-image': 'url("../images/icons/cf_icon_armed_grey.svg")'
});
if (FC.isModeEnabled('FAILSAFE'))
$(".failsafeicon").css({
'background-image': 'url("../images/icons/cf_icon_failsafe_active.svg")'
});
else
$(".failsafeicon").css({
'background-image': 'url("../images/icons/cf_icon_failsafe_grey.svg")'
});
if (ANALOG != undefined) {
var nbCells;
6 years ago
nbCells = ANALOG.cell_count;
var min = MISC.vbatmincellvoltage * nbCells;
var max = MISC.vbatmaxcellvoltage * nbCells;
var warn = MISC.vbatwarningcellvoltage * nbCells;
6 years ago
$(".battery-status").css({
width: ANALOG.battery_percentage + "%",
display: 'inline-block'
});
if (active) {
$(".linkicon").css({
8 years ago
'background-image': 'url("../images/icons/cf_icon_link_active.svg")'
});
} else {
$(".linkicon").css({
8 years ago
'background-image': 'url("../images/icons/cf_icon_link_grey.svg")'
});
}
6 years ago
if (((ANALOG.use_capacity_thresholds && ANALOG.battery_remaining_capacity <= MISC.battery_capacity_warning - MISC.battery_capacity_critical) || (!ANALOG.use_capacity_thresholds && ANALOG.voltage < warn)) || ANALOG.voltage < min) {
$(".battery-status").css('background-color', '#D42133');
} else {
$(".battery-status").css('background-color', '#59AA29');
}
$(".battery-legend").text(ANALOG.voltage + " V");
}
$('#quad-status_wrapper').show();
};
publicScope.run = function () {
if (!CONFIGURATOR.connectionValid) {
return;
}
$(".quad-status-contents").css({
display: 'inline-block'
});
if (GUI.active_tab != 'cli') {
if (helper.mspQueue.shouldDropStatus()) {
return;
}
6 years ago
MSP.send_message(MSPCodes.MSP_SENSOR_STATUS, false, false);
if (semver.gte(CONFIG.flightControllerVersion, "2.0.0")) {
MSP.send_message(MSPCodes.MSPV2_INAV_STATUS, false, false);
} else {
MSP.send_message(MSPCodes.MSP_STATUS_EX, false, false);
}
MSP.send_message(MSPCodes.MSP_ACTIVEBOXES, false, false);
6 years ago
MSP.send_message(MSPCodes.MSPV2_INAV_ANALOG, false, false);
privateScope.updateView();
}
};
return publicScope;
})();