From e85eef271ba5012bcf84e7a10a6685a3f0da27ee Mon Sep 17 00:00:00 2001 From: Marcel Peterkau Date: Mon, 11 Dec 2023 19:09:29 +0100 Subject: [PATCH] improved sanity-check of config-values --- Software/src/config.cpp | 61 +++++++++++++++++++++-------------------- 1 file changed, 32 insertions(+), 29 deletions(-) diff --git a/Software/src/config.cpp b/Software/src/config.cpp index 4facf96..dcc7d6b 100644 --- a/Software/src/config.cpp +++ b/Software/src/config.cpp @@ -295,41 +295,44 @@ uint32_t ConfigSanityCheck(bool autocorrect) LubeConfig.TankRemindAtPercentage = LubeConfig_defaults.TankRemindAtPercentage; } - if (!(LubeConfig.PulsePerRevolution > 0) || !(LubeConfig.PulsePerRevolution < 1000)) + if (LubeConfig.SpeedSource == SOURCE_IMPULSE) { - SET_BIT(setting_reset_bits, 5); - if (autocorrect) - LubeConfig.PulsePerRevolution = LubeConfig_defaults.PulsePerRevolution; - } + if (!(LubeConfig.PulsePerRevolution > 0) || !(LubeConfig.PulsePerRevolution < 1000)) + { + SET_BIT(setting_reset_bits, 5); + if (autocorrect) + LubeConfig.PulsePerRevolution = LubeConfig_defaults.PulsePerRevolution; + } - if (!(LubeConfig.TireWidth_mm > 0) || !(LubeConfig.TireWidth_mm < 500)) - { - SET_BIT(setting_reset_bits, 6); - if (autocorrect) - LubeConfig.TireWidth_mm = LubeConfig_defaults.TireWidth_mm; - } + if (!(LubeConfig.TireWidth_mm > 0) || !(LubeConfig.TireWidth_mm < 500)) + { + SET_BIT(setting_reset_bits, 6); + if (autocorrect) + LubeConfig.TireWidth_mm = LubeConfig_defaults.TireWidth_mm; + } - if (!(LubeConfig.TireWidthHeight_Ratio > 0) || !(LubeConfig.TireWidthHeight_Ratio < 150)) - { - SET_BIT(setting_reset_bits, 7); - if (autocorrect) - LubeConfig.TireWidthHeight_Ratio = LubeConfig_defaults.TireWidthHeight_Ratio; - } + if (!(LubeConfig.TireWidthHeight_Ratio > 0) || !(LubeConfig.TireWidthHeight_Ratio < 150)) + { + SET_BIT(setting_reset_bits, 7); + if (autocorrect) + LubeConfig.TireWidthHeight_Ratio = LubeConfig_defaults.TireWidthHeight_Ratio; + } - if (!(LubeConfig.RimDiameter_Inch > 0) || !(LubeConfig.RimDiameter_Inch < 30)) - { - SET_BIT(setting_reset_bits, 8); - if (autocorrect) - LubeConfig.RimDiameter_Inch = LubeConfig_defaults.RimDiameter_Inch; - } + if (!(LubeConfig.RimDiameter_Inch > 0) || !(LubeConfig.RimDiameter_Inch < 30)) + { + SET_BIT(setting_reset_bits, 8); + if (autocorrect) + LubeConfig.RimDiameter_Inch = LubeConfig_defaults.RimDiameter_Inch; + } - if (!(LubeConfig.DistancePerRevolution_mm > 0) || !(LubeConfig.DistancePerRevolution_mm < 10000)) - { - SET_BIT(setting_reset_bits, 9); - if (autocorrect) - LubeConfig.DistancePerRevolution_mm = LubeConfig_defaults.DistancePerRevolution_mm; + if (!(LubeConfig.DistancePerRevolution_mm > 0) || !(LubeConfig.DistancePerRevolution_mm < 10000)) + { + SET_BIT(setting_reset_bits, 9); + if (autocorrect) + LubeConfig.DistancePerRevolution_mm = LubeConfig_defaults.DistancePerRevolution_mm; + } } - + if (!(LubeConfig.BleedingPulses > 0) || !(LubeConfig.BleedingPulses < 1001)) { SET_BIT(setting_reset_bits, 10);