mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-24 00:35:39 +03:00
Fixed conditions for RC smoothing validation.
This commit is contained in:
parent
47b2620672
commit
fb83ea4b52
3 changed files with 13 additions and 6 deletions
|
@ -245,18 +245,15 @@ static void validateAndFixConfig(void)
|
||||||
rxConfigMutable()->rssi_src_frame_errors = false;
|
rxConfigMutable()->rssi_src_frame_errors = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((
|
if (rcSmoothingIsOff() || rxConfig()->rcInterpolationChannels == INTERPOLATION_CHANNELS_T) {
|
||||||
#if defined(USE_RC_SMOOTHING_FILTER)
|
|
||||||
rxConfig()->rc_smoothing_type == RC_SMOOTHING_TYPE_INTERPOLATION &&
|
|
||||||
#endif
|
|
||||||
rxConfig()->rcInterpolation == RC_SMOOTHING_OFF) || rxConfig()->rcInterpolationChannels == INTERPOLATION_CHANNELS_T) {
|
|
||||||
for (unsigned i = 0; i < MAX_PROFILE_COUNT; i++) {
|
for (unsigned i = 0; i < MAX_PROFILE_COUNT; i++) {
|
||||||
pidProfilesMutable(i)->dtermSetpointWeight = 0;
|
pidProfilesMutable(i)->dtermSetpointWeight = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(USE_THROTTLE_BOOST)
|
#if defined(USE_THROTTLE_BOOST)
|
||||||
if (!(rxConfig()->rcInterpolationChannels == INTERPOLATION_CHANNELS_RPYT
|
if (rcSmoothingIsOff() ||
|
||||||
|
!(rxConfig()->rcInterpolationChannels == INTERPOLATION_CHANNELS_RPYT
|
||||||
|| rxConfig()->rcInterpolationChannels == INTERPOLATION_CHANNELS_T
|
|| rxConfig()->rcInterpolationChannels == INTERPOLATION_CHANNELS_T
|
||||||
|| rxConfig()->rcInterpolationChannels == INTERPOLATION_CHANNELS_RPT)) {
|
|| rxConfig()->rcInterpolationChannels == INTERPOLATION_CHANNELS_RPT)) {
|
||||||
for (unsigned i = 0; i < MAX_PROFILE_COUNT; i++) {
|
for (unsigned i = 0; i < MAX_PROFILE_COUNT; i++) {
|
||||||
|
|
|
@ -732,6 +732,15 @@ void initRcProcessing(void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool rcSmoothingIsOff(void)
|
||||||
|
{
|
||||||
|
return (
|
||||||
|
#if defined(USE_RC_SMOOTHING_FILTER)
|
||||||
|
rxConfig()->rc_smoothing_type == RC_SMOOTHING_TYPE_INTERPOLATION &&
|
||||||
|
#endif
|
||||||
|
rxConfig()->rcInterpolation == RC_SMOOTHING_OFF);
|
||||||
|
}
|
||||||
|
|
||||||
#ifdef USE_RC_SMOOTHING_FILTER
|
#ifdef USE_RC_SMOOTHING_FILTER
|
||||||
int rcSmoothingGetValue(int whichValue)
|
int rcSmoothingGetValue(int whichValue)
|
||||||
{
|
{
|
||||||
|
|
|
@ -39,5 +39,6 @@ void updateRcCommands(void);
|
||||||
void resetYawAxis(void);
|
void resetYawAxis(void);
|
||||||
void initRcProcessing(void);
|
void initRcProcessing(void);
|
||||||
bool isMotorsReversed(void);
|
bool isMotorsReversed(void);
|
||||||
|
bool rcSmoothingIsOff(void);
|
||||||
int rcSmoothingGetValue(int whichValue);
|
int rcSmoothingGetValue(int whichValue);
|
||||||
bool rcSmoothingAutoCalculate(void);
|
bool rcSmoothingAutoCalculate(void);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue