|
@ -119,7 +119,7 @@ static bool ensure_safe_temperature(const AdvancedPauseMode mode=ADVANCED_PAUSE_ |
|
|
static void do_pause_e_move(const float &length, const float &fr) { |
|
|
static void do_pause_e_move(const float &length, const float &fr) { |
|
|
set_destination_from_current(); |
|
|
set_destination_from_current(); |
|
|
destination[E_AXIS] += length / planner.e_factor[active_extruder]; |
|
|
destination[E_AXIS] += length / planner.e_factor[active_extruder]; |
|
|
buffer_line_to_destination(fr); |
|
|
planner.buffer_line_kinematic(destination, fr, active_extruder); |
|
|
stepper.synchronize(); |
|
|
stepper.synchronize(); |
|
|
set_current_from_destination(); |
|
|
set_current_from_destination(); |
|
|
} |
|
|
} |
|
@ -137,8 +137,8 @@ static void do_pause_e_move(const float &length, const float &fr) { |
|
|
* Returns 'true' if load was completed, 'false' for abort |
|
|
* Returns 'true' if load was completed, 'false' for abort |
|
|
*/ |
|
|
*/ |
|
|
bool load_filament(const float &load_length/*=0*/, const float &purge_length/*=0*/, const int8_t max_beep_count/*=0*/, |
|
|
bool load_filament(const float &load_length/*=0*/, const float &purge_length/*=0*/, const int8_t max_beep_count/*=0*/, |
|
|
const bool show_lcd/*=false*/, const bool pause_for_user/*=false*/, |
|
|
const bool show_lcd/*=false*/, const bool pause_for_user/*=false*/, |
|
|
const AdvancedPauseMode mode/*=ADVANCED_PAUSE_MODE_PAUSE_PRINT*/ |
|
|
const AdvancedPauseMode mode/*=ADVANCED_PAUSE_MODE_PAUSE_PRINT*/ |
|
|
) { |
|
|
) { |
|
|
#if DISABLED(ULTIPANEL) |
|
|
#if DISABLED(ULTIPANEL) |
|
|
UNUSED(show_lcd); |
|
|
UNUSED(show_lcd); |
|
@ -232,7 +232,7 @@ bool load_filament(const float &load_length/*=0*/, const float &purge_length/*=0 |
|
|
* Returns 'true' if unload was completed, 'false' for abort |
|
|
* Returns 'true' if unload was completed, 'false' for abort |
|
|
*/ |
|
|
*/ |
|
|
bool unload_filament(const float &unload_length, const bool show_lcd/*=false*/, |
|
|
bool unload_filament(const float &unload_length, const bool show_lcd/*=false*/, |
|
|
const AdvancedPauseMode mode/*=ADVANCED_PAUSE_MODE_PAUSE_PRINT*/ |
|
|
const AdvancedPauseMode mode/*=ADVANCED_PAUSE_MODE_PAUSE_PRINT*/ |
|
|
) { |
|
|
) { |
|
|
if (!ensure_safe_temperature(mode)) { |
|
|
if (!ensure_safe_temperature(mode)) { |
|
|
#if ENABLED(ULTIPANEL) |
|
|
#if ENABLED(ULTIPANEL) |
|
@ -336,8 +336,11 @@ bool pause_print(const float &retract, const point_t &park_point, const float &u |
|
|
if (retract && thermalManager.hotEnoughToExtrude(active_extruder)) |
|
|
if (retract && thermalManager.hotEnoughToExtrude(active_extruder)) |
|
|
do_pause_e_move(retract, PAUSE_PARK_RETRACT_FEEDRATE); |
|
|
do_pause_e_move(retract, PAUSE_PARK_RETRACT_FEEDRATE); |
|
|
|
|
|
|
|
|
// Park the nozzle by moving up by z_lift and then moving to (x_pos, y_pos)
|
|
|
#if ENABLED(NO_MOTION_BEFORE_HOMING) |
|
|
Nozzle::park(2, park_point); |
|
|
if (!axis_unhomed_error()) |
|
|
|
|
|
#endif |
|
|
|
|
|
// Park the nozzle by moving up by z_lift and then moving to (x_pos, y_pos)
|
|
|
|
|
|
Nozzle::park(2, park_point); |
|
|
|
|
|
|
|
|
// Unload the filament
|
|
|
// Unload the filament
|
|
|
if (unload_length) |
|
|
if (unload_length) |
|
|