diff --git a/src/main/msp/msp.c b/src/main/msp/msp.c index ee8cf2eb4..210557ca0 100644 --- a/src/main/msp/msp.c +++ b/src/main/msp/msp.c @@ -1007,7 +1007,12 @@ static bool mspProcessOutCommand(uint8_t cmdMSP, sbuf_t *dst) // added in 1.41 sbufWriteU8(dst, currentControlRateProfile->throttle_limit_type); sbufWriteU8(dst, currentControlRateProfile->throttle_limit_percent); - + + // added in 1.42 + sbufWriteU16(dst, currentControlRateProfile->rate_limit[FD_ROLL]); + sbufWriteU16(dst, currentControlRateProfile->rate_limit[FD_PITCH]); + sbufWriteU16(dst, currentControlRateProfile->rate_limit[FD_YAW]); + break; case MSP_PID: @@ -1854,6 +1859,13 @@ static mspResult_e mspProcessInCommand(uint8_t cmdMSP, sbuf_t *src) currentControlRateProfile->throttle_limit_percent = sbufReadU8(src); } + // version 1.42 + if (sbufBytesRemaining(src) >= 6) { + currentControlRateProfile->rate_limit[FD_ROLL] = sbufReadU16(src); + currentControlRateProfile->rate_limit[FD_PITCH] = sbufReadU16(src); + currentControlRateProfile->rate_limit[FD_YAW] = sbufReadU16(src); + } + initRcProcessing(); } else { return MSP_RESULT_ERROR;