stepper spacing


my Arduino software seems to move the x axis motors 100mm when 50mm is pressed. the y axis moves the proper amount. During printing a square shaped object will come out as a rectangle. This happened once before, a tech repaired it. But after removing the SD card that came with the printer and pushing it back in a week later, it seems the firmware went back to its original settings.

What firmware? Marlin? Grbl? Other?

Most printers will have a "Steps Per mm" setting. If you use a menu or GCode to set the value you then have to use a menu or GCode to write the settings to EEPROM or they will revert next time you turn on the printer.

The change in Steps Per mm could happen if the 'microstepping' setting in the stepper driver is changed. For controller boards like the RAMPS the microstepping is set with a set of jumpers under the little stepper driver boards. On some more modern stepper controller chips the setting can be done in registers on the chip and has to be uploaded by the firmware.