Merge pull request #6363 from mikeller/add_rc_smoothing_msp

Added RC smoothing parameters to MSP.
This commit is contained in:
Michael Keller 2018-07-18 00:35:30 +12:00 committed by GitHub
commit 3fc6906fa3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 33 additions and 2 deletions

View File

@ -1112,8 +1112,22 @@ static bool mspProcessOutCommand(uint8_t cmdMSP, sbuf_t *dst)
sbufWriteU8(dst, 0); sbufWriteU8(dst, 0);
#endif #endif
sbufWriteU8(dst, rxConfig()->fpvCamAngleDegrees); sbufWriteU8(dst, rxConfig()->fpvCamAngleDegrees);
break; sbufWriteU8(dst, rxConfig()->rcInterpolationChannels);
#if defined(USE_RC_SMOOTHING_FILTER)
sbufWriteU8(dst, rxConfig()->rc_smoothing_type);
sbufWriteU8(dst, rxConfig()->rc_smoothing_input_cutoff);
sbufWriteU8(dst, rxConfig()->rc_smoothing_derivative_cutoff);
sbufWriteU8(dst, rxConfig()->rc_smoothing_input_type);
sbufWriteU8(dst, rxConfig()->rc_smoothing_derivative_type);
#else
sbufWriteU8(dst, 0);
sbufWriteU8(dst, 0);
sbufWriteU8(dst, 0);
sbufWriteU8(dst, 0);
sbufWriteU8(dst, 0);
#endif
break;
case MSP_FAILSAFE_CONFIG: case MSP_FAILSAFE_CONFIG:
sbufWriteU8(dst, failsafeConfig()->failsafe_delay); sbufWriteU8(dst, failsafeConfig()->failsafe_delay);
sbufWriteU8(dst, failsafeConfig()->failsafe_off_delay); sbufWriteU8(dst, failsafeConfig()->failsafe_off_delay);
@ -2026,8 +2040,25 @@ static mspResult_e mspProcessInCommand(uint8_t cmdMSP, sbuf_t *src)
if (sbufBytesRemaining(src) >= 1) { if (sbufBytesRemaining(src) >= 1) {
rxConfigMutable()->fpvCamAngleDegrees = sbufReadU8(src); rxConfigMutable()->fpvCamAngleDegrees = sbufReadU8(src);
} }
break; if (sbufBytesRemaining(src) >= 6) {
// Added in MSP API 1.40
rxConfigMutable()->rcInterpolationChannels = sbufReadU8(src);
#if defined(USE_RC_SMOOTHING_FILTER)
rxConfigMutable()->rc_smoothing_type = sbufReadU8(src);
rxConfigMutable()->rc_smoothing_input_cutoff = sbufReadU8(src);
rxConfigMutable()->rc_smoothing_derivative_cutoff = sbufReadU8(src);
rxConfigMutable()->rc_smoothing_input_type = sbufReadU8(src);
rxConfigMutable()->rc_smoothing_derivative_type = sbufReadU8(src);
#else
sbufReadU8(src);
sbufReadU8(src);
sbufReadU8(src);
sbufReadU8(src);
sbufReadU8(src);
#endif
}
break;
case MSP_SET_FAILSAFE_CONFIG: case MSP_SET_FAILSAFE_CONFIG:
failsafeConfigMutable()->failsafe_delay = sbufReadU8(src); failsafeConfigMutable()->failsafe_delay = sbufReadU8(src);
failsafeConfigMutable()->failsafe_off_delay = sbufReadU8(src); failsafeConfigMutable()->failsafe_off_delay = sbufReadU8(src);