Option to Auto-Initialize EEPROM (#13935)

This commit is contained in:
InsanityAutomation
2019-05-07 17:30:31 -04:00
committed by Scott Lahteine
parent a504366138
commit 5dcb25664f
98 changed files with 1450 additions and 1059 deletions

View File

@ -955,7 +955,15 @@ void setup() {
// Load data from EEPROM if available (or use defaults)
// This also updates variables in the planner, elsewhere
(void)settings.load();
#if ENABLED(EEPROM_AUTO_INIT)
if (!settings.load()) {
(void)settings.reset();
(void)settings.save();
SERIAL_ECHO_MSG("EEPROM Initialized");
}
#else
(void)settings.load();
#endif
#if HAS_M206_COMMAND
// Initialize current position based on home_offset

View File

@ -401,9 +401,8 @@ void MarlinSettings::postprocess() {
report_current_position();
}
#if ENABLED(PRINTCOUNTER) && ENABLED(EEPROM_SETTINGS)
#if BOTH(PRINTCOUNTER, EEPROM_SETTINGS)
#include "printcounter.h"
static_assert(
!WITHIN(STATS_EEPROM_ADDRESS, EEPROM_OFFSET, EEPROM_OFFSET + sizeof(SettingsData)) &&
!WITHIN(STATS_EEPROM_ADDRESS + sizeof(printStatistics), EEPROM_OFFSET, EEPROM_OFFSET + sizeof(SettingsData)),