Add MSPHelper.getRTC() and MSPHelper.setRTC()

Functions for getting and setting the RTC. Not used for now, but
can be manually called from the debug console for testing RTC
related changes.
pull/299/head
Alberto García Hierro 7 years ago
parent 55516a608e
commit 89831dd1d7

@ -122,6 +122,9 @@ var MSPCodes = {
MSP_SERVO_MIX_RULES: 241,
MSP_SET_SERVO_MIX_RULE: 242,
MSP_RTC: 246,
MSP_SET_RTC: 247,
MSP_EEPROM_WRITE: 250,
MSP_DEBUGMSG: 253,

@ -412,6 +412,16 @@ var mspHelper = (function (gui) {
case MSPCodes.MSP_SET_SERVO_CONFIGURATION:
console.log('Servo Configuration saved');
break;
case MSPCodes.MSP_RTC:
if (data.length >= 6) {
var seconds = data.getInt32(0, true);
var millis = data.getUint16(4, true);
console.log("RTC received: " + new Date(seconds * 1000 + millis));
}
break;
case MSPCodes.MSP_SET_RTC:
console.log('RTC set');
break;
case MSPCodes.MSP_EEPROM_WRITE:
console.log('Settings Saved in EEPROM');
break;
@ -2368,5 +2378,33 @@ var mspHelper = (function (gui) {
});
};
self.getRTC = function(callback) {
if (semver.gt(CONFIG.flightControllerVersion, "1.7.3")) {
MSP.send_message(MSPCodes.MSP_RTC, false, false, function(resp) {
var seconds = resp.data.read32();
var millis = resp.data.readU16();
if (callback) {
callback(seconds, millis);
}
});
} else if (callback) {
callback(0, 0);
}
};
self.setRTC = function(callback) {
if (semver.gt(CONFIG.flightControllerVersion, "1.7.3")) {
var now = Date.now();
var secs = now / 1000;
var millis = now % 1000;
var data = [];
data.push32(secs);
data.push16(millis);
MSP.send_message(MSPCodes.MSP_SET_RTC, data, false, callback);
} else if (callback) {
callback();
}
};
return self;
})(GUI);

Loading…
Cancel
Save