Accelstepper

UKHeliBob ... I tried the eeprom.put and get ... no luck...I installed the serial print to check what I get and it's "2046820361" as a result...go figure.

There is no element of luck either way.

The put() and get() functions work so why don't they work in your program ?

  1. Are you actually writing anything to the EEPROM ?
    Does the program ever call the put() function and, if so, what value is written to the EEPROM ?
    Print it to find out before put()

  2. Is the data being written to and read from the same address ?
    Your program look OK but temporarily substitute an explicit address for the addr variable

  3. The EEPROM is, to use a technical term, shagged. Either one address, many or the whole EEPROM may be affected
    Run a separate diagnostic program to write to every EEPROM address and read back the values. Are they correct ?

  4. You are using the EEPROM in a different way to everyone else.
    What does EEPROM.begin() do in your program ?
    When used with an ESP8266 it allows you to specify the number of bytes of EEPROM to be available but you are using a Uno.