1
0
Fork 0
mirror of https://github.com/iNavFlight/inav.git synced 2025-07-24 00:35:34 +03:00

Add g force OSD alarm settings to MSP (#4722)

This commit is contained in:
Michel Pastor 2019-05-20 01:37:11 +02:00 committed by GitHub
parent 5b4fd73565
commit 5f95df5124
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 4 deletions

View file

@ -1031,7 +1031,6 @@ static bool mspFcProcessOutCommand(uint16_t cmdMSP, sbuf_t *dst, mspPostProcessF
sbufWriteU16(dst, osdConfig()->alt_alarm);
sbufWriteU16(dst, osdConfig()->dist_alarm);
sbufWriteU16(dst, osdConfig()->neg_alt_alarm);
sbufWriteU8(dst, osdConfig()->current_alarm);
for (int i = 0; i < OSD_ITEM_COUNT; i++) {
sbufWriteU16(dst, osdConfig()->item_pos[0][i]);
}
@ -1396,6 +1395,9 @@ static bool mspFcProcessOutCommand(uint16_t cmdMSP, sbuf_t *dst, mspPostProcessF
sbufWriteU16(dst, osdConfig()->alt_alarm);
sbufWriteU16(dst, osdConfig()->dist_alarm);
sbufWriteU16(dst, osdConfig()->neg_alt_alarm);
sbufWriteU16(dst, osdConfig()->gforce_alarm * 1000);
sbufWriteU16(dst, (int16_t)(osdConfig()->gforce_axis_alarm_min * 1000));
sbufWriteU16(dst, (int16_t)(osdConfig()->gforce_axis_alarm_max * 1000));
sbufWriteU8(dst, osdConfig()->current_alarm);
sbufWriteU16(dst, osdConfig()->imu_temp_alarm_min);
sbufWriteU16(dst, osdConfig()->imu_temp_alarm_max);
@ -2262,7 +2264,6 @@ static mspResult_e mspFcProcessInCommand(uint16_t cmdMSP, sbuf_t *src)
// Won't be read if they weren't provided
sbufReadU16Safe(&osdConfigMutable()->dist_alarm, src);
sbufReadU16Safe(&osdConfigMutable()->neg_alt_alarm, src);
sbufReadU8Safe(&osdConfigMutable()->current_alarm, src);
} else
return MSP_RESULT_ERROR;
} else {
@ -2713,12 +2714,18 @@ static mspResult_e mspFcProcessInCommand(uint16_t cmdMSP, sbuf_t *src)
case MSP2_INAV_OSD_SET_ALARMS:
{
if (dataSize >= 17) {
if (dataSize == 24) {
osdConfigMutable()->rssi_alarm = sbufReadU8(src);
osdConfigMutable()->time_alarm = sbufReadU16(src);
osdConfigMutable()->alt_alarm = sbufReadU16(src);
osdConfigMutable()->dist_alarm = sbufReadU16(src);
osdConfigMutable()->neg_alt_alarm = sbufReadU16(src);
tmp_u16 = sbufReadU16(src);
osdConfigMutable()->gforce_alarm = tmp_u16 / 1000.0f;
tmp_u16 = sbufReadU16(src);
osdConfigMutable()->gforce_axis_alarm_min = (int16_t)tmp_u16 / 1000.0f;
tmp_u16 = sbufReadU16(src);
osdConfigMutable()->gforce_axis_alarm_max = (int16_t)tmp_u16 / 1000.0f;
osdConfigMutable()->current_alarm = sbufReadU8(src);
osdConfigMutable()->imu_temp_alarm_min = sbufReadU16(src);
osdConfigMutable()->imu_temp_alarm_max = sbufReadU16(src);

View file

@ -1661,7 +1661,7 @@ groups:
max: 255
- name: osd_gforce_alarm
field: gforce_alarm
min: -20
min: 0
max: 20
- name: osd_gforce_axis_alarm_min
field: gforce_axis_alarm_min