This is what I have.

// @section extras


// EEPROM
// The microcontroller can store settings in the EEPROM, e.g. max velocity...
// M500 - stores parameters in EEPROM
// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to.
//define this to enable EEPROM support
//#define EEPROM_SETTINGS


#ifdef EEPROM_SETTINGS
// To disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out:
#define EEPROM_CHITCHAT // please keep turned on if you can.
#endif



I ran a print, my z offset was 12.88mm. It made a good first layer. Then a couple hours later I came back to run a new print and it was printing 3+ mm above the bed. WTF??

I hooked up pronterface and issued M503 and it shows the firmware 12.88mm offset as expected. How do I sync up everything?

I am in need of a little bit detail direction as I have never encountered this issue before and it is driving me insane.