Im RepRap Wiki sind ein paar interessante M-Codes gelistet, die es ermöglichen Werte im EEPROM des Arduinos zu speichern statt jedesmal die Konstanten in der Configuration.h zu verändern.

  • M500 – stores paramters 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.
  • M503 – print the current settings (from memory not from eeprom)

Dies ist sehr praktisch um den Einzug des Extruders anzupassen.
Mit dem Kommando

M92 X80.00 Y80.00 Z4000.00 E903.00

werden die Steps per Unit für X Y Z und den Extruder gesetzt. Wenn der Extruder die korrekte Menge Filament einzieht können die Werte mit
dem Kommando M500 ins EEPROM geschrieben werden und sind damit persistent.

Um die Codes verwenden zu können müssen die beiden Zeilen in der Datei Configuration.h „entkommentiert“ und die Firmware einmal gebaut und übertragen werden.

#define EEPROM_SETTINGS
#define EEPROM_CHITCHAT

Danach können Folgende Parameter einfach geändert werden:

    Feedrates

  • Steps per unit (usually steps per mm) for X,Y,and Z axes, as well as Extruder steps/mm,
  • Maximum Feedrates (in mm/s) for X,Y,Z and Extruder
  • Maximum Acceleration (in mm/s2) for X,Y,Z and Extruder
  • Acceleration and Retraction Acceleration
  • “Advanced Variables”: Min Feedrate(mm/s), Min Travel Feedrate(mm/s), Min Segment Time (ms), Max X,Y,Z Jerk (mm/s)
  • Home Offset (mm)
  • PID Values

Links

Eintrag zu Marlin im RepRap Wiki
Sehr guter englischer ARtikel zu dem Thema