mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-14 20:10:18 +03:00
Added application of simplified tuning on reset.
This commit is contained in:
parent
8702bba3ec
commit
6a6930e34f
3 changed files with 42 additions and 9 deletions
|
@ -3095,14 +3095,29 @@ static void cliVtxInfo(const char *cmdName, char *cmdline)
|
||||||
}
|
}
|
||||||
#endif // USE_VTX_TABLE
|
#endif // USE_VTX_TABLE
|
||||||
|
|
||||||
#ifdef USE_SIMPLIFIED_TUNING
|
#if defined(USE_SIMPLIFIED_TUNING)
|
||||||
static void cliApplySimplifiedTuning(const char *cmdName, char *cmdline)
|
static void applySimplifiedTuningAllProfiles(void)
|
||||||
{
|
{
|
||||||
UNUSED(cmdName);
|
for (unsigned pidProfileIndex = 0; pidProfileIndex < PID_PROFILE_COUNT; pidProfileIndex++) {
|
||||||
UNUSED(cmdline);
|
applySimplifiedTuning(pidProfilesMutable(pidProfileIndex));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
applySimplifiedTuning(currentPidProfile);
|
static void cliSimplifiedTuning(const char *cmdName, char *cmdline)
|
||||||
cliPrintLine("Applied tuning based on simplified tuning settings.");
|
{
|
||||||
|
if (strcasecmp(cmdline, "apply") == 0) {
|
||||||
|
applySimplifiedTuningAllProfiles();
|
||||||
|
|
||||||
|
cliPrintLine("Applied simplified tuning.");
|
||||||
|
} else if (strcasecmp(cmdline, "disable") == 0) {
|
||||||
|
for (unsigned pidProfileIndex = 0; pidProfileIndex < PID_PROFILE_COUNT; pidProfileIndex++) {
|
||||||
|
disableSimplifiedTuning(pidProfilesMutable(pidProfileIndex));
|
||||||
|
}
|
||||||
|
|
||||||
|
cliPrintLine("Disabled simplified tuning.");
|
||||||
|
} else {
|
||||||
|
cliShowParseError(cmdName);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -4260,6 +4275,10 @@ bool resetConfigToCustomDefaults(void)
|
||||||
|
|
||||||
cliProcessCustomDefaults(true);
|
cliProcessCustomDefaults(true);
|
||||||
|
|
||||||
|
#if defined(USE_SIMPLIFIED_TUNING)
|
||||||
|
applySimplifiedTuningAllProfiles();
|
||||||
|
#endif
|
||||||
|
|
||||||
return prepareSave();
|
return prepareSave();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4414,6 +4433,10 @@ static void cliDefaults(const char *cmdName, char *cmdline)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if defined(USE_SIMPLIFIED_TUNING)
|
||||||
|
applySimplifiedTuningAllProfiles();
|
||||||
|
#endif
|
||||||
|
|
||||||
if (parameterGroupId) {
|
if (parameterGroupId) {
|
||||||
restoreConfigs(parameterGroupId);
|
restoreConfigs(parameterGroupId);
|
||||||
}
|
}
|
||||||
|
@ -6444,9 +6467,6 @@ static void cliHelp(const char *cmdName, char *cmdline);
|
||||||
// should be sorted a..z for bsearch()
|
// should be sorted a..z for bsearch()
|
||||||
const clicmd_t cmdTable[] = {
|
const clicmd_t cmdTable[] = {
|
||||||
CLI_COMMAND_DEF("adjrange", "configure adjustment ranges", "<index> <unused> <range channel> <start> <end> <function> <select channel> [<center> <scale>]", cliAdjustmentRange),
|
CLI_COMMAND_DEF("adjrange", "configure adjustment ranges", "<index> <unused> <range channel> <start> <end> <function> <select channel> [<center> <scale>]", cliAdjustmentRange),
|
||||||
#ifdef USE_SIMPLIFIED_TUNING
|
|
||||||
CLI_COMMAND_DEF("apply_simplified_tuning", "applies tuning based on simplified tuning settings", NULL, cliApplySimplifiedTuning),
|
|
||||||
#endif
|
|
||||||
CLI_COMMAND_DEF("aux", "configure modes", "<index> <mode> <aux> <start> <end> <logic>", cliAux),
|
CLI_COMMAND_DEF("aux", "configure modes", "<index> <mode> <aux> <start> <end> <logic>", cliAux),
|
||||||
#ifdef USE_CLI_BATCH
|
#ifdef USE_CLI_BATCH
|
||||||
CLI_COMMAND_DEF("batch", "start or end a batch of commands", "start | end", cliBatch),
|
CLI_COMMAND_DEF("batch", "start or end a batch of commands", "start | end", cliBatch),
|
||||||
|
@ -6577,6 +6597,9 @@ const clicmd_t cmdTable[] = {
|
||||||
#if defined(USE_SIGNATURE)
|
#if defined(USE_SIGNATURE)
|
||||||
CLI_COMMAND_DEF("signature", "get / set the board type signature", "[signature]", cliSignature),
|
CLI_COMMAND_DEF("signature", "get / set the board type signature", "[signature]", cliSignature),
|
||||||
#endif
|
#endif
|
||||||
|
#if defined(USE_SIMPLIFIED_TUNING)
|
||||||
|
CLI_COMMAND_DEF("simplified_tuning", "applies or disables simplified tuning", "apply | disable", cliSimplifiedTuning),
|
||||||
|
#endif
|
||||||
#ifdef USE_SERVOS
|
#ifdef USE_SERVOS
|
||||||
CLI_COMMAND_DEF("smix", "servo mixer", "<rule> <servo> <source> <rate> <speed> <min> <max> <box>\r\n"
|
CLI_COMMAND_DEF("smix", "servo mixer", "<rule> <servo> <source> <rate> <speed> <min> <max> <box>\r\n"
|
||||||
"\treset\r\n"
|
"\treset\r\n"
|
||||||
|
|
|
@ -95,4 +95,13 @@ void applySimplifiedTuning(pidProfile_t *pidProfile)
|
||||||
calculateNewGyroFilterValues();
|
calculateNewGyroFilterValues();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void disableSimplifiedTuning(pidProfile_t *pidProfile)
|
||||||
|
{
|
||||||
|
pidProfile->simplified_pids_mode = PID_SIMPLIFIED_TUNING_OFF;
|
||||||
|
|
||||||
|
pidProfile->simplified_dterm_filter = false;
|
||||||
|
|
||||||
|
gyroConfigMutable()->simplified_gyro_filter = false;
|
||||||
|
}
|
||||||
#endif // USE_SIMPLIFIED_TUNING
|
#endif // USE_SIMPLIFIED_TUNING
|
||||||
|
|
|
@ -39,3 +39,4 @@ typedef enum {
|
||||||
} pidSimplifiedTuningMode_e;
|
} pidSimplifiedTuningMode_e;
|
||||||
|
|
||||||
void applySimplifiedTuning(pidProfile_t *pidProfile);
|
void applySimplifiedTuning(pidProfile_t *pidProfile);
|
||||||
|
void disableSimplifiedTuning(pidProfile_t *pidProfile);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue