diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 544cee56d..1caac1318 100644 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -3812,14 +3812,17 @@ void gcode_M701() fsensor_oq_meassure_start(40); #endif //FSENSOR_QUALITY + const int feed_mm_before_raising = 30; + static_assert(feed_mm_before_raising <= FILAMENTCHANGE_FIRSTFEED); + lcd_setstatuspgm(_T(MSG_LOADING_FILAMENT)); - current_position[E_AXIS] += 40; - plan_buffer_line_curposXYZE(400 / 60); //fast sequence + current_position[E_AXIS] += FILAMENTCHANGE_FIRSTFEED - feed_mm_before_raising; + plan_buffer_line_curposXYZE(FILAMENTCHANGE_EFEED_FIRST); //fast sequence st_synchronize(); raise_z_above(MIN_Z_FOR_LOAD, false); - current_position[E_AXIS] += 30; - plan_buffer_line_curposXYZE(400 / 60); //fast sequence + current_position[E_AXIS] += feed_mm_before_raising; + plan_buffer_line_curposXYZE(FILAMENTCHANGE_EFEED_FIRST); //fast sequence load_filament_final_feed(); //slow sequence st_synchronize();