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

Merge pull request #1280 from McGiverGim/add_unknown_osd_warning

Add unknown OSD warnings
This commit is contained in:
Michael Keller 2019-01-24 01:44:58 +13:00 committed by GitHub
commit e7f6269871
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 18 additions and 4 deletions

View file

@ -3687,6 +3687,9 @@
"message": "Select the timer alarm threshold in minutes, when the time exceeds this value the OSD element will blink, setting this to 0 disables the alarm"
},
"osdWarningUnknown": {
"message": "Unknown warning (details to be added in a future release)"
},
"osdWarningArmingDisabled": {
"message": "Reports the most severe reason for not arming"
},

View file

@ -1342,7 +1342,7 @@ OSD.msp = {
result.push16(OSD.data.alarms.alt.value);
if (semver.gte(CONFIG.apiVersion, "1.37.0")) {
var warningFlags = 0;
for (var i = 0; i < OSD.constants.WARNINGS.length; i++) {
for (var i = 0; i < OSD.data.warnings.length; i++) {
if (OSD.data.warnings[i].enabled) {
warningFlags |= (1 << i);
}
@ -1485,14 +1485,25 @@ OSD.msp = {
}
// Parse enabled warnings
var warningCount = OSD.constants.WARNINGS.length;
var warningFlags = view.readU16();
if (semver.gte(CONFIG.apiVersion, "1.41.0")) {
var warningCount = view.readU8();
warningCount = view.readU8();
// the flags were replaced with a 32bit version
warningFlags = view.readU32();
}
for (var i = 0; i < OSD.constants.WARNINGS.length; i++) {
d.warnings.push($.extend(OSD.constants.WARNINGS[i], { enabled: (warningFlags & (1 << i)) != 0 }));
for (var i = 0; i < warningCount; i++) {
// Known warning field
if (i < OSD.constants.WARNINGS.length) {
d.warnings.push($.extend(OSD.constants.WARNINGS[i], { enabled: (warningFlags & (1 << i)) != 0 }));
// Push Unknown Warning field
} else {
var warningNumber = i - OSD.constants.WARNINGS.length + 1;
d.warnings.push({name: 'UNKNOWN_' + warningNumber, desc: 'osdWarningUnknown', enabled: (warningFlags & (1 << i)) != 0 });
}
}
}