From 1d561601c7c861d5107114078cc4dcbbe0d63ff4 Mon Sep 17 00:00:00 2001 From: PavelSindler Date: Thu, 29 Jun 2017 13:32:17 +0200 Subject: comments added --- Firmware/Marlin_main.cpp | 10 +++++----- Firmware/mesh_bed_calibration.cpp | 5 +++++ Firmware/temperature.cpp | 9 ++++++--- 3 files changed, 16 insertions(+), 8 deletions(-) diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 30035559d..b10b20426 100644 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -2540,7 +2540,7 @@ void process_commands() // and correct the current_position to match the transformed coordinate system. world2machine_update_current(); -#if (defined(MESH_BED_LEVELING) && !defined(MK1BP)) +#if (defined(MESH_BED_LEVELING) && !defined(MK1BP)) if (code_seen(axis_codes[X_AXIS]) || code_seen(axis_codes[Y_AXIS]) || code_seen('W') || code_seen(axis_codes[Z_AXIS])) { } @@ -2930,9 +2930,9 @@ void process_commands() */ case 80: -#ifdef MK1BP - break; -#endif //MK1BP +#ifdef MK1BP + break; +#endif //MK1BP case_G80: { mesh_bed_leveling_flag = true; @@ -6602,4 +6602,4 @@ void serialecho_temperatures() { SERIAL_PROTOCOLPGM(" B:"); SERIAL_PROTOCOL_F(degBed(), 1); SERIAL_PROTOCOLLN(""); -} \ No newline at end of file +} diff --git a/Firmware/mesh_bed_calibration.cpp b/Firmware/mesh_bed_calibration.cpp index ca5312ace..5220c1aff 100644 --- a/Firmware/mesh_bed_calibration.cpp +++ b/Firmware/mesh_bed_calibration.cpp @@ -2448,7 +2448,12 @@ void count_xyz_details() { eeprom_read_float((float*)(EEPROM_BED_CALIBRATION_VEC_Y + 4)) }; a2 = -1 * asin(vec_y[0] / MACHINE_AXIS_SCALE_Y); +/* SERIAL_ECHOLNPGM("par:"); + MYSERIAL.println(vec_y[0]); + MYSERIAL.println(a2);*/ a1 = asin(vec_x[1] / MACHINE_AXIS_SCALE_X); +/* MYSERIAL.println(vec_x[1]); + MYSERIAL.println(a1);*/ angleDiff = fabs(a2 - a1); for (uint8_t mesh_point = 0; mesh_point < 3; ++mesh_point) { float y = vec_x[1] * pgm_read_float(bed_ref_points + mesh_point * 2) + vec_y[1] * pgm_read_float(bed_ref_points + mesh_point * 2 + 1) + cntr[1]; diff --git a/Firmware/temperature.cpp b/Firmware/temperature.cpp index 27ceb7d3f..0eae8ded4 100644 --- a/Firmware/temperature.cpp +++ b/Firmware/temperature.cpp @@ -1074,7 +1074,7 @@ void temp_runaway_check(int _heater_id, float _target_temperature, float _curren static int __preheat_counter[2] = { 0,0}; static int __preheat_errors[2] = { 0,0}; - + #ifdef TEMP_RUNAWAY_BED_TIMEOUT if (_isbed) { @@ -1121,11 +1121,14 @@ void temp_runaway_check(int _heater_id, float _target_temperature, float _curren if (_current_temperature < ((_isbed) ? (0.8 * _target_temperature) : 150)) //check only in area where temperature is changing fastly for heater, check to 0.8 x target temperature for bed { __preheat_counter[_heater_id]++; + //SERIAL_ECHOPGM("counter[0]:"); MYSERIAL.println(__preheat_counter[0]); + //SERIAL_ECHOPGM("counter[1]:"); MYSERIAL.println(__preheat_counter[1]); + //SERIAL_ECHOPGM("_isbed"); MYSERIAL.println(_isbed); if (__preheat_counter[_heater_id] > ((_isbed) ? 16 : 8)) // periodicaly check if current temperature changes { - /*SERIAL_ECHOPGM("Heater:"); + /*SERIAL_ECHOLNPGM("Heater:"); MYSERIAL.print(_heater_id); - SERIAL_ECHOPGM(" T:"); + SERIAL_ECHOPGM(" Current temperature:"); MYSERIAL.print(_current_temperature); SERIAL_ECHOPGM(" Tstart:"); MYSERIAL.print(__preheat_start[_heater_id]);*/ -- cgit v1.2.3 From 2e57e4822752f6bbfa6668d2ab023b23e5e2808b Mon Sep 17 00:00:00 2001 From: PavelSindler Date: Tue, 4 Jul 2017 14:35:58 +0200 Subject: long beep in multimaterial colorprint fixed --- Firmware/Marlin_main.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index b10b20426..9aaaa1920 100644 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -5054,7 +5054,7 @@ case 404: //M404 Enter the nominal filament width (3mm, 1.75mm ) N<3.0> or disp lastpos[Z_AXIS]=current_position[Z_AXIS]; lastpos[E_AXIS]=current_position[E_AXIS]; - //Restract extruder + //Retract extruder if(code_seen('E')) { target[E_AXIS]+= code_value(); @@ -5200,6 +5200,7 @@ case 404: //M404 Enter the nominal filament width (3mm, 1.75mm ) N<3.0> or disp } } + WRITE(BEEPER, LOW); #ifdef SNMM display_loading(); do { @@ -5215,7 +5216,7 @@ case 404: //M404 Enter the nominal filament width (3mm, 1.75mm ) N<3.0> or disp #endif //Filament inserted - WRITE(BEEPER,LOW); + //Feed the filament to the end of nozzle quickly #ifdef SNMM -- cgit v1.2.3 From f89ba2c46aed55d0bfd7464a7057183526d7772b Mon Sep 17 00:00:00 2001 From: PavelSindler Date: Mon, 10 Jul 2017 17:30:47 +0200 Subject: axis steps per unit excluded from M500, version changed --- Firmware/Configuration.h | 2 +- Firmware/ConfigurationStore.cpp | 6 +++--- Firmware/mesh_bed_calibration.cpp | 24 +++++++++++++++++++++++- 3 files changed, 27 insertions(+), 5 deletions(-) diff --git a/Firmware/Configuration.h b/Firmware/Configuration.h index 387b10e15..4563c66bb 100644 --- a/Firmware/Configuration.h +++ b/Firmware/Configuration.h @@ -5,7 +5,7 @@ #include "Configuration_prusa.h" // Firmware version -#define FW_version "3.0.12-RC2" +#define FW_version "3.0.12" #define FW_PRUSA3D_MAGIC "PRUSA3DFW" #define FW_PRUSA3D_MAGIC_LEN 10 diff --git a/Firmware/ConfigurationStore.cpp b/Firmware/ConfigurationStore.cpp index f7f64094c..e914bf794 100644 --- a/Firmware/ConfigurationStore.cpp +++ b/Firmware/ConfigurationStore.cpp @@ -43,7 +43,7 @@ void _EEPROM_readData(int &pos, uint8_t* value, uint8_t size) // wrong data being written to the variables. // ALSO: always make sure the variables in the Store and retrieve sections are in the same order. -#define EEPROM_VERSION "V1" +#define EEPROM_VERSION "V2" #ifdef EEPROM_SETTINGS void Config_StoreSettings() @@ -51,7 +51,7 @@ void Config_StoreSettings() char ver[4]= "000"; int i=EEPROM_OFFSET; EEPROM_WRITE_VAR(i,ver); // invalidate data first - EEPROM_WRITE_VAR(i,axis_steps_per_unit); + //EEPROM_WRITE_VAR(i,axis_steps_per_unit); EEPROM_WRITE_VAR(i,max_feedrate); EEPROM_WRITE_VAR(i,max_acceleration_units_per_sq_second); EEPROM_WRITE_VAR(i,acceleration); @@ -274,7 +274,7 @@ void Config_RetrieveSettings() if (strncmp(ver,stored_ver,3) == 0) { // version number match - EEPROM_READ_VAR(i,axis_steps_per_unit); + //EEPROM_READ_VAR(i,axis_steps_per_unit); EEPROM_READ_VAR(i,max_feedrate); EEPROM_READ_VAR(i,max_acceleration_units_per_sq_second); diff --git a/Firmware/mesh_bed_calibration.cpp b/Firmware/mesh_bed_calibration.cpp index 5220c1aff..6176d24db 100644 --- a/Firmware/mesh_bed_calibration.cpp +++ b/Firmware/mesh_bed_calibration.cpp @@ -2083,12 +2083,21 @@ BedSkewOffsetDetectionResultType improve_bed_offset_and_skew(int8_t method, int8 for (uint8_t mesh_point = 0; mesh_point < 3; ++ mesh_point) if (pts[mesh_point * 2 + 1] < Y_MIN_POS_CALIBRATION_POINT_OUT_OF_REACH) too_far_mask |= 1 << mesh_point; - result = calculate_machine_skew_and_offset_LS(pts, 9, bed_ref_points, vec_x, vec_y, cntr, verbosity_level); + + if (verbosity_level >= 20) { + SERIAL_ECHOPGM("Distance from min before calculate_machine skew and offset LS:"); + MYSERIAL.print(int(too_far_mask)); + } + + result = calculate_machine_skew_and_offset_LS(pts, 9, bed_ref_points, vec_x, vec_y, cntr, verbosity_level); if (result < 0) { SERIAL_ECHOLNPGM("Calculation of the machine skew and offset failed."); goto canceled; } // In case of success, update the too_far_mask from the calculated points. + too_far_mask = 0; + if(verbosity_level >= 20) SERIAL_ECHOPGM("Reseting too far mask."); + for (uint8_t mesh_point = 0; mesh_point < 3; ++ mesh_point) { float y = vec_x[1] * pgm_read_float(bed_ref_points+mesh_point*2) + vec_y[1] * pgm_read_float(bed_ref_points+mesh_point*2+1) + cntr[1]; distance_from_min[mesh_point] = (y - Y_MIN_POS_CALIBRATION_POINT_OUT_OF_REACH); @@ -2447,6 +2456,19 @@ void count_xyz_details() { eeprom_read_float((float*)(EEPROM_BED_CALIBRATION_VEC_Y + 0)), eeprom_read_float((float*)(EEPROM_BED_CALIBRATION_VEC_Y + 4)) }; + SERIAL_ECHOPGM("cntr[0]:"); + MYSERIAL.println(cntr[0]); + SERIAL_ECHOPGM("cntr[1]:"); + MYSERIAL.println(cntr[1]); + SERIAL_ECHOPGM("vec_x[0]:"); + MYSERIAL.println(vec_x[0]); + SERIAL_ECHOPGM("vec_x[1]:"); + MYSERIAL.println(vec_x[1]); + SERIAL_ECHOPGM("vec_y[0]:"); + MYSERIAL.println(vec_y[0]); + SERIAL_ECHOPGM("vec_y[1]:"); + MYSERIAL.println(vec_y[1]); + a2 = -1 * asin(vec_y[0] / MACHINE_AXIS_SCALE_Y); /* SERIAL_ECHOLNPGM("par:"); MYSERIAL.println(vec_y[0]); -- cgit v1.2.3 From 2ace5fc8274842e61c0a7f4511239aa44294cd59 Mon Sep 17 00:00:00 2001 From: PavelSindler Date: Tue, 11 Jul 2017 16:28:43 +0200 Subject: tranlations of support menu, retrieving settings from eeprom changed to exclude E steps per unit --- Firmware/ConfigurationStore.cpp | 9 ++- Firmware/language_all.cpp | 135 ++++++++++++++++++++++++++++++++++++++ Firmware/language_all.h | 18 +++++ Firmware/language_cz.h | 11 +++- Firmware/language_de.h | 11 +++- Firmware/language_en.h | 10 ++- Firmware/language_es.h | 11 +++- Firmware/language_it.h | 11 +++- Firmware/language_pl.h | 11 +++- Firmware/mesh_bed_calibration.cpp | 2 + Firmware/ultralcd.cpp | 27 ++++---- 11 files changed, 234 insertions(+), 22 deletions(-) diff --git a/Firmware/ConfigurationStore.cpp b/Firmware/ConfigurationStore.cpp index e914bf794..5586ee3d3 100644 --- a/Firmware/ConfigurationStore.cpp +++ b/Firmware/ConfigurationStore.cpp @@ -43,7 +43,7 @@ void _EEPROM_readData(int &pos, uint8_t* value, uint8_t size) // wrong data being written to the variables. // ALSO: always make sure the variables in the Store and retrieve sections are in the same order. -#define EEPROM_VERSION "V2" +#define EEPROM_VERSION "V1" #ifdef EEPROM_SETTINGS void Config_StoreSettings() @@ -51,7 +51,7 @@ void Config_StoreSettings() char ver[4]= "000"; int i=EEPROM_OFFSET; EEPROM_WRITE_VAR(i,ver); // invalidate data first - //EEPROM_WRITE_VAR(i,axis_steps_per_unit); + EEPROM_WRITE_VAR(i,axis_steps_per_unit); EEPROM_WRITE_VAR(i,max_feedrate); EEPROM_WRITE_VAR(i,max_acceleration_units_per_sq_second); EEPROM_WRITE_VAR(i,acceleration); @@ -274,7 +274,7 @@ void Config_RetrieveSettings() if (strncmp(ver,stored_ver,3) == 0) { // version number match - //EEPROM_READ_VAR(i,axis_steps_per_unit); + EEPROM_READ_VAR(i,axis_steps_per_unit); EEPROM_READ_VAR(i,max_feedrate); EEPROM_READ_VAR(i,max_acceleration_units_per_sq_second); @@ -350,6 +350,9 @@ void Config_RetrieveSettings() calculate_volumetric_multipliers(); // Call updatePID (similar to when we have processed M301) updatePID(); + float tmp1[] = DEFAULT_AXIS_STEPS_PER_UNIT; + axis_steps_per_unit[3] = tmp1[3]; + SERIAL_ECHO_START; SERIAL_ECHOLNPGM("Stored settings retrieved"); } diff --git a/Firmware/language_all.cpp b/Firmware/language_all.cpp index 9ba394cc9..9c967baf6 100644 --- a/Firmware/language_all.cpp +++ b/Firmware/language_all.cpp @@ -560,6 +560,21 @@ const char * const MSG_CARD_MENU_LANG_TABLE[LANG_NUM] PROGMEM = { MSG_CARD_MENU_DE }; +const char MSG_CENTER_EN[] PROGMEM = "Center:"; +const char MSG_CENTER_CZ[] PROGMEM = "Stred:"; +const char MSG_CENTER_IT[] PROGMEM = "Centro:"; +const char MSG_CENTER_ES[] PROGMEM = "Centro:"; +const char MSG_CENTER_PL[] PROGMEM = "Srodek:"; +const char MSG_CENTER_DE[] PROGMEM = "Mitte:"; +const char * const MSG_CENTER_LANG_TABLE[LANG_NUM] PROGMEM = { + MSG_CENTER_EN, + MSG_CENTER_CZ, + MSG_CENTER_IT, + MSG_CENTER_ES, + MSG_CENTER_PL, + MSG_CENTER_DE +}; + const char MSG_CHANGE_EXTR_EN[] PROGMEM = "Change extruder"; const char MSG_CHANGE_EXTR_CZ[] PROGMEM = "Zmenit extruder"; const char MSG_CHANGE_EXTR_IT[] PROGMEM = "Cambio estrusore."; @@ -745,6 +760,21 @@ const char * const MSG_CURRENT_LANG_TABLE[LANG_NUM] PROGMEM = { MSG_CURRENT_DE }; +const char MSG_DATE_EN[] PROGMEM = "Date:"; +const char MSG_DATE_CZ[] PROGMEM = "Datum:"; +const char MSG_DATE_IT[] PROGMEM = "Data"; +const char MSG_DATE_ES[] PROGMEM = "Fecha:"; +const char MSG_DATE_PL[] PROGMEM = "Data:"; +const char MSG_DATE_DE[] PROGMEM = "Datum"; +const char * const MSG_DATE_LANG_TABLE[LANG_NUM] PROGMEM = { + MSG_DATE_EN, + MSG_DATE_CZ, + MSG_DATE_IT, + MSG_DATE_ES, + MSG_DATE_PL, + MSG_DATE_DE +}; + const char MSG_DISABLE_STEPPERS_EN[] PROGMEM = "Disable steppers"; const char MSG_DISABLE_STEPPERS_CZ[] PROGMEM = "Vypnout motory"; const char MSG_DISABLE_STEPPERS_IT[] PROGMEM = "Disabilit motori"; @@ -1369,6 +1399,21 @@ const char * const MSG_LANGUAGE_SELECT_LANG_TABLE[LANG_NUM] PROGMEM = { MSG_LANGUAGE_SELECT_DE }; +const char MSG_LEFT_EN[] PROGMEM = "Left:"; +const char MSG_LEFT_CZ[] PROGMEM = "Levy:"; +const char MSG_LEFT_IT[] PROGMEM = "Sinistra:"; +const char MSG_LEFT_ES[] PROGMEM = "Izquierda:"; +const char MSG_LEFT_PL[] PROGMEM = "Lewy:"; +const char MSG_LEFT_DE[] PROGMEM = "Links:"; +const char * const MSG_LEFT_LANG_TABLE[LANG_NUM] PROGMEM = { + MSG_LEFT_EN, + MSG_LEFT_CZ, + MSG_LEFT_IT, + MSG_LEFT_ES, + MSG_LEFT_PL, + MSG_LEFT_DE +}; + const char MSG_LOADING_COLOR_EN[] PROGMEM = "Loading color"; const char MSG_LOADING_COLOR_CZ[] PROGMEM = "Cisteni barvy"; const char MSG_LOADING_COLOR_IT[] PROGMEM = "Caricando colore"; @@ -1584,6 +1629,21 @@ const char * const MSG_MAX_LANG_TABLE[1] PROGMEM = { MSG_MAX_EN }; +const char MSG_MEASURED_SKEW_EN[] PROGMEM = "Measured skew:"; +const char MSG_MEASURED_SKEW_CZ[] PROGMEM = "Merene zkoseni:"; +const char MSG_MEASURED_SKEW_IT[] PROGMEM = "Incl. misurata:"; +const char MSG_MEASURED_SKEW_ES[] PROGMEM = "Inclin. medida:"; +const char MSG_MEASURED_SKEW_PL[] PROGMEM = "Zmier. sciecie:"; +const char MSG_MEASURED_SKEW_DE[] PROGMEM = "Schraeglauf:"; +const char * const MSG_MEASURED_SKEW_LANG_TABLE[LANG_NUM] PROGMEM = { + MSG_MEASURED_SKEW_EN, + MSG_MEASURED_SKEW_CZ, + MSG_MEASURED_SKEW_IT, + MSG_MEASURED_SKEW_ES, + MSG_MEASURED_SKEW_PL, + MSG_MEASURED_SKEW_DE +}; + const char MSG_MEASURE_BED_REFERENCE_HEIGHT_LINE1_EN[] PROGMEM = "Measuring reference height of calibration point"; const char MSG_MEASURE_BED_REFERENCE_HEIGHT_LINE1_CZ[] PROGMEM = "Merim referencni vysku kalibracniho bodu"; const char MSG_MEASURE_BED_REFERENCE_HEIGHT_LINE1_IT[] PROGMEM = "Misurare l'altezza di riferimento del punto di calibrazione"; @@ -2273,6 +2333,21 @@ const char * const MSG_RESUMING_PRINT_LANG_TABLE[LANG_NUM] PROGMEM = { MSG_RESUMING_PRINT_DE }; +const char MSG_RIGHT_EN[] PROGMEM = "Right:"; +const char MSG_RIGHT_CZ[] PROGMEM = "Pravy:"; +const char MSG_RIGHT_IT[] PROGMEM = "Destra:"; +const char MSG_RIGHT_ES[] PROGMEM = "Derecha:"; +const char MSG_RIGHT_PL[] PROGMEM = "Prawy:"; +const char MSG_RIGHT_DE[] PROGMEM = "Rechts:"; +const char * const MSG_RIGHT_LANG_TABLE[LANG_NUM] PROGMEM = { + MSG_RIGHT_EN, + MSG_RIGHT_CZ, + MSG_RIGHT_IT, + MSG_RIGHT_ES, + MSG_RIGHT_PL, + MSG_RIGHT_DE +}; + const char MSG_SD_CANT_ENTER_SUBDIR_EN[] PROGMEM = "Cannot enter subdir: "; const char * const MSG_SD_CANT_ENTER_SUBDIR_LANG_TABLE[1] PROGMEM = { MSG_SD_CANT_ENTER_SUBDIR_EN @@ -2788,6 +2863,21 @@ const char * const MSG_SET_TEMPERATURE_LANG_TABLE[LANG_NUM] PROGMEM = { MSG_SET_TEMPERATURE_DE }; +const char MSG_SEVERE_SKEW_EN[] PROGMEM = "Severe skew:"; +const char MSG_SEVERE_SKEW_CZ[] PROGMEM = "Tezke zkoseni:"; +const char MSG_SEVERE_SKEW_IT[] PROGMEM = "Inc. rilevante:"; +const char MSG_SEVERE_SKEW_ES[] PROGMEM = "Inclin. severa:"; +const char MSG_SEVERE_SKEW_PL[] PROGMEM = "Ostre sciecie:"; +const char MSG_SEVERE_SKEW_DE[] PROGMEM = "Schwerer Schr.:"; +const char * const MSG_SEVERE_SKEW_LANG_TABLE[LANG_NUM] PROGMEM = { + MSG_SEVERE_SKEW_EN, + MSG_SEVERE_SKEW_CZ, + MSG_SEVERE_SKEW_IT, + MSG_SEVERE_SKEW_ES, + MSG_SEVERE_SKEW_PL, + MSG_SEVERE_SKEW_DE +}; + const char MSG_SHOW_END_STOPS_EN[] PROGMEM = "Show end stops"; const char MSG_SHOW_END_STOPS_CZ[] PROGMEM = "Stav konc. spin."; const char MSG_SHOW_END_STOPS_IT[] PROGMEM = "Stato finecorsa"; @@ -2833,6 +2923,21 @@ const char * const MSG_SILENT_MODE_ON_LANG_TABLE[LANG_NUM] PROGMEM = { MSG_SILENT_MODE_ON_DE }; +const char MSG_SLIGHT_SKEW_EN[] PROGMEM = "Slight skew:"; +const char MSG_SLIGHT_SKEW_CZ[] PROGMEM = "Lehke zkoseni:"; +const char MSG_SLIGHT_SKEW_IT[] PROGMEM = "Incl. leggera:"; +const char MSG_SLIGHT_SKEW_ES[] PROGMEM = "Inclin. ligera:"; +const char MSG_SLIGHT_SKEW_PL[] PROGMEM = "Lekkie sciecie:"; +const char MSG_SLIGHT_SKEW_DE[] PROGMEM = "Leichter Schr.:"; +const char * const MSG_SLIGHT_SKEW_LANG_TABLE[LANG_NUM] PROGMEM = { + MSG_SLIGHT_SKEW_EN, + MSG_SLIGHT_SKEW_CZ, + MSG_SLIGHT_SKEW_IT, + MSG_SLIGHT_SKEW_ES, + MSG_SLIGHT_SKEW_PL, + MSG_SLIGHT_SKEW_DE +}; + const char MSG_SOFTWARE_RESET_EN[] PROGMEM = " Software Reset"; const char * const MSG_SOFTWARE_RESET_LANG_TABLE[1] PROGMEM = { MSG_SOFTWARE_RESET_EN @@ -3347,6 +3452,21 @@ const char * const MSG_WATCHDOG_RESET_LANG_TABLE[1] PROGMEM = { MSG_WATCHDOG_RESET_EN }; +const char MSG_XYZ_DETAILS_EN[] PROGMEM = "XYZ cal. details"; +const char MSG_XYZ_DETAILS_CZ[] PROGMEM = "Detaily XYZ kal."; +const char MSG_XYZ_DETAILS_IT[] PROGMEM = "XYZ Cal. dettagli"; +const char MSG_XYZ_DETAILS_ES[] PROGMEM = "Inform. XYZ cal."; +const char MSG_XYZ_DETAILS_PL[] PROGMEM = "Szczegoly kal.XYZ"; +const char MSG_XYZ_DETAILS_DE[] PROGMEM = "XYZ Kal. Details"; +const char * const MSG_XYZ_DETAILS_LANG_TABLE[LANG_NUM] PROGMEM = { + MSG_XYZ_DETAILS_EN, + MSG_XYZ_DETAILS_CZ, + MSG_XYZ_DETAILS_IT, + MSG_XYZ_DETAILS_ES, + MSG_XYZ_DETAILS_PL, + MSG_XYZ_DETAILS_DE +}; + const char MSG_X_MAX_EN[] PROGMEM = "x_max: "; const char * const MSG_X_MAX_LANG_TABLE[1] PROGMEM = { MSG_X_MAX_EN @@ -3372,6 +3492,21 @@ const char * const MSG_YES_LANG_TABLE[LANG_NUM] PROGMEM = { MSG_YES_DE }; +const char MSG_Y_DISTANCE_FROM_MIN_EN[] PROGMEM = "Y distance from min:"; +const char MSG_Y_DISTANCE_FROM_MIN_CZ[] PROGMEM = "Y vzdalenost od min:"; +const char MSG_Y_DISTANCE_FROM_MIN_IT[] PROGMEM = "Distanza Y da min:"; +const char MSG_Y_DISTANCE_FROM_MIN_ES[] PROGMEM = "Dist. Y desde min:"; +const char MSG_Y_DISTANCE_FROM_MIN_PL[] PROGMEM = "Odleglosc Y od min.:"; +const char MSG_Y_DISTANCE_FROM_MIN_DE[] PROGMEM = "Y Entfernung vom min"; +const char * const MSG_Y_DISTANCE_FROM_MIN_LANG_TABLE[LANG_NUM] PROGMEM = { + MSG_Y_DISTANCE_FROM_MIN_EN, + MSG_Y_DISTANCE_FROM_MIN_CZ, + MSG_Y_DISTANCE_FROM_MIN_IT, + MSG_Y_DISTANCE_FROM_MIN_ES, + MSG_Y_DISTANCE_FROM_MIN_PL, + MSG_Y_DISTANCE_FROM_MIN_DE +}; + const char MSG_Y_MAX_EN[] PROGMEM = "y_max: "; const char * const MSG_Y_MAX_LANG_TABLE[1] PROGMEM = { MSG_Y_MAX_EN diff --git a/Firmware/language_all.h b/Firmware/language_all.h index 0ca88d66a..00775307d 100644 --- a/Firmware/language_all.h +++ b/Firmware/language_all.h @@ -116,6 +116,8 @@ extern const char* const MSG_CALIBRATION_PINDA_MENU_LANG_TABLE[LANG_NUM]; #define MSG_CALIBRATION_PINDA_MENU LANG_TABLE_SELECT(MSG_CALIBRATION_PINDA_MENU_LANG_TABLE) extern const char* const MSG_CARD_MENU_LANG_TABLE[LANG_NUM]; #define MSG_CARD_MENU LANG_TABLE_SELECT(MSG_CARD_MENU_LANG_TABLE) +extern const char* const MSG_CENTER_LANG_TABLE[LANG_NUM]; +#define MSG_CENTER LANG_TABLE_SELECT(MSG_CENTER_LANG_TABLE) extern const char* const MSG_CHANGE_EXTR_LANG_TABLE[LANG_NUM]; #define MSG_CHANGE_EXTR LANG_TABLE_SELECT(MSG_CHANGE_EXTR_LANG_TABLE) extern const char* const MSG_CHANGE_SUCCESS_LANG_TABLE[LANG_NUM]; @@ -146,6 +148,8 @@ extern const char* const MSG_COUNT_X_LANG_TABLE[1]; #define MSG_COUNT_X LANG_TABLE_SELECT_EXPLICIT(MSG_COUNT_X_LANG_TABLE, 0) extern const char* const MSG_CURRENT_LANG_TABLE[LANG_NUM]; #define MSG_CURRENT LANG_TABLE_SELECT(MSG_CURRENT_LANG_TABLE) +extern const char* const MSG_DATE_LANG_TABLE[LANG_NUM]; +#define MSG_DATE LANG_TABLE_SELECT(MSG_DATE_LANG_TABLE) extern const char* const MSG_DISABLE_STEPPERS_LANG_TABLE[LANG_NUM]; #define MSG_DISABLE_STEPPERS LANG_TABLE_SELECT(MSG_DISABLE_STEPPERS_LANG_TABLE) extern const char* const MSG_DWELL_LANG_TABLE[LANG_NUM]; @@ -268,6 +272,8 @@ extern const char* const MSG_LANGUAGE_NAME_LANG_TABLE[LANG_NUM]; extern const char* const MSG_LANGUAGE_SELECT_LANG_TABLE[LANG_NUM]; #define MSG_LANGUAGE_SELECT LANG_TABLE_SELECT(MSG_LANGUAGE_SELECT_LANG_TABLE) #define MSG_LANGUAGE_SELECT_EXPLICIT(LANG) LANG_TABLE_SELECT_EXPLICIT(MSG_LANGUAGE_SELECT_LANG_TABLE, LANG) +extern const char* const MSG_LEFT_LANG_TABLE[LANG_NUM]; +#define MSG_LEFT LANG_TABLE_SELECT(MSG_LEFT_LANG_TABLE) extern const char* const MSG_LOADING_COLOR_LANG_TABLE[LANG_NUM]; #define MSG_LOADING_COLOR LANG_TABLE_SELECT(MSG_LOADING_COLOR_LANG_TABLE) extern const char* const MSG_LOADING_FILAMENT_LANG_TABLE[LANG_NUM]; @@ -310,6 +316,8 @@ extern const char* const MSG_MARK_FIL_LANG_TABLE[LANG_NUM]; #define MSG_MARK_FIL LANG_TABLE_SELECT(MSG_MARK_FIL_LANG_TABLE) extern const char* const MSG_MAX_LANG_TABLE[1]; #define MSG_MAX LANG_TABLE_SELECT_EXPLICIT(MSG_MAX_LANG_TABLE, 0) +extern const char* const MSG_MEASURED_SKEW_LANG_TABLE[LANG_NUM]; +#define MSG_MEASURED_SKEW LANG_TABLE_SELECT(MSG_MEASURED_SKEW_LANG_TABLE) extern const char* const MSG_MEASURE_BED_REFERENCE_HEIGHT_LINE1_LANG_TABLE[LANG_NUM]; #define MSG_MEASURE_BED_REFERENCE_HEIGHT_LINE1 LANG_TABLE_SELECT(MSG_MEASURE_BED_REFERENCE_HEIGHT_LINE1_LANG_TABLE) extern const char* const MSG_MEASURE_BED_REFERENCE_HEIGHT_LINE2_LANG_TABLE[LANG_NUM]; @@ -430,6 +438,8 @@ extern const char* const MSG_RESUMING_LANG_TABLE[LANG_NUM]; #define MSG_RESUMING LANG_TABLE_SELECT(MSG_RESUMING_LANG_TABLE) extern const char* const MSG_RESUMING_PRINT_LANG_TABLE[LANG_NUM]; #define MSG_RESUMING_PRINT LANG_TABLE_SELECT(MSG_RESUMING_PRINT_LANG_TABLE) +extern const char* const MSG_RIGHT_LANG_TABLE[LANG_NUM]; +#define MSG_RIGHT LANG_TABLE_SELECT(MSG_RIGHT_LANG_TABLE) extern const char* const MSG_SD_CANT_ENTER_SUBDIR_LANG_TABLE[1]; #define MSG_SD_CANT_ENTER_SUBDIR LANG_TABLE_SELECT_EXPLICIT(MSG_SD_CANT_ENTER_SUBDIR_LANG_TABLE, 0) extern const char* const MSG_SD_CANT_OPEN_SUBDIR_LANG_TABLE[1]; @@ -526,12 +536,16 @@ extern const char* const MSG_SET_ORIGIN_LANG_TABLE[1]; #define MSG_SET_ORIGIN LANG_TABLE_SELECT_EXPLICIT(MSG_SET_ORIGIN_LANG_TABLE, 0) extern const char* const MSG_SET_TEMPERATURE_LANG_TABLE[LANG_NUM]; #define MSG_SET_TEMPERATURE LANG_TABLE_SELECT(MSG_SET_TEMPERATURE_LANG_TABLE) +extern const char* const MSG_SEVERE_SKEW_LANG_TABLE[LANG_NUM]; +#define MSG_SEVERE_SKEW LANG_TABLE_SELECT(MSG_SEVERE_SKEW_LANG_TABLE) extern const char* const MSG_SHOW_END_STOPS_LANG_TABLE[LANG_NUM]; #define MSG_SHOW_END_STOPS LANG_TABLE_SELECT(MSG_SHOW_END_STOPS_LANG_TABLE) extern const char* const MSG_SILENT_MODE_OFF_LANG_TABLE[LANG_NUM]; #define MSG_SILENT_MODE_OFF LANG_TABLE_SELECT(MSG_SILENT_MODE_OFF_LANG_TABLE) extern const char* const MSG_SILENT_MODE_ON_LANG_TABLE[LANG_NUM]; #define MSG_SILENT_MODE_ON LANG_TABLE_SELECT(MSG_SILENT_MODE_ON_LANG_TABLE) +extern const char* const MSG_SLIGHT_SKEW_LANG_TABLE[LANG_NUM]; +#define MSG_SLIGHT_SKEW LANG_TABLE_SELECT(MSG_SLIGHT_SKEW_LANG_TABLE) extern const char* const MSG_SOFTWARE_RESET_LANG_TABLE[1]; #define MSG_SOFTWARE_RESET LANG_TABLE_SELECT_EXPLICIT(MSG_SOFTWARE_RESET_LANG_TABLE, 0) extern const char* const MSG_SPEED_LANG_TABLE[LANG_NUM]; @@ -616,12 +630,16 @@ extern const char* const MSG_WATCH_LANG_TABLE[LANG_NUM]; #define MSG_WATCH LANG_TABLE_SELECT(MSG_WATCH_LANG_TABLE) extern const char* const MSG_WATCHDOG_RESET_LANG_TABLE[1]; #define MSG_WATCHDOG_RESET LANG_TABLE_SELECT_EXPLICIT(MSG_WATCHDOG_RESET_LANG_TABLE, 0) +extern const char* const MSG_XYZ_DETAILS_LANG_TABLE[LANG_NUM]; +#define MSG_XYZ_DETAILS LANG_TABLE_SELECT(MSG_XYZ_DETAILS_LANG_TABLE) extern const char* const MSG_X_MAX_LANG_TABLE[1]; #define MSG_X_MAX LANG_TABLE_SELECT_EXPLICIT(MSG_X_MAX_LANG_TABLE, 0) extern const char* const MSG_X_MIN_LANG_TABLE[1]; #define MSG_X_MIN LANG_TABLE_SELECT_EXPLICIT(MSG_X_MIN_LANG_TABLE, 0) extern const char* const MSG_YES_LANG_TABLE[LANG_NUM]; #define MSG_YES LANG_TABLE_SELECT(MSG_YES_LANG_TABLE) +extern const char* const MSG_Y_DISTANCE_FROM_MIN_LANG_TABLE[LANG_NUM]; +#define MSG_Y_DISTANCE_FROM_MIN LANG_TABLE_SELECT(MSG_Y_DISTANCE_FROM_MIN_LANG_TABLE) extern const char* const MSG_Y_MAX_LANG_TABLE[1]; #define MSG_Y_MAX LANG_TABLE_SELECT_EXPLICIT(MSG_Y_MAX_LANG_TABLE, 0) extern const char* const MSG_Y_MIN_LANG_TABLE[1]; diff --git a/Firmware/language_cz.h b/Firmware/language_cz.h index 5f2e36af5..d9f3715d9 100644 --- a/Firmware/language_cz.h +++ b/Firmware/language_cz.h @@ -301,4 +301,13 @@ #define MSG_EXTRUDER_1 "Extruder 1" #define MSG_EXTRUDER_2 "Extruder 2" #define MSG_EXTRUDER_3 "Extruder 3" -#define MSG_EXTRUDER_4 "Extruder 4" \ No newline at end of file +#define MSG_EXTRUDER_4 "Extruder 4" +#define MSG_DATE "Datum:" +#define MSG_XYZ_DETAILS "Detaily XYZ kal." +#define MSG_Y_DISTANCE_FROM_MIN "Y vzdalenost od min:" +#define MSG_LEFT "Levy:" +#define MSG_CENTER "Stred:" +#define MSG_RIGHT "Pravy:" +#define MSG_MEASURED_SKEW "Merene zkoseni:" +#define MSG_SLIGHT_SKEW "Lehke zkoseni:" +#define MSG_SEVERE_SKEW "Tezke zkoseni:" \ No newline at end of file diff --git a/Firmware/language_de.h b/Firmware/language_de.h index fe5f41825..aab7c91b9 100644 --- a/Firmware/language_de.h +++ b/Firmware/language_de.h @@ -314,4 +314,13 @@ #define MSG_EXTRUDER_1 "Extruder 1" #define MSG_EXTRUDER_2 "Extruder 2" #define MSG_EXTRUDER_3 "Extruder 3" -#define MSG_EXTRUDER_4 "Extruder 4" \ No newline at end of file +#define MSG_EXTRUDER_4 "Extruder 4" +#define MSG_DATE "Datum" +#define MSG_XYZ_DETAILS "XYZ Kal. Details" +#define MSG_Y_DISTANCE_FROM_MIN "Y Entfernung vom min" +#define MSG_LEFT "Links:" +#define MSG_CENTER "Mitte:" +#define MSG_RIGHT "Rechts:" +#define MSG_MEASURED_SKEW "Schraeglauf:" +#define MSG_SLIGHT_SKEW "Leichter Schr.:" +#define MSG_SEVERE_SKEW "Schwerer Schr.:" \ No newline at end of file diff --git a/Firmware/language_en.h b/Firmware/language_en.h index 2cc2824e6..721385648 100644 --- a/Firmware/language_en.h +++ b/Firmware/language_en.h @@ -302,4 +302,12 @@ #define(length=17, lines=1) MSG_EXTRUDER_2 "Extruder 2" #define(length=17, lines=1) MSG_EXTRUDER_3 "Extruder 3" #define(length=17, lines=1) MSG_EXTRUDER_4 "Extruder 4" - +#define(length=17, lines=1) MSG_DATE "Date:" +#define(length=19, lines=1) MSG_XYZ_DETAILS "XYZ cal. details" +#define(length=20, lines=1) MSG_Y_DISTANCE_FROM_MIN "Y distance from min:" +#define(length=12, lines=1) MSG_LEFT "Left:" +#define(length=12, lines=1) MSG_CENTER "Center:" +#define(length=12, lines=1) MSG_RIGHT "Right:" +#define(length=15, lines=1) MSG_MEASURED_SKEW "Measured skew:" +#define(length=15, lines=1) MSG_SLIGHT_SKEW "Slight skew:" +#define(length=15, lines=1) MSG_SEVERE_SKEW "Severe skew:" \ No newline at end of file diff --git a/Firmware/language_es.h b/Firmware/language_es.h index d44cda831..1d56ed025 100644 --- a/Firmware/language_es.h +++ b/Firmware/language_es.h @@ -295,4 +295,13 @@ #define MSG_EXTRUDER_1 "Extrusor 1" #define MSG_EXTRUDER_2 "Extrusor 2" #define MSG_EXTRUDER_3 "Extrusor 3" -#define MSG_EXTRUDER_4 "Extrusor 4" \ No newline at end of file +#define MSG_EXTRUDER_4 "Extrusor 4" +#define MSG_DATE "Fecha:" +#define MSG_XYZ_DETAILS "Inform. XYZ cal." +#define MSG_Y_DISTANCE_FROM_MIN "Dist. Y desde min:" +#define MSG_LEFT "Izquierda:" +#define MSG_CENTER "Centro:" +#define MSG_RIGHT "Derecha:" +#define MSG_MEASURED_SKEW "Inclin. medida:" +#define MSG_SLIGHT_SKEW "Inclin. ligera:" +#define MSG_SEVERE_SKEW "Inclin. severa:" \ No newline at end of file diff --git a/Firmware/language_it.h b/Firmware/language_it.h index 629754760..d25a17200 100644 --- a/Firmware/language_it.h +++ b/Firmware/language_it.h @@ -286,4 +286,13 @@ #define MSG_EXTRUDER_1 "Estrusore 1" #define MSG_EXTRUDER_2 "Estrusore 2" #define MSG_EXTRUDER_3 "Estrusore 3" -#define MSG_EXTRUDER_4 "Estrusore 4" \ No newline at end of file +#define MSG_EXTRUDER_4 "Estrusore 4" +#define MSG_DATE "Data" +#define MSG_XYZ_DETAILS "XYZ Cal. dettagli" +#define MSG_Y_DISTANCE_FROM_MIN "Distanza Y da min:" +#define MSG_LEFT "Sinistra:" +#define MSG_CENTER "Centro:" +#define MSG_RIGHT "Destra:" +#define MSG_MEASURED_SKEW "Incl. misurata:" +#define MSG_SLIGHT_SKEW "Incl. leggera:" +#define MSG_SEVERE_SKEW "Inc. rilevante:" \ No newline at end of file diff --git a/Firmware/language_pl.h b/Firmware/language_pl.h index 3cd283ded..e953e7c9d 100644 --- a/Firmware/language_pl.h +++ b/Firmware/language_pl.h @@ -298,4 +298,13 @@ #define MSG_EXTRUDER_1 "Ekstruder 1" #define MSG_EXTRUDER_2 "Ekstruder 2" #define MSG_EXTRUDER_3 "Ekstruder 3" -#define MSG_EXTRUDER_4 "Ekstruder 4" \ No newline at end of file +#define MSG_EXTRUDER_4 "Ekstruder 4" +#define MSG_DATE "Data:" +#define MSG_XYZ_DETAILS "Szczegoly kal.XYZ" +#define MSG_Y_DISTANCE_FROM_MIN "Odleglosc Y od min.:" +#define MSG_LEFT "Lewy:" +#define MSG_CENTER "Srodek:" +#define MSG_RIGHT "Prawy:" +#define MSG_MEASURED_SKEW "Zmier. sciecie:" +#define MSG_SLIGHT_SKEW "Lekkie sciecie:" +#define MSG_SEVERE_SKEW "Ostre sciecie:" \ No newline at end of file diff --git a/Firmware/mesh_bed_calibration.cpp b/Firmware/mesh_bed_calibration.cpp index 6176d24db..4d795b0d6 100644 --- a/Firmware/mesh_bed_calibration.cpp +++ b/Firmware/mesh_bed_calibration.cpp @@ -2468,6 +2468,8 @@ void count_xyz_details() { MYSERIAL.println(vec_y[0]); SERIAL_ECHOPGM("vec_y[1]:"); MYSERIAL.println(vec_y[1]); + SERIAL_ECHOPGM("Calibration status:"); + MYSERIAL.println(int(calibration_status())); a2 = -1 * asin(vec_y[0] / MACHINE_AXIS_SCALE_Y); /* SERIAL_ECHOLNPGM("par:"); diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index 040f5a74b..c731651c5 100644 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -930,7 +930,7 @@ static void lcd_support_menu() MENU_ITEM(back, PSTR(ELECTRONICS),lcd_main_menu); MENU_ITEM(back, PSTR(NOZZLE_TYPE),lcd_main_menu); MENU_ITEM(back, PSTR("------------"), lcd_main_menu); - MENU_ITEM(back, PSTR("Date: "), lcd_main_menu); + MENU_ITEM(back, MSG_DATE, lcd_main_menu); MENU_ITEM(back, PSTR(__DATE__), lcd_main_menu); // Show the FlashAir IP address, if the card is available. @@ -941,7 +941,7 @@ static void lcd_support_menu() } #ifndef MK1BP MENU_ITEM(back, PSTR("------------"), lcd_main_menu); - MENU_ITEM(function, PSTR("XYZ cal. details"), lcd_service_mode_show_result); + if(!IS_SD_PRINTING) MENU_ITEM(function, MSG_XYZ_DETAILS, lcd_service_mode_show_result); #endif //MK1BP END_MENU(); } @@ -1352,16 +1352,16 @@ void lcd_service_mode_show_result() { count_xyz_details(); lcd_update_enable(false); lcd_implementation_clear(); - lcd_printPGM(PSTR("Y distance from min:")); - lcd_print_at_PGM(0, 1, PSTR("Left:")); - lcd_print_at_PGM(0, 2, PSTR("Center:")); - lcd_print_at_PGM(0, 3, PSTR("Right:")); + lcd_printPGM(MSG_Y_DISTANCE_FROM_MIN); + lcd_print_at_PGM(0, 1, MSG_LEFT); + lcd_print_at_PGM(0, 2, MSG_CENTER); + lcd_print_at_PGM(0, 3, MSG_RIGHT); for (int i = 0; i < 3; i++) { if(distance_from_min[i] < 200) { - lcd_print_at_PGM(8, i + 1, PSTR("")); + lcd_print_at_PGM(11, i + 1, PSTR("")); lcd.print(distance_from_min[i]); - lcd_print_at_PGM((distance_from_min[i] < 0) ? 14 : 13, i + 1, PSTR("mm")); - } else lcd_print_at_PGM(8, i + 1, PSTR("N/A")); + lcd_print_at_PGM((distance_from_min[i] < 0) ? 17 : 16, i + 1, PSTR("mm")); + } else lcd_print_at_PGM(11, i + 1, PSTR("N/A")); } delay_keep_alive(500); while (!lcd_clicked()) { @@ -1371,17 +1371,18 @@ void lcd_service_mode_show_result() { lcd_implementation_clear(); - lcd_printPGM(PSTR("Measured skew: ")); + lcd_printPGM(MSG_MEASURED_SKEW); if (angleDiff < 100) { + lcd.setCursor(15, 0); lcd.print(angleDiff * 180 / M_PI); lcd.print(LCD_STR_DEGREE); - }else lcd_print_at_PGM(15, 0, PSTR("N/A")); + }else lcd_print_at_PGM(16, 0, PSTR("N/A")); lcd_print_at_PGM(0, 1, PSTR("--------------------")); - lcd_print_at_PGM(0, 2, PSTR("Slight skew:")); + lcd_print_at_PGM(0, 2, MSG_SLIGHT_SKEW); lcd_print_at_PGM(15, 2, PSTR("")); lcd.print(bed_skew_angle_mild * 180 / M_PI); lcd.print(LCD_STR_DEGREE); - lcd_print_at_PGM(0, 3, PSTR("Severe skew:")); + lcd_print_at_PGM(0, 3, MSG_SEVERE_SKEW); lcd_print_at_PGM(15, 3, PSTR("")); lcd.print(bed_skew_angle_extreme * 180 / M_PI); lcd.print(LCD_STR_DEGREE); -- cgit v1.2.3