Using Marlin EEPROM

If you decide you want to make modifications to the Solidoodle, or just do not like some of the default firmware settings, you can change your configuration one of two ways. The first is to recompile your firmware and upload it to your motherboard. The second, much more convenient method, is to just change a few EEPROM settings. Changing your EEPROM settings allows you to edit settings on the fly without touching the firmware. This tutorial only applies to the second method.

The Marlin EEPROM settings include the following:

  • Steps per mm
  • Maximum feedrates [mm/s]
  • Maximum Acceleration [mm/s2]
  • Acceleration
  • Retract Acceleration
  • PID settings
  • Homing Offset
  • Minimum feedrate [mm/s]
  • Minimum travel feedrate [mm/s]
  • Minimum segement time [ms]
  • Maximum X-Y jerk [mm/s]
  • Maximum Z jerk [mm/s]

The bold options are all pretty self explanatory, and are the one's you will most likely end up changing. Any changes to settings other than the ones listed must be made in the firmware, recompiled, and uploaded manually.

Change EEPROM settings through Repetier EEPROM Menu

To change these settings in Repetier-Host, first connect to your printer and navigate to Config-> Firmware EEPROM Configuration (or press Ctrl-E). A separate window will open containing all of the firmware EEPROM settings.

Once you've made whatever changes you would like to make, click "Save to EEPROM." The window then closes and you are finished. If you've accidentally saved a change you did not mean to make, just click "Restore factory settings." The "Reload Config" button sends a request to the printer should the settings not load.

Manual EEPROM Changes

You can also change these settings manually by sending bits of Mcode to the printer. For this you will need to know the following commands:

M500; stores paramters in EEPROM
M501; reads parameters from EEPROM
M503; reads current settings from Memory (not EEPROM)
M502; reverts to the default "factory settings".

1. In the Log, click Select "Infos" and deselect each other

2. Under "Manual Control," type M501 into the text box and click "Send".

3. In the log, all of the settings will show up as shown below:

15:37:42.568 : echo:Stored settings retreived:
15:37:42.568 : echo:Steps per unit:
15:37:42.569 : echo:  M92 X88.00 Y88.00 Z2268.00 E138.00
15:37:42.569 : echo:Maximum feedrates (mm/s):
15:37:42.571 : echo:  M203 X500.00 Y500.00 Z5.00 E45.00
15:37:42.571 : echo:Maximum Acceleration (mm/s2):
15:37:42.573 : echo:  M201 X1200 Y1200 Z100 E10000
15:37:42.573 : echo:Acceleration: S=acceleration, T=retract acceleration
15:37:42.575 : echo:  M204 S1000.00 T1000.00
15:37:42.575 : echo:Advanced variables: S=Min feedrate (mm/s), T=Min travel feedrate (mm/s), B=minimum segment time (ms), X=maximum xY jerk (mm/s),  Z=maximum Z jerk (mm/s)
15:37:42.576 : echo:  M205 S0.00 T0.00 B20000 X20.00 Z0.40 E5.00
15:37:42.576 : echo:Home offset (mm):
15:37:42.576 : echo:  M206 X0.00 Y0.00 Z0.00
15:37:42.576 : echo:PID settings:
15:37:42.579 : echo:   M301 P15.44 I0.51 D116.62

4. The nice thing about the output is it includes the Mcode in the proper syntax for changing the settings. When sending the code, you only need to include the parameter you want to change. E.g. If I wanted to change the Maximum feed rate in the Z direction I would type M203 Z15.00 and click send.

5. Typing the configuration Mcode only saves the new configuration to memory. To save the configuration to EEPROM, type M500 and click send. If you do not, then the configuration will revert back to the previous settings after a reset, power off, or disconnect.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License