diff --git a/src/main/fc/fc_msp.c b/src/main/fc/fc_msp.c index 457b8f9987..3b1fda2782 100644 --- a/src/main/fc/fc_msp.c +++ b/src/main/fc/fc_msp.c @@ -405,6 +405,12 @@ static bool mspCommonProcessOutCommand(uint8_t cmdMSP, sbuf_t *dst, mspPostProce sbufWriteU32(dst, featureMask()); break; +#ifdef BEEPER + case MSP_BEEPER_CONFIG: + sbufWriteU32(dst, getBeeperOffMask()); + break; +#endif + case MSP_BATTERY_STATE: { // battery characteristics sbufWriteU8(dst, (uint8_t)constrain(getBatteryCellCount(), 0, 255)); // 0 indicates battery not detected. @@ -1653,6 +1659,13 @@ static mspResult_e mspFcProcessInCommand(uint8_t cmdMSP, sbuf_t *src) featureSet(sbufReadU32(src)); // features bitmap break; +#ifdef BEEPER + case MSP_SET_BEEPER_CONFIG: + beeperOffClearAll(); + setBeeperOffMask(sbufReadU32(src)); + break; +#endif + case MSP_SET_BOARD_ALIGNMENT_CONFIG: boardAlignmentMutable()->rollDegrees = sbufReadU16(src); boardAlignmentMutable()->pitchDegrees = sbufReadU16(src); diff --git a/src/main/msp/msp_protocol.h b/src/main/msp/msp_protocol.h index ebaf1ab5bd..e5596553cb 100644 --- a/src/main/msp/msp_protocol.h +++ b/src/main/msp/msp_protocol.h @@ -214,6 +214,9 @@ #define MSP_CAMERA_CONTROL 98 +#define MSP_BEEPER_CONFIG 99 +#define MSP_SET_BEEPER_CONFIG 100 + // // OSD specific //