|
@@ -2216,6 +2216,7 @@ void lcd_mesh_calibration_z()
|
|
|
#ifndef SNMM
|
|
|
|
|
|
void lcd_calibrate_extruder() {
|
|
|
+
|
|
|
if (degHotend0() > EXTRUDE_MINTEMP)
|
|
|
{
|
|
|
current_position[E_AXIS] = 0; //set initial position to zero
|
|
@@ -2225,7 +2226,7 @@ void lcd_calibrate_extruder() {
|
|
|
|
|
|
long steps_final;
|
|
|
float e_steps_per_unit;
|
|
|
- float feedrate = (180 / axis_steps_per_unit[E_AXIS]) * 3; //initial automatic extrusion feedrate (depends on current value of axis_steps_per_unit to avoid too fast extrusion)
|
|
|
+ float feedrate = (180 / axis_steps_per_unit[E_AXIS]) * 1; //3 //initial automatic extrusion feedrate (depends on current value of axis_steps_per_unit to avoid too fast extrusion)
|
|
|
float e_shift_calibration = (axis_steps_per_unit[E_AXIS] > 180 ) ? ((180 / axis_steps_per_unit[E_AXIS]) * 70): 70; //length of initial automatic extrusion sequence
|
|
|
const char *msg_e_cal_knob = MSG_E_CAL_KNOB;
|
|
|
const char *msg_next_e_cal_knob = lcd_display_message_fullscreen_P(msg_e_cal_knob);
|
|
@@ -2259,7 +2260,7 @@ void lcd_calibrate_extruder() {
|
|
|
encoderPosition += (encoderDiff / ENCODER_PULSES_PER_STEP);
|
|
|
encoderDiff = 0;
|
|
|
if (!planner_queue_full()) {
|
|
|
- current_position[E_AXIS] += float(abs((int)encoderPosition)) * 0.05;
|
|
|
+ current_position[E_AXIS] += float(abs((int)encoderPosition)) * 0.01; //0.05
|
|
|
encoderPosition = 0;
|
|
|
plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], feedrate, active_extruder);
|
|
|
|
|
@@ -2300,6 +2301,13 @@ void lcd_calibrate_extruder() {
|
|
|
lcd_return_to_status();
|
|
|
}
|
|
|
|
|
|
+void lcd_extr_cal_reset() {
|
|
|
+ float tmp1[] = DEFAULT_AXIS_STEPS_PER_UNIT;
|
|
|
+ axis_steps_per_unit[E_AXIS] = tmp1[3];
|
|
|
+ //extrudemultiply = 100;
|
|
|
+ enquecommand_P(PSTR("M500"));
|
|
|
+}
|
|
|
+
|
|
|
#endif
|
|
|
|
|
|
void lcd_toshiba_flash_air_compatibility_toggle()
|
|
@@ -2377,6 +2385,9 @@ MENU_ITEM(function, MSG_CALIBRATE_BED, lcd_mesh_calibration);
|
|
|
MENU_ITEM(submenu, MSG_BED_CORRECTION_MENU, lcd_adjust_bed);
|
|
|
MENU_ITEM(submenu, MSG_SHOW_END_STOPS, menu_show_end_stops);
|
|
|
MENU_ITEM(gcode, MSG_CALIBRATE_BED_RESET, PSTR("M44"));
|
|
|
+#ifndef SNMM
|
|
|
+ MENU_ITEM(function, MSG_RESET_CALIBRATE_E, lcd_extr_cal_reset);
|
|
|
+#endif
|
|
|
}
|
|
|
|
|
|
END_MENU();
|
|
@@ -4159,8 +4170,7 @@ static void menu_action_function(menuFunc_t data) {
|
|
|
}
|
|
|
static void menu_action_sdfile(const char* filename, char* longFilename)
|
|
|
{
|
|
|
- loading_flag = false;
|
|
|
-
|
|
|
+ loading_flag = false;
|
|
|
char cmd[30];
|
|
|
char* c;
|
|
|
sprintf_P(cmd, PSTR("M23 %s"), filename);
|