Quote
Roxy
OK! That definitely should not happen! v2.0.0 is going to be showing up soon. When it does, I'll be bringing it up on several printers. I will be doing M502's and M500's to initialize the EEPROM.
I'll watch and make sure that error doesn't show up. But I don't find the error message about the CRC you are seeing. I see this error message:
else {
#if ENABLED(EEPROM_CHITCHAT)
SERIAL_ERROR_START();
SERIAL_ERRORPGM("EEPROM CRC mismatch - (stored) ");
SERIAL_ERROR(stored_crc);
SERIAL_ERRORPGM(" != ");
SERIAL_ERROR(working_crc);
SERIAL_ERRORLNPGM(" (calculated)!");
#endif
Re-Flashed Marlin 1.1.5 so I could give you a Screen Shoot
M502
M500
Pressed Home
X:100.00 Y110.00 Z:10.50 E:0.0 Count X:8000 Y:8800 Z:4200
[attachment 98145 Image2.jpg]
configuration_store.cpp
// Report storage size
#if ENABLED(EEPROM_CHITCHAT)
SERIAL_ECHO_START();
SERIAL_ECHOPAIR("Settings Stored (", eeprom_size - (EEPROM_OFFSET));
SERIAL_ECHOPAIR(" bytes; crc ", (uint32_t)final_crc);
SERIAL_ECHOLNPGM(")");
#endif
Don't believe this is an error now, looks like it is just a checksum that is stored with the data for testing. If correct can
Replace this
SERIAL_ECHOPAIR(" bytes; crc ", (uint32_t)final_crc);
SERIAL_ECHOLNPGM(")");
with this
SERIAL_ECHOLNPGM(" bytes)");
to be look like Marlin-RC8BF-HICi3.zip
------------------------------------------------------
#define DUMMY_PID_VALUE 3000.0f
#define EEPROM_START() int eeprom_index = EEPROM_OFFSET
#define EEPROM_SKIP(VAR) eeprom_index += sizeof(VAR)
#define EEPROM_WRITE(VAR) write_data(eeprom_index, (uint8_t*)&VAR, sizeof(VAR), &working_crc)
#define EEPROM_READ(VAR) read_data(eeprom_index, (uint8_t*)&VAR, sizeof(VAR), &working_crc)
#define EEPROM_ASSERT(TST,ERR) if (!(TST)) do{ SERIAL_ERROR_START(); SERIAL_ERRORLNPGM(ERR); eeprom_read_error = true; }while(0)
------------------------------------------------------
const uint16_t final_crc = working_crc;
------------------------------------------------------
EEPROM_READ(stored_crc);