From 740e922b87314e5f1af66719b989df62a68db3e7 Mon Sep 17 00:00:00 2001 From: PavelSindler Date: Mon, 24 Sep 2018 16:00:23 +0200 Subject: [PATCH] EEPROM M500 block size check for reading stored data added --- Firmware/ConfigurationStore.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/Firmware/ConfigurationStore.cpp b/Firmware/ConfigurationStore.cpp index 546c774ac..227b7afb0 100644 --- a/Firmware/ConfigurationStore.cpp +++ b/Firmware/ConfigurationStore.cpp @@ -354,8 +354,18 @@ bool Config_RetrieveSettings(uint16_t offset) // Call updatePID (similar to when we have processed M301) updatePID(); - SERIAL_ECHO_START; - SERIAL_ECHOLNPGM("Stored settings retrieved"); + + if (EEPROM_M500_SIZE + EEPROM_OFFSET == i) { + SERIAL_ECHO_START; + SERIAL_ECHOLNPGM("Stored settings retrieved"); + + } + else { //size of eeprom M500 section probably changed by mistake and data are not valid; default values will be used + puts_P(PSTR("Data read from EEPROM not valid.")); + Config_ResetDefault(); + previous_settings_retrieved = false; + } + } else {