mirror of
https://github.com/betaflight/betaflight-configurator.git
synced 2025-07-19 14:25:14 +03:00
Add tuning slider analytics
This commit is contained in:
parent
8b7f0353e5
commit
d2fe165bce
2 changed files with 27 additions and 4 deletions
|
@ -11,6 +11,7 @@ TABS.pid_tuning = {
|
|||
SETPOINT_WEIGHT_RANGE_HIGH: 20,
|
||||
SETPOINT_WEIGHT_RANGE_LEGACY: 2.54,
|
||||
activeSubtab: 'pid',
|
||||
analyticsChanges: {},
|
||||
};
|
||||
|
||||
TABS.pid_tuning.initialize = function (callback) {
|
||||
|
@ -1434,6 +1435,8 @@ TABS.pid_tuning.initialize = function (callback) {
|
|||
// filter and tuning sliders
|
||||
TuningSliders.initialize();
|
||||
|
||||
self.analyticsChanges = {};
|
||||
|
||||
// UNSCALED non expert slider constrain values
|
||||
const NON_EXPERT_SLIDER_MAX = 1.25;
|
||||
const NON_EXPERT_SLIDER_MIN = 0.7;
|
||||
|
@ -1490,6 +1493,7 @@ TABS.pid_tuning.initialize = function (callback) {
|
|||
TuningSliders.ResponseSliderValue = scaledValue;
|
||||
}
|
||||
TuningSliders.calculateNewPids();
|
||||
self.analyticsChanges['PidTuningSliders'] = "On";
|
||||
});
|
||||
$('#tuningMasterSlider, #tuningPDRatioSlider, #tuningPDGainSlider, #tuningResponseSlider').mousedown(function() {
|
||||
// adjust step for more smoothness above 1x on mousedown
|
||||
|
@ -1531,6 +1535,7 @@ TABS.pid_tuning.initialize = function (callback) {
|
|||
if ($('input[id="useIntegratedYaw"]').is(':checked')) {
|
||||
$('input[id="useIntegratedYaw"]').prop('checked', true).click();
|
||||
}
|
||||
self.analyticsChanges['PidTuningSliders'] = "On";
|
||||
});
|
||||
|
||||
// filter slider inputs
|
||||
|
@ -1547,9 +1552,11 @@ TABS.pid_tuning.initialize = function (callback) {
|
|||
if (slider.is('#tuningGyroFilterSlider')) {
|
||||
TuningSliders.gyroFilterSliderValue = scaledValue;
|
||||
TuningSliders.calculateNewGyroFilters();
|
||||
self.analyticsChanges['GyroFilterTuningSlider'] = "On";
|
||||
} else if (slider.is('#tuningDTermFilterSlider')) {
|
||||
TuningSliders.dtermFilterSliderValue = scaledValue;
|
||||
TuningSliders.calculateNewDTermFilters();
|
||||
self.analyticsChanges['DTermFilterTuningSlider'] = "On";
|
||||
}
|
||||
});
|
||||
$('#tuningGyroFilterSlider, #tuningDTermFilterSlider').mouseup(function() {
|
||||
|
@ -1576,21 +1583,34 @@ TABS.pid_tuning.initialize = function (callback) {
|
|||
$('input[id="gyroLowpassEnabled"]').prop('checked', true).click();
|
||||
$('input[id="gyroLowpass2Enabled"]').prop('checked', false).click();
|
||||
TuningSliders.resetGyroFilterSlider();
|
||||
self.analyticsChanges['GyroFilterTuningSlider'] = "On";
|
||||
}
|
||||
if (TuningSliders.filterDTermSliderUnavailable) {
|
||||
$('input[id="dtermLowpassDynEnabled"]').prop('checked', false).click();
|
||||
$('input[id="dtermLowpassEnabled"]').prop('checked', true).click();
|
||||
$('input[id="dtermLowpass2Enabled"]').prop('checked', false).click();
|
||||
TuningSliders.resetDTermFilterSlider();
|
||||
self.analyticsChanges['DTermFilterTuningSlider'] = "On";
|
||||
}
|
||||
});
|
||||
|
||||
// update on pid table inputs
|
||||
$('#pid_main input').on('input', () => TuningSliders.updatePidSlidersDisplay());
|
||||
$('#pid_main input').on('input', function() {
|
||||
TuningSliders.updatePidSlidersDisplay();
|
||||
self.analyticsChanges['PidTuningSliders'] = "Off";
|
||||
});
|
||||
// update on filter value or type changes
|
||||
$('.pid_filter input, .pid_filter select').on('input', () => TuningSliders.updateFilterSlidersDisplay());
|
||||
$('.pid_filter input, .pid_filter select').on('input', function() {
|
||||
TuningSliders.updateFilterSlidersDisplay();
|
||||
if (TuningSliders.filterGyroSliderUnavailable) {
|
||||
self.analyticsChanges['GyroFilterTuningSlider'] = "Off";
|
||||
}
|
||||
if (TuningSliders.filterDTermSliderUnavailable) {
|
||||
self.analyticsChanges['DTermFilterTuningSlider'] = "Off";
|
||||
}
|
||||
});
|
||||
// update on filter switch changes
|
||||
$('.inputSwitch input').change(() => TuningSliders.updateFilterSlidersDisplay());
|
||||
$('.inputSwitch input').change(() => $('.pid_filter input').trigger('input'));
|
||||
|
||||
$('.tuningHelp').hide();
|
||||
} else {
|
||||
|
@ -1645,6 +1665,9 @@ TABS.pid_tuning.initialize = function (callback) {
|
|||
|
||||
GUI.log(i18n.getMessage('pidTuningEepromSaved'));
|
||||
});
|
||||
|
||||
analytics.sendChangeEvents(analytics.EVENT_CATEGORIES.FLIGHT_CONTROLLER, self.analyticsChanges);
|
||||
self.analyticsChanges = {};
|
||||
});
|
||||
|
||||
// Setup model for rates preview
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue