From dea7f2b26cc78a62ce4a2dc4345178a27e8313f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gu=C3=B0ni=20M=C3=A1r=20Gilbert?= Date: Sat, 15 Apr 2023 12:14:53 +0000 Subject: [PATCH] Resolve PR review Initialise EEPROM_CHECK_MODE always But if farm mode is detected, update the Check mode to Strict Initialise EEPROM_NOZZLE_DIAMETER on farm mode. When opening the menus this value is set automatically to _Diameter_400 anyway so this should be fine. No change in memory on Multilang build --- Firmware/util.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Firmware/util.cpp b/Firmware/util.cpp index 464f90f40..466c8e19b 100644 --- a/Firmware/util.cpp +++ b/Firmware/util.cpp @@ -247,10 +247,14 @@ ClCheckVersion oCheckVersion; ClCheckGcode oCheckGcode; void fCheckModeInit() { - oCheckMode = (ClCheckMode)eeprom_init_default_byte((uint8_t *)EEPROM_CHECK_MODE, farm_mode ? (uint8_t) ClCheckMode::_Strict : (uint8_t)ClCheckMode::_Warn); + oCheckMode = (ClCheckMode)eeprom_init_default_byte((uint8_t *)EEPROM_CHECK_MODE, (uint8_t)ClCheckMode::_Warn); - // Note, farm mode leaves EEPROM_NOZZLE_DIAMETER setting uninitalised - oNozzleDiameter = (ClNozzleDiameter)eeprom_init_default_byte((uint8_t *)EEPROM_NOZZLE_DIAMETER, farm_mode ? (uint8_t)ClNozzleDiameter::_Diameter_Undef : (uint8_t)ClNozzleDiameter::_Diameter_400); + if (farm_mode) { + oCheckMode = ClCheckMode::_Strict; + eeprom_update_byte((uint8_t *)EEPROM_CHECK_MODE, (uint8_t)ClCheckMode::_Strict); + } + + oNozzleDiameter = (ClNozzleDiameter)eeprom_init_default_byte((uint8_t *)EEPROM_NOZZLE_DIAMETER, (uint8_t)ClNozzleDiameter::_Diameter_400); eeprom_init_default_word((uint16_t *)EEPROM_NOZZLE_DIAMETER_uM, EEPROM_NOZZLE_DIAMETER_uM_DEFAULT); oCheckModel = (ClCheckModel)eeprom_init_default_byte((uint8_t *)EEPROM_CHECK_MODEL, (uint8_t)ClCheckModel::_Warn);