Placing memory constants at a fixed location

As you mention it is a pain to program the EEPROM for each device wich I can also increase in my SW and it is also easier by SW to modify the EEPROM, also if the device is reflashed with a new SW, if it is in EEPROM we do not know for sure if the EEPROM was erased or not that is why I prefer to have it in flash.

This I2C GUID chips I have seen them but it increases cost that the major drawback