|
@@ -126,8 +126,6 @@ void PrintJobRecovery::save(const bool force/*=false*/, const bool save_queue/*=
|
126
|
126
|
#endif
|
127
|
127
|
|
128
|
128
|
// Did Z change since the last call?
|
129
|
|
- const float zmoved = current_position[Z_AXIS] - info.current_position[Z_AXIS];
|
130
|
|
-
|
131
|
129
|
if (force
|
132
|
130
|
#if DISABLED(SAVE_EACH_CMD_MODE) // Always save state when enabled
|
133
|
131
|
#if PIN_EXISTS(POWER_LOSS) // Save if power loss pin is triggered
|
|
@@ -136,8 +134,8 @@ void PrintJobRecovery::save(const bool force/*=false*/, const bool save_queue/*=
|
136
|
134
|
#if SAVE_INFO_INTERVAL_MS > 0 // Save if interval is elapsed
|
137
|
135
|
|| ELAPSED(ms, next_save_ms)
|
138
|
136
|
#endif
|
139
|
|
- || zmoved > 0 // Z moved up (including Z-hop)
|
140
|
|
- || zmoved < -5 // Z moved down a lot (for some reason)
|
|
137
|
+ // Save every time Z is higher than the last call
|
|
138
|
+ || current_position[Z_AXIS] > info.current_position[Z_AXIS]
|
141
|
139
|
#endif
|
142
|
140
|
) {
|
143
|
141
|
|
|
@@ -375,8 +373,8 @@ void PrintJobRecovery::resume() {
|
375
|
373
|
if (info.valid_head == info.valid_foot) {
|
376
|
374
|
SERIAL_ECHOPGM("current_position: ");
|
377
|
375
|
LOOP_XYZE(i) {
|
|
376
|
+ if (i) SERIAL_CHAR(',');
|
378
|
377
|
SERIAL_ECHO(info.current_position[i]);
|
379
|
|
- if (i < E_AXIS) SERIAL_CHAR(',');
|
380
|
378
|
}
|
381
|
379
|
SERIAL_EOL();
|
382
|
380
|
SERIAL_ECHOLNPAIR("feedrate: ", info.feedrate);
|