|
@@ -36,7 +36,7 @@
|
36
|
36
|
*
|
37
|
37
|
*/
|
38
|
38
|
|
39
|
|
-#define EEPROM_VERSION "V44"
|
|
39
|
+#define EEPROM_VERSION "V45"
|
40
|
40
|
|
41
|
41
|
// Change EEPROM version if these are changed:
|
42
|
42
|
#define EEPROM_OFFSET 100
|
|
@@ -91,15 +91,16 @@
|
91
|
91
|
* 324 G29 A planner.leveling_active (bool)
|
92
|
92
|
* 325 G29 S ubl.storage_slot (int8_t)
|
93
|
93
|
*
|
94
|
|
- * DELTA: 40 bytes
|
95
|
|
- * 352 M666 XYZ delta_endstop_adj (float x3)
|
96
|
|
- * 364 M665 R delta_radius (float)
|
97
|
|
- * 368 M665 L delta_diagonal_rod (float)
|
98
|
|
- * 372 M665 S delta_segments_per_second (float)
|
99
|
|
- * 376 M665 B delta_calibration_radius (float)
|
100
|
|
- * 380 M665 X delta_tower_angle_trim[A] (float)
|
101
|
|
- * 384 M665 Y delta_tower_angle_trim[B] (float)
|
102
|
|
- * 388 M665 Z delta_tower_angle_trim[C] (float)
|
|
94
|
+ * DELTA: 44 bytes
|
|
95
|
+ * 352 M666 H delta_height (float)
|
|
96
|
+ * 364 M666 XYZ delta_endstop_adj (float x3)
|
|
97
|
+ * 368 M665 R delta_radius (float)
|
|
98
|
+ * 372 M665 L delta_diagonal_rod (float)
|
|
99
|
+ * 376 M665 S delta_segments_per_second (float)
|
|
100
|
+ * 380 M665 B delta_calibration_radius (float)
|
|
101
|
+ * 384 M665 X delta_tower_angle_trim[A] (float)
|
|
102
|
+ * 388 M665 Y delta_tower_angle_trim[B] (float)
|
|
103
|
+ * 392 M665 Z delta_tower_angle_trim[C] (float)
|
103
|
104
|
*
|
104
|
105
|
* [XYZ]_DUAL_ENDSTOPS: 12 bytes
|
105
|
106
|
* 352 M666 X x_endstop_adj (float)
|
|
@@ -107,65 +108,65 @@
|
107
|
108
|
* 360 M666 Z z_endstop_adj (float)
|
108
|
109
|
*
|
109
|
110
|
* ULTIPANEL: 6 bytes
|
110
|
|
- * 392 M145 S0 H lcd_preheat_hotend_temp (int x2)
|
111
|
|
- * 396 M145 S0 B lcd_preheat_bed_temp (int x2)
|
112
|
|
- * 400 M145 S0 F lcd_preheat_fan_speed (int x2)
|
|
111
|
+ * 396 M145 S0 H lcd_preheat_hotend_temp (int x2)
|
|
112
|
+ * 400 M145 S0 B lcd_preheat_bed_temp (int x2)
|
|
113
|
+ * 404 M145 S0 F lcd_preheat_fan_speed (int x2)
|
113
|
114
|
*
|
114
|
115
|
* PIDTEMP: 82 bytes
|
115
|
|
- * 404 M301 E0 PIDC Kp[0], Ki[0], Kd[0], Kc[0] (float x4)
|
116
|
|
- * 420 M301 E1 PIDC Kp[1], Ki[1], Kd[1], Kc[1] (float x4)
|
117
|
|
- * 436 M301 E2 PIDC Kp[2], Ki[2], Kd[2], Kc[2] (float x4)
|
118
|
|
- * 452 M301 E3 PIDC Kp[3], Ki[3], Kd[3], Kc[3] (float x4)
|
119
|
|
- * 468 M301 E4 PIDC Kp[3], Ki[3], Kd[3], Kc[3] (float x4)
|
120
|
|
- * 484 M301 L lpq_len (int)
|
|
116
|
+ * 408 M301 E0 PIDC Kp[0], Ki[0], Kd[0], Kc[0] (float x4)
|
|
117
|
+ * 428 M301 E1 PIDC Kp[1], Ki[1], Kd[1], Kc[1] (float x4)
|
|
118
|
+ * 440 M301 E2 PIDC Kp[2], Ki[2], Kd[2], Kc[2] (float x4)
|
|
119
|
+ * 456 M301 E3 PIDC Kp[3], Ki[3], Kd[3], Kc[3] (float x4)
|
|
120
|
+ * 472 M301 E4 PIDC Kp[3], Ki[3], Kd[3], Kc[3] (float x4)
|
|
121
|
+ * 488 M301 L lpq_len (int)
|
121
|
122
|
*
|
122
|
123
|
* PIDTEMPBED: 12 bytes
|
123
|
|
- * 486 M304 PID thermalManager.bedKp, .bedKi, .bedKd (float x3)
|
|
124
|
+ * 490 M304 PID thermalManager.bedKp, .bedKi, .bedKd (float x3)
|
124
|
125
|
*
|
125
|
126
|
* DOGLCD: 2 bytes
|
126
|
|
- * 498 M250 C lcd_contrast (uint16_t)
|
|
127
|
+ * 502 M250 C lcd_contrast (uint16_t)
|
127
|
128
|
*
|
128
|
129
|
* FWRETRACT: 33 bytes
|
129
|
|
- * 500 M209 S autoretract_enabled (bool)
|
130
|
|
- * 501 M207 S retract_length (float)
|
131
|
|
- * 505 M207 F retract_feedrate_mm_s (float)
|
132
|
|
- * 509 M207 Z retract_zlift (float)
|
133
|
|
- * 513 M208 S retract_recover_length (float)
|
134
|
|
- * 517 M208 F retract_recover_feedrate_mm_s (float)
|
135
|
|
- * 521 M207 W swap_retract_length (float)
|
136
|
|
- * 525 M208 W swap_retract_recover_length (float)
|
137
|
|
- * 529 M208 R swap_retract_recover_feedrate_mm_s (float)
|
|
130
|
+ * 504 M209 S autoretract_enabled (bool)
|
|
131
|
+ * 505 M207 S retract_length (float)
|
|
132
|
+ * 509 M207 F retract_feedrate_mm_s (float)
|
|
133
|
+ * 513 M207 Z retract_zlift (float)
|
|
134
|
+ * 517 M208 S retract_recover_length (float)
|
|
135
|
+ * 521 M208 F retract_recover_feedrate_mm_s (float)
|
|
136
|
+ * 525 M207 W swap_retract_length (float)
|
|
137
|
+ * 529 M208 W swap_retract_recover_length (float)
|
|
138
|
+ * 533 M208 R swap_retract_recover_feedrate_mm_s (float)
|
138
|
139
|
*
|
139
|
140
|
* Volumetric Extrusion: 21 bytes
|
140
|
|
- * 533 M200 D volumetric_enabled (bool)
|
141
|
|
- * 534 M200 T D filament_size (float x5) (T0..3)
|
|
141
|
+ * 537 M200 D volumetric_enabled (bool)
|
|
142
|
+ * 538 M200 T D filament_size (float x5) (T0..3)
|
142
|
143
|
*
|
143
|
144
|
* HAVE_TMC2130: 22 bytes
|
144
|
|
- * 554 M906 X Stepper X current (uint16_t)
|
145
|
|
- * 556 M906 Y Stepper Y current (uint16_t)
|
146
|
|
- * 558 M906 Z Stepper Z current (uint16_t)
|
147
|
|
- * 560 M906 X2 Stepper X2 current (uint16_t)
|
148
|
|
- * 562 M906 Y2 Stepper Y2 current (uint16_t)
|
149
|
|
- * 564 M906 Z2 Stepper Z2 current (uint16_t)
|
150
|
|
- * 566 M906 E0 Stepper E0 current (uint16_t)
|
151
|
|
- * 568 M906 E1 Stepper E1 current (uint16_t)
|
152
|
|
- * 570 M906 E2 Stepper E2 current (uint16_t)
|
153
|
|
- * 572 M906 E3 Stepper E3 current (uint16_t)
|
154
|
|
- * 574 M906 E4 Stepper E4 current (uint16_t)
|
|
145
|
+ * 558 M906 X Stepper X current (uint16_t)
|
|
146
|
+ * 560 M906 Y Stepper Y current (uint16_t)
|
|
147
|
+ * 562 M906 Z Stepper Z current (uint16_t)
|
|
148
|
+ * 564 M906 X2 Stepper X2 current (uint16_t)
|
|
149
|
+ * 566 M906 Y2 Stepper Y2 current (uint16_t)
|
|
150
|
+ * 568 M906 Z2 Stepper Z2 current (uint16_t)
|
|
151
|
+ * 570 M906 E0 Stepper E0 current (uint16_t)
|
|
152
|
+ * 572 M906 E1 Stepper E1 current (uint16_t)
|
|
153
|
+ * 574 M906 E2 Stepper E2 current (uint16_t)
|
|
154
|
+ * 576 M906 E3 Stepper E3 current (uint16_t)
|
|
155
|
+ * 578 M906 E4 Stepper E4 current (uint16_t)
|
155
|
156
|
*
|
156
|
157
|
* LIN_ADVANCE: 8 bytes
|
157
|
|
- * 576 M900 K extruder_advance_k (float)
|
158
|
|
- * 580 M900 WHD advance_ed_ratio (float)
|
|
158
|
+ * 580 M900 K extruder_advance_k (float)
|
|
159
|
+ * 584 M900 WHD advance_ed_ratio (float)
|
159
|
160
|
*
|
160
|
161
|
* HAS_MOTOR_CURRENT_PWM:
|
161
|
|
- * 584 M907 X Stepper XY current (uint32_t)
|
162
|
|
- * 588 M907 Z Stepper Z current (uint32_t)
|
163
|
|
- * 592 M907 E Stepper E current (uint32_t)
|
|
162
|
+ * 588 M907 X Stepper XY current (uint32_t)
|
|
163
|
+ * 592 M907 Z Stepper Z current (uint32_t)
|
|
164
|
+ * 596 M907 E Stepper E current (uint32_t)
|
164
|
165
|
*
|
165
|
166
|
* CNC_COORDINATE_SYSTEMS 108 bytes
|
166
|
|
- * 596 G54-G59.3 coordinate_system (float x 27)
|
|
167
|
+ * 600 G54-G59.3 coordinate_system (float x 27)
|
167
|
168
|
*
|
168
|
|
- * 704 Minimum end-point
|
|
169
|
+ * 708 Minimum end-point
|
169
|
170
|
* 2025 (704 + 36 + 9 + 288 + 988) Maximum end-point
|
170
|
171
|
*
|
171
|
172
|
* ========================================================================
|
|
@@ -354,15 +355,7 @@ void MarlinSettings::postprocess() {
|
354
|
355
|
#if !HAS_HOME_OFFSET
|
355
|
356
|
const float home_offset[XYZ] = { 0 };
|
356
|
357
|
#endif
|
357
|
|
- #if ENABLED(DELTA)
|
358
|
|
- dummy = 0.0;
|
359
|
|
- EEPROM_WRITE(dummy);
|
360
|
|
- EEPROM_WRITE(dummy);
|
361
|
|
- dummy = DELTA_HEIGHT + home_offset[Z_AXIS];
|
362
|
|
- EEPROM_WRITE(dummy);
|
363
|
|
- #else
|
364
|
|
- EEPROM_WRITE(home_offset);
|
365
|
|
- #endif
|
|
358
|
+ EEPROM_WRITE(home_offset);
|
366
|
359
|
|
367
|
360
|
#if HOTENDS > 1
|
368
|
361
|
// Skip hotend 0 which must be 0
|
|
@@ -465,6 +458,7 @@ void MarlinSettings::postprocess() {
|
465
|
458
|
|
466
|
459
|
// 10 floats for DELTA / [XYZ]_DUAL_ENDSTOPS
|
467
|
460
|
#if ENABLED(DELTA)
|
|
461
|
+ EEPROM_WRITE(delta_height); // 1 float
|
468
|
462
|
EEPROM_WRITE(delta_endstop_adj); // 3 floats
|
469
|
463
|
EEPROM_WRITE(delta_radius); // 1 float
|
470
|
464
|
EEPROM_WRITE(delta_diagonal_rod); // 1 float
|
|
@@ -786,12 +780,6 @@ void MarlinSettings::postprocess() {
|
786
|
780
|
#endif
|
787
|
781
|
EEPROM_READ(home_offset);
|
788
|
782
|
|
789
|
|
- #if ENABLED(DELTA)
|
790
|
|
- home_offset[X_AXIS] = 0.0;
|
791
|
|
- home_offset[Y_AXIS] = 0.0;
|
792
|
|
- home_offset[Z_AXIS] -= DELTA_HEIGHT;
|
793
|
|
- #endif
|
794
|
|
-
|
795
|
783
|
//
|
796
|
784
|
// Hotend Offsets, if any
|
797
|
785
|
//
|
|
@@ -897,6 +885,7 @@ void MarlinSettings::postprocess() {
|
897
|
885
|
//
|
898
|
886
|
|
899
|
887
|
#if ENABLED(DELTA)
|
|
888
|
+ EEPROM_READ(delta_height); // 1 float
|
900
|
889
|
EEPROM_READ(delta_endstop_adj); // 3 floats
|
901
|
890
|
EEPROM_READ(delta_radius); // 1 float
|
902
|
891
|
EEPROM_READ(delta_diagonal_rod); // 1 float
|
|
@@ -1347,13 +1336,13 @@ void MarlinSettings::reset() {
|
1347
|
1336
|
#if ENABLED(DELTA)
|
1348
|
1337
|
const float adj[ABC] = DELTA_ENDSTOP_ADJ,
|
1349
|
1338
|
dta[ABC] = DELTA_TOWER_ANGLE_TRIM;
|
|
1339
|
+ delta_height = DELTA_HEIGHT;
|
1350
|
1340
|
COPY(delta_endstop_adj, adj);
|
1351
|
1341
|
delta_radius = DELTA_RADIUS;
|
1352
|
1342
|
delta_diagonal_rod = DELTA_DIAGONAL_ROD;
|
1353
|
1343
|
delta_segments_per_second = DELTA_SEGMENTS_PER_SECOND;
|
1354
|
1344
|
delta_calibration_radius = DELTA_CALIBRATION_RADIUS;
|
1355
|
1345
|
COPY(delta_tower_angle_trim, dta);
|
1356
|
|
- home_offset[Z_AXIS] = 0;
|
1357
|
1346
|
|
1358
|
1347
|
#elif ENABLED(X_DUAL_ENDSTOPS) || ENABLED(Y_DUAL_ENDSTOPS) || ENABLED(Z_DUAL_ENDSTOPS)
|
1359
|
1348
|
|
|
@@ -1790,7 +1779,7 @@ void MarlinSettings::reset() {
|
1790
|
1779
|
CONFIG_ECHO_START;
|
1791
|
1780
|
SERIAL_ECHOPAIR(" M665 L", LINEAR_UNIT(delta_diagonal_rod));
|
1792
|
1781
|
SERIAL_ECHOPAIR(" R", LINEAR_UNIT(delta_radius));
|
1793
|
|
- SERIAL_ECHOPAIR(" H", LINEAR_UNIT(DELTA_HEIGHT + home_offset[Z_AXIS]));
|
|
1782
|
+ SERIAL_ECHOPAIR(" H", LINEAR_UNIT(delta_height));
|
1794
|
1783
|
SERIAL_ECHOPAIR(" S", delta_segments_per_second);
|
1795
|
1784
|
SERIAL_ECHOPAIR(" B", LINEAR_UNIT(delta_calibration_radius));
|
1796
|
1785
|
SERIAL_ECHOPAIR(" X", LINEAR_UNIT(delta_tower_angle_trim[A_AXIS]));
|