|
|
@ -42,15 +42,15 @@
|
|
|
|
#define EEPROM_OFFSET 100
|
|
|
|
#define EEPROM_OFFSET 100
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* V44 EEPROM Layout:
|
|
|
|
* V45 EEPROM Layout:
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* 100 Version (char x4)
|
|
|
|
* 100 Version (char x4)
|
|
|
|
* 104 EEPROM CRC16 (uint16_t)
|
|
|
|
* 104 EEPROM CRC16 (uint16_t)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* 106 E_STEPPERS (uint8_t)
|
|
|
|
* 106 E_STEPPERS (uint8_t)
|
|
|
|
* 107 M92 XYZE planner.axis_steps_per_mm (float x4 ... x8)
|
|
|
|
* 107 M92 XYZE planner.axis_steps_per_mm (float x4 ... x8) + 64
|
|
|
|
* 123 M203 XYZE planner.max_feedrate_mm_s (float x4 ... x8)
|
|
|
|
* 123 M203 XYZE planner.max_feedrate_mm_s (float x4 ... x8) + 64
|
|
|
|
* 139 M201 XYZE planner.max_acceleration_mm_per_s2 (uint32_t x4 ... x8)
|
|
|
|
* 139 M201 XYZE planner.max_acceleration_mm_per_s2 (uint32_t x4 ... x8) + 64
|
|
|
|
* 155 M204 P planner.acceleration (float)
|
|
|
|
* 155 M204 P planner.acceleration (float)
|
|
|
|
* 159 M204 R planner.retract_acceleration (float)
|
|
|
|
* 159 M204 R planner.retract_acceleration (float)
|
|
|
|
* 163 M204 T planner.travel_acceleration (float)
|
|
|
|
* 163 M204 T planner.travel_acceleration (float)
|
|
|
@ -62,7 +62,7 @@
|
|
|
|
* 187 M205 Z planner.max_jerk[Z_AXIS] (float)
|
|
|
|
* 187 M205 Z planner.max_jerk[Z_AXIS] (float)
|
|
|
|
* 191 M205 E planner.max_jerk[E_AXIS] (float)
|
|
|
|
* 191 M205 E planner.max_jerk[E_AXIS] (float)
|
|
|
|
* 195 M206 XYZ home_offset (float x3)
|
|
|
|
* 195 M206 XYZ home_offset (float x3)
|
|
|
|
* 207 M218 XYZ hotend_offset (float x3 per additional hotend)
|
|
|
|
* 207 M218 XYZ hotend_offset (float x3 per additional hotend) +16
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* Global Leveling: 4 bytes
|
|
|
|
* Global Leveling: 4 bytes
|
|
|
|
* 219 z_fade_height (float)
|
|
|
|
* 219 z_fade_height (float)
|
|
|
@ -88,86 +88,86 @@
|
|
|
|
* 316 z_values[][] (float x9, up to float x256) +988
|
|
|
|
* 316 z_values[][] (float x9, up to float x256) +988
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* AUTO_BED_LEVELING_UBL: 2 bytes
|
|
|
|
* AUTO_BED_LEVELING_UBL: 2 bytes
|
|
|
|
* 324 G29 A planner.leveling_active (bool)
|
|
|
|
* 352 G29 A planner.leveling_active (bool)
|
|
|
|
* 325 G29 S ubl.storage_slot (int8_t)
|
|
|
|
* 353 G29 S ubl.storage_slot (int8_t)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* DELTA: 44 bytes
|
|
|
|
* DELTA: 44 bytes
|
|
|
|
* 352 M666 H delta_height (float)
|
|
|
|
* 354 M666 H delta_height (float)
|
|
|
|
* 364 M666 XYZ delta_endstop_adj (float x3)
|
|
|
|
* 358 M666 XYZ delta_endstop_adj (float x3)
|
|
|
|
* 368 M665 R delta_radius (float)
|
|
|
|
* 370 M665 R delta_radius (float)
|
|
|
|
* 372 M665 L delta_diagonal_rod (float)
|
|
|
|
* 374 M665 L delta_diagonal_rod (float)
|
|
|
|
* 376 M665 S delta_segments_per_second (float)
|
|
|
|
* 378 M665 S delta_segments_per_second (float)
|
|
|
|
* 380 M665 B delta_calibration_radius (float)
|
|
|
|
* 382 M665 B delta_calibration_radius (float)
|
|
|
|
* 384 M665 X delta_tower_angle_trim[A] (float)
|
|
|
|
* 386 M665 X delta_tower_angle_trim[A] (float)
|
|
|
|
* 388 M665 Y delta_tower_angle_trim[B] (float)
|
|
|
|
* 390 M665 Y delta_tower_angle_trim[B] (float)
|
|
|
|
* 392 M665 Z delta_tower_angle_trim[C] (float)
|
|
|
|
* 394 M665 Z delta_tower_angle_trim[C] (float)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* [XYZ]_DUAL_ENDSTOPS: 12 bytes
|
|
|
|
* [XYZ]_DUAL_ENDSTOPS: 12 bytes
|
|
|
|
* 352 M666 X endstops.x_endstop_adj (float)
|
|
|
|
* 354 M666 X x_endstop_adj (float)
|
|
|
|
* 356 M666 Y endstops.y_endstop_adj (float)
|
|
|
|
* 358 M666 Y y_endstop_adj (float)
|
|
|
|
* 360 M666 Z endstops.z_endstop_adj (float)
|
|
|
|
* 362 M666 Z z_endstop_adj (float)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* ULTIPANEL: 6 bytes
|
|
|
|
* ULTIPANEL: 6 bytes
|
|
|
|
* 396 M145 S0 H lcd_preheat_hotend_temp (int x2)
|
|
|
|
* 398 M145 S0 H lcd_preheat_hotend_temp (int x2)
|
|
|
|
* 400 M145 S0 B lcd_preheat_bed_temp (int x2)
|
|
|
|
* 402 M145 S0 B lcd_preheat_bed_temp (int x2)
|
|
|
|
* 404 M145 S0 F lcd_preheat_fan_speed (int x2)
|
|
|
|
* 406 M145 S0 F lcd_preheat_fan_speed (int x2)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* PIDTEMP: 82 bytes
|
|
|
|
* PIDTEMP: 82 bytes
|
|
|
|
* 408 M301 E0 PIDC Kp[0], Ki[0], Kd[0], Kc[0] (float x4)
|
|
|
|
* 410 M301 E0 PIDC Kp[0], Ki[0], Kd[0], Kc[0] (float x4)
|
|
|
|
* 428 M301 E1 PIDC Kp[1], Ki[1], Kd[1], Kc[1] (float x4)
|
|
|
|
* 426 M301 E1 PIDC Kp[1], Ki[1], Kd[1], Kc[1] (float x4)
|
|
|
|
* 440 M301 E2 PIDC Kp[2], Ki[2], Kd[2], Kc[2] (float x4)
|
|
|
|
* 442 M301 E2 PIDC Kp[2], Ki[2], Kd[2], Kc[2] (float x4)
|
|
|
|
* 456 M301 E3 PIDC Kp[3], Ki[3], Kd[3], Kc[3] (float x4)
|
|
|
|
* 458 M301 E3 PIDC Kp[3], Ki[3], Kd[3], Kc[3] (float x4)
|
|
|
|
* 472 M301 E4 PIDC Kp[3], Ki[3], Kd[3], Kc[3] (float x4)
|
|
|
|
* 474 M301 E4 PIDC Kp[3], Ki[3], Kd[3], Kc[3] (float x4)
|
|
|
|
* 488 M301 L lpq_len (int)
|
|
|
|
* 490 M301 L lpq_len (int)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* PIDTEMPBED: 12 bytes
|
|
|
|
* PIDTEMPBED: 12 bytes
|
|
|
|
* 490 M304 PID thermalManager.bedKp, .bedKi, .bedKd (float x3)
|
|
|
|
* 492 M304 PID bedKp, .bedKi, .bedKd (float x3)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* DOGLCD: 2 bytes
|
|
|
|
* DOGLCD: 2 bytes
|
|
|
|
* 502 M250 C lcd_contrast (uint16_t)
|
|
|
|
* 504 M250 C lcd_contrast (uint16_t)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* FWRETRACT: 33 bytes
|
|
|
|
* FWRETRACT: 33 bytes
|
|
|
|
* 504 M209 S autoretract_enabled (bool)
|
|
|
|
* 506 M209 S autoretract_enabled (bool)
|
|
|
|
* 505 M207 S retract_length (float)
|
|
|
|
* 507 M207 S retract_length (float)
|
|
|
|
* 509 M207 F retract_feedrate_mm_s (float)
|
|
|
|
* 511 M207 F retract_feedrate_mm_s (float)
|
|
|
|
* 513 M207 Z retract_zlift (float)
|
|
|
|
* 515 M207 Z retract_zlift (float)
|
|
|
|
* 517 M208 S retract_recover_length (float)
|
|
|
|
* 519 M208 S retract_recover_length (float)
|
|
|
|
* 521 M208 F retract_recover_feedrate_mm_s (float)
|
|
|
|
* 523 M208 F retract_recover_feedrate_mm_s (float)
|
|
|
|
* 525 M207 W swap_retract_length (float)
|
|
|
|
* 527 M207 W swap_retract_length (float)
|
|
|
|
* 529 M208 W swap_retract_recover_length (float)
|
|
|
|
* 531 M208 W swap_retract_recover_length (float)
|
|
|
|
* 533 M208 R swap_retract_recover_feedrate_mm_s (float)
|
|
|
|
* 535 M208 R swap_retract_recover_feedrate_mm_s (float)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* Volumetric Extrusion: 21 bytes
|
|
|
|
* Volumetric Extrusion: 21 bytes
|
|
|
|
* 537 M200 D parser.volumetric_enabled (bool)
|
|
|
|
* 539 M200 D parser.volumetric_enabled (bool)
|
|
|
|
* 538 M200 T D planner.filament_size (float x5) (T0..3)
|
|
|
|
* 540 M200 T D planner.filament_size (float x5) (T0..3)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* HAVE_TMC2130: 22 bytes
|
|
|
|
* HAVE_TMC2130: 22 bytes
|
|
|
|
* 558 M906 X Stepper X current (uint16_t)
|
|
|
|
* 560 M906 X Stepper X current (uint16_t)
|
|
|
|
* 560 M906 Y Stepper Y current (uint16_t)
|
|
|
|
* 562 M906 Y Stepper Y current (uint16_t)
|
|
|
|
* 562 M906 Z Stepper Z current (uint16_t)
|
|
|
|
* 564 M906 Z Stepper Z current (uint16_t)
|
|
|
|
* 564 M906 X2 Stepper X2 current (uint16_t)
|
|
|
|
* 566 M906 X2 Stepper X2 current (uint16_t)
|
|
|
|
* 566 M906 Y2 Stepper Y2 current (uint16_t)
|
|
|
|
* 568 M906 Y2 Stepper Y2 current (uint16_t)
|
|
|
|
* 568 M906 Z2 Stepper Z2 current (uint16_t)
|
|
|
|
* 570 M906 Z2 Stepper Z2 current (uint16_t)
|
|
|
|
* 570 M906 E0 Stepper E0 current (uint16_t)
|
|
|
|
* 572 M906 E0 Stepper E0 current (uint16_t)
|
|
|
|
* 572 M906 E1 Stepper E1 current (uint16_t)
|
|
|
|
* 574 M906 E1 Stepper E1 current (uint16_t)
|
|
|
|
* 574 M906 E2 Stepper E2 current (uint16_t)
|
|
|
|
* 576 M906 E2 Stepper E2 current (uint16_t)
|
|
|
|
* 576 M906 E3 Stepper E3 current (uint16_t)
|
|
|
|
* 578 M906 E3 Stepper E3 current (uint16_t)
|
|
|
|
* 578 M906 E4 Stepper E4 current (uint16_t)
|
|
|
|
* 580 M906 E4 Stepper E4 current (uint16_t)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* LIN_ADVANCE: 8 bytes
|
|
|
|
* LIN_ADVANCE: 8 bytes
|
|
|
|
* 580 M900 K extruder_advance_k (float)
|
|
|
|
* 582 M900 K extruder_advance_k (float)
|
|
|
|
* 584 M900 WHD advance_ed_ratio (float)
|
|
|
|
* 586 M900 WHD advance_ed_ratio (float)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* HAS_MOTOR_CURRENT_PWM:
|
|
|
|
* HAS_MOTOR_CURRENT_PWM:
|
|
|
|
* 588 M907 X Stepper XY current (uint32_t)
|
|
|
|
* 590 M907 X Stepper XY current (uint32_t)
|
|
|
|
* 592 M907 Z Stepper Z current (uint32_t)
|
|
|
|
* 594 M907 Z Stepper Z current (uint32_t)
|
|
|
|
* 596 M907 E Stepper E current (uint32_t)
|
|
|
|
* 598 M907 E Stepper E current (uint32_t)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* CNC_COORDINATE_SYSTEMS 108 bytes
|
|
|
|
* CNC_COORDINATE_SYSTEMS 108 bytes
|
|
|
|
* 600 G54-G59.3 coordinate_system (float x 27)
|
|
|
|
* 602 G54-G59.3 coordinate_system (float x 27)
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* 708 Minimum end-point
|
|
|
|
* 710 Minimum end-point
|
|
|
|
* 2025 (704 + 36 + 9 + 288 + 988) Maximum end-point
|
|
|
|
* 2239 (710 + 208 + 36 + 9 + 288 + 988) Maximum end-point
|
|
|
|
*
|
|
|
|
*
|
|
|
|
* ========================================================================
|
|
|
|
* ========================================================================
|
|
|
|
* meshes_begin (between max and min end-point, directly above)
|
|
|
|
* meshes_begin (between max and min end-point, directly above)
|
|
|
@ -422,7 +422,7 @@ void MarlinSettings::postprocess() {
|
|
|
|
EEPROM_WRITE(storage_slot);
|
|
|
|
EEPROM_WRITE(storage_slot);
|
|
|
|
#endif // AUTO_BED_LEVELING_UBL
|
|
|
|
#endif // AUTO_BED_LEVELING_UBL
|
|
|
|
|
|
|
|
|
|
|
|
// 10 floats for DELTA / [XYZ]_DUAL_ENDSTOPS
|
|
|
|
// 11 floats for DELTA / [XYZ]_DUAL_ENDSTOPS
|
|
|
|
#if ENABLED(DELTA)
|
|
|
|
#if ENABLED(DELTA)
|
|
|
|
EEPROM_WRITE(delta_height); // 1 float
|
|
|
|
EEPROM_WRITE(delta_height); // 1 float
|
|
|
|
EEPROM_WRITE(delta_endstop_adj); // 3 floats
|
|
|
|
EEPROM_WRITE(delta_endstop_adj); // 3 floats
|
|
|
@ -453,11 +453,11 @@ void MarlinSettings::postprocess() {
|
|
|
|
EEPROM_WRITE(dummy);
|
|
|
|
EEPROM_WRITE(dummy);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
for (uint8_t q = 7; q--;) EEPROM_WRITE(dummy);
|
|
|
|
for (uint8_t q = 8; q--;) EEPROM_WRITE(dummy);
|
|
|
|
|
|
|
|
|
|
|
|
#else
|
|
|
|
#else
|
|
|
|
dummy = 0.0f;
|
|
|
|
dummy = 0.0f;
|
|
|
|
for (uint8_t q = 10; q--;) EEPROM_WRITE(dummy);
|
|
|
|
for (uint8_t q = 11; q--;) EEPROM_WRITE(dummy);
|
|
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
|
|
#if DISABLED(ULTIPANEL)
|
|
|
|
#if DISABLED(ULTIPANEL)
|
|
|
|