Mercurial > public > ostc4
comparison Discovery/Src/settings.c @ 765:da8126d5ea9f
After a firmware update, use the factory settings for button sensitivity if these exist, the default settings otherwise.
The factory settings for the buttons can be updated in the System menu / Reset menu / Maintenance / 'Store button factory defaults'.
author | heinrichsweikamp |
---|---|
date | Wed, 12 Apr 2023 09:24:44 +0200 |
parents | 32529dfea3b0 |
children | dfdfea8897f3 |
comparison
equal
deleted
inserted
replaced
764:c47fe41b2378 | 765:da8126d5ea9f |
---|---|
25 /// You should have received a copy of the GNU General Public License | 25 /// You should have received a copy of the GNU General Public License |
26 /// along with this program. If not, see <http://www.gnu.org/licenses/>. | 26 /// along with this program. If not, see <http://www.gnu.org/licenses/>. |
27 ////////////////////////////////////////////////////////////////////////////// | 27 ////////////////////////////////////////////////////////////////////////////// |
28 | 28 |
29 #include <string.h> | 29 #include <string.h> |
30 #include <stdbool.h> | |
31 | |
30 #include "settings.h" | 32 #include "settings.h" |
31 #include "firmwareEraseProgram.h" // for HARDWAREDATA_ADDRESS | 33 #include "firmwareEraseProgram.h" // for HARDWAREDATA_ADDRESS |
32 #include "externLogbookFlash.h" // for SAMPLESTART and SAMPLESTOP | 34 #include "externLogbookFlash.h" // for SAMPLESTART and SAMPLESTOP |
33 #include "text_multilanguage.h" // for LANGUAGE_END | 35 #include "text_multilanguage.h" // for LANGUAGE_END |
34 #include "tHome.h" // for CVIEW_END | 36 #include "tHome.h" // for CVIEW_END |
557 | 559 |
558 return 0; | 560 return 0; |
559 } | 561 } |
560 | 562 |
561 | 563 |
562 void set_settings_button_to_standard_with_individual_buttonBalance(void) | 564 void set_settings_button_to_factory_with_individual_buttonBalance(void) |
563 { | 565 { |
564 settingsHelperButtonSens_keepPercentageValues(SettingsStandard.ButtonResponsiveness[3], settingsGetPointer()->ButtonResponsiveness); | 566 bool factoryBalanceSettingsValid = true; |
567 unsigned i = 0; | |
568 while (factoryBalanceSettingsValid && i < 3) { | |
569 if (Settings.FactoryButtonBalance[i] < 2 || Settings.FactoryButtonBalance[i] > 5) { | |
570 factoryBalanceSettingsValid = false; | |
571 } | |
572 | |
573 i++; | |
574 } | |
575 if (factoryBalanceSettingsValid) { | |
576 for (i = 0; i < 3; i++) { | |
577 Settings.buttonBalance[i] = Settings.FactoryButtonBalance[i]; | |
578 } | |
579 } | |
580 | |
581 uint8_t buttonResponsiveness = Settings.FactoryButtonBase; | |
582 if (buttonResponsiveness < 70 || buttonResponsiveness > 110) { | |
583 buttonResponsiveness = SettingsStandard.ButtonResponsiveness[3]; | |
584 } | |
585 | |
586 settingsHelperButtonSens_keepPercentageValues(buttonResponsiveness, settingsGetPointer()->ButtonResponsiveness); | |
565 } | 587 } |
566 | 588 |
567 | 589 |
568 uint8_t check_and_correct_settings(void) | 590 uint8_t check_and_correct_settings(void) |
569 { | 591 { |