english version of xyz: place/remove steel sheet; wait for cooling down removed,

This commit is contained in:
PavelSindler 2017-11-13 17:09:26 +01:00
parent 5707f8b14e
commit eda0c6bd39
6 changed files with 31 additions and 17 deletions

View file

@ -1783,14 +1783,17 @@ bool gcode_M45(bool onlyZ) {
if (lcd_calibrate_z_end_stop_manual(onlyZ)) {
#endif //TMC2130
refresh_cmd_timeout();
if (((degHotend(0) > MAX_HOTEND_TEMP_CALIBRATION) || (degBed() > MAX_BED_TEMP_CALIBRATION)) && (!onlyZ)) {
lcd_wait_for_cool_down();
lcd_show_fullscreen_message_and_wait_P(MSG_PAPER);
//if (((degHotend(0) > MAX_HOTEND_TEMP_CALIBRATION) || (degBed() > MAX_BED_TEMP_CALIBRATION)) && (!onlyZ)) {
// lcd_wait_for_cool_down();
//}
if(!onlyZ){
bool result = lcd_show_fullscreen_message_yes_no_and_wait_P(MSG_STEEL_SHEET_CHECK, false, false);
if(result) lcd_show_fullscreen_message_and_wait_P(MSG_REMOVE_STEEL_SHEET);
lcd_show_fullscreen_message_and_wait_P(MSG_PAPER);
lcd_display_message_fullscreen_P(MSG_FIND_BED_OFFSET_AND_SKEW_LINE1);
lcd_implementation_print_at(0, 2, 1);
lcd_printPGM(MSG_FIND_BED_OFFSET_AND_SKEW_LINE2);
}
// Move the print head close to the bed.
current_position[Z_AXIS] = MESH_HOME_Z_SEARCH;
plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], homing_feedrate[Z_AXIS] / 40, active_extruder);

View file

@ -2293,7 +2293,7 @@ const char * const MSG_REFRESH_LANG_TABLE[1] PROGMEM = {
MSG_REFRESH_EN
};
const char MSG_REMOVE_STEEL_SHEET_EN[] PROGMEM = "Please remove steel sheet.";
const char MSG_REMOVE_STEEL_SHEET_EN[] PROGMEM = "Please remove steel sheet from heatbed.";
const char * const MSG_REMOVE_STEEL_SHEET_LANG_TABLE[1] PROGMEM = {
MSG_REMOVE_STEEL_SHEET_EN
};
@ -3028,6 +3028,11 @@ const char * const MSG_STATS_TOTALPRINTTIME_LANG_TABLE[LANG_NUM] PROGMEM = {
MSG_STATS_TOTALPRINTTIME_DE
};
const char MSG_STEEL_SHEET_CHECK_EN[] PROGMEM = "Is steel sheet on heatbed?";
const char * const MSG_STEEL_SHEET_CHECK_LANG_TABLE[1] PROGMEM = {
MSG_STEEL_SHEET_CHECK_EN
};
const char MSG_STEPPER_TOO_HIGH_EN[] PROGMEM = "Steprate too high: ";
const char * const MSG_STEPPER_TOO_HIGH_LANG_TABLE[1] PROGMEM = {
MSG_STEPPER_TOO_HIGH_EN

View file

@ -586,6 +586,8 @@ extern const char* const MSG_STATS_TOTALFILAMENT_LANG_TABLE[LANG_NUM];
#define MSG_STATS_TOTALFILAMENT LANG_TABLE_SELECT(MSG_STATS_TOTALFILAMENT_LANG_TABLE)
extern const char* const MSG_STATS_TOTALPRINTTIME_LANG_TABLE[LANG_NUM];
#define MSG_STATS_TOTALPRINTTIME LANG_TABLE_SELECT(MSG_STATS_TOTALPRINTTIME_LANG_TABLE)
extern const char* const MSG_STEEL_SHEET_CHECK_LANG_TABLE[1];
#define MSG_STEEL_SHEET_CHECK LANG_TABLE_SELECT_EXPLICIT(MSG_STEEL_SHEET_CHECK_LANG_TABLE, 0)
extern const char* const MSG_STEPPER_TOO_HIGH_LANG_TABLE[1];
#define MSG_STEPPER_TOO_HIGH LANG_TABLE_SELECT_EXPLICIT(MSG_STEPPER_TOO_HIGH_LANG_TABLE, 0)
extern const char* const MSG_STOPPED_LANG_TABLE[LANG_NUM];

View file

@ -346,5 +346,6 @@
#define MSG_FSENSOR_ON "Fil. sensor [on]"
#define(length=20, lines=4) MSG_PLACE_STEEL_SHEET "Please place steel sheet on heatbed."
#define MSG_REMOVE_STEEL_SHEET "Please remove steel sheet."
#define(length=20, lines=4) MSG_REMOVE_STEEL_SHEET "Please remove steel sheet from heatbed."
#define(length=20, lines=2) MSG_CALIBRATE_Z_AUTO "Calibrating Z"
#define(length=20, lines=2) MSG_STEEL_SHEET_CHECK "Is steel sheet on heatbed?"

View file

@ -2365,7 +2365,7 @@ void lcd_adjust_z() {
}
void lcd_wait_for_cool_down() {
/*void lcd_wait_for_cool_down() {
lcd_set_custom_characters_degree();
while ((degHotend(0)>MAX_HOTEND_TEMP_CALIBRATION) || (degBed() > MAX_BED_TEMP_CALIBRATION)) {
lcd_display_message_fullscreen_P(MSG_WAITING_TEMP);
@ -2385,7 +2385,7 @@ void lcd_wait_for_cool_down() {
delay_keep_alive(1000);
}
lcd_set_custom_characters_arrows();
}
}*/
// Lets the user move the Z carriage up to the end stoppers.
// When done, it sets the current Z to Z_MAX_POS and returns true.
@ -5402,7 +5402,8 @@ static bool lcd_selfcheck_axis_sg(char axis) {
case 1: axis_length = Y_MAX_POS + 8; break;
default: axis_length = 210; break;
}
//tmc2130_sg_stop_on_crash = false;
crashdet_disable();
#ifdef TMC2130
tmc2130_home_exit();
enable_endstops(true);
@ -5426,7 +5427,6 @@ static bool lcd_selfcheck_axis_sg(char axis) {
current_position_init = st_get_position_mm(axis);
if (i < 1) {
current_position[axis] += 2 * margin;
plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[3], manual_feedrate[0] / 60, active_extruder);
@ -5450,8 +5450,8 @@ static bool lcd_selfcheck_axis_sg(char axis) {
st_synchronize();
}
measured_axis_length[i] = abs(current_position_final - current_position_init);
//SERIAL_ECHOPGM("Measured axis length:");
//MYSERIAL.println(measured_axis_length[i]);
SERIAL_ECHOPGM("Measured axis length:");
MYSERIAL.println(measured_axis_length[i]);
if (abs(measured_axis_length[i] - axis_length) > max_error_mm) {
//axis length
#ifdef TMC2130
@ -5466,12 +5466,14 @@ static bool lcd_selfcheck_axis_sg(char axis) {
if (axis == Z_AXIS) _error_1 = "Z";
lcd_selftest_error(9, _error_1, _error_2);
//crashdet_enable();
//uint8_t crashdet = eeprom_read_byte((uint8_t*)EEPROM_CRASH_DET);
return false;
}
}
//SERIAL_ECHOPGM("Axis length difference:");
//MYSERIAL.println(abs(measured_axis_length[0] - measured_axis_length[1]));
SERIAL_ECHOPGM("Axis length difference:");
MYSERIAL.println(abs(measured_axis_length[0] - measured_axis_length[1]));
if (abs(measured_axis_length[0] - measured_axis_length[1]) > 1) {
//loose pulleys
@ -5483,9 +5485,10 @@ static bool lcd_selfcheck_axis_sg(char axis) {
if (axis == Z_AXIS) _error_1 = "Z";
lcd_selftest_error(8, _error_1, _error_2);
//crashdet_enable();
return false;
}
//crashdet_enable();
return true;
}

View file

@ -250,7 +250,7 @@ void lcd_farm_sdcard_menu();
void lcd_farm_sdcard_menu_w();
//void get_description();
void lcd_wait_for_cool_down();
//void lcd_wait_for_cool_down();
void adjust_bed_reset();
void lcd_extr_cal_reset();