Merge branch 'MK3' into MK3-PFW-1024

This commit is contained in:
Alex Voinea 2019-11-16 11:28:29 +02:00
commit 07b6173aaa
26 changed files with 1413 additions and 1656 deletions

14
.editorconfig Normal file
View file

@ -0,0 +1,14 @@
#-*-mode:conf-*-
# editorconfig file (see EditorConfig.org)
root = true
[*]
end_of_line = lf
insert_final_newline = true
charset = utf-8
trim_trailing_whitespace = true
indent_style = space
indent_size = 4
tab_width = 4
max_line_length = 100

View file

@ -16,8 +16,8 @@ extern uint16_t nPrinterType;
extern PGM_P sPrinterName;
// Firmware version
#define FW_VERSION "3.8.1-RC1"
#define FW_COMMIT_NR 2851
#define FW_VERSION "3.8.1"
#define FW_COMMIT_NR 2869
// FW_VERSION_UNKNOWN means this is an unofficial build.
// The firmware should only be checked into github with this symbol.
#define FW_DEV_VERSION FW_VERSION_UNKNOWN
@ -345,7 +345,7 @@ your extruder heater takes 2 minutes to hit the target on heating.
#define Y_PROBE_OFFSET_FROM_EXTRUDER -29
#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35
#define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z before homing (G28) for Probe Clearance.
#define Z_RAISE_BEFORE_HOMING 5 // (in mm) Raise Z before homing (G28) for Probe Clearance.
// Be sure you have this distance over your Z_MAX_POS in case
#define XY_TRAVEL_SPEED 8000 // X and Y axis travel speed between probes, in mm/min
@ -549,6 +549,12 @@ enum CalibrationStatus
CALIBRATION_STATUS_UNKNOWN = 0,
};
// Try to maintain a minimum distance from the bed even when Z is
// unknown when doing the following operations
#define MIN_Z_FOR_LOAD 50
#define MIN_Z_FOR_UNLOAD 20
#define MIN_Z_FOR_PREHEAT 10
#include "Configuration_adv.h"
#include "thermistortables.h"

View file

@ -358,9 +358,6 @@ extern int fan_speed[2];
// Handling multiple extruders pins
extern uint8_t active_extruder;
#endif
//Long pause
extern unsigned long pause_time;
extern unsigned long start_pause_print;
@ -513,4 +510,6 @@ void M600_wait_for_user(float HotendTempBckp);
void M600_check_state(float nozzle_temp);
void load_filament_final_feed();
void marlin_wait_for_click();
void marlin_rise_z(void);
void raise_z_above(float target, bool plan=true);
#endif

View file

@ -1239,8 +1239,8 @@ void setup()
// Once a firmware boots up, it forces at least a language selection, which changes
// EEPROM_LANG to number lower than 0x0ff.
// 1) Set a high power mode.
eeprom_update_byte((uint8_t*)EEPROM_SILENT, SILENT_MODE_OFF);
#ifdef TMC2130
eeprom_write_byte((uint8_t*)EEPROM_SILENT, 0);
tmc2130_mode = TMC2130_MODE_NORMAL;
#endif //TMC2130
eeprom_write_byte((uint8_t*)EEPROM_WIZARD_ACTIVE, 1); //run wizard
@ -2101,6 +2101,52 @@ bool check_commands() {
}
// raise_z_above: slowly raise Z to the requested height
//
// contrarily to a simple move, this function will carefully plan a move
// when the current Z position is unknown. In such cases, stallguard is
// enabled and will prevent prolonged pushing against the Z tops
void raise_z_above(float target, bool plan)
{
if (current_position[Z_AXIS] >= target)
return;
// Z needs raising
current_position[Z_AXIS] = target;
if (axis_known_position[Z_AXIS])
{
// current position is known, it's safe to raise Z
if(plan) plan_buffer_line_curposXYZE(max_feedrate[Z_AXIS], active_extruder);
return;
}
// ensure Z is powered in normal mode to overcome initial load
enable_z();
st_synchronize();
// rely on crashguard to limit damage
bool z_endstop_enabled = enable_z_endstop(true);
#ifdef TMC2130
tmc2130_home_enter(Z_AXIS_MASK);
#endif //TMC2130
plan_buffer_line_curposXYZE(homing_feedrate[Z_AXIS] / 60, active_extruder);
st_synchronize();
#ifdef TMC2130
if (endstop_z_hit_on_purpose())
{
// not necessarily exact, but will avoid further vertical moves
current_position[Z_AXIS] = max_pos[Z_AXIS];
plan_set_position(current_position[X_AXIS], current_position[Y_AXIS],
current_position[Z_AXIS], current_position[E_AXIS]);
}
tmc2130_home_exit();
#endif //TMC2130
enable_z_endstop(z_endstop_enabled);
}
#ifdef TMC2130
bool calibrate_z_auto()
{
@ -2430,6 +2476,9 @@ void ramming() {
#ifdef TMC2130
void force_high_power_mode(bool start_high_power_section) {
#ifdef PSU_Delta
if (start_high_power_section == true) enable_force_z();
#endif //PSU_Delta
uint8_t silent;
silent = eeprom_read_byte((uint8_t*)EEPROM_SILENT);
if (silent == 1) {
@ -2478,9 +2527,7 @@ static void gcode_G28(bool home_x_axis, long home_x_value, bool home_y_axis, lon
//if we are homing all axes, first move z higher to protect heatbed/steel sheet
if (home_all_axes) {
current_position[Z_AXIS] += MESH_HOME_Z_SEARCH;
feedrate = homing_feedrate[Z_AXIS];
plan_buffer_line_curposXYZE(feedrate / 60, active_extruder);
raise_z_above(MESH_HOME_Z_SEARCH);
st_synchronize();
}
#ifdef ENABLE_AUTO_BED_LEVELING
@ -2591,26 +2638,21 @@ static void gcode_G28(bool home_x_axis, long home_x_value, bool home_y_axis, lon
#ifndef Z_SAFE_HOMING
if(home_z) {
#if defined (Z_RAISE_BEFORE_HOMING) && (Z_RAISE_BEFORE_HOMING > 0)
destination[Z_AXIS] = Z_RAISE_BEFORE_HOMING * home_dir(Z_AXIS) * (-1); // Set destination away from bed
feedrate = max_feedrate[Z_AXIS];
plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate, active_extruder);
raise_z_above(Z_RAISE_BEFORE_HOMING);
st_synchronize();
#endif // defined (Z_RAISE_BEFORE_HOMING) && (Z_RAISE_BEFORE_HOMING > 0)
#if (defined(MESH_BED_LEVELING) && !defined(MK1BP)) // If Mesh bed leveling, move X&Y to safe position for home
if (!(axis_known_position[X_AXIS] && axis_known_position[Y_AXIS] ))
{
homeaxis(X_AXIS);
homeaxis(Y_AXIS);
}
raise_z_above(MESH_HOME_Z_SEARCH);
st_synchronize();
if (!axis_known_position[X_AXIS]) homeaxis(X_AXIS);
if (!axis_known_position[Y_AXIS]) homeaxis(Y_AXIS);
// 1st mesh bed leveling measurement point, corrected.
world2machine_initialize();
world2machine(pgm_read_float(bed_ref_points_4), pgm_read_float(bed_ref_points_4+1), destination[X_AXIS], destination[Y_AXIS]);
world2machine_reset();
if (destination[Y_AXIS] < Y_MIN_POS)
destination[Y_AXIS] = Y_MIN_POS;
destination[Z_AXIS] = MESH_HOME_Z_SEARCH; // Set destination away from bed
feedrate = homing_feedrate[Z_AXIS]/10;
current_position[Z_AXIS] = 0;
feedrate = homing_feedrate[X_AXIS] / 20;
enable_endstops(false);
#ifdef DEBUG_BUILD
SERIAL_ECHOLNPGM("plan_set_position()");
@ -3143,15 +3185,6 @@ static void gcode_M600(bool automatic, float x_position, float y_position, float
custom_message_type = CustomMsg::Status;
}
//! @brief Rise Z if too low to avoid blob/jam before filament loading
//!
//! It doesn't plan_buffer_line(), as it expects plan_buffer_line() to be called after
//! during extruding (loading) filament.
void marlin_rise_z(void)
{
if (current_position[Z_AXIS] < 20) current_position[Z_AXIS] += 30;
}
void gcode_M701()
{
printf_P(PSTR("gcode_M701 begin\n"));
@ -3180,7 +3213,7 @@ void gcode_M701()
plan_buffer_line_curposXYZE(400 / 60, active_extruder); //fast sequence
st_synchronize();
marlin_rise_z();
raise_z_above(MIN_Z_FOR_LOAD, false);
current_position[E_AXIS] += 30;
plan_buffer_line_curposXYZE(400 / 60, active_extruder); //fast sequence
@ -7611,27 +7644,33 @@ Sigma_Exit:
case 350:
{
#ifdef TMC2130
if(code_seen('E'))
for (int i=0; i<NUM_AXIS; i++)
{
uint16_t res_new = code_value();
if ((res_new == 8) || (res_new == 16) || (res_new == 32) || (res_new == 64) || (res_new == 128))
if(code_seen(axis_codes[i]))
{
st_synchronize();
uint8_t axis = E_AXIS;
uint16_t res = tmc2130_get_res(axis);
tmc2130_set_res(axis, res_new);
cs.axis_ustep_resolution[axis] = res_new;
if (res_new > res)
uint16_t res_new = code_value();
bool res_valid = (res_new == 8) || (res_new == 16) || (res_new == 32); // resolutions valid for all axis
res_valid |= (i != E_AXIS) && ((res_new == 1) || (res_new == 2) || (res_new == 4)); // resolutions valid for X Y Z only
res_valid |= (i == E_AXIS) && ((res_new == 64) || (res_new == 128)); // resolutions valid for E only
if (res_valid)
{
uint16_t fac = (res_new / res);
cs.axis_steps_per_unit[axis] *= fac;
position[E_AXIS] *= fac;
}
else
{
uint16_t fac = (res / res_new);
cs.axis_steps_per_unit[axis] /= fac;
position[E_AXIS] /= fac;
st_synchronize();
uint16_t res = tmc2130_get_res(i);
tmc2130_set_res(i, res_new);
cs.axis_ustep_resolution[i] = res_new;
if (res_new > res)
{
uint16_t fac = (res_new / res);
cs.axis_steps_per_unit[i] *= fac;
position[i] *= fac;
}
else
{
uint16_t fac = (res / res_new);
cs.axis_steps_per_unit[i] /= fac;
position[i] /= fac;
}
}
}
}
@ -8867,6 +8906,8 @@ void delay_keep_alive(unsigned int ms)
}
static void wait_for_heater(long codenum, uint8_t extruder) {
if (!degTargetHotend(extruder))
return;
#ifdef TEMP_RESIDENCY_TIME
long residencyStart;
@ -9510,10 +9551,9 @@ void long_pause() //long pause print
current_position[Y_AXIS] = Y_PAUSE_POS;
plan_buffer_line_curposXYZE(50, active_extruder);
// Turn off the print fan
// Turn off the hotends and print fan
setAllTargetHotends(0);
fanSpeed = 0;
st_synchronize();
}
void serialecho_temperatures() {

View file

@ -137,8 +137,8 @@ void CardReader::lsDive(const char *prepend, SdFile parent, const char * const m
SERIAL_ECHOPGM("Access date: ");
MYSERIAL.println(p.lastAccessDate);
SERIAL_ECHOLNPGM("");*/
creationDate = p.creationDate;
creationTime = p.creationTime;
modificationDate = p.lastWriteDate;
modificationTime = p.lastWriteTime;
//writeDate = p.lastAccessDate;
if (match != NULL) {
if (strcasecmp(match, filename) == 0) return;
@ -763,8 +763,8 @@ void CardReader::presort() {
#endif
#elif SDSORT_USES_STACK
char sortnames[fileCnt][LONG_FILENAME_LENGTH];
uint16_t creation_time[fileCnt];
uint16_t creation_date[fileCnt];
uint16_t modification_time[fileCnt];
uint16_t modification_date[fileCnt];
#endif
// Folder sorting needs 1 bit per entry for flags.
@ -784,8 +784,8 @@ void CardReader::presort() {
// retaining only two filenames at a time. This is very
// slow but is safest and uses minimal RAM.
char name1[LONG_FILENAME_LENGTH + 1];
uint16_t creation_time_bckp;
uint16_t creation_date_bckp;
uint16_t modification_time_bckp;
uint16_t modification_date_bckp;
#endif
position = 0;
@ -811,8 +811,8 @@ void CardReader::presort() {
#else
// Copy filenames into the static array
strcpy(sortnames[i], LONGEST_FILENAME);
creation_time[i] = creationTime;
creation_date[i] = creationDate;
modification_time[i] = modificationTime;
modification_date[i] = modificationDate;
#if SDSORT_CACHE_NAMES
strcpy(sortshort[i], filename);
#endif
@ -837,12 +837,12 @@ void CardReader::presort() {
// Compare names from the array or just the two buffered names
#if SDSORT_USES_RAM
#define _SORT_CMP_NODIR() (strcasecmp(sortnames[o1], sortnames[o2]) > 0)
#define _SORT_CMP_TIME_NODIR() (((creation_date[o1] == creation_date[o2]) && (creation_time[o1] < creation_time[o2])) || \
(creation_date[o1] < creation_date [o2]))
#define _SORT_CMP_TIME_NODIR() (((modification_date[o1] == modification_date[o2]) && (modification_time[o1] < modification_time[o2])) || \
(modification_date[o1] < modification_date [o2]))
#else
#define _SORT_CMP_NODIR() (strcasecmp(name1, name2) > 0) //true if lowercase(name1) > lowercase(name2)
#define _SORT_CMP_TIME_NODIR() (((creation_date_bckp == creationDate) && (creation_time_bckp > creationTime)) || \
(creation_date_bckp > creationDate))
#define _SORT_CMP_TIME_NODIR() (((modification_date_bckp == modificationDate) && (modification_time_bckp > modificationTime)) || \
(modification_date_bckp > modificationDate))
#endif
@ -893,8 +893,8 @@ void CardReader::presort() {
counter++;
getfilename_simple(positions[o1]);
strcpy(name1, LONGEST_FILENAME); // save (or getfilename below will trounce it)
creation_date_bckp = creationDate;
creation_time_bckp = creationTime;
modification_date_bckp = modificationDate;
modification_time_bckp = modificationTime;
#if HAS_FOLDER_SORTING
bool dir1 = filenameIsDir;
#endif

View file

@ -77,7 +77,7 @@ public:
bool cardOK ;
bool paused ;
char filename[13];
uint16_t creationTime, creationDate;
uint16_t modificationTime, modificationDate;
uint32_t cluster, position;
char longFilename[LONG_FILENAME_LENGTH];
bool filenameIsDir;
@ -114,8 +114,8 @@ private:
#endif
#elif !SDSORT_USES_STACK
char sortnames[SDSORT_LIMIT][FILENAME_LENGTH];
uint16_t creation_time[SDSORT_LIMIT];
uint16_t creation_date[SDSORT_LIMIT];
uint16_t modification_time[SDSORT_LIMIT];
uint16_t modification_date[SDSORT_LIMIT];
#endif
// Folder sorting uses an isDir array when caching items.

View file

@ -184,6 +184,22 @@ static void menu_draw_item_puts_P(char type_char, const char* str)
lcd_printf_P(PSTR("%c%-18.18S%c"), menu_selection_mark(), str, type_char);
}
static void menu_draw_toggle_puts_P(const char* str, const char* toggle, const uint8_t settings)
{
//settings:
//xxxxxcba
//a = selection mark. If it's set(1), then '>' will be used as the first character on the line. Else leave blank
//b = toggle string is from progmem
//c = do not set cursor at all. Must be handled externally.
char lineStr[LCD_WIDTH + 1];
const char eol = (toggle == NULL)?LCD_STR_ARROW_RIGHT[0]:' ';
if (toggle == NULL) toggle = _T(MSG_NA);
sprintf_P(lineStr, PSTR("%c%-18.18S"), (settings & 0x01)?'>':' ', str);
sprintf_P(lineStr + LCD_WIDTH - ((settings & 0x02)?strlen_P(toggle):strlen(toggle)) - 3, (settings & 0x02)?PSTR("[%S]%c"):PSTR("[%s]%c"), toggle, eol);
if (!(settings & 0x04)) lcd_set_cursor(0, menu_row);
fputs(lineStr, lcdout);
}
//! @brief Format sheet name
//!
//! @param[in] sheet_E Sheet in EEPROM
@ -375,6 +391,33 @@ uint8_t menu_item_function_P(const char* str, char number, void (*func)(uint8_t)
return 0;
}
uint8_t menu_item_toggle_P(const char* str, const char* toggle, menu_func_t func, const uint8_t settings)
{
if (menu_item == menu_line)
{
if (lcd_draw_update) menu_draw_toggle_puts_P(str, toggle, settings | (menu_selection_mark()=='>'));
if (menu_clicked && (lcd_encoder == menu_item))
{
if (toggle == NULL) // print N/A warning message
{
menu_submenu(func);
return menu_item_ret();
}
else // do the actual toggling
{
menu_clicked = false;
lcd_consume_click();
lcd_update_enabled = 0;
if (func) func();
lcd_update_enabled = 1;
return menu_item_ret();
}
}
}
menu_item++;
return 0;
}
uint8_t menu_item_gcode_P(const char* str, const char* str_gcode)
{
if (menu_item == menu_line)
@ -390,17 +433,12 @@ uint8_t menu_item_gcode_P(const char* str, const char* str_gcode)
return 0;
}
const char menu_20x_space[] PROGMEM = " ";
const char menu_fmt_int3[] PROGMEM = "%c%.15S:%s%3d";
const char menu_fmt_float31[] PROGMEM = "%-12.12S%+8.1f";
const char menu_fmt_float13[] PROGMEM = "%c%-13.13S%+5.3f";
const char menu_fmt_float13off[] PROGMEM = "%c%-13.13S%6.6S";
template<typename T>
static void menu_draw_P(char chr, const char* str, int16_t val);
@ -409,8 +447,8 @@ void menu_draw_P<int16_t*>(char chr, const char* str, int16_t val)
{
int text_len = strlen_P(str);
if (text_len > 15) text_len = 15;
char spaces[21];
strcpy_P(spaces, menu_20x_space);
char spaces[LCD_WIDTH + 1] = {0};
memset(spaces,' ', LCD_WIDTH);
if (val <= -100) spaces[15 - text_len - 1] = 0;
else spaces[15 - text_len] = 0;
lcd_printf_P(menu_fmt_int3, chr, str, spaces, val);
@ -423,7 +461,7 @@ void menu_draw_P<uint8_t*>(char chr, const char* str, int16_t val)
float factor = 1.0f + static_cast<float>(val) / 1000.0f;
if (val <= _md->minEditValue)
{
lcd_printf_P(menu_fmt_float13off, chr, str, _i(" [off]"));
menu_draw_toggle_puts_P(str, _T(MSG_OFF), 0x04 | 0x02 | (chr=='>'));
}
else
{

View file

@ -118,6 +118,10 @@ extern uint8_t menu_item_function_P(const char* str, menu_func_t func);
#define MENU_ITEM_FUNCTION_NR_P(str, number, func, fn_par) do { if (menu_item_function_P(str, number, func, fn_par)) return; } while (0)
extern uint8_t menu_item_function_P(const char* str, char number, void (*func)(uint8_t), uint8_t fn_par);
#define MENU_ITEM_TOGGLE_P(str, toggle, func) do { if (menu_item_toggle_P(str, toggle, func, 0x02)) return; } while (0)
#define MENU_ITEM_TOGGLE(str, toggle, func) do { if (menu_item_toggle_P(str, toggle, func, 0x00)) return; } while (0)
extern uint8_t menu_item_toggle_P(const char* str, const char* toggle, menu_func_t func, const uint8_t settings);
#define MENU_ITEM_GCODE_P(str, str_gcode) do { if (menu_item_gcode_P(str, str_gcode)) return; } while (0)
extern uint8_t menu_item_gcode_P(const char* str, const char* str_gcode);

View file

@ -9,7 +9,6 @@
//internationalized messages
const char MSG_AUTO_HOME[] PROGMEM_I1 = ISTR("Auto home"); ////
const char MSG_AUTO_MODE_ON[] PROGMEM_I1 = ISTR("Mode [auto power]"); ////
const char MSG_BABYSTEP_Z[] PROGMEM_I1 = ISTR("Live adjust Z"); //// c=18
const char MSG_BABYSTEP_Z_NOT_SET[] PROGMEM_I1 = ISTR("Distance between tip of the nozzle and the bed surface has not been set yet. Please follow the manual, chapter First steps, section First layer calibration."); ////c=20 r=12
const char MSG_BED[] PROGMEM_I1 = ISTR("Bed"); ////
@ -22,9 +21,7 @@ const char MSG_CARD_MENU[] PROGMEM_I1 = ISTR("Print from SD"); ////
const char MSG_CONFIRM_NOZZLE_CLEAN[] PROGMEM_I1 = ISTR("Please clean the nozzle for calibration. Click when done."); ////c=20 r=8
const char MSG_COOLDOWN[] PROGMEM_I1 = ISTR("Cooldown"); ////
const char MSG_CRASH_DETECTED[] PROGMEM_I1 = ISTR("Crash detected."); ////c=20 r=1
const char MSG_CRASHDETECT_NA[] PROGMEM_I1 = ISTR("Crash det. [N/A]"); ////
const char MSG_CRASHDETECT_OFF[] PROGMEM_I1 = ISTR("Crash det. [off]"); ////
const char MSG_CRASHDETECT_ON[] PROGMEM_I1 = ISTR("Crash det. [on]"); ////
const char MSG_CRASHDETECT[] PROGMEM_I1 = ISTR("Crash det."); ////
const char MSG_ERROR[] PROGMEM_I1 = ISTR("ERROR:"); ////
const char MSG_EXTRUDER[] PROGMEM_I1 = ISTR("Extruder"); ////c=17 r=1
const char MSG_FILAMENT[] PROGMEM_I1 = ISTR("Filament"); ////c=17 r=1
@ -40,9 +37,8 @@ const char MSG_FIND_BED_OFFSET_AND_SKEW_LINE2[] PROGMEM_I1 = ISTR(" of 4"); ////
const char MSG_FINISHING_MOVEMENTS[] PROGMEM_I1 = ISTR("Finishing movements"); ////c=20 r=1
const char MSG_FOLLOW_CALIBRATION_FLOW[] PROGMEM_I1 = ISTR("Printer has not been calibrated yet. Please follow the manual, chapter First steps, section Calibration flow."); ////c=20 r=8
const char MSG_FOLLOW_Z_CALIBRATION_FLOW[] PROGMEM_I1 = ISTR("There is still a need to make Z calibration. Please follow the manual, chapter First steps, section Calibration flow."); ////c=20 r=8
const char MSG_FSENS_AUTOLOAD_NA[] PROGMEM_I1 = ISTR("F. autoload [N/A]"); ////c=17 r=1
const char MSG_FSENSOR_OFF[] PROGMEM_I1 = ISTR("Fil. sensor [off]"); ////
const char MSG_FSENSOR_ON[] PROGMEM_I1 = ISTR("Fil. sensor [on]"); ////
const char MSG_FSENSOR_AUTOLOAD[] PROGMEM_I1 = ISTR("F. autoload"); ////c=17 r=1
const char MSG_FSENSOR[] PROGMEM_I1 = ISTR("Fil. sensor"); ////
const char MSG_HEATING[] PROGMEM_I1 = ISTR("Heating"); ////
const char MSG_HEATING_COMPLETE[] PROGMEM_I1 = ISTR("Heating done."); ////c=20
const char MSG_HOMEYZ[] PROGMEM_I1 = ISTR("Calibrate Z"); ////
@ -85,14 +81,16 @@ const char MSG_SELFTEST_FILAMENT_SENSOR[] PROGMEM_I1 = ISTR("Filament sensor");
const char MSG_SELFTEST_WIRINGERROR[] PROGMEM_I1 = ISTR("Wiring error"); ////
const char MSG_SETTINGS[] PROGMEM_I1 = ISTR("Settings"); ////
const char MSG_HW_SETUP[] PROGMEM_I1 = ISTR("HW Setup"); ////
const char MSG_SILENT_MODE_OFF[] PROGMEM_I1 = ISTR("Mode [high power]"); ////
const char MSG_SILENT_MODE_ON[] PROGMEM_I1 = ISTR("Mode [silent]"); ////
const char MSG_STEALTH_MODE_OFF[] PROGMEM_I1 = ISTR("Mode [Normal]"); ////
const char MSG_STEALTH_MODE_ON[] PROGMEM_I1 = ISTR("Mode [Stealth]"); ////
const char MSG_MODE[] PROGMEM_I1 = ISTR("Mode"); ////
const char MSG_HIGH_POWER[] PROGMEM_I1 = ISTR("High power"); ////
const char MSG_AUTO_POWER[] PROGMEM_I1 = ISTR("Auto power"); ////
const char MSG_SILENT[] PROGMEM_I1 = ISTR("Silent"); ////
const char MSG_NORMAL[] PROGMEM_I1 = ISTR("Normal"); ////
const char MSG_STEALTH[] PROGMEM_I1 = ISTR("Stealth"); ////
const char MSG_STEEL_SHEET_CHECK[] PROGMEM_I1 = ISTR("Is steel sheet on heatbed?"); ////c=20 r=2
const char MSG_STOP_PRINT[] PROGMEM_I1 = ISTR("Stop print"); ////
const char MSG_STOPPED[] PROGMEM_I1 = ISTR("STOPPED. "); ////
const char MSG_TEMP_CALIBRATION[] PROGMEM_I1 = ISTR("Temp. cal. "); ////c=20 r=1
const char MSG_TEMP_CALIBRATION[] PROGMEM_I1 = ISTR("Temp. cal."); ////c=12 r=1
const char MSG_TEMP_CALIBRATION_DONE[] PROGMEM_I1 = ISTR("Temperature calibration is finished and active. Temp. calibration can be disabled in menu Settings->Temp. cal."); ////c=20 r=12
const char MSG_UNLOAD_FILAMENT[] PROGMEM_I1 = ISTR("Unload filament"); ////c=17
const char MSG_UNLOADING_FILAMENT[] PROGMEM_I1 = ISTR("Unloading filament"); ////c=20 r=1
@ -104,13 +102,38 @@ const char MSG_WIZARD_QUIT[] PROGMEM_I1 = ISTR("You can always resume the Wizard
const char MSG_YES[] PROGMEM_I1 = ISTR("Yes"); ////
const char MSG_V2_CALIBRATION[] PROGMEM_I1 = ISTR("First layer cal."); ////c=17 r=1
const char WELCOME_MSG[] PROGMEM_I1 = ISTR(CUSTOM_MENDEL_NAME " OK."); ////c=20
const char MSG_OFF[] PROGMEM_I1 = ISTR("Off"); ////
const char MSG_ON[] PROGMEM_I1 = ISTR("On"); ////
const char MSG_NA[] PROGMEM_I1 = ISTR("N/A"); ////
const char MSG_AUTO_DEPLETE[] PROGMEM_I1 = ISTR("SpoolJoin"); ////
const char MSG_CUTTER[] PROGMEM_I1 = ISTR("Cutter"); ////
const char MSG_NONE[] PROGMEM_I1 = ISTR("None"); ////
const char MSG_WARN[] PROGMEM_I1 = ISTR("Warn"); ////
const char MSG_STRICT[] PROGMEM_I1 = ISTR("Strict"); ////
const char MSG_MODEL[] PROGMEM_I1 = ISTR("Model"); ////
const char MSG_FIRMWARE[] PROGMEM_I1 = ISTR("Firmware"); ////
const char MSG_GCODE[] PROGMEM_I1 = ISTR("Gcode"); ////
const char MSG_NOZZLE_DIAMETER[] PROGMEM_I1 = ISTR("Nozzle d."); ////
const char MSG_MMU_MODE[] PROGMEM_I1 = ISTR("MMU Mode"); ////
const char MSG_SD_CARD[] PROGMEM_I1 = ISTR("SD card"); ////
const char MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY[] PROGMEM_I1 = ISTR("FlashAir"); ////
const char MSG_SORT[] PROGMEM_I1 = ISTR("Sort"); ////
const char MSG_SORT_TIME[] PROGMEM_I1 = ISTR("Time"); ////
const char MSG_SORT_ALPHA[] PROGMEM_I1 = ISTR("Alphabet"); ////
const char MSG_RPI_PORT[] PROGMEM_I1 = ISTR("RPi port"); ////
const char MSG_SOUND[] PROGMEM_I1 = ISTR("Sound"); ////
const char MSG_SOUND_LOUD[] PROGMEM_I1 = ISTR("Loud"); ////
const char MSG_SOUND_ONCE[] PROGMEM_I1 = ISTR("Once"); ////
const char MSG_SOUND_BLIND[] PROGMEM_I1 = ISTR("Assist"); ////
const char MSG_MESH[] PROGMEM_I1 = ISTR("Mesh"); ////
const char MSG_Z_PROBE_NR[] PROGMEM_I1 = ISTR("Z-probe nr."); ////
const char MSG_MAGNETS_COMP[] PROGMEM_I1 = ISTR("Magnets comp."); ////
//not internationalized messages
const char MSG_SD_WORKDIR_FAIL[] PROGMEM_N1 = "workDir open failed"; ////
const char MSG_BROWNOUT_RESET[] PROGMEM_N1 = " Brown out Reset"; ////
const char MSG_EXTERNAL_RESET[] PROGMEM_N1 = " External Reset"; ////
const char MSG_FILE_SAVED[] PROGMEM_N1 = "Done saving file."; ////
const char MSG_OFF[] PROGMEM_N1 = "Off"; ////
const char MSG_ON[] PROGMEM_N1 = "On "; ////
const char MSG_POSITION_UNKNOWN[] PROGMEM_N1 = "Home X/Y before Z"; ////
const char MSG_SOFTWARE_RESET[] PROGMEM_N1 = " Software Reset"; ////
const char MSG_UNKNOWN_COMMAND[] PROGMEM_N1 = "Unknown command: \""; ////

View file

@ -10,7 +10,6 @@ extern "C" {
// LCD Menu Messages
//internationalized messages
extern const char MSG_AUTO_HOME[];
extern const char MSG_AUTO_MODE_ON[];
extern const char MSG_BABYSTEP_Z[];
extern const char MSG_BABYSTEP_Z_NOT_SET[];
extern const char MSG_BED[];
@ -23,9 +22,7 @@ extern const char MSG_CARD_MENU[];
extern const char MSG_CONFIRM_NOZZLE_CLEAN[];
extern const char MSG_COOLDOWN[];
extern const char MSG_CRASH_DETECTED[];
extern const char MSG_CRASHDETECT_NA[];
extern const char MSG_CRASHDETECT_OFF[];
extern const char MSG_CRASHDETECT_ON[];
extern const char MSG_CRASHDETECT[];
extern const char MSG_ERROR[];
extern const char MSG_EXTRUDER[];
extern const char MSG_FILAMENT[];
@ -41,9 +38,8 @@ extern const char MSG_FIND_BED_OFFSET_AND_SKEW_LINE2[];
extern const char MSG_FINISHING_MOVEMENTS[];
extern const char MSG_FOLLOW_CALIBRATION_FLOW[];
extern const char MSG_FOLLOW_Z_CALIBRATION_FLOW[];
extern const char MSG_FSENS_AUTOLOAD_NA[];
extern const char MSG_FSENSOR_OFF[];
extern const char MSG_FSENSOR_ON[];
extern const char MSG_FSENSOR_AUTOLOAD[];
extern const char MSG_FSENSOR[];
extern const char MSG_HEATING[];
extern const char MSG_HEATING_COMPLETE[];
extern const char MSG_HOMEYZ[];
@ -85,10 +81,12 @@ extern const char MSG_SELFTEST_FILAMENT_SENSOR[];
extern const char MSG_SELFTEST_WIRINGERROR[];
extern const char MSG_SETTINGS[];
extern const char MSG_HW_SETUP[];
extern const char MSG_SILENT_MODE_OFF[];
extern const char MSG_SILENT_MODE_ON[];
extern const char MSG_STEALTH_MODE_OFF[];
extern const char MSG_STEALTH_MODE_ON[];
extern const char MSG_MODE[];
extern const char MSG_HIGH_POWER[];
extern const char MSG_AUTO_POWER[];
extern const char MSG_SILENT[];
extern const char MSG_NORMAL[];
extern const char MSG_STEALTH[];
extern const char MSG_STEEL_SHEET_CHECK[];
extern const char MSG_STOP_PRINT[];
extern const char MSG_STOPPED[];
@ -104,12 +102,37 @@ extern const char MSG_WIZARD_QUIT[];
extern const char MSG_YES[];
extern const char MSG_V2_CALIBRATION[];
extern const char WELCOME_MSG[];
extern const char MSG_OFF[];
extern const char MSG_ON[];
extern const char MSG_NA[];
extern const char MSG_AUTO_DEPLETE[];
extern const char MSG_CUTTER[];
extern const char MSG_NONE[];
extern const char MSG_WARN[];
extern const char MSG_STRICT[];
extern const char MSG_MODEL[];
extern const char MSG_FIRMWARE[];
extern const char MSG_GCODE[];
extern const char MSG_NOZZLE_DIAMETER[];
extern const char MSG_MMU_MODE[];
extern const char MSG_SD_CARD[];
extern const char MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY[];
extern const char MSG_SORT[];
extern const char MSG_SORT_TIME[];
extern const char MSG_SORT_ALPHA[];
extern const char MSG_RPI_PORT[];
extern const char MSG_SOUND[];
extern const char MSG_SOUND_LOUD[];
extern const char MSG_SOUND_ONCE[];
extern const char MSG_SOUND_BLIND[];
extern const char MSG_MESH[];
extern const char MSG_Z_PROBE_NR[];
extern const char MSG_MAGNETS_COMP[];
//not internationalized messages
extern const char MSG_BROWNOUT_RESET[];
extern const char MSG_EXTERNAL_RESET[];
extern const char MSG_FILE_SAVED[];
extern const char MSG_OFF[];
extern const char MSG_ON[];
extern const char MSG_POSITION_UNKNOWN[];
extern const char MSG_SOFTWARE_RESET[];
extern const char MSG_UNKNOWN_COMMAND[];

View file

@ -70,6 +70,7 @@ uint8_t mmu_extruder = MMU_FILAMENT_UNKNOWN;
uint8_t tmp_extruder = MMU_FILAMENT_UNKNOWN;
int8_t mmu_finda = -1;
uint32_t mmu_last_finda_response = 0;
int16_t mmu_version = -1;
@ -264,6 +265,7 @@ void mmu_loop(void)
if (mmu_rx_ok() > 0)
{
fscanf_P(uart2io, PSTR("%hhu"), &mmu_finda); //scan finda from buffer
mmu_last_finda_response = _millis();
FDEBUG_PRINTF_P(PSTR("MMU => '%dok'\n"), mmu_finda);
puts_P(PSTR("MMU - ENABLED"));
mmu_enabled = true;
@ -376,6 +378,7 @@ void mmu_loop(void)
if (mmu_rx_ok() > 0)
{
fscanf_P(uart2io, PSTR("%hhu"), &mmu_finda); //scan finda from buffer
mmu_last_finda_response = _millis();
FDEBUG_PRINTF_P(PSTR("MMU => '%dok'\n"), mmu_finda);
//printf_P(PSTR("Eact: %d\n"), int(e_active()));
if (!mmu_finda && CHECK_FSENSOR && fsensor_enabled) {
@ -1355,7 +1358,7 @@ void lcd_mmu_load_to_nozzle(uint8_t filament_nr)
manage_response(true, true, MMU_TCODE_MOVE);
mmu_continue_loading(false);
mmu_extruder = tmp_extruder; //filament change is finished
marlin_rise_z();
raise_z_above(MIN_Z_FOR_LOAD, false);
mmu_load_to_nozzle();
load_filament_final_feed();
st_synchronize();
@ -1556,19 +1559,23 @@ void mmu_continue_loading(bool blocking)
increment_load_fail();
// no break
case Ls::Retry:
#ifdef MMU_HAS_CUTTER
if (1 == eeprom_read_byte((uint8_t*)EEPROM_MMU_CUTTER_ENABLED))
++retry; // overflow not handled, as it is not dangerous.
if (retry >= max_retry)
{
mmu_command(MmuCmd::K0 + tmp_extruder);
manage_response(true, true, MMU_UNLOAD_MOVE);
}
state = Ls::Unload;
#ifdef MMU_HAS_CUTTER
if (1 == eeprom_read_byte((uint8_t*)EEPROM_MMU_CUTTER_ENABLED))
{
mmu_command(MmuCmd::K0 + tmp_extruder);
manage_response(true, true, MMU_UNLOAD_MOVE);
}
#endif //MMU_HAS_CUTTER
}
mmu_command(MmuCmd::T0 + tmp_extruder);
manage_response(true, true, MMU_TCODE_MOVE);
success = load_more();
if (success) success = can_load();
++retry; // overflow not handled, as it is not dangerous.
if (retry >= max_retry) state = Ls::Unload;
break;
case Ls::Unload:
stop_and_save_print_to_ram(0, 0);

View file

@ -14,6 +14,7 @@ extern uint8_t mmu_extruder;
extern uint8_t tmp_extruder;
extern int8_t mmu_finda;
extern uint32_t mmu_last_finda_response;
extern bool ir_sensor_detected;
extern int16_t mmu_version;

View file

@ -3,12 +3,6 @@
#define SOUND_H
#define MSG_SOUND_MODE_LOUD "Sound [loud]"
#define MSG_SOUND_MODE_ONCE "Sound [once]"
#define MSG_SOUND_MODE_SILENT "Sound [silent]"
#define MSG_SOUND_MODE_BLIND "Sound [assist]"
#define e_SOUND_MODE_NULL 0xFF
typedef enum
{e_SOUND_MODE_LOUD,e_SOUND_MODE_ONCE,e_SOUND_MODE_SILENT,e_SOUND_MODE_BLIND} eSOUND_MODE;

View file

@ -1564,10 +1564,6 @@ void st_current_init() //Initialize Digipot Motor Current
{
#ifdef MOTOR_CURRENT_PWM_XY_PIN
uint8_t SilentMode = eeprom_read_byte((uint8_t*)EEPROM_SILENT);
if (SilentMode == 0xff){ //set power to High Power (MK2.5) or Normal Power (MK3, unused)
SilentMode = SILENT_MODE_POWER;
eeprom_update_byte((uint8_t*)EEPROM_SILENT, SilentMode);
}
SilentModeMenu = SilentMode;
pinMode(MOTOR_CURRENT_PWM_XY_PIN, OUTPUT);
pinMode(MOTOR_CURRENT_PWM_Z_PIN, OUTPUT);

View file

@ -505,7 +505,10 @@ void checkFanSpeed()
// we may even send some info to the LCD from here
fan_check_error = EFCE_FIXED;
}
if ((fan_check_error == EFCE_FIXED) && !PRINTER_ACTIVE){
fan_check_error = EFCE_OK; //if the issue is fixed while the printer is doing nothing, reenable processing immediately.
lcd_reset_alert_level(); //for another fan speed error
}
if ((fan_speed_errors[0] > max_extruder_fan_errors) && fans_check_enabled && (fan_check_error == EFCE_OK)) {
fan_speed_errors[0] = 0;
fanSpeedError(0); //extruder fan

View file

@ -427,7 +427,7 @@ void tmc2130_check_overtemp()
void tmc2130_setup_chopper(uint8_t axis, uint8_t mres, uint8_t current_h, uint8_t current_r)
{
uint8_t intpol = 1;
uint8_t intpol = (mres != 0); // intpol to 256 only if microsteps aren't 256
uint8_t toff = tmc2130_chopper_config[axis].toff; // toff = 3 (fchop = 27.778kHz)
uint8_t hstrt = tmc2130_chopper_config[axis].hstr; //initial 4, modified to 5
uint8_t hend = tmc2130_chopper_config[axis].hend; //original value = 1
@ -600,7 +600,7 @@ void tmc2130_wr_THIGH(uint8_t axis, uint32_t val32)
uint8_t tmc2130_usteps2mres(uint16_t usteps)
{
uint8_t mres = 8; while (mres && (usteps >>= 1)) mres--;
uint8_t mres = 8; while (usteps >>= 1) mres--;
return mres;
}

View file

@ -150,6 +150,10 @@ static void mmu_cut_filament_menu();
static void lcd_menu_fails_stats();
#endif //TMC2130 or FILAMENT_SENSOR
#ifdef TMC2130
static void lcd_belttest_v();
#endif //TMC2130
static void lcd_selftest_v();
#ifdef TMC2130
@ -313,18 +317,24 @@ bool bSettings; // flag (i.e. 'fake parameter'
const char STR_SEPARATOR[] PROGMEM = "------------";
static void lcd_implementation_drawmenu_sdfile_selected(uint8_t row, char* longFilename)
static void lcd_implementation_drawmenu_sdfile_selected(uint8_t row, const char* filename, char* longFilename)
{
char c;
int enc_dif = lcd_encoder_diff;
int enc_dif = lcd_encoder_diff / ENCODER_PULSES_PER_STEP;
uint8_t n = LCD_WIDTH - 1;
for(uint_least8_t g = 0; g<4;g++){
lcd_set_cursor(0, g);
lcd_print(' ');
}
lcd_set_cursor(0, row);
lcd_print('>');
if (longFilename[0] == '\0')
{
longFilename = filename;
}
int i = 1;
int j = 0;
char* longFilenameTMP = longFilename;
@ -342,7 +352,7 @@ static void lcd_implementation_drawmenu_sdfile_selected(uint8_t row, char* longF
n = LCD_WIDTH - 1;
for(int g = 0; g<300 ;g++){
manage_heater();
if(LCD_CLICKED || ( enc_dif != lcd_encoder_diff )){
if(LCD_CLICKED || ( enc_dif != (lcd_encoder_diff / ENCODER_PULSES_PER_STEP))){
longFilenameTMP = longFilename;
*(longFilenameTMP + LCD_WIDTH - 2) = '\0';
i = 1;
@ -540,7 +550,7 @@ static uint8_t menu_item_sdfile(const char*
if (lcd_draw_update)
{
if (lcd_encoder == menu_item)
lcd_implementation_drawmenu_sdfile_selected(menu_row, str_fnl);
lcd_implementation_drawmenu_sdfile_selected(menu_row, str_fn, str_fnl);
else
lcd_implementation_drawmenu_sdfile(menu_row, str_fn, str_fnl);
}
@ -605,11 +615,21 @@ void lcdui_print_feedrate(void)
// Print percent done in form "USB---%", " SD---%", " ---%" (7 chars total)
void lcdui_print_percent_done(void)
{
char sheet[8];
const char* src = is_usb_printing?_N("USB"):(IS_SD_PRINTING?_N(" SD"):_N(" "));
char per[4];
bool num = IS_SD_PRINTING || (PRINTER_ACTIVE && (print_percent_done_normal != PRINT_PERCENT_DONE_INIT));
sprintf_P(per, num?_N("%3hhd"):_N("---"), calc_percent_done());
lcd_printf_P(_N("%3S%3s%%"), src, per);
if (!num || heating_status) // either not printing or heating
{
eeprom_read_block(sheet, EEPROM_Sheets_base->s[eeprom_read_byte(&(EEPROM_Sheets_base->active_sheet))].name, 7);
sheet[7] = '\0';
lcd_printf_P(PSTR("%s"),sheet);
}
else
{
sprintf_P(per, num?_N("%3hhd"):_N("---"), calc_percent_done());
lcd_printf_P(_N("%3S%3s%%"), src, per);
}
}
// Print extruder status (5 chars total)
@ -712,10 +732,10 @@ void lcdui_print_status_line(void)
{
if (IS_SD_PRINTING)
{
if (strcmp(longFilenameOLD, card.longFilename) != 0)
if (strcmp(longFilenameOLD, (card.longFilename[0] ? card.longFilename : card.filename)) != 0)
{
memset(longFilenameOLD, '\0', strlen(longFilenameOLD));
sprintf_P(longFilenameOLD, PSTR("%s"), card.longFilename);
sprintf_P(longFilenameOLD, PSTR("%s"), (card.longFilename[0] ? card.longFilename : card.filename));
scrollstuff = 0;
}
}
@ -763,16 +783,16 @@ void lcdui_print_status_line(void)
}
else if ((IS_SD_PRINTING) && (custom_message_type == CustomMsg::Status))
{ // If printing from SD, show what we are printing
if(strlen(card.longFilename) > LCD_WIDTH)
if(strlen(longFilenameOLD) > LCD_WIDTH)
{
int inters = 0;
int gh = scrollstuff;
while (((gh - scrollstuff) < LCD_WIDTH) && (inters == 0))
{
if (card.longFilename[gh] == '\0')
if (longFilenameOLD[gh] == '\0')
{
lcd_set_cursor(gh - scrollstuff, 3);
lcd_print(card.longFilename[gh - 1]);
lcd_print(longFilenameOLD[gh - 1]);
scrollstuff = 0;
gh = scrollstuff;
inters = 1;
@ -780,7 +800,7 @@ void lcdui_print_status_line(void)
else
{
lcd_set_cursor(gh - scrollstuff, 3);
lcd_print(card.longFilename[gh - 1]);
lcd_print(longFilenameOLD[gh - 1]);
gh++;
}
}
@ -788,7 +808,7 @@ void lcdui_print_status_line(void)
}
else
{
lcd_print(longFilenameOLD);
lcd_printf_P(PSTR("%-20s"), longFilenameOLD);
}
}
else
@ -841,12 +861,13 @@ void lcdui_print_status_line(void)
break;
case CustomMsg::TempCal: // PINDA temp calibration in progress
{
char statusLine[LCD_WIDTH + 1];
sprintf_P(statusLine, PSTR("%-20S"), _T(MSG_TEMP_CALIBRATION));
char progress[4];
sprintf_P(progress, PSTR("%d/6"), custom_message_state);
memcpy(statusLine + 12, progress, sizeof(progress) - 1);
lcd_set_cursor(0, 3);
lcd_puts_P(_T(MSG_TEMP_CALIBRATION));
lcd_set_cursor(12, 3);
sprintf(progress, "%d/6", custom_message_state);
lcd_print(progress);
lcd_print(statusLine);
}
break;
case CustomMsg::TempCompPreheat: // temp compensation preheat
@ -1075,12 +1096,8 @@ void lcd_commands()
if (!blocks_queued() && !homing_flag)
{
lcd_setstatuspgm(_i("Print paused"));////MSG_PRINT_PAUSED c=20 r=1
long_pause();
if (lcd_commands_type == LcdCommands::LongPause) // !!! because "lcd_commands_type" can be changed during/inside "long_pause()"
{
lcd_commands_type = LcdCommands::Idle;
lcd_commands_step = 0;
}
lcd_commands_type = LcdCommands::Idle;
lcd_commands_step = 0;
}
}
@ -1639,7 +1656,7 @@ void lcd_pause_print()
{
lcd_return_to_status();
stop_and_save_print_to_ram(0.0,0.0);
setAllTargetHotends(0);
long_pause();
isPrintPaused = true;
if (LcdCommands::Idle == lcd_commands_type)
{
@ -1846,8 +1863,8 @@ static void lcd_menu_fails_stats_total()
//! @code{.unparsed}
//! |01234567890123456789|
//! |Last print failures | c=20 r=1
//! | Power failures: 000| c=14 r=1
//! | Filam. runouts: 000| c=14 r=1
//! | Power failures 000| c=14 r=1
//! | Filam. runouts 000| c=14 r=1
//! | Crash X:000 Y:000| c=7 r=1
//! ----------------------
//! @endcode
@ -1893,6 +1910,7 @@ static void lcd_menu_fails_stats()
}
#elif defined(FILAMENT_SENSOR)
static const char failStatsFmt[] PROGMEM = "%S\n" " %-16.16S%-3d\n" "%S\n" " %-16.16S%-3d\n";
//!
//! @brief Print last print and total filament run outs
//!
@ -1903,9 +1921,9 @@ static void lcd_menu_fails_stats()
//! @code{.unparsed}
//! |01234567890123456789|
//! |Last print failures | c=20 r=1
//! | Filam. runouts: 000| c=14 r=1
//! | Filam. runouts 000| c=14 r=1
//! |Total failures | c=20 r=1
//! | Filam. runouts: 000| c=14 r=1
//! | Filam. runouts 000| c=14 r=1
//! ----------------------
//! @endcode
//! @todo Positioning of the messages and values on LCD aren't fixed to their exact place. This causes issues with translations.
@ -1915,11 +1933,13 @@ static void lcd_menu_fails_stats()
uint8_t filamentLast = eeprom_read_byte((uint8_t*)EEPROM_FERROR_COUNT);
uint16_t filamentTotal = eeprom_read_word((uint16_t*)EEPROM_FERROR_COUNT_TOT);
lcd_home();
lcd_printf_P(PSTR("Last print failures\n" ////c=20 r=1
" Filam. runouts %-3d\n" ////c=14 r=1
"Total failures\n" ////c=20 r=1
" Filam. runouts %-3d"), filamentLast, filamentTotal); ////c=14 r=1
menu_back_if_clicked();
lcd_printf_P(failStatsFmt,
_i("Last print failures"), ////c=20 r=1
_i("Filam. runouts"), filamentLast, ////c=14 r=1
_i("Total failures"), ////c=20 r=1
_i("Filam. runouts"), filamentTotal); ////c=14 r=1
menu_back_if_clicked();
}
#else
static void lcd_menu_fails_stats()
@ -2374,9 +2394,11 @@ void mFilamentItem(uint16_t nTemp, uint16_t nTempBed)
{
lcd_commands_type = LcdCommands::Layer1Cal;
}
else if (eeprom_read_byte((uint8_t*)EEPROM_WIZARD_ACTIVE))
else
{
lcd_wizard(WizState::LoadFilHot);
raise_z_above(MIN_Z_FOR_PREHEAT);
if (eeprom_read_byte((uint8_t*)EEPROM_WIZARD_ACTIVE))
lcd_wizard(WizState::LoadFilHot);
}
return;
}
@ -3017,7 +3039,7 @@ static void lcd_menu_xyz_y_min()
for (uint8_t i = 0; i < 2; i++)
{
lcd_set_cursor(11,2+i);
if (distanceMin[i] >= 200) lcd_puts_P(_N("N/A")); ////c=3 r=1
if (distanceMin[i] >= 200) lcd_puts_P(_T(MSG_NA)); ////c=3 r=1
else lcd_printf_P(_N("%6.2fmm"), distanceMin[i]);
}
if (lcd_clicked())
@ -3063,7 +3085,7 @@ static void lcd_menu_xyz_skew()
}
else{
lcd_set_cursor(15,0);
lcd_puts_P(_N("N/A"));
lcd_puts_P(_T(MSG_NA));
}
if (lcd_clicked())
menu_goto(lcd_menu_xyz_offset, 0, true, true);
@ -3449,6 +3471,8 @@ void lcd_wait_for_cool_down() {
lcd_set_custom_characters_degree();
setAllTargetHotends(0);
setTargetBed(0);
int fanSpeedBckp = fanSpeed;
fanSpeed = 255;
while ((degHotend(0)>MAX_HOTEND_TEMP_CALIBRATION) || (degBed() > MAX_BED_TEMP_CALIBRATION)) {
lcd_display_message_fullscreen_P(_i("Waiting for nozzle and bed cooling"));////MSG_WAITING_TEMP c=20 r=3
@ -3467,6 +3491,7 @@ void lcd_wait_for_cool_down() {
delay_keep_alive(1000);
serialecho_temperatures();
}
fanSpeed = fanSpeedBckp;
lcd_set_custom_characters_arrows();
lcd_update_enable(true);
}
@ -3997,13 +4022,13 @@ static void lcd_print_state(uint8_t state)
{
switch (state) {
case STATE_ON:
lcd_puts_P(_i(" 1"));
lcd_puts_P(_N(" 1"));
break;
case STATE_OFF:
lcd_puts_P(_i(" 0"));
lcd_puts_P(_N(" 0"));
break;
default:
lcd_puts_P(_i("N/A"));
lcd_puts_P(_T(MSG_NA));
break;
}
}
@ -4016,7 +4041,8 @@ static void lcd_show_sensors_state()
uint8_t idler_state = STATE_NA;
pinda_state = READ(Z_MIN_PIN);
if (mmu_enabled) {
if (mmu_enabled && ((_millis() - mmu_last_finda_response) < 1000ul) )
{
finda_state = mmu_finda;
}
if (ir_sensor_detected) {
@ -4776,10 +4802,10 @@ void lcd_toshiba_flash_air_compatibility_toggle()
//!
//! @code{.unparsed}
//! |01234567890123456789|
//! |[Smooth1]Live adj. Z| c=11
//! |value set, continue | c=20
//! |or start from zero? | c=20
//! |>Continue Reset | c=a, c=b, a+b = 18
//! |Sheet Smooth1 actual| c=a, c=b, a+b = 13
//! |Z offset: -1.480 mm | c=a, c=b, a+b = 14
//! |>Continue | c=19
//! | Start from zero | c=19
//! ----------------------
//! @endcode
void lcd_first_layer_calibration_reset()
@ -4817,8 +4843,9 @@ void lcd_first_layer_calibration_reset()
char sheet_name[sizeof(Sheet::name)];
eeprom_read_block(sheet_name, &EEPROM_Sheets_base->s[(eeprom_read_byte(&(EEPROM_Sheets_base->active_sheet)))].name, sizeof(Sheet::name));
lcd_set_cursor(0, 0);
lcd_printf_P(_i("[%.7s]Live adj. Z\nvalue set, continue\nor start from zero?\n%cContinue%cReset"), //// \n denotes line break, %.7s is replaced by 7 character long sheet name, %+1.3f is replaced by 6 character long floating point number, %c is replaced by > or white space (one character) based on whether first or second option is selected. % denoted place holders can not be reordered. r=4
sheet_name, menuData->reset ? ' ' : '>', menuData->reset ? '>' : ' ');
float offset = static_cast<int16_t>(eeprom_read_word(reinterpret_cast<uint16_t*>(&EEPROM_Sheets_base->s[(eeprom_read_byte(&(EEPROM_Sheets_base->active_sheet)))].z_offset)))/cs.axis_steps_per_unit[Z_AXIS];
lcd_printf_P(_i("Sheet %.7s\nZ offset: %+1.3f mm\n%cContinue\n%cStart from zero"), //// \n denotes line break, %.7s is replaced by 7 character long sheet name, %+1.3f is replaced by 6 character long floating point number, %c is replaced by > or white space (one character) based on whether first or second option is selected. % denoted place holders can not be reordered. r=4
sheet_name, offset, menuData->reset ? ' ' : '>', menuData->reset ? '>' : ' ');
}
@ -4932,12 +4959,12 @@ static void lcd_wizard_load()
{
if (mmu_enabled)
{
lcd_show_fullscreen_message_and_wait_P(_i("Please insert filament to the first tube of MMU, then press the knob to load it."));////c=20 r=8
lcd_show_fullscreen_message_and_wait_P(_i("Please insert filament into the first tube of the MMU, then press the knob to load it."));////c=20 r=8
tmp_extruder = 0;
}
else
{
lcd_show_fullscreen_message_and_wait_P(_i("Please insert filament to the extruder, then press knob to load it."));////MSG_WIZARD_LOAD_FILAMENT c=20 r=8
lcd_show_fullscreen_message_and_wait_P(_i("Please insert filament into the extruder, then press the knob to load it."));////MSG_WIZARD_LOAD_FILAMENT c=20 r=8
}
lcd_update_enable(false);
lcd_clear();
@ -4961,7 +4988,7 @@ static void wizard_lay1cal_message(bool cold)
if (mmu_enabled)
{
lcd_show_fullscreen_message_and_wait_P(
_i("First you will select filament you wish to use for calibration. Then select temperature which matches your material."));
_i("Choose a filament for the First Layer Calibration and select it in the on-screen menu."));
}
else if (cold)
{
@ -4969,7 +4996,7 @@ static void wizard_lay1cal_message(bool cold)
_i("Select temperature which matches your material."));
}
lcd_show_fullscreen_message_and_wait_P(
_i("I will start to print line and you will gradually lower the nozzle by rotating the knob, until you reach optimal height. Check the pictures in our handbook in chapter Calibration.")); ////MSG_WIZARD_V2_CAL_2 c=20 r=12
_i("The printer will start printing a zig-zag line. Rotate the knob until you reach the optimal height. Check the pictures in the handbook (Calibration chapter).")); ////MSG_WIZARD_V2_CAL_2 c=20 r=12
}
//! @brief Printer first run wizard (Selftest and calibration)
@ -5099,7 +5126,7 @@ void lcd_wizard(WizState state)
setTargetBed(PLA_PREHEAT_HPB_TEMP);
if (mmu_enabled)
{
wizard_event = lcd_show_fullscreen_message_yes_no_and_wait_P(_i("Is any filament loaded?"), true);////c=20 r=2
wizard_event = lcd_show_fullscreen_message_yes_no_and_wait_P(_i("Is filament loaded?"), true);////c=20 r=2
} else
{
wizard_event = lcd_show_fullscreen_message_yes_no_and_wait_P(_i("Is filament loaded?"), true);////MSG_WIZARD_FILAMENT_LOADED c=20 r=2
@ -5144,7 +5171,7 @@ void lcd_wizard(WizState state)
}
else
{
lcd_show_fullscreen_message_and_wait_P(_i("If you have more steel sheets you can calibrate additional presets in Settings / HW Setup / Steel sheets."));
lcd_show_fullscreen_message_and_wait_P(_i("If you have additional steel sheets, calibrate their presets in Settings - HW Setup - Steel sheets."));
state = S::Finish;
}
break;
@ -5219,29 +5246,29 @@ do\
if (fsensor_not_responding && (mmu_enabled == false))\
{\
/* Filament sensor not working*/\
MENU_ITEM_FUNCTION_P(_i("Fil. sensor [N/A]"), lcd_fsensor_state_set);/*////MSG_FSENSOR_NA*/\
MENU_ITEM_SUBMENU_P(_T(MSG_FSENS_AUTOLOAD_NA), lcd_fsensor_fail);\
MENU_ITEM_TOGGLE_P(_T(MSG_FSENSOR), _T(MSG_NA), lcd_fsensor_state_set);/*////MSG_FSENSOR_NA*/\
MENU_ITEM_TOGGLE_P(_T(MSG_FSENSOR_AUTOLOAD), NULL, lcd_fsensor_fail);\
}\
else\
{\
/* Filament sensor turned off, working, no problems*/\
MENU_ITEM_FUNCTION_P(_T(MSG_FSENSOR_OFF), lcd_fsensor_state_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_FSENSOR), _T(MSG_OFF), lcd_fsensor_state_set);\
if (mmu_enabled == false)\
{\
MENU_ITEM_SUBMENU_P(_T(MSG_FSENS_AUTOLOAD_NA), lcd_filament_autoload_info);\
MENU_ITEM_TOGGLE_P(_T(MSG_FSENSOR_AUTOLOAD), NULL, lcd_filament_autoload_info);\
}\
}\
}\
else\
{\
/* Filament sensor turned on, working, no problems*/\
MENU_ITEM_FUNCTION_P(_T(MSG_FSENSOR_ON), lcd_fsensor_state_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_FSENSOR), _T(MSG_ON), lcd_fsensor_state_set);\
if (mmu_enabled == false)\
{\
if (fsensor_autoload_enabled)\
MENU_ITEM_FUNCTION_P(_i("F. autoload [on]"), lcd_set_filament_autoload);/*////MSG_FSENS_AUTOLOAD_ON c=17 r=1*/\
MENU_ITEM_TOGGLE_P(_T(MSG_FSENSOR_AUTOLOAD), _T(MSG_ON), lcd_set_filament_autoload);/*////MSG_FSENS_AUTOLOAD_ON c=17 r=1*/\
else\
MENU_ITEM_FUNCTION_P(_i("F. autoload [off]"), lcd_set_filament_autoload);/*////MSG_FSENS_AUTOLOAD_OFF c=17 r=1*/\
MENU_ITEM_TOGGLE_P(_T(MSG_FSENSOR_AUTOLOAD), _T(MSG_OFF), lcd_set_filament_autoload);/*////MSG_FSENS_AUTOLOAD_OFF c=17 r=1*/\
/*if (fsensor_oq_meassure_enabled)*/\
/*MENU_ITEM_FUNCTION_P(_i("F. OQ meass. [on]"), lcd_set_filament_oq_meass);*//*////MSG_FSENS_OQMEASS_ON c=17 r=1*/\
/*else*/\
@ -5261,60 +5288,58 @@ static void auto_deplete_switch()
eeprom_update_byte((unsigned char *)EEPROM_AUTO_DEPLETE, lcd_autoDeplete);
}
static bool settingsAutoDeplete()
static void settingsAutoDeplete()
{
if (mmu_enabled)
{
if (!fsensor_enabled)
{
if (menu_item_text_P(_i("SpoolJoin [N/A]"))) return true;
MENU_ITEM_TOGGLE_P(_T(MSG_AUTO_DEPLETE), _T(MSG_NA), NULL);
}
else if (lcd_autoDeplete)
{
if (menu_item_function_P(_i("SpoolJoin [on]"), auto_deplete_switch)) return true;
MENU_ITEM_TOGGLE_P(_T(MSG_AUTO_DEPLETE), _T(MSG_ON), auto_deplete_switch);
}
else
{
if (menu_item_function_P(_i("SpoolJoin [off]"), auto_deplete_switch)) return true;
MENU_ITEM_TOGGLE_P(_T(MSG_AUTO_DEPLETE), _T(MSG_OFF), auto_deplete_switch);
}
}
return false;
}
#define SETTINGS_AUTO_DEPLETE \
do\
{\
if(settingsAutoDeplete()) return;\
settingsAutoDeplete();\
}\
while(0)\
#ifdef MMU_HAS_CUTTER
static bool settingsCutter()
static void settingsCutter()
{
if (mmu_enabled)
{
if (EEPROM_MMU_CUTTER_ENABLED_enabled == eeprom_read_byte((uint8_t*)EEPROM_MMU_CUTTER_ENABLED))
{
if (menu_item_function_P(_i("Cutter [on]"), lcd_cutter_enabled)) return true;//// c=17 r=1
MENU_ITEM_TOGGLE_P(_T(MSG_CUTTER), _T(MSG_ON), lcd_cutter_enabled);
}
#ifdef MMU_ALWAYS_CUT
else if (EEPROM_MMU_CUTTER_ENABLED_always == eeprom_read_byte((uint8_t*)EEPROM_MMU_CUTTER_ENABLED))
{
if (menu_item_function_P(_i("Cutter [always]"), lcd_cutter_enabled)) return true;//// c=17 r=1
MENU_ITEM_TOGGLE_P(_T(MSG_CUTTER), _i("Always"), lcd_cutter_enabled);
}
#endif
else
{
if (menu_item_function_P(_i("Cutter [off]"), lcd_cutter_enabled)) return true;//// c=17 r=1
MENU_ITEM_TOGGLE_P(_T(MSG_CUTTER), _T(MSG_OFF), lcd_cutter_enabled);
}
}
return false;
}
#define SETTINGS_CUTTER \
do\
{\
if(settingsCutter()) return;\
settingsCutter();\
}\
while(0)
#else
@ -5329,18 +5354,15 @@ do\
{\
if (SilentModeMenu == SILENT_MODE_NORMAL)\
{\
MENU_ITEM_FUNCTION_P(_T(MSG_STEALTH_MODE_OFF), lcd_silent_mode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_NORMAL), lcd_silent_mode_set);\
}\
else MENU_ITEM_FUNCTION_P(_T(MSG_STEALTH_MODE_ON), lcd_silent_mode_set);\
else MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_STEALTH), lcd_silent_mode_set);\
if (SilentModeMenu == SILENT_MODE_NORMAL)\
{\
if (lcd_crash_detect_enabled())\
{\
MENU_ITEM_FUNCTION_P(_T(MSG_CRASHDETECT_ON), crash_mode_switch);\
}\
else MENU_ITEM_FUNCTION_P(_T(MSG_CRASHDETECT_OFF), crash_mode_switch);\
if (lcd_crash_detect_enabled()) MENU_ITEM_TOGGLE_P(_T(MSG_CRASHDETECT), _T(MSG_ON), crash_mode_switch);\
else MENU_ITEM_TOGGLE_P(_T(MSG_CRASHDETECT), _T(MSG_OFF), crash_mode_switch);\
}\
else MENU_ITEM_SUBMENU_P(_T(MSG_CRASHDETECT_NA), lcd_crash_mode_info);\
else MENU_ITEM_TOGGLE_P(_T(MSG_CRASHDETECT), NULL, lcd_crash_mode_info);\
}\
}\
while (0)
@ -5354,16 +5376,16 @@ do\
switch (SilentModeMenu)\
{\
case SILENT_MODE_POWER:\
MENU_ITEM_FUNCTION_P(_T(MSG_SILENT_MODE_OFF), lcd_silent_mode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_HIGH_POWER), lcd_silent_mode_set);\
break;\
case SILENT_MODE_SILENT:\
MENU_ITEM_FUNCTION_P(_T(MSG_SILENT_MODE_ON), lcd_silent_mode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_SILENT), lcd_silent_mode_set);\
break;\
case SILENT_MODE_AUTO:\
MENU_ITEM_FUNCTION_P(_T(MSG_AUTO_MODE_ON), lcd_silent_mode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_AUTO_POWER), lcd_silent_mode_set);\
break;\
default:\
MENU_ITEM_FUNCTION_P(_T(MSG_SILENT_MODE_OFF), lcd_silent_mode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_HIGH_POWER), lcd_silent_mode_set);\
break; /* (probably) not needed*/\
}\
}\
@ -5377,8 +5399,8 @@ do\
{\
if (mmu_enabled)\
{\
if (SilentModeMenu_MMU == 0) MENU_ITEM_FUNCTION_P(_i("MMU Mode [Normal]"), lcd_silent_mode_mmu_set); \
else MENU_ITEM_FUNCTION_P(_i("MMU Mode[Stealth]"), lcd_silent_mode_mmu_set); \
if (SilentModeMenu_MMU == 0) MENU_ITEM_TOGGLE_P(_T(MSG_MMU_MODE), _T(MSG_NORMAL), lcd_silent_mode_mmu_set);\
else MENU_ITEM_TOGGLE_P(_T(MSG_MMU_MODE), _T(MSG_STEALTH), lcd_silent_mode_mmu_set);\
}\
}\
while (0)
@ -5391,9 +5413,9 @@ while (0)
do\
{\
if (card.ToshibaFlashAir_isEnabled())\
MENU_ITEM_FUNCTION_P(_i("SD card [flshAir]"), lcd_toshiba_flash_air_compatibility_toggle);/*////MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_ON c=19 r=1*/\
MENU_ITEM_TOGGLE_P(_T(MSG_SD_CARD), _T(MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY), lcd_toshiba_flash_air_compatibility_toggle);\
else\
MENU_ITEM_FUNCTION_P(_i("SD card [normal]"), lcd_toshiba_flash_air_compatibility_toggle);/*////MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_OFF c=19 r=1*/\
MENU_ITEM_TOGGLE_P(_T(MSG_SD_CARD), _T(MSG_NORMAL), lcd_toshiba_flash_air_compatibility_toggle);\
\
if (!farm_mode)\
{\
@ -5401,9 +5423,9 @@ do\
EEPROM_read(EEPROM_SD_SORT, (uint8_t*)&sdSort, sizeof(sdSort));\
switch (sdSort)\
{\
case SD_SORT_TIME: MENU_ITEM_FUNCTION_P(_i("Sort [time]"), lcd_sort_type_set); break;/*////MSG_SORT_TIME c=17 r=1*/\
case SD_SORT_ALPHA: MENU_ITEM_FUNCTION_P(_i("Sort [alphabet]"), lcd_sort_type_set); break;/*////MSG_SORT_ALPHA c=17 r=1*/\
default: MENU_ITEM_FUNCTION_P(_i("Sort [none]"), lcd_sort_type_set);/*////MSG_SORT_NONE c=17 r=1*/\
case SD_SORT_TIME: MENU_ITEM_TOGGLE_P(_T(MSG_SORT), _T(MSG_SORT_TIME), lcd_sort_type_set); break;\
case SD_SORT_ALPHA: MENU_ITEM_TOGGLE_P(_T(MSG_SORT), _T(MSG_SORT_ALPHA), lcd_sort_type_set); break;\
default: MENU_ITEM_TOGGLE_P(_T(MSG_SORT), _T(MSG_NONE), lcd_sort_type_set);\
}\
}\
}\
@ -5413,9 +5435,9 @@ while (0)
do\
{\
if (card.ToshibaFlashAir_isEnabled())\
MENU_ITEM_FUNCTION_P(_i("SD card [flshAir]"), lcd_toshiba_flash_air_compatibility_toggle);/*////MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_ON c=19 r=1*/\
MENU_ITEM_TOGGLE_P(_T(MSG_SD_CARD), _T(MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY), lcd_toshiba_flash_air_compatibility_toggle);\
else\
MENU_ITEM_FUNCTION_P(_i("SD card [normal]"), lcd_toshiba_flash_air_compatibility_toggle);/*////MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_OFF c=19 r=1*/\
MENU_ITEM_TOGGLE_P(_T(MSG_SD_CARD), _T(MSG_NORMAL), lcd_toshiba_flash_air_compatibility_toggle);\
}\
while (0)
#endif // SDCARD_SORT_ALPHA
@ -5447,22 +5469,22 @@ while (0)
do\
{\
switch(eSoundMode)\
{\
case e_SOUND_MODE_LOUD:\
MENU_ITEM_FUNCTION_P(_i(MSG_SOUND_MODE_LOUD),lcd_sound_state_set);\
break;\
case e_SOUND_MODE_ONCE:\
MENU_ITEM_FUNCTION_P(_i(MSG_SOUND_MODE_ONCE),lcd_sound_state_set);\
break;\
case e_SOUND_MODE_SILENT:\
MENU_ITEM_FUNCTION_P(_i(MSG_SOUND_MODE_SILENT),lcd_sound_state_set);\
break;\
case e_SOUND_MODE_BLIND:\
MENU_ITEM_FUNCTION_P(_i(MSG_SOUND_MODE_BLIND),lcd_sound_state_set);\
break;\
default:\
MENU_ITEM_FUNCTION_P(_i(MSG_SOUND_MODE_LOUD),lcd_sound_state_set);\
}\
{\
case e_SOUND_MODE_LOUD:\
MENU_ITEM_TOGGLE_P(_T(MSG_SOUND), _T(MSG_SOUND_LOUD), lcd_sound_state_set);\
break;\
case e_SOUND_MODE_ONCE:\
MENU_ITEM_TOGGLE_P(_T(MSG_SOUND), _T(MSG_SOUND_ONCE), lcd_sound_state_set);\
break;\
case e_SOUND_MODE_SILENT:\
MENU_ITEM_TOGGLE_P(_T(MSG_SOUND), _T(MSG_SILENT), lcd_sound_state_set);\
break;\
case e_SOUND_MODE_BLIND:\
MENU_ITEM_TOGGLE_P(_T(MSG_SOUND), _T(MSG_SOUND_BLIND), lcd_sound_state_set);\
break;\
default:\
MENU_ITEM_TOGGLE_P(_T(MSG_SOUND), _T(MSG_SOUND_LOUD), lcd_sound_state_set);\
}\
}\
while (0)
@ -5492,16 +5514,16 @@ do\
switch(oCheckMode)\
{\
case ClCheckMode::_None:\
MENU_ITEM_FUNCTION_P(_i("Nozzle [none]"),lcd_check_mode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_NOZZLE), _T(MSG_NONE), lcd_check_mode_set);\
break;\
case ClCheckMode::_Warn:\
MENU_ITEM_FUNCTION_P(_i("Nozzle [warn]"),lcd_check_mode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_NOZZLE), _T(MSG_WARN), lcd_check_mode_set);\
break;\
case ClCheckMode::_Strict:\
MENU_ITEM_FUNCTION_P(_i("Nozzle [strict]"),lcd_check_mode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_NOZZLE), _T(MSG_STRICT), lcd_check_mode_set);\
break;\
default:\
MENU_ITEM_FUNCTION_P(_i("Nozzle [none]"),lcd_check_mode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_NOZZLE), _T(MSG_NONE), lcd_check_mode_set);\
}\
}\
while (0)
@ -5535,20 +5557,15 @@ eeprom_update_word((uint16_t*)EEPROM_NOZZLE_DIAMETER_uM,nDiameter);
#define SETTINGS_NOZZLE \
do\
{\
float fNozzleDiam;\
switch(oNozzleDiameter)\
{\
case ClNozzleDiameter::_Diameter_250:\
MENU_ITEM_FUNCTION_P(_i("Nozzle d. [0.25]"),lcd_nozzle_diameter_set);\
break;\
case ClNozzleDiameter::_Diameter_400:\
MENU_ITEM_FUNCTION_P(_i("Nozzle d. [0.40]"),lcd_nozzle_diameter_set);\
break;\
case ClNozzleDiameter::_Diameter_600:\
MENU_ITEM_FUNCTION_P(_i("Nozzle d. [0.60]"),lcd_nozzle_diameter_set);\
break;\
default:\
MENU_ITEM_FUNCTION_P(_i("Nozzle d. [0.40]"),lcd_nozzle_diameter_set);\
}\
{\
case ClNozzleDiameter::_Diameter_250: fNozzleDiam = 0.25f; break;\
case ClNozzleDiameter::_Diameter_400: fNozzleDiam = 0.4f; break;\
case ClNozzleDiameter::_Diameter_600: fNozzleDiam = 0.6f; break;\
default: fNozzleDiam = 0.4f; break;\
}\
MENU_ITEM_TOGGLE(_T(MSG_NOZZLE_DIAMETER), ftostr12ns(fNozzleDiam), lcd_nozzle_diameter_set);\
}\
while (0)
@ -5577,16 +5594,16 @@ do\
switch(oCheckModel)\
{\
case ClCheckModel::_None:\
MENU_ITEM_FUNCTION_P(_i("Model [none]"),lcd_check_model_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_MODEL), _T(MSG_NONE), lcd_check_model_set);\
break;\
case ClCheckModel::_Warn:\
MENU_ITEM_FUNCTION_P(_i("Model [warn]"),lcd_check_model_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_MODEL), _T(MSG_WARN), lcd_check_model_set);\
break;\
case ClCheckModel::_Strict:\
MENU_ITEM_FUNCTION_P(_i("Model [strict]"),lcd_check_model_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_MODEL), _T(MSG_STRICT), lcd_check_model_set);\
break;\
default:\
MENU_ITEM_FUNCTION_P(_i("Model [none]"),lcd_check_model_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_MODEL), _T(MSG_NONE), lcd_check_model_set);\
}\
}\
while (0)
@ -5616,16 +5633,16 @@ do\
switch(oCheckVersion)\
{\
case ClCheckVersion::_None:\
MENU_ITEM_FUNCTION_P(_i("Firmware [none]"),lcd_check_version_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_FIRMWARE), _T(MSG_NONE), lcd_check_version_set);\
break;\
case ClCheckVersion::_Warn:\
MENU_ITEM_FUNCTION_P(_i("Firmware [warn]"),lcd_check_version_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_FIRMWARE), _T(MSG_WARN), lcd_check_version_set);\
break;\
case ClCheckVersion::_Strict:\
MENU_ITEM_FUNCTION_P(_i("Firmware [strict]"),lcd_check_version_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_FIRMWARE), _T(MSG_STRICT), lcd_check_version_set);\
break;\
default:\
MENU_ITEM_FUNCTION_P(_i("Firmware [none]"),lcd_check_version_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_FIRMWARE), _T(MSG_NONE), lcd_check_version_set);\
}\
}\
while (0)
@ -5655,16 +5672,16 @@ do\
switch(oCheckGcode)\
{\
case ClCheckGcode::_None:\
MENU_ITEM_FUNCTION_P(_i("Gcode [none]"),lcd_check_gcode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_GCODE), _T(MSG_NONE), lcd_check_gcode_set);\
break;\
case ClCheckGcode::_Warn:\
MENU_ITEM_FUNCTION_P(_i("Gcode [warn]"),lcd_check_gcode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_GCODE), _T(MSG_WARN), lcd_check_gcode_set);\
break;\
case ClCheckGcode::_Strict:\
MENU_ITEM_FUNCTION_P(_i("Gcode [strict]"),lcd_check_gcode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_GCODE), _T(MSG_STRICT), lcd_check_gcode_set);\
break;\
default:\
MENU_ITEM_FUNCTION_P(_i("Gcode [none]"),lcd_check_gcode_set);\
MENU_ITEM_TOGGLE_P(_T(MSG_GCODE), _T(MSG_NONE), lcd_check_gcode_set);\
}\
}\
while (0)
@ -5733,10 +5750,7 @@ static void lcd_settings_menu()
SETTINGS_CUTTER;
if (fans_check_enabled == true)
MENU_ITEM_FUNCTION_P(_i("Fans check [on]"), lcd_set_fan_check);////MSG_FANS_CHECK_ON c=17 r=1
else
MENU_ITEM_FUNCTION_P(_i("Fans check [off]"), lcd_set_fan_check);////MSG_FANS_CHECK_OFF c=17 r=1
MENU_ITEM_TOGGLE_P(_i("Fans check"), fans_check_enabled ? _T(MSG_ON) : _T(MSG_OFF), lcd_set_fan_check);
SETTINGS_SILENT_MODE;
@ -5754,16 +5768,10 @@ static void lcd_settings_menu()
MENU_ITEM_SUBMENU_P(_i("Lin. correction"), lcd_settings_linearity_correction_menu);
#endif //LINEARITY_CORRECTION && TMC2130
if (temp_cal_active == false)
MENU_ITEM_FUNCTION_P(_i("Temp. cal. [off]"), lcd_temp_calibration_set);////MSG_TEMP_CALIBRATION_OFF c=20 r=1
else
MENU_ITEM_FUNCTION_P(_i("Temp. cal. [on]"), lcd_temp_calibration_set);////MSG_TEMP_CALIBRATION_ON c=20 r=1
MENU_ITEM_TOGGLE_P(_T(MSG_TEMP_CALIBRATION), temp_cal_active ? _T(MSG_ON) : _T(MSG_OFF), lcd_temp_calibration_set);
#ifdef HAS_SECOND_SERIAL_PORT
if (selectedSerialPort == 0)
MENU_ITEM_FUNCTION_P(_i("RPi port [off]"), lcd_second_serial_set);////MSG_SECOND_SERIAL_OFF c=17 r=1
else
MENU_ITEM_FUNCTION_P(_i("RPi port [on]"), lcd_second_serial_set);////MSG_SECOND_SERIAL_ON c=17 r=1
MENU_ITEM_TOGGLE_P(_T(MSG_RPI_PORT), (selectedSerialPort == 0) ? _T(MSG_OFF) : _T(MSG_ON), lcd_second_serial_set);
#endif //HAS_SECOND_SERIAL
if (!isPrintPaused && !homing_flag)
@ -5831,6 +5839,9 @@ static void lcd_calibration_menu()
MENU_ITEM_SUBMENU_P(_T(MSG_V2_CALIBRATION), lcd_first_layer_calibration_reset);
}
MENU_ITEM_GCODE_P(_T(MSG_AUTO_HOME), PSTR("G28 W"));
#ifdef TMC2130
MENU_ITEM_FUNCTION_P(_i("Belt test "), lcd_belttest_v);////MSG_BELTTEST
#endif //TMC2130
MENU_ITEM_FUNCTION_P(_i("Selftest "), lcd_selftest_v);////MSG_SELFTEST
#ifdef MK1BP
// MK1
@ -6371,6 +6382,8 @@ void unload_filament()
custom_message_type = CustomMsg::FilamentLoading;
lcd_setstatuspgm(_T(MSG_UNLOADING_FILAMENT));
raise_z_above(MIN_Z_FOR_UNLOAD);
// extr_unload2();
current_position[E_AXIS] -= 45;
@ -7056,10 +7069,10 @@ static void lcd_tune_menu()
#ifdef FILAMENT_SENSOR
if (FSensorStateMenu == 0) {
MENU_ITEM_FUNCTION_P(_T(MSG_FSENSOR_OFF), lcd_fsensor_state_set);
MENU_ITEM_TOGGLE_P(_T(MSG_FSENSOR), _T(MSG_OFF), lcd_fsensor_state_set);
}
else {
MENU_ITEM_FUNCTION_P(_T(MSG_FSENSOR_ON), lcd_fsensor_state_set);
MENU_ITEM_TOGGLE_P(_T(MSG_FSENSOR), _T(MSG_ON), lcd_fsensor_state_set);
}
#endif //FILAMENT_SENSOR
@ -7069,53 +7082,34 @@ static void lcd_tune_menu()
if(farm_mode)
{
if (fans_check_enabled == true)
MENU_ITEM_FUNCTION_P(_i("Fans check [on]"), lcd_set_fan_check);////MSG_FANS_CHECK_ON c=17 r=1
else
MENU_ITEM_FUNCTION_P(_i("Fans check [off]"), lcd_set_fan_check);////MSG_FANS_CHECK_OFF c=17 r=1
MENU_ITEM_TOGGLE_P(_i("Fans check"), fans_check_enabled ? _T(MSG_ON) : _T(MSG_OFF), lcd_set_fan_check);
}
#ifdef TMC2130
if(!farm_mode)
{
if (SilentModeMenu == SILENT_MODE_NORMAL) MENU_ITEM_FUNCTION_P(_T(MSG_STEALTH_MODE_OFF), lcd_silent_mode_set);
else MENU_ITEM_FUNCTION_P(_T(MSG_STEALTH_MODE_ON), lcd_silent_mode_set);
if (SilentModeMenu == SILENT_MODE_NORMAL) MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_NORMAL), lcd_silent_mode_set);
else MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_STEALTH), lcd_silent_mode_set);
if (SilentModeMenu == SILENT_MODE_NORMAL)
{
if (lcd_crash_detect_enabled()) MENU_ITEM_FUNCTION_P(_T(MSG_CRASHDETECT_ON), crash_mode_switch);
else MENU_ITEM_FUNCTION_P(_T(MSG_CRASHDETECT_OFF), crash_mode_switch);
if (lcd_crash_detect_enabled()) MENU_ITEM_TOGGLE_P(_T(MSG_CRASHDETECT), _T(MSG_ON), crash_mode_switch);
else MENU_ITEM_TOGGLE_P(_T(MSG_CRASHDETECT), _T(MSG_OFF), crash_mode_switch);
}
else MENU_ITEM_SUBMENU_P(_T(MSG_CRASHDETECT_NA), lcd_crash_mode_info);
else MENU_ITEM_TOGGLE_P(_T(MSG_CRASHDETECT), NULL, lcd_crash_mode_info);
}
#else //TMC2130
if (!farm_mode) { //dont show in menu if we are in farm mode
switch (SilentModeMenu) {
case SILENT_MODE_POWER: MENU_ITEM_FUNCTION_P(_T(MSG_SILENT_MODE_OFF), lcd_silent_mode_set); break;
case SILENT_MODE_SILENT: MENU_ITEM_FUNCTION_P(_T(MSG_SILENT_MODE_ON), lcd_silent_mode_set); break;
case SILENT_MODE_AUTO: MENU_ITEM_FUNCTION_P(_T(MSG_AUTO_MODE_ON), lcd_silent_mode_set); break;
default: MENU_ITEM_FUNCTION_P(_T(MSG_SILENT_MODE_OFF), lcd_silent_mode_set); break; // (probably) not needed
case SILENT_MODE_POWER: MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_HIGH_POWER), lcd_silent_mode_set); break;
case SILENT_MODE_SILENT: MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_SILENT), lcd_silent_mode_set); break;
case SILENT_MODE_AUTO: MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_AUTO_POWER), lcd_silent_mode_set); break;
default: MENU_ITEM_TOGGLE_P(_T(MSG_MODE), _T(MSG_HIGH_POWER), lcd_silent_mode_set); break; // (probably) not needed
}
}
#endif //TMC2130
SETTINGS_MMU_MODE;
switch(eSoundMode)
{
case e_SOUND_MODE_LOUD:
MENU_ITEM_FUNCTION_P(_i(MSG_SOUND_MODE_LOUD),lcd_sound_state_set);
break;
case e_SOUND_MODE_ONCE:
MENU_ITEM_FUNCTION_P(_i(MSG_SOUND_MODE_ONCE),lcd_sound_state_set);
break;
case e_SOUND_MODE_SILENT:
MENU_ITEM_FUNCTION_P(_i(MSG_SOUND_MODE_SILENT),lcd_sound_state_set);
break;
case e_SOUND_MODE_BLIND:
MENU_ITEM_FUNCTION_P(_i(MSG_SOUND_MODE_BLIND),lcd_sound_state_set);
break;
default:
MENU_ITEM_FUNCTION_P(_i(MSG_SOUND_MODE_LOUD),lcd_sound_state_set);
}
SETTINGS_MMU_MODE;
SETTINGS_SOUND;
#ifdef LCD_BL_PIN
if (backlightSupport)
{
@ -7154,21 +7148,19 @@ static void lcd_mesh_bed_leveling_settings()
bool magnet_elimination = (eeprom_read_byte((uint8_t*)EEPROM_MBL_MAGNET_ELIMINATION) > 0);
uint8_t points_nr = eeprom_read_byte((uint8_t*)EEPROM_MBL_POINTS_NR);
char sToggle[4]; //enough for nxn format
MENU_BEGIN();
MENU_ITEM_BACK_P(_T(MSG_SETTINGS));
if(points_nr == 3) MENU_ITEM_FUNCTION_P(_i("Mesh [3x3]"), mbl_mesh_toggle); ////MSG_MESH_3x3 c=18
else MENU_ITEM_FUNCTION_P(_i("Mesh [7x7]"), mbl_mesh_toggle); ////MSG_MESH_7x7 c=18
switch (mbl_z_probe_nr) {
case 1: MENU_ITEM_FUNCTION_P(_i("Z-probe nr. [1]"), mbl_probe_nr_toggle); break; ////MSG_Z_PROBE_NR_1 c=18
case 5: MENU_ITEM_FUNCTION_P(_i("Z-probe nr. [5]"), mbl_probe_nr_toggle); break; ////MSG_Z_PROBE_NR_1 c=18
default: MENU_ITEM_FUNCTION_P(_i("Z-probe nr. [3]"), mbl_probe_nr_toggle); break; ////MSG_Z_PROBE_NR_1 c=18
}
if (points_nr == 7) {
if (magnet_elimination) MENU_ITEM_FUNCTION_P(_i("Magnets comp. [On]"), mbl_magnets_elimination_toggle); ////MSG_MAGNETS_COMP_ON c=18
else MENU_ITEM_FUNCTION_P(_i("Magnets comp.[Off]"), mbl_magnets_elimination_toggle); ////MSG_MAGNETS_COMP_OFF c=18
}
else menu_item_text_P(_i("Magnets comp.[N/A]")); ////MSG_MAGNETS_COMP_NA c=18
MENU_ITEM_BACK_P(_T(MSG_SETTINGS));
sToggle[0] = points_nr + '0';
sToggle[1] = 'x';
sToggle[2] = points_nr + '0';
sToggle[3] = 0;
MENU_ITEM_TOGGLE(_T(MSG_MESH), sToggle, mbl_mesh_toggle);
sToggle[0] = mbl_z_probe_nr + '0';
sToggle[1] = 0;
MENU_ITEM_TOGGLE(_T(MSG_Z_PROBE_NR), sToggle, mbl_probe_nr_toggle);
MENU_ITEM_TOGGLE_P(_T(MSG_MAGNETS_COMP), (points_nr == 7) ? (magnet_elimination ? _T(MSG_ON): _T(MSG_OFF)) : _T(MSG_NA), mbl_magnets_elimination_toggle);
MENU_END();
//SETTINGS_MBL_MODE;
}
@ -7383,6 +7375,62 @@ void lcd_sdcard_menu()
}
MENU_END();
}
#ifdef TMC2130
static void lcd_belttest_v()
{
lcd_belttest();
menu_back_if_clicked();
}
void lcd_belttest_print(const char* msg, uint16_t X, uint16_t Y)
{
lcd_clear();
lcd_printf_P(
_N(
"%S:\n"
"%S\n"
"X:%d\n"
"Y:%d"
),
_i("Belt status"),
msg,
X,Y
);
}
void lcd_belttest()
{
int _progress = 0;
bool _result = true;
uint16_t X = eeprom_read_word((uint16_t*)(EEPROM_BELTSTATUS_X));
uint16_t Y = eeprom_read_word((uint16_t*)(EEPROM_BELTSTATUS_Y));
lcd_belttest_print(_i("Checking X..."), X, Y);
_delay(2000);
KEEPALIVE_STATE(IN_HANDLER);
_result = lcd_selfcheck_axis_sg(X_AXIS);
X = eeprom_read_word((uint16_t*)(EEPROM_BELTSTATUS_X));
if (!_result){
lcd_belttest_print(_i("Error"), X, Y);
return;
}
lcd_belttest_print(_i("Checking Y..."), X, Y);
_result = lcd_selfcheck_axis_sg(Y_AXIS);
Y = eeprom_read_word((uint16_t*)(EEPROM_BELTSTATUS_Y));
if (!_result){
lcd_belttest_print(_i("Error"), X, Y);
lcd_clear();
return;
}
lcd_belttest_print(_i("Done"), X, Y);
KEEPALIVE_STATE(NOT_BUSY);
_delay(3000);
}
#endif //TMC2130
static void lcd_selftest_v()
{

View file

@ -47,6 +47,7 @@ unsigned char lcd_choose_color();
void lcd_load_filament_color_check();
//void lcd_mylang();
extern void lcd_belttest();
extern bool lcd_selftest();
void lcd_menu_statistics();

View file

@ -51,7 +51,7 @@ if ! [ -e lang_add.txt ]; then
fi
cat lang_add.txt | sed 's/^/"/;s/$/"/' | while read new_s; do
if grep "$new_s" lang_en.txt >/dev/nul; then
if grep "$new_s" lang_en.txt >/dev/null; then
echo "text already exist:"
echo "$new_s"
echo

View file

@ -37,14 +37,8 @@
#MSG_CONFIRM_CARRIAGE_AT_THE_TOP c=20 r=2
"Are left and right Z~carriages all up?"
#MSG_AUTO_DEPLETE_ON c=17 r=1
"SpoolJoin [on]"
#
"SpoolJoin [N/A]"
#MSG_AUTO_DEPLETE_OFF c=17 r=1
"SpoolJoin [off]"
#MSG_AUTO_DEPLETE c=17 r=1
"SpoolJoin"
#MSG_AUTO_HOME
"Auto home"
@ -130,14 +124,10 @@
#
"Copy selected language?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
#MSG_CRASHDETECT_NA
"Crash det. [N/A]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
#MSG_CRASHDETECT
"Crash det."
#
"Choose a filament for the First Layer Calibration and select it in the on-screen menu."
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
@ -202,14 +192,8 @@
#
"Fail stats MMU"
#MSG_FSENS_AUTOLOAD_ON c=17 r=1
"F. autoload [on]"
#MSG_FSENS_AUTOLOAD_NA c=17 r=1
"F. autoload [N/A]"
#MSG_FSENS_AUTOLOAD_OFF c=17 r=1
"F. autoload [off]"
#MSG_FSENSOR_AUTOLOAD
"F. autoload"
#
"Fail stats"
@ -220,20 +204,11 @@
#MSG_SELFTEST_FAN c=20
"Fan test"
#MSG_FANS_CHECK_ON c=17 r=1
"Fans check [on]"
#MSG_FANS_CHECK
"Fans check"
#MSG_FANS_CHECK_OFF c=17 r=1
"Fans check [off]"
#MSG_FSENSOR_ON
"Fil. sensor [on]"
#MSG_FSENSOR_NA
"Fil. sensor [N/A]"
#MSG_FSENSOR_OFF
"Fil. sensor [off]"
#MSG_FSENSOR
"Fil. sensor"
#
"Filam. runouts"
@ -361,6 +336,9 @@
#
"Last print failures"
#
"If you have additional steel sheets, calibrate their presets in Settings - HW Setup - Steel sheets."
#
"Last print"
@ -427,11 +405,14 @@
#MSG_MMU_OK_RESUMING c=20 r=4
"MMU OK. Resuming..."
#MSG_STEALTH_MODE_OFF
"Mode [Normal]"
#MSG_MODE
"Mode"
#MSG_SILENT_MODE_ON
"Mode [silent]"
#MSG_NORMAL
"Normal"
#MSG_SILENT
"Silent"
#
"MMU needs user attention."
@ -439,14 +420,14 @@
#
"MMU power fails"
#MSG_STEALTH_MODE_ON
"Mode [Stealth]"
#MSG_STEALTH
"Stealth"
#MSG_AUTO_MODE_ON
"Mode [auto power]"
#MSG_AUTO_POWER
"Auto power"
#MSG_SILENT_MODE_OFF
"Mode [high power]"
#MSG_HIGH_POWER
"High power"
#
"MMU2 connected"
@ -472,7 +453,7 @@
#MSG_NO_CARD
"No SD card"
#
#MSG_NA
"N/A"
#MSG_NO
@ -613,6 +594,15 @@
#
"Print FAN"
#
"Please insert filament into the extruder, then press the knob to load it."
#
"Please insert filament into the first tube of the MMU, then press the knob to load it."
#
"Please load filament first."
#MSG_PRUSA3D
"prusa3d.com"
@ -643,20 +633,17 @@
#MSG_BED_CORRECTION_RIGHT c=14 r=1
"Right side[um]"
#MSG_SECOND_SERIAL_ON c=17 r=1
"RPi port [on]"
#MSG_SECOND_SERIAL_OFF c=17 r=1
"RPi port [off]"
#MSG_RPI_PORT
"RPi port"
#MSG_WIZARD_RERUN c=20 r=7
"Running Wizard will delete current calibration results and start from the beginning. Continue?"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_OFF c=19 r=1
"SD card [normal]"
#MSG_SD_CARD
"SD card"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_ON c=19 r=1
"SD card [flshAir]"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY
"FlashAir"
#
"Right"
@ -688,9 +675,6 @@
#
"Select nozzle preheat temperature which matches your material."
#
"Select PLA filament:"
#MSG_SET_TEMPERATURE c=19 r=1
"Set temperature:"
@ -706,38 +690,38 @@
#MSG_FILE_CNT c=20 r=4
"Some files will not be sorted. Max. No. of files in 1 folder for sorting is 100."
#MSG_SORT_NONE c=17 r=1
"Sort [none]"
#MSG_SORT
"Sort"
#MSG_SORT_TIME c=17 r=1
"Sort [time]"
#MSG_NONE
"None"
#MSG_SORT_TIME
"Time"
#
"Severe skew:"
#MSG_SORT_ALPHA c=17 r=1
"Sort [alphabet]"
#MSG_SORT_ALPHA
"Alphabet"
#MSG_SORTING c=20 r=1
"Sorting files"
#MSG_SOUND_LOUD c=17 r=1
"Sound [loud]"
#MSG_SOUND_LOUD
"Loud"
#
"Slight skew:"
#MSG_SOUND_MUTE c=17 r=1
"Sound [mute]"
#MSG_SOUND
"Sound"
#
"Some problem encountered, Z-leveling enforced ..."
#MSG_SOUND_ONCE c=17 r=1
"Sound [once]"
#MSG_SOUND_SILENT c=17 r=1
"Sound [silent]"
#MSG_SOUND_ONCE
"Once"
#MSG_SPEED
"Speed"
@ -763,14 +747,14 @@
#MSG_SELFTEST_SWAPPED
"Swapped"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
#
"Select filament:"
#MSG_TEMP_CALIBRATION_ON c=20 r=1
"Temp. cal. [on]"
#MSG_TEMP_CALIBRATION c=12 r=1
"Temp. cal."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
#
"Select temperature which matches your material."
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
@ -904,11 +888,17 @@
#
"Y distance from min"
#
"The printer will start printing a zig-zag line. Rotate the knob until you reach the optimal height. Check the pictures in the handbook (Calibration chapter)."
#
"Y-correct:"
#MSG_OFF
" [off]"
"Off"
#MSG_ON
"On"
#
"Back"
@ -922,14 +912,14 @@
#
"FINDA:"
#
"Firmware [none]"
#MSG_FIRMWARE
"Firmware"
#
"Firmware [strict]"
#MSG_STRICT
"Strict"
#
"Firmware [warn]"
#MSG_WARN
"Warn"
#
"HW Setup"
@ -937,20 +927,11 @@
#
"IR:"
#
"Magnets comp.[N/A]"
#MSG_MAGNETS_COMP
"Magnets comp."
#
"Magnets comp.[Off]"
#
"Magnets comp. [On]"
#
"Mesh [3x3]"
#
"Mesh [7x7]"
#MSG_MESH
"Mesh"
#
"Mesh bed leveling"
@ -958,41 +939,17 @@
#
"MK3S firmware detected on MK3 printer"
#
"MMU Mode [Normal]"
#
"MMU Mode[Stealth]"
#MSG_MMU_MODE
"MMU Mode"
#
"Mode change in progress ..."
#
"Model [none]"
#MSG_MODEL
"Model"
#
"Model [strict]"
#
"Model [warn]"
#
"Nozzle d. [0.25]"
#
"Nozzle d. [0.40]"
#
"Nozzle d. [0.60]"
#
"Nozzle [none]"
#
"Nozzle [strict]"
#
"Nozzle [warn]"
#MSG_NOZZLE_DIAMETER
"Nozzle d."
#
"G-code sliced for a different level. Continue?"
@ -1039,8 +996,8 @@
#
"Sheet"
#
"Sound [assist]"
#MSG_SOUND_BLIND
"Assist"
#
"Steel sheets"
@ -1048,11 +1005,5 @@
#
"Z-correct:"
#
"Z-probe nr. [1]"
#
"Z-probe nr. [3]"
#
"Z-probe nr. [5]"
#MSG_Z_PROBE_NR
"Z-probe nr."

View file

@ -50,18 +50,10 @@
"Are left and right Z~carriages all up?"
"Dojely oba Z voziky k~hornimu dorazu?"
#MSG_AUTO_DEPLETE_ON c=17 r=1
"SpoolJoin [on]"
"SpoolJoin [zap]"
#
"SpoolJoin [N/A]"
#MSG_AUTO_DEPLETE c=17 r=1
"SpoolJoin"
"\x00"
#MSG_AUTO_DEPLETE_OFF c=17 r=1
"SpoolJoin [off]"
"SpoolJoin [vyp]"
#MSG_AUTO_HOME
"Auto home"
"\x00"
@ -72,7 +64,7 @@
#MSG_AUTOLOADING_ONLY_IF_FSENS_ON c=20 r=4
"Autoloading filament available only when filament sensor is turned on..."
"Automaticke zavadeni filamentu je dostupne pouze pri zapnutem filament senzoru..."
"Automaticke zavadeni filamentu je mozne pouze pri zapnutem filament senzoru..."
#MSG_AUTOLOADING_ENABLED c=20 r=4
"Autoloading filament is active, just press the knob and insert filament..."
@ -174,17 +166,13 @@
"Copy selected language?"
"Kopirovat vybrany jazyk?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Crash det. [zap]"
#MSG_CRASHDETECT_NA
"Crash det. [N/A]"
#MSG_CRASHDETECT
"Crash det."
"\x00"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
"Crash det. [vyp]"
#
"Zvolte filament pro kalibraci prvni vrstvy z nasledujiciho menu"
"Choose a filament for the First Layer Calibration and select it in the on-screen menu."
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
@ -270,17 +258,9 @@
"Fail stats MMU"
"Selhani MMU"
#MSG_FSENS_AUTOLOAD_ON c=17 r=1
"F. autoload [on]"
"F. autozav. [zap]"
#MSG_FSENS_AUTOLOAD_NA c=17 r=1
"F. autoload [N/A]"
"F. autozav. [N/A]"
#MSG_FSENS_AUTOLOAD_OFF c=17 r=1
"F. autoload [off]"
"F. autozav. [vyp]"
#MSG_FSENSOR_AUTOLOAD
"F. autoload"
"F. autozav."
#
"Fail stats"
@ -294,25 +274,13 @@
"Fan test"
"Test ventilatoru"
#MSG_FANS_CHECK_ON c=17 r=1
"Fans check [on]"
"Kontr. vent.[zap]"
#MSG_FANS_CHECK
"Fans check"
"Kontr. vent."
#MSG_FANS_CHECK_OFF c=17 r=1
"Fans check [off]"
"Kontr. vent.[vyp]"
#MSG_FSENSOR_ON
"Fil. sensor [on]"
"Fil. senzor [zap]"
#MSG_FSENSOR_NA
"Fil. sensor [N/A]"
"Fil. senzor [N/A]"
#MSG_FSENSOR_OFF
"Fil. sensor [off]"
"Fil. senzor [vyp]"
#MSG_FSENSOR
"Fil. sensor"
"Fil. senzor"
#
"Filam. runouts"
@ -482,6 +450,10 @@
"Last print failures"
"Selhani posl. tisku"
#
"If you have additional steel sheets, calibrate their presets in Settings - HW Setup - Steel sheets."
"Mate-li vice tiskovych platu, kalibrujte je v menu Nastaveni - HW nastaveni - Tiskove platy"
#
"Last print"
"Posledni tisk"
@ -570,13 +542,17 @@
"MMU OK. Resuming..."
"MMU OK. Pokracuji..."
#MSG_STEALTH_MODE_OFF
"Mode [Normal]"
"Mod [Normal]"
#MSG_MODE
"Mode"
"Mod"
#MSG_SILENT_MODE_ON
"Mode [silent]"
"Mod [tichy]"
#MSG_NORMAL
"Normal"
"\x00"
#MSG_SILENT
"Silent"
"Tichy"
#
"MMU needs user attention."
@ -586,17 +562,17 @@
"MMU power fails"
"MMU vypadky proudu"
#MSG_STEALTH_MODE_ON
"Mode [Stealth]"
"Mod [tichy]"
#MSG_STEALTH
"Stealth"
"Tichy"
#MSG_AUTO_MODE_ON
"Mode [auto power]"
"Mod [automaticky]"
#MSG_AUTO_POWER
"Auto power"
"Automaticky"
#MSG_SILENT_MODE_OFF
"Mode [high power]"
"Mod [vys. vykon]"
#MSG_HIGH_POWER
"High power"
"Vys. vykon"
#
"MMU2 connected"
@ -630,7 +606,7 @@
"No SD card"
"Zadna SD karta"
#
#MSG_NA
"N/A"
"\x00"
@ -818,6 +794,18 @@
"Print FAN"
"Tiskovy vent."
#
"Please insert filament into the extruder, then press the knob to load it."
"Prosim vlozte filament do extruderu a stisknete tlacitko k jeho zavedeni"
#
"Please insert filament into the first tube of the MMU, then press the knob to load it."
"Prosim vlozte filament do prvni trubicky MMU a stisknete tlacitko k jeho zavedeni"
#
"Please load filament first."
"Prosim nejdriv zavedte filament"
#MSG_PRUSA3D
"prusa3d.com"
"\x00"
@ -858,25 +846,21 @@
"Right side[um]"
"Vpravo [um]"
#MSG_SECOND_SERIAL_ON c=17 r=1
"RPi port [on]"
"RPi port [zap]"
#MSG_SECOND_SERIAL_OFF c=17 r=1
"RPi port [off]"
"RPi port [vyp]"
#MSG_RPI_PORT
"RPi port"
"\x00"
#MSG_WIZARD_RERUN c=20 r=7
"Running Wizard will delete current calibration results and start from the beginning. Continue?"
"Spusteni Pruvodce vymaze ulozene vysledky vsech kalibraci a spusti kalibracni proces od zacatku. Pokracovat?"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_OFF c=19 r=1
"SD card [normal]"
#MSG_SD_CARD
"SD card"
"\x00"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_ON c=19 r=1
"SD card [flshAir]"
"SD card [FlshAir]"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY
"FlashAir"
"\x00"
#
"Right"
@ -918,10 +902,6 @@
"Select nozzle preheat temperature which matches your material."
"Vyberte teplotu predehrati trysky ktera odpovida vasemu materialu."
#
"Select PLA filament:"
"Vyberte PLA filament:"
#MSG_SET_TEMPERATURE c=19 r=1
"Set temperature:"
"Nastavte teplotu:"
@ -942,49 +922,49 @@
"Some files will not be sorted. Max. No. of files in 1 folder for sorting is 100."
"Nektere soubory nebudou setrideny. Maximalni pocet souboru ve slozce pro setrideni je 100."
#MSG_SORT_NONE c=17 r=1
"Sort [none]"
"Trideni [Zadne]"
#MSG_SORT
"Sort"
"Trideni"
#MSG_SORT_TIME c=17 r=1
"Sort [time]"
"Trideni [cas]"
#MSG_NONE
"None"
"Zadne"
#MSG_SORT_TIME
"Time"
"Cas"
#
"Severe skew:"
"Tezke zkoseni:"
#MSG_SORT_ALPHA c=17 r=1
"Sort [alphabet]"
"Trideni [Abeceda]"
#MSG_SORT_ALPHA
"Alphabet"
"Abeceda"
#MSG_SORTING c=20 r=1
"Sorting files"
"Trideni souboru"
#MSG_SOUND_LOUD c=17 r=1
"Sound [loud]"
"Zvuk [hlasity]"
#MSG_SOUND_LOUD
"Loud"
"Hlasity"
#
"Slight skew:"
"Lehke zkoseni:"
#MSG_SOUND_MUTE c=17 r=1
"Sound [mute]"
"Zvuk [vypnuto]"
#MSG_SOUND
"Sound"
"Zvuk"
#
"Some problem encountered, Z-leveling enforced ..."
"Vyskytl se problem, srovnavam osu Z ..."
#MSG_SOUND_ONCE c=17 r=1
"Sound [once]"
"Zvuk [jednou]"
#MSG_SOUND_SILENT c=17 r=1
"Sound [silent]"
"Zvuk [tichy]"
#MSG_SOUND_ONCE
"Once"
"Jednou"
#MSG_SPEED
"Speed"
@ -1018,17 +998,17 @@
"Swapped"
"Prohozene"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
"Tepl. kal. "
#
"Select filament:"
"Zvolte filament:"
#MSG_TEMP_CALIBRATION_ON c=20 r=1
"Temp. cal. [on]"
"Tepl. kal. [zap]"
#MSG_TEMP_CALIBRATION c=12 r=1
"Temp. cal."
"Tepl. kal."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Tepl. kal. [vyp]"
#
"Select temperature which matches your material."
"Zvolte teplotu, ktera odpovida vasemu materialu."
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
@ -1206,13 +1186,21 @@
"Y distance from min"
"Y vzdalenost od min"
#
"The printer will start printing a zig-zag line. Rotate the knob until you reach the optimal height. Check the pictures in the handbook (Calibration chapter)."
"\x00"
#
"Y-correct:"
"Korekce Y:"
#MSG_OFF
" [off]"
" [vyp]"
"Off"
"Vyp"
#MSG_ON
"On"
"Zap"
#
"Back"
@ -1230,17 +1218,17 @@
"FINDA:"
"\x00"
#
"Firmware [none]"
"Firmware [Zadne]"
#MSG_FIRMWARE
"Firmware"
"\x00"
#
"Firmware [strict]"
"Firmware [Prisne]"
#MSG_STRICT
"Strict"
"Prisne"
#
"Firmware [warn]"
"Firmware[Varovat]"
#MSG_WARN
"Warn"
"Varovat"
#
"HW Setup"
@ -1250,25 +1238,13 @@
"IR:"
"\x00"
#
"Magnets comp.[N/A]"
"Komp. magnetu[N/A]"
#MSG_MAGNETS_COMP
"Magnets comp."
"Komp. magnetu"
#
"Magnets comp.[Off]"
"Komp. magnetu[Vyp]"
#
"Magnets comp. [On]"
"Komp. magnetu[Zap]"
#
"Mesh [3x3]"
"Mesh [3x3]"
#
"Mesh [7x7]"
"Mesh [7x7]"
#MSG_MESH
"Mesh"
"\x00"
#
"Mesh bed leveling"
@ -1278,53 +1254,21 @@
"MK3S firmware detected on MK3 printer"
"MK3S firmware detekovan na tiskarne MK3"
#
"MMU Mode [Normal]"
"MMU mod [Normal]"
#
"MMU Mode[Stealth]"
"MMU Mod [Tichy]"
#MSG_MMU_MODE
"MMU Mode"
"MMU mod"
#
"Mode change in progress ..."
"Probiha zmena modu..."
#
"Model [none]"
"Model [Zadne]"
#MSG_MODEL
"Model"
"\x00"
#
"Model [strict]"
"Model [Prisne]"
#
"Model [warn]"
"Model [Varovat]"
#
"Nozzle d. [0.25]"
"Tryska [0.25]"
#
"Nozzle d. [0.40]"
"Tryska [0.40]"
#
"Nozzle d. [0.60]"
"Tryska [0.60]"
#
"Nozzle [none]"
"Tryska [Zadne]"
#
"Nozzle [strict]"
"Tryska [Prisne]"
#
"Nozzle [warn]"
"Tryska [Varovat]"
#MSG_NOZZLE_DIAMETER
"Nozzle d."
"Tryska"
#
"G-code sliced for a different level. Continue?"
@ -1386,9 +1330,9 @@
"Sheet"
"Plat"
#
"Sound [assist]"
"Zvuk [Asist.]"
#MSG_SOUND_BLIND
"Assist"
"Asist."
#
"Steel sheets"
@ -1398,14 +1342,6 @@
"Z-correct:"
"Korekce Z:"
#
"Z-probe nr. [1]"
"Pocet mereni Z [1]"
#
"Z-probe nr. [3]"
"Pocet mereni Z [3]"
#
"Z-probe nr. [5]"
"Pocet mereni Z [5]"
#MSG_Z_PROBE_NR
"Z-probe nr."
"Pocet mereni Z"

View file

@ -50,17 +50,9 @@
"Are left and right Z~carriages all up?"
"Sind linke+rechte Z- Schlitten ganz oben?"
#MSG_AUTO_DEPLETE_ON c=17 r=1
"SpoolJoin [on]"
"SpoolJoin [an]"
#
"SpoolJoin [N/A]"
"SpoolJoin [N/V]"
#MSG_AUTO_DEPLETE_OFF c=17 r=1
"SpoolJoin [off]"
"SpoolJoin [aus]"
#MSG_AUTO_DEPLETE c=17 r=1
"SpoolJoin"
"\x00"
#MSG_AUTO_HOME
"Auto home"
@ -72,7 +64,7 @@
#MSG_AUTOLOADING_ONLY_IF_FSENS_ON c=20 r=4
"Autoloading filament available only when filament sensor is turned on..."
"Automatisches Laden Filament nur bei einge schaltetem Filament- sensor verfuegbar..."
"Automatisches Laden Filament nur bei eingeschaltetem Fil. sensor verfuegbar..."
#MSG_AUTOLOADING_ENABLED c=20 r=4
"Autoloading filament is active, just press the knob and insert filament..."
@ -174,17 +166,13 @@
"Copy selected language?"
"Gewaehlte Sprache kopieren?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Crash Erk. [an]"
#MSG_CRASHDETECT
"Crash det."
"Crash Erk."
#MSG_CRASHDETECT_NA
"Crash det. [N/A]"
"Crash Erk. [nv]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
"Crash Erk. [aus]"
#
"Choose a filament for the First Layer Calibration and select it in the on-screen menu."
"Waehlen Sie ein Filament fuer Erste Schichtkalibrierung aus und waehlen Sie es im On-Screen-Menu aus."
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
@ -270,17 +258,9 @@
"Fail stats MMU"
"MMU-Fehler"
#MSG_FSENS_AUTOLOAD_ON c=17 r=1
"F. autoload [on]"
"F.Autoladen [an]"
#MSG_FSENS_AUTOLOAD_NA c=17 r=1
"F. autoload [N/A]"
"F. Autoload [nv]"
#MSG_FSENS_AUTOLOAD_OFF c=17 r=1
"F. autoload [off]"
"F. Autoload [aus]"
#MSG_FSENSOR_AUTOLOAD
"F. autoload"
"F. autoladen"
#
"Fail stats"
@ -294,25 +274,13 @@
"Fan test"
"Lueftertest"
#MSG_FANS_CHECK_ON c=17 r=1
"Fans check [on]"
"Luefter Chk. [an]"
#MSG_FANS_CHECK
"Fans check"
"Luefter Chk."
#MSG_FANS_CHECK_OFF c=17 r=1
"Fans check [off]"
"Luefter Chk.[aus]"
#MSG_FSENSOR_ON
"Fil. sensor [on]"
"Fil. Sensor [an]"
#MSG_FSENSOR_NA
"Fil. sensor [N/A]"
"Fil. Sensor [nv]"
#MSG_FSENSOR_OFF
"Fil. sensor [off]"
"Fil. Sensor [aus]"
#MSG_FSENSOR
"Fil. sensor"
"\x00"
#
"Filam. runouts"
@ -482,6 +450,10 @@
"Last print failures"
"Letzte Druckfehler"
#
"If you have additional steel sheets, calibrate their presets in Settings - HW Setup - Steel sheets."
"Wenn Sie zusaetzliche Stahlbleche haben, kalibrieren Sie deren Voreinstellungen unter Einstellungen - HW Setup - Stahlbleche."
#
"Last print"
"Letzter Druck"
@ -570,13 +542,17 @@
"MMU OK. Resuming..."
"MMU OK. Weiterdrucken..."
#MSG_STEALTH_MODE_OFF
"Mode [Normal]"
"Modus [Normal]"
#MSG_MODE
"Mode"
"Modus"
#MSG_SILENT_MODE_ON
"Mode [silent]"
"Modus [leise]"
#MSG_NORMAL
"Normal"
"\x00"
#MSG_SILENT
"Silent"
"Leise"
#
"MMU needs user attention."
@ -586,17 +562,17 @@
"MMU power fails"
"MMU Netzfehler"
#MSG_STEALTH_MODE_ON
"Mode [Stealth]"
"Modus [Stealth]"
#MSG_STEALTH
"Stealth"
"\x00"
#MSG_AUTO_MODE_ON
"Mode [auto power]"
"Modus[Auto Power]"
#MSG_AUTO_POWER
"Auto power"
"\x00"
#MSG_SILENT_MODE_OFF
"Mode [high power]"
"Modus[Hohe Leist]"
#MSG_HIGH_POWER
"High power"
"Hohe leist"
#
"MMU2 connected"
@ -630,9 +606,9 @@
"No SD card"
"Keine SD Karte"
#
#MSG_NA
"N/A"
"N.V."
"N/V"
#MSG_NO
"No"
@ -818,6 +794,18 @@
"Print FAN"
"Druckvent."
#
"Please insert filament into the extruder, then press the knob to load it."
"Bitte legen Sie das Filament in den Extruder ein und druecken Sie dann den Knopf, um es zu laden."
#
"Please insert filament into the first tube of the MMU, then press the knob to load it."
"Bitte stecken Sie das Filament in den ersten Schlauch der MMU und druecken Sie dann den Knopf, um es zu laden."
#
"Please load filament first."
"Bitte laden Sie zuerst das Filament."
#MSG_PRUSA3D
"prusa3d.com"
"\x00"
@ -858,25 +846,21 @@
"Right side[um]"
"Rechts [um]"
#MSG_SECOND_SERIAL_ON c=17 r=1
"RPi port [on]"
"RPi Port [an]"
#MSG_SECOND_SERIAL_OFF c=17 r=1
"RPi port [off]"
"RPi Port [aus]"
#MSG_RPI_PORT
"RPi port"
"\x00"
#MSG_WIZARD_RERUN c=20 r=7
"Running Wizard will delete current calibration results and start from the beginning. Continue?"
"Der Assistent wird die aktuellen Kalibrierungsdaten loeschen und von vorne beginnen. Weiterfahren?"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_OFF c=19 r=1
"SD card [normal]"
"SD Karte [normal]"
#MSG_SD_CARD
"SD card"
"SD Karte"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_ON c=19 r=1
"SD card [flshAir]"
"SD Karte[flshAir]"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY
"FlashAir"
"\x00"
#
"Right"
@ -918,10 +902,6 @@
"Select nozzle preheat temperature which matches your material."
"Bitte Vorheiztemperatur auswaehlen, die Ihrem Material entspricht."
#
"Select PLA filament:"
"PLA Filament auswaehlen:"
#MSG_SET_TEMPERATURE c=19 r=1
"Set temperature:"
"Temp. einstellen:"
@ -942,49 +922,49 @@
"Some files will not be sorted. Max. No. of files in 1 folder for sorting is 100."
"Einige Dateien wur- den nicht sortiert. Max. Dateien pro Verzeichnis = 100."
#MSG_SORT_NONE c=17 r=1
"Sort [none]"
"Sort. [ohne]"
#MSG_SORT
"Sort"
"Sort."
#MSG_SORT_TIME c=17 r=1
"Sort [time]"
"Sort. [Zeit]"
#MSG_NONE
"None"
"Ohne"
#MSG_SORT_TIME
"Time"
"Zeit"
#
"Severe skew:"
"Schwer.Schr:"
#MSG_SORT_ALPHA c=17 r=1
"Sort [alphabet]"
"Sort. [Alphabet]"
#MSG_SORT_ALPHA
"Alphabet"
"\x00"
#MSG_SORTING c=20 r=1
"Sorting files"
"Sortiere Dateien"
#MSG_SOUND_LOUD c=17 r=1
"Sound [loud]"
"Sound [laut]"
#MSG_SOUND_LOUD
"Loud"
"Laut"
#
"Slight skew:"
"Leicht.Schr:"
#MSG_SOUND_MUTE c=17 r=1
"Sound [mute]"
"Sound [stumm]"
#MSG_SOUND
"Sound"
"\x00"
#
"Some problem encountered, Z-leveling enforced ..."
"Fehler aufgetreten, Z-Kalibrierung erforderlich..."
#MSG_SOUND_ONCE c=17 r=1
"Sound [once]"
"Sound [einmal]"
#MSG_SOUND_SILENT c=17 r=1
"Sound [silent]"
"Sound [leise]"
#MSG_SOUND_ONCE
"Once"
"Einmal"
#MSG_SPEED
"Speed"
@ -1018,17 +998,17 @@
"Swapped"
"Ausgetauscht"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
"Temp Kalib. "
#
"Select filament:"
"Filament auswaehlen:"
#MSG_TEMP_CALIBRATION_ON c=20 r=1
"Temp. cal. [on]"
"Temp. Kal. [an]"
#MSG_TEMP_CALIBRATION c=12 r=1
"Temp. cal."
"Temp Kalib."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Temp. Kal. [aus]"
#
"Select temperature which matches your material."
"Waehlen Sie die Temperatur, die zu Ihrem Material passt."
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
@ -1202,18 +1182,25 @@
"XYZ calibration failed. Right front calibration point not reachable."
"XYZ-Kalibrierung fehlgeschlagen. Rechter vorderer Kalibrierpunkt ist nicht erreichbar."
#
"Y distance from min"
"Y Entfernung vom Min"
#
"The printer will start printing a zig-zag line. Rotate the knob until you reach the optimal height. Check the pictures in the handbook (Calibration chapter)."
"\x00"
#
"Y-correct:"
"Y-Korrektur:"
#MSG_OFF
" [off]"
" [aus]"
"Off"
"Aus"
#MSG_ON
"On"
"An"
#
"Back"
@ -1231,17 +1218,17 @@
"FINDA:"
"\x00"
#
"Firmware [none]"
"Firmware [ohne]"
#MSG_FIRMWARE
"Firmware"
"\x00"
#
"Firmware [strict]"
"Firmware [strikt]"
#MSG_STRICT
"Strict"
"Strikt"
#
"Firmware [warn]"
"Firmware [warnen]"
#MSG_WARN
"Warn"
"Warnen"
#
"HW Setup"
@ -1251,25 +1238,13 @@
"IR:"
"\x00"
#
"Magnets comp.[N/A]"
"Magnet Komp. [nv]"
#MSG_MAGNETS_COMP
"Magnets comp."
"Magnet Komp."
#
"Magnets comp.[Off]"
"Magnet Komp. [Aus]"
#
"Magnets comp. [On]"
"Magnet Komp. [An]"
#
"Mesh [3x3]"
"Gitter [3x3]"
#
"Mesh [7x7]"
"Gitter [7x7]"
#MSG_MESH
"Mesh"
"Gitter"
#
"Mesh bed leveling"
@ -1279,53 +1254,21 @@
"MK3S firmware detected on MK3 printer"
"MK3S-Firmware auf MK3-Drucker erkannt"
#
"MMU Mode [Normal]"
"MMU Modus[Normal]"
#
"MMU Mode[Stealth]"
"MMU Mod.[Stealth]"
#MSG_MMU_MODE
"MMU Mode"
"MMU Modus"
#
"Mode change in progress ..."
"Moduswechsel erfolgt..."
#
"Model [none]"
"Modell [ohne]"
#MSG_MODEL
"Model"
"Modell"
#
"Model [strict]"
"Modell [strikt]"
#
"Model [warn]"
"Modell [warnen]"
#
"Nozzle d. [0.25]"
"Duese D. [0.25]"
#
"Nozzle d. [0.40]"
"Duese D. [0.40]"
#
"Nozzle d. [0.60]"
"Duese D. [0.60]"
#
"Nozzle [none]"
"Duese [ohne]"
#
"Nozzle [strict]"
"Duese [strikt]"
#
"Nozzle [warn]"
"Duese [warnen]"
#MSG_NOZZLE_DIAMETER
"Nozzle d."
"Duese D."
#
"G-code sliced for a different level. Continue?"
@ -1387,9 +1330,9 @@
"Sheet"
"Blech"
#
"Sound [assist]"
"Sound [Assist]"
#MSG_SOUND_BLIND
"Assist"
"\x00"
#
"Steel sheets"
@ -1399,14 +1342,6 @@
"Z-correct:"
"Z-Korrektur:"
#
"Z-probe nr. [1]"
"Z-Probe Nr. [1]"
#
"Z-probe nr. [3]"
"Z-Probe Nr. [3]"
#
"Z-probe nr. [5]"
"Z-Probe Nr. [5]"
#MSG_Z_PROBE_NR
"Z-probe nr."
"\x00"

View file

@ -50,16 +50,8 @@
"Are left and right Z~carriages all up?"
"Carros Z izq./der. estan arriba maximo?"
#MSG_AUTO_DEPLETE_ON c=17 r=1
"SpoolJoin [on]"
"\x00"
#
"SpoolJoin [N/A]"
"\x00"
#MSG_AUTO_DEPLETE_OFF c=17 r=1
"SpoolJoin [off]"
#MSG_AUTO_DEPLETE c=17 r=1
"SpoolJoin"
"\x00"
#MSG_AUTO_HOME
@ -72,11 +64,11 @@
#MSG_AUTOLOADING_ONLY_IF_FSENS_ON c=20 r=4
"Autoloading filament available only when filament sensor is turned on..."
"La carga automatica de filamento solo funciona si el sensor de filamento esta activado..."
"La carga automatica solo funciona si el sensor de filamento esta activado..."
#MSG_AUTOLOADING_ENABLED c=20 r=4
"Autoloading filament is active, just press the knob and insert filament..."
"La carga automatica de filamento esta activada, pulse el dial e inserte el filamento..."
"La carga automatica esta activada, pulse el dial e inserte el filamento..."
#MSG_SELFTEST_AXIS_LENGTH
"Axis length"
@ -174,17 +166,13 @@
"Copy selected language?"
"Copiar idioma seleccionado?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Det. choque [act]"
#MSG_CRASHDETECT
"Crash det."
"Det. choque"
#MSG_CRASHDETECT_NA
"Crash det. [N/A]"
"Dec. choque [N/D]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
"Det. choque [ina]"
#
"Choose a filament for the First Layer Calibration and select it in the on-screen menu."
"Escoge un filamento para la Calibracion de la Primera Capa y seleccionalo en el menu en pantalla."
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
@ -270,17 +258,9 @@
"Fail stats MMU"
"Estadistica de fallos MMU"
#MSG_FSENS_AUTOLOAD_ON c=17 r=1
"F. autoload [on]"
"Autocarg.Fil[act]"
#MSG_FSENS_AUTOLOAD_NA c=17 r=1
"F. autoload [N/A]"
"Autocarg.Fil[N/D]"
#MSG_FSENS_AUTOLOAD_OFF c=17 r=1
"F. autoload [off]"
"Autocarg.Fil[ina]"
#MSG_FSENSOR_AUTOLOAD
"F. autoload"
"Autocarg.fil."
#
"Fail stats"
@ -294,25 +274,13 @@
"Fan test"
"Test ventiladores"
#MSG_FANS_CHECK_ON c=17 r=1
"Fans check [on]"
"Comprob.vent[act]"
#MSG_FANS_CHECK
"Fans check"
"Comprob.vent"
#MSG_FANS_CHECK_OFF c=17 r=1
"Fans check [off]"
"Comprob.vent[ina]"
#MSG_FSENSOR_ON
"Fil. sensor [on]"
"Sensor Fil. [act]"
#MSG_FSENSOR_NA
"Fil. sensor [N/A]"
"Sensor Fil. [N/D]"
#MSG_FSENSOR_OFF
"Fil. sensor [off]"
"Sensor Fil. [ina]"
#MSG_FSENSOR
"Fil. sensor"
"Sensor Fil."
#
"Filam. runouts"
@ -482,6 +450,10 @@
"Last print failures"
"Ultimas impresiones fallidas"
#
"If you have additional steel sheets, calibrate their presets in Settings - HW Setup - Steel sheets."
"Si tienes planchas de acero adicionales, calibra sus ajustes en Ajustes - Ajustes HW - Planchas acero."
#
"Last print"
"Ultima impresion"
@ -570,13 +542,17 @@
"MMU OK. Resuming..."
"MMU OK. Resumiendo..."
#MSG_STEALTH_MODE_OFF
"Mode [Normal]"
"Modo [Normal]"
#MSG_MODE
"Mode"
"Modo"
#MSG_SILENT_MODE_ON
"Mode [silent]"
"Modo [silencio]"
#MSG_NORMAL
"Normal"
"\x00"
#MSG_SILENT
"Silent"
"Silencio"
#
"MMU needs user attention."
@ -586,17 +562,17 @@
"MMU power fails"
"Fallo de energia en MMU"
#MSG_STEALTH_MODE_ON
"Mode [Stealth]"
"Modo [Silencio]"
#MSG_STEALTH
"Stealth"
"Silencio"
#MSG_AUTO_MODE_ON
"Mode [auto power]"
"Modo[fuerza auto]"
#MSG_AUTO_POWER
"Auto power"
"Fuerza auto"
#MSG_SILENT_MODE_OFF
"Mode [high power]"
"Modo [rend.pleno]"
#MSG_HIGH_POWER
"High power"
"Rend.pleno"
#
"MMU2 connected"
@ -630,7 +606,7 @@
"No SD card"
"No hay tarjeta SD"
#
#MSG_NA
"N/A"
"N/A"
@ -818,6 +794,18 @@
"Print FAN"
"Vent. extr"
#
"Please insert filament into the extruder, then press the knob to load it."
"Por favor, coloca el filamento en el extrusor, luego presiona el dial para cargarlo."
#
"Please insert filament into the first tube of the MMU, then press the knob to load it."
"Por favor, coloca el filamento en el primer tubo de la MMU, luego pulsa el dial para cargarlo."
#
"Please load filament first."
"Por favor, cargar primero el filamento. "
#MSG_PRUSA3D
"prusa3d.com"
"prusa3d.es"
@ -858,25 +846,21 @@
"Right side[um]"
"Derecha [um]"
#MSG_SECOND_SERIAL_ON c=17 r=1
"RPi port [on]"
"Puerto RPi [act]"
#MSG_SECOND_SERIAL_OFF c=17 r=1
"RPi port [off]"
"Puerto RPi [ina]"
#MSG_RPI_PORT
"RPi port"
"Puerto RPi"
#MSG_WIZARD_RERUN c=20 r=7
"Running Wizard will delete current calibration results and start from the beginning. Continue?"
"Ejecutar el Wizard borrara los valores de calibracion actuales y comenzara de nuevo. Continuar?"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_OFF c=19 r=1
"SD card [normal]"
"Tarj. SD [normal]"
#MSG_SD_CARD
"SD card"
"Tarj. SD"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_ON c=19 r=1
"SD card [flshAir]"
"Tarj. SD[FlshAir]"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY
"FlashAir"
"\x00"
#
"Right"
@ -918,10 +902,6 @@
"Select nozzle preheat temperature which matches your material."
"Selecciona la temperatura para precalentar la boquilla que se ajuste a tu material. "
#
"Select PLA filament:"
"Seleccionar filamento PLA:"
#MSG_SET_TEMPERATURE c=19 r=1
"Set temperature:"
"Establecer temp.:"
@ -942,49 +922,49 @@
"Some files will not be sorted. Max. No. of files in 1 folder for sorting is 100."
"Algunos archivos no se ordenaran. Maximo 100 archivos por carpeta para ordenar. "
#MSG_SORT_NONE c=17 r=1
"Sort [none]"
"Ordenar [ninguno]"
#MSG_SORT
"Sort"
"Ordenar"
#MSG_SORT_TIME c=17 r=1
"Sort [time]"
"Ordenar [fecha]"
#MSG_NONE
"None"
"Ninguno"
#MSG_SORT_TIME
"Time"
"Fecha"
#
"Severe skew:"
"Incl.severa:"
#MSG_SORT_ALPHA c=17 r=1
"Sort [alphabet]"
"Ordenar [alfabet]"
#MSG_SORT_ALPHA
"Alphabet"
"Alfabet"
#MSG_SORTING c=20 r=1
"Sorting files"
"Ordenando archivos"
#MSG_SOUND_LOUD c=17 r=1
"Sound [loud]"
"Sonido [alto]"
#MSG_SOUND_LOUD
"Loud"
"Alto"
#
"Slight skew:"
"Liger.incl.:"
#MSG_SOUND_MUTE c=17 r=1
"Sound [mute]"
"Sonido[silenciad]"
#MSG_SOUND
"Sound"
"Sonido"
#
"Some problem encountered, Z-leveling enforced ..."
"Problema encontrado, nivelacion Z forzosa ..."
#MSG_SOUND_ONCE c=17 r=1
"Sound [once]"
"Sonido [una vez]"
#MSG_SOUND_SILENT c=17 r=1
"Sound [silent]"
"Sonido[silencios]"
#MSG_SOUND_ONCE
"Once"
"Una vez"
#MSG_SPEED
"Speed"
@ -1018,17 +998,17 @@
"Swapped"
"Intercambiado"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
"Cal. temp. "
#
"Select filament:"
"Selecciona filamento:"
#MSG_TEMP_CALIBRATION_ON c=20 r=1
"Temp. cal. [on]"
"Cal. temp. [on]"
#MSG_TEMP_CALIBRATION c=12 r=1
"Temp. cal."
"Cal. temp."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Cal. temp. [off]"
#
"Select temperature which matches your material."
"Selecciona la temperatura adecuada a tu material."
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
@ -1206,13 +1186,21 @@
"Y distance from min"
"Distancia en Y desde el min"
#
"The printer will start printing a zig-zag line. Rotate the knob until you reach the optimal height. Check the pictures in the handbook (Calibration chapter)."
"\x00"
#
"Y-correct:"
"Corregir-Y:"
#MSG_OFF
" [off]"
"[apag]"
"Off"
"Ina"
#MSG_ON
"On"
"Act"
#
"Back"
@ -1230,17 +1218,17 @@
"FINDA:"
"FINDA:"
#
"Firmware [none]"
"Firmware[ninguno]"
#MSG_FIRMWARE
"Firmware"
"\x00"
#
"Firmware [strict]"
"Firmware[estrict]"
#MSG_STRICT
"Strict"
"Estrict"
#
"Firmware [warn]"
"Firmware [aviso]"
#MSG_WARN
"Warn"
"Aviso"
#
"HW Setup"
@ -1250,25 +1238,13 @@
"IR:"
"\x00"
#
"Magnets comp.[N/A]"
"Comp. imanes [N/A]"
#MSG_MAGNETS_COMP
"Magnets comp."
"Comp. imanes"
#
"Magnets comp.[Off]"
"Comp. imanes [Off]"
#
"Magnets comp. [On]"
"Comp. imanes [On]"
#
"Mesh [3x3]"
"Malla [3x3]"
#
"Mesh [7x7]"
"Malla [7x7]"
#MSG_MESH
"Mesh"
"Malla"
#
"Mesh bed leveling"
@ -1278,53 +1254,21 @@
"MK3S firmware detected on MK3 printer"
"Firmware MK3S detectado en impresora MK3"
#
"MMU Mode [Normal]"
"Modo MMU [Normal]"
#
"MMU Mode[Stealth]"
"Modo MMU[Silenci]"
#MSG_MMU_MODE
"MMU Mode"
"Modo MMU"
#
"Mode change in progress ..."
"Cambio de modo progresando ..."
#
"Model [none]"
"Modelo [ninguno]"
#MSG_MODEL
"Model"
"Modelo"
#
"Model [strict]"
"Modelo [estricto]"
#
"Model [warn]"
"Modelo [aviso]"
#
"Nozzle d. [0.25]"
"Diam. nozzl[0.25]"
#
"Nozzle d. [0.40]"
"Diam. nozzl[0.40]"
#
"Nozzle d. [0.60]"
"Diam. nozzl[0.60]"
#
"Nozzle [none]"
"Nozzle [ninguno]"
#
"Nozzle [strict]"
"Nozzle [estricto]"
#
"Nozzle [warn]"
"Nozzle [aviso]"
#MSG_NOZZLE_DIAMETER
"Nozzle d."
"Diam. nozzl"
#
"G-code sliced for a different level. Continue?"
@ -1386,9 +1330,9 @@
"Sheet"
"Lamina"
#
"Sound [assist]"
"Sonido [asistido]"
#MSG_SOUND_BLIND
"Assist"
"Asistido"
#
"Steel sheets"
@ -1398,14 +1342,6 @@
"Z-correct:"
"Corregir-Z:"
#
"Z-probe nr. [1]"
"Z-sensor nr. [1]"
#
"Z-probe nr. [3]"
"Z-sensor nr. [3]"
#
"Z-probe nr. [5]"
"Z-sensor nr. [5]"
#MSG_Z_PROBE_NR
"Z-probe nr."
"Z-sensor nr."

View file

@ -50,16 +50,8 @@
"Are left and right Z~carriages all up?"
"Z~carriages gauche + droite tout en haut?"
#MSG_AUTO_DEPLETE_ON c=17 r=1
"SpoolJoin [on]"
"\x00"
#
"SpoolJoin [N/A]"
"\x00"
#MSG_AUTO_DEPLETE_OFF c=17 r=1
"SpoolJoin [off]"
#MSG_AUTO_DEPLETE c=17 r=1
"SpoolJoin"
"\x00"
#MSG_AUTO_HOME
@ -174,17 +166,13 @@
"Copy selected language?"
"Copier la langue selectionne?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Detect.crash [on]"
#MSG_CRASHDETECT
"Crash det."
"Detect.crash"
#MSG_CRASHDETECT_NA
"Crash det. [N/A]"
"Detect.crash[N/A]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
"Detect.crash[off]"
#
"Choose a filament for the First Layer Calibration and select it in the on-screen menu."
"Choisissez un filament pour la Calibration de la Premiere Couche et selectionnez-le depuis le menu a l'ecran."
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
@ -270,18 +258,9 @@
"Fail stats MMU"
"Stat. d'echec MMU"
#MSG_FSENS_AUTOLOAD_ON c=17 r=1
"F. autoload [on]"
"Autochargeur [on]"
#MSG_FSENS_AUTOLOAD_NA c=17 r=1
"F. autoload [N/A]"
"Autochargeur[N/A]"
#MSG_FSENS_AUTOLOAD_OFF c=17 r=1
"F. autoload [off]"
"Autochargeur[off]"
#MSG_FSENSOR_AUTOLOAD
"F. autoload"
"Autochargeur"
#
"Fail stats"
"Stat. d'echec"
@ -294,26 +273,13 @@
"Fan test"
"Test du ventilateur"
#MSG_FANS_CHECK_ON c=17 r=1
"Fans check [on]"
"Verif vent. [on]"
#MSG_FANS_CHECK_OFF c=17 r=1
"Fans check [off]"
"Verif vent. [off]"
#MSG_FSENSOR_ON
"Fil. sensor [on]"
"Capteur Fil. [on]"
#MSG_FSENSOR_NA
"Fil. sensor [N/A]"
"Capteur Fil.[N/A]"
#MSG_FSENSOR_OFF
"Fil. sensor [off]"
"Capteur Fil.[off]"
#MSG_FANS_CHECK
"Fans check"
"Verif vent."
#MSG_FSENSOR
"Fil. sensor"
"Capteur Fil."
#
"Filam. runouts"
"Fins de filament"
@ -482,6 +448,10 @@
"Last print failures"
"Echecs derniere imp."
#
"If you have additional steel sheets, calibrate their presets in Settings - HW Setup - Steel sheets."
"Si vous avez d'autres feuilles d'acier, calibrez leurs pre-reglages dans Reglages - Config HW - Feuilles d'acier."
#
"Last print"
"Derniere impres."
@ -570,13 +540,17 @@
"MMU OK. Resuming..."
"MMU OK. Reprise ..."
#MSG_STEALTH_MODE_OFF
"Mode [Normal]"
#MSG_MODE
"Mode"
"\x00"
#MSG_SILENT_MODE_ON
"Mode [silent]"
"Mode [feutre]"
#MSG_NORMAL
"Normal"
"\x00"
#MSG_SILENT
"Silent"
"Feutre"
#
"MMU needs user attention."
@ -586,17 +560,17 @@
"MMU power fails"
"Echecs alim. MMU"
#MSG_STEALTH_MODE_ON
"Mode [Stealth]"
"Mode [furtif]"
#MSG_STEALTH
"Stealth"
"Furtif"
#MSG_AUTO_MODE_ON
"Mode [auto power]"
"Mode [puiss.auto]"
#MSG_AUTO_POWER
"Auto power"
"Puiss.auto"
#MSG_SILENT_MODE_OFF
"Mode [high power]"
"Mode[haute puiss]"
#MSG_HIGH_POWER
"High power"
"Haute puiss"
#
"MMU2 connected"
@ -630,7 +604,7 @@
"No SD card"
"Pas de carte SD"
#
#MSG_NA
"N/A"
"\x00"
@ -818,6 +792,18 @@
"Print FAN"
"Vent. impr"
#
"Please insert filament into the extruder, then press the knob to load it."
"Veuillez inserer le filament dans l'extrudeur, puis appuyez sur le bouton pour le charger."
#
"Please insert filament into the first tube of the MMU, then press the knob to load it."
"Veuillez inserer le filament dans le premier tube du MMU, puis appuyez sur le bouton pour le charger."
#
"Please load filament first."
"Veuillez d'abord charger un filament."
#MSG_PRUSA3D
"prusa3d.com"
"\x00"
@ -858,25 +844,21 @@
"Right side[um]"
"Droite [um]"
#MSG_SECOND_SERIAL_ON c=17 r=1
"RPi port [on]"
"Port RPi [on]"
#MSG_SECOND_SERIAL_OFF c=17 r=1
"RPi port [off]"
"Port RPi [off]"
#MSG_RPI_PORT
"RPi port"
"Port RPi"
#MSG_WIZARD_RERUN c=20 r=7
"Running Wizard will delete current calibration results and start from the beginning. Continue?"
"Lancement de l'Assistant supprimera les resultats actuels de calibration et commencera du debut. Continuer?"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_OFF c=19 r=1
"SD card [normal]"
"Carte SD [normal]"
#MSG_SD_CARD
"SD card"
"Carte SD"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_ON c=19 r=1
"SD card [flshAir]"
"Carte SD[flshAir]"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY
"FlashAir"
"FlshAir"
#
"Right"
@ -918,10 +900,6 @@
"Select nozzle preheat temperature which matches your material."
"Selectionnez la temperature de prechauffage de la buse qui correspond a votre materiau."
#
"Select PLA filament:"
"Selectionnez le fil. PLA:"
#MSG_SET_TEMPERATURE c=19 r=1
"Set temperature:"
"Regler temp.:"
@ -942,50 +920,49 @@
"Some files will not be sorted. Max. No. of files in 1 folder for sorting is 100."
"Certains fichiers ne seront pas tries. Max 100 fichiers tries par dossier."
#MSG_SORT_NONE c=17 r=1
"Sort [none]"
"Tri [aucun]"
#MSG_SORT
"Sort"
"Tri"
#MSG_SORT_TIME c=17 r=1
"Sort [time]"
"Tri [heure]"
#MSG_NONE
"None"
"Aucun"
#MSG_SORT_TIME
"Time"
"Heure"
#
"Severe skew:"
"Deviat.sev.:"
#MSG_SORT_ALPHA c=17 r=1
"Sort [alphabet]"
"Tri [alphabet]"
#MSG_SORT_ALPHA
"Alphabet"
"\x00"
#MSG_SORTING c=20 r=1
"Sorting files"
"Tri des fichiers"
#MSG_SOUND_LOUD c=17 r=1
"Sound [loud]"
"Son [fort]"
#MSG_SOUND_LOUD
"Loud"
"Fort"
#
"Slight skew:"
"Deviat.leg.:"
#MSG_SOUND_MUTE c=17 r=1
"Sound [mute]"
"Son [muet]"
#MSG_SOUND
"Sound"
"Son"
#
"Some problem encountered, Z-leveling enforced ..."
"Probleme rencontre, cliquez sur le bouton pour niveller l'axe Z..."
#MSG_SOUND_ONCE c=17 r=1
"Sound [once]"
"Son [une fois]"
#MSG_SOUND_SILENT c=17 r=1
"Sound [silent]"
"Son [feutre]"
#MSG_SOUND_ONCE
"Once"
"Une fois"
#MSG_SPEED
"Speed"
"Vitesse"
@ -1018,17 +995,17 @@
"Swapped"
"Echange"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
#
"Select filament:"
"Selectionnez le filament:"
#MSG_TEMP_CALIBRATION c=12 r=1
"Temp. cal."
"Calib. Temp."
#MSG_TEMP_CALIBRATION_ON c=20 r=1
"Temp. cal. [on]"
"Calib. Temp. [on]"
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Calib. Temp.[off]"
#
"Select temperature which matches your material."
"Selectionnez la temperature qui correspond a votre materiau."
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
@ -1206,13 +1183,21 @@
"Y distance from min"
"Distance Y du min"
#
"The printer will start printing a zig-zag line. Rotate the knob until you reach the optimal height. Check the pictures in the handbook (Calibration chapter)."
"\x00"
#
"Y-correct:"
"Correct-Y:"
#MSG_OFF
" [off]"
" [off]"
"Off"
"\x00"
#MSG_ON
"On"
"\x00"
#
"Back"
@ -1230,17 +1215,17 @@
"FINDA:"
"FINDA:"
#
"Firmware [none]"
"Firmware [aucune]"
#MSG_FIRMWARE
"Firmware"
"\x00"
#
"Firmware [strict]"
"Firmware[stricte]"
#MSG_STRICT
"Strict"
"Stricte"
#
"Firmware [warn]"
"Firmware [avert]"
#MSG_WARN
"Warn"
"Avert"
#
"HW Setup"
@ -1250,24 +1235,12 @@
"IR:"
"IR:"
#
"Magnets comp.[N/A]"
"Compens. aim.[N/A]"
#MSG_MAGNETS_COMP
"Magnets comp."
"Compens. aim."
#
"Magnets comp.[Off]"
"Compens. aim.[off]"
#
"Magnets comp. [On]"
"Compens. aim. [on]"
#
"Mesh [3x3]"
"\x00"
#
"Mesh [7x7]"
#MSG_MESH
"Mesh"
"\x00"
#
@ -1278,53 +1251,21 @@
"MK3S firmware detected on MK3 printer"
"Firmware MK3S detecte sur imprimante MK3"
#
"MMU Mode [Normal]"
"Mode MMU [normal]"
#
"MMU Mode[Stealth]"
"Mode MMU [feutre]"
#MSG_MMU_MODE
"MMU Mode"
"Mode MMU"
#
"Mode change in progress ..."
"Changement de mode en cours..."
#
"Model [none]"
"Modele [aucune]"
#MSG_MODEL
"Model"
"Modele"
#
"Model [strict]"
"Modele [stricte]"
#
"Model [warn]"
"Modele [avert]"
#
"Nozzle d. [0.25]"
"Diam. buse [0.25]"
#
"Nozzle d. [0.40]"
"Diam. buse [0.40]"
#
"Nozzle d. [0.60]"
"Diam. buse [0.60]"
#
"Nozzle [none]"
"Buse [aucune]"
#
"Nozzle [strict]"
"Buse [stricte]"
#
"Nozzle [warn]"
"Buse [avert]"
#MSG_NOZZLE_DIAMETER
"Nozzle d."
"Diam. buse"
#
"G-code sliced for a different level. Continue?"
@ -1386,9 +1327,9 @@
"Sheet"
"Plaque"
#
"Sound [assist]"
"Son [assist]"
#MSG_SOUND_BLIND
"Assist"
"\x00"
#
"Steel sheets"
@ -1398,15 +1339,6 @@
"Z-correct:"
"Correct-Z:"
#
"Z-probe nr. [1]"
"Mesurer x-fois [1]"
#
"Z-probe nr. [3]"
"Mesurer x-fois [3]"
#
"Z-probe nr. [5]"
"Mesurer x-fois [5]"
#MSG_Z_PROBE_NR
"Z-probe nr."
"Mesurer x-fois"

View file

@ -50,16 +50,8 @@
"Are left and right Z~carriages all up?"
"I carrelli Z sin/des sono altezza max?"
#MSG_AUTO_DEPLETE_ON c=17 r=1
"SpoolJoin [on]"
"\x00"
#
"SpoolJoin [N/A]"
"\x00"
#MSG_AUTO_DEPLETE_OFF c=17 r=1
"SpoolJoin [off]"
#MSG_AUTO_DEPLETE c=17 r=1
"SpoolJoin"
"\x00"
#MSG_AUTO_HOME
@ -174,17 +166,13 @@
"Copy selected language?"
"Copiare la lingua selezionata?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Rileva.crash [on]"
#MSG_CRASHDETECT
"Crash det."
"Rileva.crash"
#MSG_CRASHDETECT_NA
"Crash det. [N/A]"
"Rileva.crash[N/A]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
"Rileva.crash[off]"
#
"Choose a filament for the First Layer Calibration and select it in the on-screen menu."
"Scegli un filamento per la calibrazione del primo strato e selezionalo nel menu sullo schermo."
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
@ -270,17 +258,9 @@
"Fail stats MMU"
"Stat.fall. MMU"
#MSG_FSENS_AUTOLOAD_ON c=17 r=1
"F. autoload [on]"
"Autocar.fil. [on]"
#MSG_FSENS_AUTOLOAD_NA c=17 r=1
"F. autoload [N/A]"
"Autocar.fil.[N/A]"
#MSG_FSENS_AUTOLOAD_OFF c=17 r=1
"F. autoload [off]"
"Autocar.fil.[off]"
#MSG_FSENSOR_AUTOLOAD
"F. autoload"
"Autocar.fil."
#
"Fail stats"
@ -294,26 +274,13 @@
"Fan test"
"Test ventola"
#MSG_FANS_CHECK_ON c=17 r=1
"Fans check [on]"
"Control.vent [on]"
#MSG_FANS_CHECK_OFF c=17 r=1
"Fans check [off]"
"Control.vent[off]"
#MSG_FSENSOR_ON
"Fil. sensor [on]"
"Sensore fil. [on]"
#MSG_FSENSOR_NA
"Fil. sensor [N/A]"
"Sensore fil.[N/A]"
#MSG_FSENSOR_OFF
"Fil. sensor [off]"
"Sensore fil.[off]"
#MSG_FANS_CHECK
"Fans check"
"Control.vent"
#MSG_FSENSOR
"Fil. sensor"
"Sensore fil."
#
"Filam. runouts"
"Filam. esauriti"
@ -482,6 +449,10 @@
"Last print failures"
"Fallimenti ultima stampa"
#
"If you have additional steel sheets, calibrate their presets in Settings - HW Setup - Steel sheets."
"Se hai piastre d'acciaio aggiuntive, calibra i preset in Impostazioni - Setup HW - Piastre in Acciaio."
#
"Last print"
"Ultima stampa"
@ -570,13 +541,17 @@
"MMU OK. Resuming..."
"MMU OK. Riprendendo... "
#MSG_STEALTH_MODE_OFF
"Mode [Normal]"
"Mod. [normale]"
#MSG_MODE
"Mode"
"Mod."
#MSG_SILENT_MODE_ON
"Mode [silent]"
"Mod. [silenziosa]"
#MSG_NORMAL
"Normal"
"Normale"
#MSG_SILENT
"Silent"
"Silenzioso"
#
"MMU needs user attention."
@ -586,17 +561,17 @@
"MMU power fails"
"Manc. corr. MMU"
#MSG_STEALTH_MODE_ON
"Mode [Stealth]"
"Mod. [silenziosa]"
#MSG_STEALTH
"Stealth"
"Silenziosa"
#MSG_AUTO_MODE_ON
"Mode [auto power]"
"Mod. [auto]"
#MSG_AUTO_POWER
"Auto power"
"Auto"
#MSG_SILENT_MODE_OFF
"Mode [high power]"
"Mod. [forte]"
#MSG_HIGH_POWER
"High power"
"Forte"
#
"MMU2 connected"
@ -630,7 +605,7 @@
"No SD card"
"Nessuna SD"
#
#MSG_NA
"N/A"
"\x00"
@ -818,6 +793,18 @@
"Print FAN"
"Ventola di stampa"
#
"Please insert filament into the extruder, then press the knob to load it."
"Inserisci il filamento nell'estrusore, poi premi la manopola per caricarlo."
#
"Please insert filament into the first tube of the MMU, then press the knob to load it."
"Per favore inserisci il filamento nel primo tubo del MMU, poi premi la manopola per caricarlo."
#
"Please load filament first."
"Per favore prima carica il filamento."
#MSG_PRUSA3D
"prusa3d.com"
"\x00"
@ -858,25 +845,21 @@
"Right side[um]"
"Destra [um]"
#MSG_SECOND_SERIAL_ON c=17 r=1
"RPi port [on]"
"Porta RPi [on]"
#MSG_SECOND_SERIAL_OFF c=17 r=1
"RPi port [off]"
"Porta RPi [off]"
#MSG_RPI_PORT
"RPi port"
"Porta RPi"
#MSG_WIZARD_RERUN c=20 r=7
"Running Wizard will delete current calibration results and start from the beginning. Continue?"
"Se avvi il Wizard perderai la calibrazione preesistente e dovrai ricominciare dall'inizio. Continuare?"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_OFF c=19 r=1
"SD card [normal]"
"Mem. SD [normale]"
#MSG_SD_CARD
"SD card"
"Mem. SD"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_ON c=19 r=1
"SD card [flshAir]"
"Mem. SD [flshAir]"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY
"FlashAir"
"\x00"
#
"Right"
@ -918,10 +901,6 @@
"Select nozzle preheat temperature which matches your material."
"Selezionate la temperatura per il preriscaldamento dell'ugello adatta al vostro materiale."
#
"Select PLA filament:"
"Selezionate filamento PLA:"
#MSG_SET_TEMPERATURE c=19 r=1
"Set temperature:"
"Imposta temperatura:"
@ -942,49 +921,49 @@
"Some files will not be sorted. Max. No. of files in 1 folder for sorting is 100."
"Alcuni file non saranno ordinati. Il numero massimo di file in una cartella e 100 perche siano ordinati."
#MSG_SORT_NONE c=17 r=1
"Sort [none]"
"Ordina [nessuno]"
#MSG_SORT
"Sort"
"Ordina"
#MSG_SORT_TIME c=17 r=1
"Sort [time]"
"Ordina [cron.]"
#MSG_NONE
"None"
"Nessuno"
#MSG_SORT_TIME
"Time"
"Cron."
#
"Severe skew:"
"Devia.grave:"
#MSG_SORT_ALPHA c=17 r=1
"Sort [alphabet]"
"Ordine [alfabeti]"
#MSG_SORT_ALPHA
"Alphabet"
"Alfabeti"
#MSG_SORTING c=20 r=1
"Sorting files"
"Ordinando i file"
#MSG_SOUND_LOUD c=17 r=1
"Sound [loud]"
"Suono [forte]"
#MSG_SOUND_LOUD
"Loud"
"Forte"
#
"Slight skew:"
"Devia.lieve:"
#MSG_SOUND_MUTE c=17 r=1
"Sound [mute]"
"Suono [mute]"
#MSG_SOUND
"Sound"
"Suono"
#
"Some problem encountered, Z-leveling enforced ..."
"Sono stati rilevati problemi, avviato livellamento Z ..."
#MSG_SOUND_ONCE c=17 r=1
"Sound [once]"
"Suono [singolo]"
#MSG_SOUND_SILENT c=17 r=1
"Sound [silent]"
"Suono[silenzioso]"
#MSG_SOUND_ONCE
"Once"
"Singolo"
#MSG_SPEED
"Speed"
@ -1018,17 +997,17 @@
"Swapped"
"Scambiato"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
"Calib. temp. "
#
"Select filament:"
"Seleziona il filamento:"
#MSG_TEMP_CALIBRATION_ON c=20 r=1
"Temp. cal. [on]"
"Calib. temp. [on]"
#MSG_TEMP_CALIBRATION c=12 r=1
"Temp. cal."
"Calib. temp."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Calib. temp.[off]"
#
"Select temperature which matches your material."
"Seleziona la temperatura appropriata per il tuo materiale."
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
@ -1206,12 +1185,20 @@
"Y distance from min"
"Distanza Y dal min"
#
"The printer will start printing a zig-zag line. Rotate the knob until you reach the optimal height. Check the pictures in the handbook (Calibration chapter)."
"\x00"
#
"Y-correct:"
"Correzione-Y:"
#MSG_OFF
" [off]"
"Off"
"\x00"
#MSG_ON
"On"
"\x00"
#
@ -1230,17 +1217,17 @@
"FINDA:"
"\x00"
#
"Firmware [none]"
"Firmware[nessuno]"
#MSG_FIRMWARE
"Firmware"
"\x00"
#
"Firmware [strict]"
"Firmware [esatto]"
#MSG_STRICT
"Strict"
"Esatto"
#
"Firmware [warn]"
"Firmware [avviso]"
#MSG_WARN
"Warn"
"Avviso"
#
"HW Setup"
@ -1250,25 +1237,13 @@
"IR:"
"\x00"
#
"Magnets comp.[N/A]"
"Comp. Magneti[N/A]"
#MSG_MAGNETS_COMP
"Magnets comp."
"Comp. Magneti"
#
"Magnets comp.[Off]"
"Comp. Magneti[off]"
#
"Magnets comp. [On]"
"Comp. Magneti [on]"
#
"Mesh [3x3]"
"Griglia [3x3]"
#
"Mesh [7x7]"
"Griglia [7x7]"
#MSG_MESH
"Mesh"
"Griglia"
#
"Mesh bed leveling"
@ -1278,53 +1253,21 @@
"MK3S firmware detected on MK3 printer"
"Firmware MK3S rilevato su stampante MK3"
#
"MMU Mode [Normal]"
"Modalita MMU [Normale]"
#
"MMU Mode[Stealth]"
"Modalita MMU [Silenziosa]"
#MSG_MMU_MODE
"MMU Mode"
"Mod. MMU"
#
"Mode change in progress ..."
"Cambio modalita in corso ..."
#
"Model [none]"
"Modello [nessuno]"
#MSG_MODEL
"Model"
"Modello"
#
"Model [strict]"
"Modello [esatto]"
#
"Model [warn]"
"Modello [avviso]"
#
"Nozzle d. [0.25]"
"Diam.Ugello[0.25]"
#
"Nozzle d. [0.40]"
"Diam.Ugello[0.40]"
#
"Nozzle d. [0.60]"
"Diam.Ugello[0.60]"
#
"Nozzle [none]"
"Ugello [nessuno]"
#
"Nozzle [strict]"
"Ugello [esatto]"
#
"Nozzle [warn]"
"Ugello [avviso]"
#MSG_NOZZLE_DIAMETER
"Nozzle d."
"Diam.Ugello"
#
"G-code sliced for a different level. Continue?"
@ -1386,9 +1329,9 @@
"Sheet"
"Piano"
#
"Sound [assist]"
"Suono [assist.]"
#MSG_SOUND_BLIND
"Assist"
"Assist."
#
"Steel sheets"
@ -1398,14 +1341,6 @@
"Z-correct:"
"Correzione-Z:"
#
"Z-probe nr. [1]"
"Z-probe nr. [1]"
#
"Z-probe nr. [3]"
"Z-probe nr. [3]"
#
"Z-probe nr. [5]"
"Z-probe nr. [5]"
#MSG_Z_PROBE_NR
"Z-probe nr."
"\x00"

View file

@ -50,17 +50,9 @@
"Are left and right Z~carriages all up?"
"Obydwa konce osi sa na szczycie?"
#MSG_AUTO_DEPLETE_ON c=17 r=1
"SpoolJoin [on]"
"SpoolJoin [wl]"
#
"SpoolJoin [N/A]"
"SpoolJoin [N/D]"
#MSG_AUTO_DEPLETE_OFF c=17 r=1
"SpoolJoin [off]"
"SpoolJoin [wyl]"
#MSG_AUTO_DEPLETE c=17 r=1
"SpoolJoin"
"\x00"
#MSG_AUTO_HOME
"Auto home"
@ -72,7 +64,7 @@
#MSG_AUTOLOADING_ONLY_IF_FSENS_ON c=20 r=4
"Autoloading filament available only when filament sensor is turned on..."
"Autoladowanie filamentu dostepne tylko gdy czujnik filamentu jest wlaczony..."
"Autoladowanie fil. dostepne tylko gdy czujnik filamentu jest wlaczony..."
#MSG_AUTOLOADING_ENABLED c=20 r=4
"Autoloading filament is active, just press the knob and insert filament..."
@ -175,16 +167,12 @@
"Skopiowac wybrany jezyk?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Wykr.zderzen [wl]"
"Crash det."
"Wykr.zderzen"
#MSG_CRASHDETECT_NA
"Crash det. [N/A]"
"Wykr.zderzen[N/D]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
"Wykr.zderzen[wyl]"
#
"Choose a filament for the First Layer Calibration and select it in the on-screen menu."
"Wybierz filament do Kalibracji Pierwszej Warstwy i potwierdz w menu ekranowym."
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
@ -270,17 +258,9 @@
"Fail stats MMU"
"Bledy MMU"
#MSG_FSENS_AUTOLOAD_ON c=17 r=1
"F. autoload [on]"
"Autolad.fil. [wl]"
#MSG_FSENS_AUTOLOAD_NA c=17 r=1
"F. autoload [N/A]"
"Autolad.fil.[N/D]"
#MSG_FSENS_AUTOLOAD_OFF c=17 r=1
"F. autoload [off]"
"Autolad.fil.[wyl]"
#MSG_FSENSOR_AUTOLOAD
"F. autoload"
"Autolad. fil."
#
"Fail stats"
@ -294,25 +274,13 @@
"Fan test"
"Test wentylatora"
#MSG_FANS_CHECK_ON c=17 r=1
"Fans check [on]"
"Sprawd.went. [wl]"
#MSG_FANS_CHECK
"Fans check"
"Sprawd.went."
#MSG_FANS_CHECK_OFF c=17 r=1
"Fans check [off]"
"Sprawd.went.[wyl]"
#MSG_FSENSOR_ON
"Fil. sensor [on]"
"Czuj. filam. [wl]"
#MSG_FSENSOR_NA
"Fil. sensor [N/A]"
"Czuj. filam.[N/D]"
#MSG_FSENSOR_OFF
"Fil. sensor [off]"
"Czuj. filam.[wyl]"
#MSG_FSENSOR
"Fil. sensor"
"Czuj. filam."
#
"Filam. runouts"
@ -482,6 +450,10 @@
"Last print failures"
"Ostatnie bledy druku"
#
"If you have additional steel sheets, calibrate their presets in Settings - HW Setup - Steel sheets."
"Jesli masz dodatkowe plyty stalowe, to skalibruj ich ustawienia w menu Ustawienia - Ustawienia HW - Plyty stalowe."
#
"Last print"
"Ost. wydruk"
@ -570,13 +542,17 @@
"MMU OK. Resuming..."
"MMU OK. Wznawianie..."
#MSG_STEALTH_MODE_OFF
"Mode [Normal]"
"Tryb [normalny]"
#MSG_MODE
"Mode"
"Tryb"
#MSG_SILENT_MODE_ON
"Mode [silent]"
"Tryb [cichy]"
#MSG_NORMAL
"Normal"
"Normalny"
#MSG_SILENT
"Silent"
"Cichy"
#
"MMU needs user attention."
@ -586,17 +562,17 @@
"MMU power fails"
"Zaniki zasil. MMU"
#MSG_STEALTH_MODE_ON
"Mode [Stealth]"
"Tryb [cichy]"
#MSG_STEALTH
"Stealth"
"Cichy"
#MSG_AUTO_MODE_ON
"Mode [auto power]"
"Tryb [automatycz]"
#MSG_AUTO_POWER
"Auto power"
"Automatycz"
#MSG_SILENT_MODE_OFF
"Mode [high power]"
"Tryb[wysoka wyd.]"
#MSG_HIGH_POWER
"High power"
"Wysoka wyd."
#
"MMU2 connected"
@ -630,7 +606,7 @@
"No SD card"
"Brak karty SD"
#
#MSG_NA
"N/A"
"N/D"
@ -818,6 +794,18 @@
"Print FAN"
"WentWydruk"
#
"Please insert filament into the extruder, then press the knob to load it."
"Wsun filament do ekstrudera i nacisnij pokretlo, aby go zaladowac."
#
"Please insert filament into the first tube of the MMU, then press the knob to load it."
"Wsun filament do pierwszego kanalu w MMU2 i nacisnij pokretlo, aby go zaladowac."
#
"Please load filament first."
"Najpierw zaladuj filament."
#MSG_PRUSA3D
"prusa3d.com"
"\x00"
@ -858,25 +846,21 @@
"Right side[um]"
"Prawo [um]"
#MSG_SECOND_SERIAL_ON c=17 r=1
"RPi port [on]"
"Port RPi [wl]"
#MSG_SECOND_SERIAL_OFF c=17 r=1
"RPi port [off]"
"Port RPi [wyl]"
#MSG_RPI_PORT
"RPi port"
"Port RPi"
#MSG_WIZARD_RERUN c=20 r=7
"Running Wizard will delete current calibration results and start from the beginning. Continue?"
"Wlaczenie Asystenta usunie obecne dane kalibracyjne i zacznie od poczatku. Kontynuowac?"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_OFF c=19 r=1
"SD card [normal]"
"Karta SD [normal]"
#MSG_SD_CARD
"SD card"
"Karta SD"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_ON c=19 r=1
"SD card [flshAir]"
"Karta SD[FlshAir]"
#MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY
"FlashAir"
"\x00"
#
"Right"
@ -918,10 +902,6 @@
"Select nozzle preheat temperature which matches your material."
"Wybierz temperature grzania dyszy odpowiednia dla materialu."
#
"Select PLA filament:"
"Wybierz filament PLA:"
#MSG_SET_TEMPERATURE c=19 r=1
"Set temperature:"
"Ustaw temperature:"
@ -942,50 +922,49 @@
"Some files will not be sorted. Max. No. of files in 1 folder for sorting is 100."
"Niektore pliki nie zostana posortowane. Max. liczba plikow w 1 folderze = 100."
#MSG_SORT_NONE c=17 r=1
"Sort [none]"
"Sortowanie [brak]"
#MSG_SORT
"Sort"
"Sortowanie"
#MSG_SORT_TIME c=17 r=1
"Sort [time]"
"Sortowanie [czas]"
#MSG_NONE
"None"
"Brak"
#MSG_SORT_TIME
"Time"
"Czas"
#
"Severe skew:"
"Znaczny skos:"
#MSG_SORT_ALPHA c=17 r=1
"Sort [alphabet]"
"Sortowanie[alfab]"
#MSG_SORT_ALPHA
"Alphabet"
"Alfab"
#MSG_SORTING c=20 r=1
"Sorting files"
"Sortowanie plikow"
#MSG_SOUND_LOUD c=17 r=1
"Sound [loud]"
"Dzwiek [glosny]"
#MSG_SOUND_LOUD
"Loud"
"Glosny"
#
"Slight skew:"
"Lekki skos:"
#MSG_SOUND_MUTE c=17 r=1
"Sound [mute]"
"Dzwiek[wylaczony]"
#MSG_SOUND
"Sound"
"Dzwiek"
#
"Some problem encountered, Z-leveling enforced ..."
"Wykryto problem, wymuszono poziomowanie osi Z."
#MSG_SOUND_ONCE c=17 r=1
"Sound [once]"
"Dzwiek [1-raz]"
#MSG_SOUND_SILENT c=17 r=1
"Sound [silent]"
"Dzwiek [cichy]"
#MSG_SOUND_ONCE
"Once"
"1-raz"
#MSG_SPEED
"Speed"
"Predkosc"
@ -1018,17 +997,17 @@
"Swapped"
"Zamieniono"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
#
"Select filament:"
"Wybierz filament:"
#MSG_TEMP_CALIBRATION c=12 r=1
"Temp. cal."
"Kalibracja temp."
#MSG_TEMP_CALIBRATION_ON c=20 r=1
"Temp. cal. [on]"
"Kalibr.temp. [wl]"
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Kalibr.temp.[wyl]"
#
"Select temperature which matches your material."
"Wybierz temperature, ktora odpowiada Twojemu filamentowi."
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
@ -1206,13 +1185,21 @@
"Y distance from min"
"Dystans od 0 w osi Y"
#
"The printer will start printing a zig-zag line. Rotate the knob until you reach the optimal height. Check the pictures in the handbook (Calibration chapter)."
"\x00"
#
"Y-correct:"
"Korekcja-Y:"
#MSG_OFF
" [off]"
" [wyl]"
"Off"
"Wyl"
#MSG_ON
"On"
"Wl"
#
"Back"
@ -1230,17 +1217,17 @@
"FINDA:"
"\x00"
#
"Firmware [none]"
"Firmware [brak]"
#MSG_FIRMWARE
"Firmware"
"\x00"
#
"Firmware [strict]"
"Firmware [restr.]"
#MSG_STRICT
"Strict"
"Restr."
#
"Firmware [warn]"
"Firmware[ostrzez]"
#MSG_WARN
"Warn"
"Ostrzez"
#
"HW Setup"
@ -1250,25 +1237,13 @@
"IR:"
"\x00"
#
"Magnets comp.[N/A]"
"Kor. magnesow[N/D]"
#MSG_MAGNETS_COMP
"Magnets comp."
"Kor. magnesow"
#
"Magnets comp.[Off]"
"Kor. magnesow[wyl]"
#
"Magnets comp. [On]"
"Kor. magnesow [wl]"
#
"Mesh [3x3]"
"Siatka [3x3]"
#
"Mesh [7x7]"
"Siatka [7x7]"
#MSG_MESH
"Mesh"
"Siatka"
#
"Mesh bed leveling"
@ -1278,53 +1253,21 @@
"MK3S firmware detected on MK3 printer"
"Wykryto firmware MK3S w drukarce MK3"
#
"MMU Mode [Normal]"
"Tryb MMU[Normaln]"
#
"MMU Mode[Stealth]"
"Tryb MMU[Stealth]"
#MSG_MMU_MODE
"MMU Mode"
"Tryb MMU"
#
"Mode change in progress ..."
"Trwa zmiana trybu..."
#
"Model [none]"
"Model [brak]"
#MSG_MODEL
"Model"
"\x00"
#
"Model [strict]"
"Model [restrykc.]"
#
"Model [warn]"
"Model [ostrzez.]"
#
"Nozzle d. [0.25]"
"Sr. dyszy [0,25]"
#
"Nozzle d. [0.40]"
"Sr. dyszy [0,40]"
#
"Nozzle d. [0.60]"
"Sr. dyszy [0,60]"
#
"Nozzle [none]"
"Dysza [brak]"
#
"Nozzle [strict]"
"Dysza [restrykc.]"
#
"Nozzle [warn]"
"Dysza [ostrzez.]"
#MSG_NOZZLE_DIAMETER
"Nozzle d."
"Sr. dyszy"
#
"G-code sliced for a different level. Continue?"
@ -1386,9 +1329,9 @@
"Sheet"
"Plyta"
#
"Sound [assist]"
"Dzwiek [asyst.]"
#MSG_SOUND_BLIND
"Assist"
"Asyst."
#
"Steel sheets"
@ -1398,14 +1341,6 @@
"Z-correct:"
"Korekcja-Z:"
#
"Z-probe nr. [1]"
"Ilosc Pomiarow [1]"
#
"Z-probe nr. [3]"
"Ilosc Pomiarow [3]"
#
"Z-probe nr. [5]"
"Ilosc Pomiarow [5]"
#MSG_Z_PROBE_NR
"Z-probe nr."
"Ilosc Pomiarow"