mirror of
https://github.com/betaflight/betaflight-configurator.git
synced 2025-07-22 07:45:19 +03:00
Revise filter sliders
This commit is contained in:
parent
1dbe298abd
commit
2e0334c114
2 changed files with 32 additions and 17 deletions
|
@ -500,6 +500,7 @@ TABS.pid_tuning.initialize = function (callback) {
|
||||||
$('.pid_tuning .YAW input[name="d"]').attr("max", "200");
|
$('.pid_tuning .YAW input[name="d"]').attr("max", "200");
|
||||||
$('.pid_tuning .YAW input[name="dMinPitch"]').attr("max", "1000");
|
$('.pid_tuning .YAW input[name="dMinPitch"]').attr("max", "1000");
|
||||||
$('#sliderDTermFilterMultiplier').attr({ "min": "0.5", "max": "1.5", "step": "0.025" });
|
$('#sliderDTermFilterMultiplier').attr({ "min": "0.5", "max": "1.5", "step": "0.025" });
|
||||||
|
$('#sliderGyroFilterMultipier').attr({ "min": "0.5", "max": "1.5", "step": "0.025" });
|
||||||
}
|
}
|
||||||
|
|
||||||
// Feedforward
|
// Feedforward
|
||||||
|
@ -2146,14 +2147,7 @@ TABS.pid_tuning.initialize = function (callback) {
|
||||||
allFilterTuningSliders.on('input mouseup', function() {
|
allFilterTuningSliders.on('input mouseup', function() {
|
||||||
const slider = $(this);
|
const slider = $(this);
|
||||||
|
|
||||||
if (semver.gte(FC.CONFIG.apiVersion, API_VERSION_1_44)) {
|
if (semver.lt(FC.CONFIG.apiVersion, API_VERSION_1_44)) {
|
||||||
if (slider.is('#sliderGyroFilterMultiplier')) {
|
|
||||||
slider.attr('step', SLIDER_STEP_UPPER * 2);
|
|
||||||
} else {
|
|
||||||
slider.attr('step', SLIDER_STEP_UPPER);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
// adjust step for more smoothness above 1x
|
|
||||||
if (slider.val() >= 1) {
|
if (slider.val() >= 1) {
|
||||||
slider.attr('step', SLIDER_STEP_LOWER);
|
slider.attr('step', SLIDER_STEP_LOWER);
|
||||||
} else {
|
} else {
|
||||||
|
@ -2161,20 +2155,41 @@ TABS.pid_tuning.initialize = function (callback) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (!TuningSliders.expertMode) {
|
if (!TuningSliders.expertMode) {
|
||||||
if (slider.val() > NON_EXPERT_SLIDER_MAX) {
|
if (semver.gte(FC.CONFIG.apiVersion, API_VERSION_1_44)) {
|
||||||
slider.val(NON_EXPERT_SLIDER_MAX);
|
const NON_EXPERT_SLIDER_MIN_GYRO = 0.4;
|
||||||
} else if (slider.val() < NON_EXPERT_SLIDER_MIN) {
|
const NON_EXPERT_SLIDER_MAX_GYRO = 1.5;
|
||||||
slider.val(NON_EXPERT_SLIDER_MIN);
|
const NON_EXPERT_SLIDER_MIN_DTERM = 0.8;
|
||||||
|
const NON_EXPERT_SLIDER_MAX_DTERM = 1.2;
|
||||||
|
|
||||||
|
if (slider.is('#sliderGyroFilterMultiplier')) {
|
||||||
|
if (slider.val() > NON_EXPERT_SLIDER_MAX_GYRO) {
|
||||||
|
slider.val(NON_EXPERT_SLIDER_MAX_GYRO);
|
||||||
|
} else if (slider.val() < NON_EXPERT_SLIDER_MIN_GYRO) {
|
||||||
|
slider.val(NON_EXPERT_SLIDER_MIN_GYRO);
|
||||||
|
}
|
||||||
|
} else if (slider.is('#sliderDTermFilterMultiplier')) {
|
||||||
|
if (slider.val() > NON_EXPERT_SLIDER_MAX_DTERM) {
|
||||||
|
slider.val(NON_EXPERT_SLIDER_MAX_DTERM);
|
||||||
|
} else if (slider.val() < NON_EXPERT_SLIDER_MIN_DTERM) {
|
||||||
|
slider.val(NON_EXPERT_SLIDER_MIN_DTERM);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (slider.val() > NON_EXPERT_SLIDER_MAX) {
|
||||||
|
slider.val(NON_EXPERT_SLIDER_MAX);
|
||||||
|
} else if (slider.val() < NON_EXPERT_SLIDER_MIN) {
|
||||||
|
slider.val(NON_EXPERT_SLIDER_MIN);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const sliderValue = isInt(slider.val()) ? parseInt(slider.val()) : parseFloat(slider.val());
|
const sliderValue = isInt(slider.val()) ? parseInt(slider.val()) : parseFloat(slider.val());
|
||||||
const scaledValue = TuningSliders.scaleSliderValue(sliderValue);
|
const newValue = semver.gte(FC.CONFIG.apiVersion, API_VERSION_1_44) ? sliderValue : TuningSliders.scaleSliderValue(sliderValue);
|
||||||
if (slider.is('#sliderGyroFilterMultiplier')) {
|
if (slider.is('#sliderGyroFilterMultiplier')) {
|
||||||
TuningSliders.sliderGyroFilterMultiplier = scaledValue;
|
TuningSliders.sliderGyroFilterMultiplier = newValue;
|
||||||
TuningSliders.calculateNewGyroFilters();
|
TuningSliders.calculateNewGyroFilters();
|
||||||
self.analyticsChanges['GyroFilterTuningSlider'] = "On";
|
self.analyticsChanges['GyroFilterTuningSlider'] = "On";
|
||||||
} else if (slider.is('#sliderDTermFilterMultiplier')) {
|
} else if (slider.is('#sliderDTermFilterMultiplier')) {
|
||||||
TuningSliders.sliderDTermFilterMultiplier = sliderValue;
|
TuningSliders.sliderDTermFilterMultiplier = newValue;
|
||||||
TuningSliders.calculateNewDTermFilters();
|
TuningSliders.calculateNewDTermFilters();
|
||||||
self.analyticsChanges['DTermFilterTuningSlider'] = "On";
|
self.analyticsChanges['DTermFilterTuningSlider'] = "On";
|
||||||
}
|
}
|
||||||
|
|
|
@ -1145,7 +1145,7 @@
|
||||||
<output type="number" name="sliderGyroFilterMultiplier-number"></output>
|
<output type="number" name="sliderGyroFilterMultiplier-number"></output>
|
||||||
</td>
|
</td>
|
||||||
<td colspan="3">
|
<td colspan="3">
|
||||||
<input type="range" min="0.5" max="1.5" step="0.025" class="tuningSlider" id="sliderGyroFilterMultiplier" />
|
<input type="range" min="0.0" max="2.0" step="0.05" class="tuningSlider" id="sliderGyroFilterMultiplier" />
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="helpicon cf_tip" i18n_title="pidTuningGyroFilterSliderHelp"></div>
|
<div class="helpicon cf_tip" i18n_title="pidTuningGyroFilterSliderHelp"></div>
|
||||||
|
@ -1164,7 +1164,7 @@
|
||||||
<output type="number" name="sliderDTermFilterMultiplier-number"></output>
|
<output type="number" name="sliderDTermFilterMultiplier-number"></output>
|
||||||
</td>
|
</td>
|
||||||
<td colspan="3">
|
<td colspan="3">
|
||||||
<input type="range" min="0.8" max="1.2" step="0.05" class="tuningSlider" id="sliderDTermFilterMultiplier" />
|
<input type="range" min="0.0" max="2.0" step="0.05" class="tuningSlider" id="sliderDTermFilterMultiplier" />
|
||||||
</td>
|
</td>
|
||||||
<td>
|
<td>
|
||||||
<div class="helpicon cf_tip" i18n_title="pidTuningDTermFilterSliderHelp"></div>
|
<div class="helpicon cf_tip" i18n_title="pidTuningDTermFilterSliderHelp"></div>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue