Merge branch 'MK3' into MK3-Gcode_documentation

Merge with MK3 branch
This commit is contained in:
3d-gussner 2019-11-26 12:48:21 +01:00
commit 5eaf6f0133
25 changed files with 1353 additions and 1567 deletions

View file

@ -7747,6 +7747,7 @@ Sigma_Exit:
case 603: {
lcd_print_stop();
}
break;
#ifdef PINDA_THERMISTOR
/*!
@ -9450,6 +9451,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;

View file

@ -4,6 +4,7 @@
#include <stdio.h>
#include <avr/io.h>
#include <avr/pgmspace.h>
#include "pins.h"
uint8_t adc_state;
uint8_t adc_count;
@ -24,8 +25,8 @@ void adc_init(void)
ADMUX |= (1 << REFS0);
ADCSRA |= (1 << ADEN);
// ADCSRA |= (1 << ADIF) | (1 << ADSC);
DIDR0 = (ADC_CHAN_MSK & 0xff);
DIDR2 = (ADC_CHAN_MSK >> 8);
DIDR0 = ((ADC_CHAN_MSK & ADC_DIDR_MSK) & 0xff);
DIDR2 = ((ADC_CHAN_MSK & ADC_DIDR_MSK) >> 8);
adc_reset();
// adc_sim_mask = 0b0101;
// adc_sim_mask = 0b100101;

View file

@ -2,9 +2,21 @@
#define _CONFIG_H
#include "Configuration_prusa.h"
#include "pins.h"
#define IR_SENSOR_ANALOG (defined(VOLT_IR_PIN) && defined(IR_SENSOR))
//ADC configuration
#if !IR_SENSOR_ANALOG
#define ADC_CHAN_MSK 0b0000001001011111 //used AD channels bit mask (0,1,2,3,4,6,9)
#define ADC_DIDR_MSK 0b0000001001011111 //AD channels DIDR mask (1 ~ disabled digital input)
#define ADC_CHAN_CNT 7 //number of used channels)
#else //!IR_SENSOR_ANALOG
#define ADC_CHAN_MSK 0b0000001101011111 //used AD channels bit mask (0,1,2,3,4,6,8,9)
#define ADC_DIDR_MSK 0b0000001001011111 //AD channels DIDR mask (1 ~ disabled digital input)
#define ADC_CHAN_CNT 8 //number of used channels)
#endif //!IR_SENSOR_ANALOG
#define ADC_OVRSAMPL 16 //oversampling multiplier
#define ADC_CALLBACK adc_ready //callback function ()
@ -42,11 +54,8 @@
#define W25X20CL_SPCR SPI_SPCR(W25X20CL_SPI_RATE, 1, 1, 1, 0)
#define W25X20CL_SPSR SPI_SPSR(W25X20CL_SPI_RATE)
#include "boards.h"
#include "Configuration_prusa.h"
//LANG - Multi-language support
//#define LANG_MODE 0 // primary language only
//define LANG_MODE 0 // primary language only
#define LANG_MODE 1 // sec. language support
#define LANG_SIZE_RESERVED 0x3000 // reserved space for secondary language (12288 bytes)

View file

@ -201,6 +201,9 @@ static_assert(sizeof(Sheets) == EEPROM_SHEETS_SIZEOF, "Sizeof(Sheets) is not EEP
#define EEPROM_SHEETS_BASE (EEPROM_CHECK_GCODE - EEPROM_SHEETS_SIZEOF) // Sheets
static Sheets * const EEPROM_Sheets_base = (Sheets*)(EEPROM_SHEETS_BASE);
#define EEPROM_FSENSOR_PCB (EEPROM_SHEETS_BASE-1) // uint8
#define EEPROM_FSENSOR_ACTION_NA (EEPROM_FSENSOR_PCB-1) // uint8
//This is supposed to point to last item to allow EEPROM overrun check. Please update when adding new items.
#define EEPROM_LAST_ITEM EEPROM_SHEETS_BASE

View file

@ -15,6 +15,10 @@
#include "mmu.h"
#include "cardreader.h"
#include "adc.h"
#include "temperature.h"
#include "config.h"
//! @name Basic parameters
//! @{
#define FSENSOR_CHUNK_LEN 0.64F //!< filament sensor chunk length 0.64mm
@ -117,6 +121,13 @@ int16_t fsensor_oq_yd_max;
uint16_t fsensor_oq_sh_sum;
//! @}
#if IR_SENSOR_ANALOG
ClFsensorPCB oFsensorPCB;
ClFsensorActionNA oFsensorActionNA;
bool bIRsensorStateFlag=false;
unsigned long nIRsensorLastTime;
#endif //IR_SENSOR_ANALOG
void fsensor_stop_and_save_print(void)
{
printf_P(PSTR("fsensor_stop_and_save_print\n"));
@ -136,10 +147,11 @@ void fsensor_init(void)
{
#ifdef PAT9125
uint8_t pat9125 = pat9125_init();
printf_P(PSTR("PAT9125_init:%hhu\n"), pat9125);
printf_P(PSTR("PAT9125_init:%hhu\n"), pat9125);
#endif //PAT9125
uint8_t fsensor = eeprom_read_byte((uint8_t*)EEPROM_FSENSOR);
fsensor_autoload_enabled=eeprom_read_byte((uint8_t*)EEPROM_FSENS_AUTOLOAD_ENABLED);
fsensor_not_responding = false;
#ifdef PAT9125
uint8_t oq_meassure_enabled = eeprom_read_byte((uint8_t*)EEPROM_FSENS_OQ_MEASS_ENABLED);
fsensor_oq_meassure_enabled = (oq_meassure_enabled == 1)?true:false;
@ -150,19 +162,27 @@ void fsensor_init(void)
fsensor = 0; //disable sensor
fsensor_not_responding = true;
}
else
fsensor_not_responding = false;
#endif //PAT9125
#if IR_SENSOR_ANALOG
bIRsensorStateFlag=false;
oFsensorPCB=(ClFsensorPCB)eeprom_read_byte((uint8_t*)EEPROM_FSENSOR_PCB);
oFsensorActionNA=(ClFsensorActionNA)eeprom_read_byte((uint8_t*)EEPROM_FSENSOR_ACTION_NA);
#endif //IR_SENSOR_ANALOG
if (fsensor)
fsensor_enable();
fsensor_enable(false); // (in this case) EEPROM update is not necessary
else
fsensor_disable();
printf_P(PSTR("FSensor %S\n"), (fsensor_enabled?PSTR("ENABLED"):PSTR("DISABLED\n")));
fsensor_disable(false); // (in this case) EEPROM update is not necessary
printf_P(PSTR("FSensor %S"), (fsensor_enabled?PSTR("ENABLED"):PSTR("DISABLED")));
#if IR_SENSOR_ANALOG
printf_P(PSTR(" (sensor board revision: %S)\n"),(oFsensorPCB==ClFsensorPCB::_Rev03b)?PSTR("03b or newer"):PSTR("03 or older"));
#else //IR_SENSOR_ANALOG
printf_P(PSTR("\n"));
#endif //IR_SENSOR_ANALOG
if (check_for_ir_sensor()) ir_sensor_detected = true;
}
bool fsensor_enable(void)
bool fsensor_enable(bool bUpdateEEPROM)
{
#ifdef PAT9125
if (mmu_enabled == false) { //filament sensor is pat9125, enable only if it is working
@ -187,18 +207,34 @@ bool fsensor_enable(void)
FSensorStateMenu = 1;
}
#else // PAT9125
fsensor_enabled = true;
eeprom_update_byte((uint8_t*)EEPROM_FSENSOR, 0x01);
FSensorStateMenu = 1;
#endif // PAT9125
#if IR_SENSOR_ANALOG
if(!fsensor_IR_check())
{
bUpdateEEPROM=true;
fsensor_enabled=false;
fsensor_not_responding=true;
FSensorStateMenu=0;
}
else {
#endif //IR_SENSOR_ANALOG
fsensor_enabled=true;
fsensor_not_responding=false;
FSensorStateMenu=1;
#if IR_SENSOR_ANALOG
}
#endif //IR_SENSOR_ANALOG
if(bUpdateEEPROM)
eeprom_update_byte((uint8_t*)EEPROM_FSENSOR, FSensorStateMenu);
#endif //PAT9125
return fsensor_enabled;
}
void fsensor_disable(void)
{
void fsensor_disable(bool bUpdateEEPROM)
{
fsensor_enabled = false;
eeprom_update_byte((uint8_t*)EEPROM_FSENSOR, 0x00);
FSensorStateMenu = 0;
if(bUpdateEEPROM)
eeprom_update_byte((uint8_t*)EEPROM_FSENSOR, 0x00);
}
void fsensor_autoload_set(bool State)
@ -589,10 +625,76 @@ void fsensor_update(void)
fsensor_oq_meassure_enabled = oq_meassure_enabled_tmp;
}
#else //PAT9125
if ((digitalRead(IR_SENSOR_PIN) == 1) && CHECK_FSENSOR && fsensor_enabled && ir_sensor_detected && ( ! fsensor_m600_enqueued) )
{
fsensor_stop_and_save_print();
fsensor_enque_M600();
if (CHECK_FSENSOR && fsensor_enabled && ir_sensor_detected && ( ! fsensor_m600_enqueued) )
{
if(digitalRead(IR_SENSOR_PIN))
{ // IR_SENSOR_PIN ~ H
#if IR_SENSOR_ANALOG
if(!bIRsensorStateFlag)
{
bIRsensorStateFlag=true;
nIRsensorLastTime=_millis();
}
else
{
if((_millis()-nIRsensorLastTime)>IR_SENSOR_STEADY)
{
uint8_t nMUX1,nMUX2;
uint16_t nADC;
bIRsensorStateFlag=false;
// sequence for direct data reading from AD converter
DISABLE_TEMPERATURE_INTERRUPT();
nMUX1=ADMUX; // ADMUX saving
nMUX2=ADCSRB;
adc_setmux(VOLT_IR_PIN);
ADCSRA|=(1<<ADSC); // first conversion after ADMUX change discarded (preventively)
while(ADCSRA&(1<<ADSC))
;
ADCSRA|=(1<<ADSC); // second conversion used
while(ADCSRA&(1<<ADSC))
;
nADC=ADC;
ADMUX=nMUX1; // ADMUX restoring
ADCSRB=nMUX2;
ENABLE_TEMPERATURE_INTERRUPT();
// end of sequence for ...
if((oFsensorPCB==ClFsensorPCB::_Rev03b)&&((nADC*OVERSAMPLENR)>((int)IRsensor_Hopen_TRESHOLD)))
{
fsensor_disable();
fsensor_not_responding = true;
printf_P(PSTR("IR sensor not responding (%d)!\n"),1);
if((ClFsensorActionNA)eeprom_read_byte((uint8_t*)EEPROM_FSENSOR_ACTION_NA)==ClFsensorActionNA::_Pause)
if(oFsensorActionNA==ClFsensorActionNA::_Pause)
lcd_pause_print();
}
else
{
#endif //IR_SENSOR_ANALOG
fsensor_stop_and_save_print();
fsensor_enque_M600();
#if IR_SENSOR_ANALOG
}
}
}
}
else
{ // IR_SENSOR_PIN ~ L
bIRsensorStateFlag=false;
#endif //IR_SENSOR_ANALOG
}
}
#endif //PAT9125
}
#if IR_SENSOR_ANALOG
bool fsensor_IR_check()
{
uint16_t volt_IR_int;
bool bCheckResult;
volt_IR_int=current_voltage_raw_IR;
bCheckResult=(volt_IR_int<((int)IRsensor_Lmax_TRESHOLD))||(volt_IR_int>((int)IRsensor_Hmin_TRESHOLD));
bCheckResult=bCheckResult&&(!((oFsensorPCB==ClFsensorPCB::_Rev03b)&&(volt_IR_int>((int)IRsensor_Hopen_TRESHOLD))));
return(bCheckResult);
}
#endif //IR_SENSOR_ANALOG

View file

@ -3,6 +3,7 @@
#define FSENSOR_H
#include <inttypes.h>
#include "config.h"
//! minimum meassured chunk length in steps
@ -27,8 +28,8 @@ extern void fsensor_init(void);
//! @name enable/disable
//! @{
extern bool fsensor_enable(void);
extern void fsensor_disable(void);
extern bool fsensor_enable(bool bUpdateEEPROM=true);
extern void fsensor_disable(bool bUpdateEEPROM=true);
//! @}
//autoload feature enabled
@ -65,4 +66,28 @@ extern void fsensor_st_block_begin(block_t* bl);
extern void fsensor_st_block_chunk(block_t* bl, int cnt);
//! @}
#if IR_SENSOR_ANALOG
#define IR_SENSOR_STEADY 10 // [ms]
enum class ClFsensorPCB:uint_least8_t
{
_Old=0,
_Rev03b=1,
_Undef=EEPROM_EMPTY_VALUE
};
enum class ClFsensorActionNA:uint_least8_t
{
_Continue=0,
_Pause=1,
_Undef=EEPROM_EMPTY_VALUE
};
extern ClFsensorPCB oFsensorPCB;
extern ClFsensorActionNA oFsensorActionNA;
extern bool fsensor_IR_check();
#endif //IR_SENSOR_ANALOG
#endif //FSENSOR_H

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,41 @@ 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."); ////
const char MSG_FS_ACTION[] PROGMEM_I1 = ISTR("FS Action"); ////
const char MSG_FS_CONTINUE[] PROGMEM_I1 = ISTR("Cont."); ////
const char MSG_FS_PAUSE[] PROGMEM_I1 = ISTR("Pause"); ////
//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,40 @@ 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[];
extern const char MSG_FS_ACTION[];
extern const char MSG_FS_CONTINUE[];
extern const char MSG_FS_PAUSE[];
//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) {

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

@ -71,12 +71,13 @@
#define HEATER_2_PIN -1
#define TEMP_2_PIN -1
#define TEMP_AMBIENT_PIN 5 //A5
#define TEMP_AMBIENT_PIN 6 //A6
#define TEMP_PINDA_PIN 3 //A3
#define VOLT_PWR_PIN 4 //A4
#define VOLT_BED_PIN 9 //A9
#define VOLT_IR_PIN 8 //A8
#define E0_TMC2130_CS 66

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

@ -44,6 +44,8 @@
#include "Timer.h"
#include "Configuration_prusa.h"
#include "config.h"
//===========================================================================
//=============================public variables============================
//===========================================================================
@ -71,6 +73,10 @@ int current_voltage_raw_pwr = 0;
int current_voltage_raw_bed = 0;
#endif
#if IR_SENSOR_ANALOG
int current_voltage_raw_IR = 0;
#endif //IR_SENSOR_ANALOG
int current_temperature_bed_raw = 0;
float current_temperature_bed = 0.0;
@ -1576,11 +1582,14 @@ void adc_ready(void) //callback from adc when sampling finished
current_voltage_raw_pwr = adc_values[ADC_PIN_IDX(VOLT_PWR_PIN)];
#endif
#ifdef AMBIENT_THERMISTOR
current_temperature_raw_ambient = adc_values[ADC_PIN_IDX(TEMP_AMBIENT_PIN)];
current_temperature_raw_ambient = adc_values[ADC_PIN_IDX(TEMP_AMBIENT_PIN)]; // 5->6
#endif //AMBIENT_THERMISTOR
#ifdef VOLT_BED_PIN
current_voltage_raw_bed = adc_values[ADC_PIN_IDX(VOLT_BED_PIN)]; // 6->9
#endif
#if IR_SENSOR_ANALOG
current_voltage_raw_IR = adc_values[ADC_PIN_IDX(VOLT_IR_PIN)];
#endif //IR_SENSOR_ANALOG
temp_meas_ready = true;
}

View file

@ -27,6 +27,8 @@
#include "stepper.h"
#endif
#include "config.h"
#ifdef SYSTEM_TIMER_2
@ -74,6 +76,9 @@ extern int current_voltage_raw_pwr;
extern int current_voltage_raw_bed;
#endif
#if IR_SENSOR_ANALOG
extern int current_voltage_raw_IR;
#endif //IR_SENSOR_ANALOG
#if defined(CONTROLLERFAN_PIN) && CONTROLLERFAN_PIN > -1
extern unsigned char soft_pwm_bed;

View file

@ -45,6 +45,10 @@
#include "io_atmega2560.h"
#include "first_lay_cal.h"
#include "fsensor.h"
#include "adc.h"
#include "config.h"
int scrollstuff = 0;
char longFilenameOLD[LONG_FILENAME_LENGTH];
@ -61,9 +65,6 @@ uint8_t SilentModeMenu_MMU = 1; //activate mmu unit stealth mode
int8_t FSensorStateMenu = 1;
extern bool fsensor_enable();
extern void fsensor_disable();
#ifdef SDCARD_SORT_ALPHA
bool presort_flag = false;
@ -147,6 +148,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
@ -193,6 +198,7 @@ enum class TestError : uint_least8_t
SwappedFan,
WiringFsensor,
TriggeringFsensor,
FsensorLevel
};
static int lcd_selftest_screen(TestScreen screen, int _progress, int _progress_scale, bool _clear, int _delay);
@ -224,6 +230,9 @@ static FanCheck lcd_selftest_fan_auto(int _fan);
static bool lcd_selftest_fsensor();
#endif //PAT9125
static bool selftest_irsensor();
#if IR_SENSOR_ANALOG
static bool lcd_selftest_IRsensor();
#endif //IR_SENSOR_ANALOG
static void lcd_selftest_error(TestError error, const char *_error_1, const char *_error_2);
static void lcd_colorprint_change();
#ifdef SNMM
@ -608,11 +617,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)
@ -844,12 +863,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
@ -2003,11 +2023,11 @@ static void lcd_menu_temperatures()
menu_back_if_clicked();
}
#if defined (VOLT_BED_PIN) || defined (VOLT_PWR_PIN)
#if defined (VOLT_BED_PIN) || defined (VOLT_PWR_PIN) || IR_SENSOR_ANALOG
#define VOLT_DIV_R1 10000
#define VOLT_DIV_R2 2370
#define VOLT_DIV_FAC ((float)VOLT_DIV_R2 / (VOLT_DIV_R2 + VOLT_DIV_R1))
#define VOLT_DIV_REF 5
//! @brief Show Voltages
//!
//! @code{.unparsed}
@ -2025,10 +2045,17 @@ static void lcd_menu_voltages()
float volt_pwr = VOLT_DIV_REF * ((float)current_voltage_raw_pwr / (1023 * OVERSAMPLENR)) / VOLT_DIV_FAC;
float volt_bed = VOLT_DIV_REF * ((float)current_voltage_raw_bed / (1023 * OVERSAMPLENR)) / VOLT_DIV_FAC;
lcd_home();
lcd_printf_P(PSTR(" PWR: %d.%01dV\n" " BED: %d.%01dV"), (int)volt_pwr, (int)(10*fabs(volt_pwr - (int)volt_pwr)), (int)volt_bed, (int)(10*fabs(volt_bed - (int)volt_bed)));
menu_back_if_clicked();
#if !IR_SENSOR_ANALOG
lcd_printf_P(PSTR("\n"));
#endif //!IR_SENSOR_ANALOG
lcd_printf_P(PSTR(" PWR: %4.1fV\n" " BED: %4.1fV"), volt_pwr, volt_bed);
#if IR_SENSOR_ANALOG
float volt_IR = VOLT_DIV_REF * ((float)current_voltage_raw_IR / (1023 * OVERSAMPLENR));
lcd_printf_P(PSTR("\n IR : %3.1fV"),volt_IR);
#endif //IR_SENSOR_ANALOG
menu_back_if_clicked();
}
#endif //defined VOLT_BED_PIN || defined VOLT_PWR_PIN
#endif //defined (VOLT_BED_PIN) || defined (VOLT_PWR_PIN) || IR_SENSOR_ANALOG
#ifdef TMC2130
//! @brief Show Belt Status
@ -3021,7 +3048,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())
@ -3067,7 +3094,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);
@ -4004,13 +4031,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;
}
}
@ -4023,7 +4050,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) {
@ -4783,10 +4811,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()
@ -4824,8 +4852,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 ? '>' : ' ');
}
@ -5222,29 +5251,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*/\
@ -5264,60 +5293,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
@ -5332,18 +5359,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)
@ -5357,16 +5381,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*/\
}\
}\
@ -5380,8 +5404,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)
@ -5394,9 +5418,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)\
{\
@ -5404,9 +5428,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);\
}\
}\
}\
@ -5416,9 +5440,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
@ -5450,22 +5474,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)
@ -5495,16 +5519,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)
@ -5538,20 +5562,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)
@ -5580,16 +5599,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)
@ -5619,16 +5638,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)
@ -5658,16 +5677,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)
@ -5684,6 +5703,41 @@ SETTINGS_VERSION;
MENU_END();
}
#if IR_SENSOR_ANALOG
static void lcd_fsensor_actionNA_set(void)
{
switch(oFsensorActionNA)
{
case ClFsensorActionNA::_Continue:
oFsensorActionNA=ClFsensorActionNA::_Pause;
break;
case ClFsensorActionNA::_Pause:
oFsensorActionNA=ClFsensorActionNA::_Continue;
break;
default:
oFsensorActionNA=ClFsensorActionNA::_Continue;
}
eeprom_update_byte((uint8_t*)EEPROM_FSENSOR_ACTION_NA,(uint8_t)oFsensorActionNA);
}
#define FSENSOR_ACTION_NA \
do\
{\
switch(oFsensorActionNA)\
{\
case ClFsensorActionNA::_Continue:\
MENU_ITEM_TOGGLE_P(_T(MSG_FS_ACTION), _T(MSG_FS_CONTINUE), lcd_fsensor_actionNA_set);\
break;\
case ClFsensorActionNA::_Pause:\
MENU_ITEM_TOGGLE_P(_T(MSG_FS_ACTION), _T(MSG_FS_PAUSE), lcd_fsensor_actionNA_set);\
break;\
default:\
oFsensorActionNA=ClFsensorActionNA::_Continue;\
}\
}\
while (0)
#endif //IR_SENSOR_ANALOG
template <uint8_t number>
static void select_sheet_menu()
{
@ -5715,6 +5769,9 @@ void lcd_hw_setup_menu(void) // can not be "static"
SETTINGS_NOZZLE;
MENU_ITEM_SUBMENU_P(_i("Checks"), lcd_checking_menu);
#if IR_SENSOR_ANALOG
FSENSOR_ACTION_NA;
#endif //IR_SENSOR_ANALOG
MENU_END();
}
@ -5736,10 +5793,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;
@ -5757,16 +5811,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)
@ -5827,6 +5875,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
@ -7054,11 +7105,21 @@ static void lcd_tune_menu()
#ifdef FILAMENT_SENSOR
if (FSensorStateMenu == 0) {
MENU_ITEM_FUNCTION_P(_T(MSG_FSENSOR_OFF), lcd_fsensor_state_set);
if (fsensor_not_responding && (mmu_enabled == false)) {
/* Filament sensor not working*/
MENU_ITEM_TOGGLE_P(_T(MSG_FSENSOR), _T(MSG_NA), lcd_fsensor_state_set);
}
else {
/* Filament sensor turned off, working, no problems*/
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);
}
#if IR_SENSOR_ANALOG
FSENSOR_ACTION_NA;
#endif //IR_SENSOR_ANALOG
#endif //FILAMENT_SENSOR
SETTINGS_AUTO_DEPLETE;
@ -7067,54 +7128,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;
MENU_END();
}
@ -7147,21 +7188,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;
}
@ -7341,6 +7380,98 @@ 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
#if IR_SENSOR_ANALOG
static bool lcd_selftest_IRsensor()
{
bool bAction;
bool bPCBrev03b;
uint16_t volt_IR_int;
float volt_IR;
volt_IR_int=current_voltage_raw_IR;
bPCBrev03b=(volt_IR_int<((int)IRsensor_Hopen_TRESHOLD));
volt_IR=VOLT_DIV_REF*((float)volt_IR_int/(1023*OVERSAMPLENR));
printf_P(PSTR("Measured filament sensor high level: %4.2fV\n"),volt_IR);
if(volt_IR_int<((int)IRsensor_Hmin_TRESHOLD))
{
lcd_selftest_error(TestError::FsensorLevel,"HIGH","");
return(false);
}
lcd_show_fullscreen_message_and_wait_P(_i("Please insert filament (but not load them!) into extruder and then press the knob."));
volt_IR_int=current_voltage_raw_IR;
volt_IR=VOLT_DIV_REF*((float)volt_IR_int/(1023*OVERSAMPLENR));
printf_P(PSTR("Measured filament sensor low level: %4.2fV\n"),volt_IR);
if(volt_IR_int>((int)IRsensor_Lmax_TRESHOLD))
{
lcd_selftest_error(TestError::FsensorLevel,"LOW","");
return(false);
}
if((bPCBrev03b?1:0)!=(uint8_t)oFsensorPCB) // safer then "(uint8_t)bPCBrev03b"
{
printf_P(PSTR("Filament sensor board change detected: revision %S\n"),bPCBrev03b?PSTR("03b or newer"):PSTR("03 or older"));
oFsensorPCB=bPCBrev03b?ClFsensorPCB::_Rev03b:ClFsensorPCB::_Old;
eeprom_update_byte((uint8_t*)EEPROM_FSENSOR_PCB,(uint8_t)oFsensorPCB);
}
return(true);
}
#endif //IR_SENSOR_ANALOG
static void lcd_selftest_v()
{
@ -7358,8 +7489,16 @@ bool lcd_selftest()
#ifdef TMC2130
FORCE_HIGH_POWER_START;
#endif // TMC2130
_delay(2000);
#if !IR_SENSOR_ANALOG
_delay(2000);
#endif //!IR_SENSOR_ANALOG
KEEPALIVE_STATE(IN_HANDLER);
#if IR_SENSOR_ANALOG
bool bAction;
bAction=lcd_show_fullscreen_message_yes_no_and_wait_P(_i("Is filament unloaded?"),false,true);
if(!bAction)
return(false);
#endif //IR_SENSOR_ANALOG
_progress = lcd_selftest_screen(TestScreen::ExtruderFan, _progress, 3, true, 2000);
#if (defined(FANCHECK) && defined(TACH_0))
@ -7545,12 +7684,20 @@ bool lcd_selftest()
{
#ifdef PAT9125
_progress = lcd_selftest_screen(TestScreen::Fsensor, _progress, 3, true, 2000); //check filaments sensor
_result = lcd_selftest_fsensor();
_result = lcd_selftest_fsensor();
if (_result)
{
_progress = lcd_selftest_screen(TestScreen::FsensorOk, _progress, 3, true, 2000); //fil sensor OK
}
#endif //PAT9125
#if IR_SENSOR_ANALOG
_progress = lcd_selftest_screen(TestScreen::Fsensor, _progress, 3, true, 2000); //check filament sensor
_result = lcd_selftest_IRsensor();
if (_result)
{
_progress = lcd_selftest_screen(TestScreen::FsensorOk, _progress, 3, true, 2000); //filament sensor OK
}
#endif //IR_SENSOR_ANALOG
}
}
#endif //FILAMENT_SENSOR
@ -8086,11 +8233,17 @@ static void lcd_selftest_error(TestError testError, const char *_error_1, const
lcd_puts_P(_T(MSG_SELFTEST_WIRINGERROR));
break;
case TestError::TriggeringFsensor:
lcd_set_cursor(0, 2);
lcd_puts_P(_T(MSG_SELFTEST_FILAMENT_SENSOR));
lcd_set_cursor(0, 3);
lcd_puts_P(_i("False triggering"));////c=20
break;
lcd_set_cursor(0, 2);
lcd_puts_P(_T(MSG_SELFTEST_FILAMENT_SENSOR));
lcd_set_cursor(0, 3);
lcd_puts_P(_i("False triggering"));////c=20
break;
case TestError::FsensorLevel:
lcd_set_cursor(0, 2);
lcd_puts_P(_T(MSG_SELFTEST_FILAMENT_SENSOR));
lcd_set_cursor(0, 3);
lcd_printf_P(_i("%s level expected"),_error_1);////c=20
break;
}
_delay(1000);

View file

@ -7,6 +7,8 @@
#include "menu.h"
#include "mesh_bed_calibration.h"
#include "config.h"
extern void menu_lcd_longpress_func(void);
extern void menu_lcd_charsetup_func(void);
extern void menu_lcd_lcdupdate_func(void);
@ -47,6 +49,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();
@ -244,4 +247,12 @@ enum class WizState : uint8_t
void lcd_wizard(WizState state);
#define VOLT_DIV_REF 5
#if IR_SENSOR_ANALOG
#define IRsensor_Hmin_TRESHOLD (3.0*1023*OVERSAMPLENR/VOLT_DIV_REF) // ~3.0V (0.6*Vcc)
#define IRsensor_Lmax_TRESHOLD (1.5*1023*OVERSAMPLENR/VOLT_DIV_REF) // ~1.5V (0.3*Vcc)
#define IRsensor_Hopen_TRESHOLD (4.6*1023*OVERSAMPLENR/VOLT_DIV_REF) // ~4.6V (N.C. @ Ru~20-50k, Rd'=56k, Ru'=10k)
#define IRsensor_Ldiode_TRESHOLD (0.3*1023*OVERSAMPLENR/VOLT_DIV_REF) // ~0.3V
#endif //IR_SENSOR_ANALOG
#endif //ULTRALCD_H

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,18 +124,11 @@
#
"Copy selected language?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
#MSG_CRASHDETECT
"Crash det."
#
"Choose a filament for the First Layer Calibration and select it in the on-screen menu."
#MSG_CRASHDETECT_NA
"Crash det. [N/A]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
@ -205,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"
@ -223,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"
@ -433,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."
@ -445,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"
@ -478,7 +453,7 @@
#MSG_NO_CARD
"No SD card"
#
#MSG_NA
"N/A"
#MSG_NO
@ -658,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"
@ -718,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"
@ -778,18 +750,12 @@
#
"Select filament:"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
#MSG_TEMP_CALIBRATION_ON c=20 r=1
"Temp. cal. [on]"
#MSG_TEMP_CALIBRATION c=12 r=1
"Temp. cal."
#
"Select temperature which matches your material."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
@ -929,7 +895,10 @@
"Y-correct:"
#MSG_OFF
" [off]"
"Off"
#MSG_ON
"On"
#
"Back"
@ -943,14 +912,14 @@
#
"FINDA:"
#
"Firmware [none]"
#MSG_FIRMWARE
"Firmware"
#
"Firmware [strict]"
#MSG_STRICT
"Strict"
#
"Firmware [warn]"
#MSG_WARN
"Warn"
#
"HW Setup"
@ -958,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"
@ -979,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?"
@ -1060,8 +996,8 @@
#
"Sheet"
#
"Sound [assist]"
#MSG_SOUND_BLIND
"Assist"
#
"Steel sheets"
@ -1069,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"
@ -174,21 +166,13 @@
"Copy selected language?"
"Kopirovat vybrany jazyk?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Crash det. [zap]"
#
"Choose a filament for the First Layer Calibration and select it in the on-screen menu."
"Zvolte filament pro kalibraci prvni vrstvy z nasledujiciho menu"
#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."
@ -274,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"
@ -298,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"
@ -578,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."
@ -594,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"
@ -638,7 +606,7 @@
"No SD card"
"Zadna SD karta"
#
#MSG_NA
"N/A"
"\x00"
@ -878,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"
@ -958,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"
@ -1038,22 +1002,14 @@
"Select filament:"
"Zvolte filament:"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
"Tepl. kal. "
#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."
#
"Select temperature which matches your material."
"Zvolte teplotu, ktera odpovida vasemu materialu."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Tepl. kal. [vyp]"
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
"Teplot. kalibrace"
@ -1239,8 +1195,12 @@
"Korekce Y:"
#MSG_OFF
" [off]"
" [vyp]"
"Off"
"Vyp"
#MSG_ON
"On"
"Zap"
#
"Back"
@ -1258,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"
@ -1278,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"
@ -1306,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?"
@ -1414,9 +1330,9 @@
"Sheet"
"Plat"
#
"Sound [assist]"
"Zvuk [Asist.]"
#MSG_SOUND_BLIND
"Assist"
"Asist."
#
"Steel sheets"
@ -1426,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"
@ -174,22 +166,14 @@
"Copy selected language?"
"Gewaehlte Sprache kopieren?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Crash Erk. [an]"
#MSG_CRASHDETECT
"Crash det."
"Crash Erk."
#
"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_CRASHDETECT_NA
"Crash det. [N/A]"
"Crash Erk. [nv]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
"Crash Erk. [aus]"
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
"Crash erkannt."
@ -274,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"
@ -298,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"
@ -578,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."
@ -594,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"
@ -638,9 +606,9 @@
"No SD card"
"Keine SD Karte"
#
#MSG_NA
"N/A"
"N.V."
"N/V"
#MSG_NO
"No"
@ -878,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"
@ -958,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"
@ -1038,22 +1002,14 @@
"Select filament:"
"Filament auswaehlen:"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
"Temp Kalib. "
#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."
#
"Select temperature which matches your material."
"Waehlen Sie die Temperatur, die zu Ihrem Material passt."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Temp. Kal. [aus]"
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
"Temp. kalibrieren"
@ -1239,8 +1195,12 @@
"Y-Korrektur:"
#MSG_OFF
" [off]"
" [aus]"
"Off"
"Aus"
#MSG_ON
"On"
"An"
#
"Back"
@ -1258,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"
@ -1278,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"
@ -1306,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?"
@ -1414,9 +1330,9 @@
"Sheet"
"Blech"
#
"Sound [assist]"
"Sound [Assist]"
#MSG_SOUND_BLIND
"Assist"
"\x00"
#
"Steel sheets"
@ -1426,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
@ -174,22 +166,14 @@
"Copy selected language?"
"Copiar idioma seleccionado?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Det. choque [act]"
#MSG_CRASHDETECT
"Crash det."
"Det. choque"
#
"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_CRASHDETECT_NA
"Crash det. [N/A]"
"Dec. choque [N/D]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
"Det. choque [ina]"
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
"Choque detectado."
@ -274,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"
@ -298,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"
@ -578,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."
@ -594,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"
@ -638,7 +606,7 @@
"No SD card"
"No hay tarjeta SD"
#
#MSG_NA
"N/A"
"N/A"
@ -878,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"
@ -958,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"
@ -1038,22 +1002,14 @@
"Select filament:"
"Selecciona filamento:"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
"Cal. temp. "
#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."
#
"Select temperature which matches your material."
"Selecciona la temperatura adecuada a tu material."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Cal. temp. [off]"
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
"Calibracion temp."
@ -1239,8 +1195,12 @@
"Corregir-Y:"
#MSG_OFF
" [off]"
"[apag]"
"Off"
"Ina"
#MSG_ON
"On"
"Act"
#
"Back"
@ -1258,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"
@ -1278,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"
@ -1306,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?"
@ -1414,9 +1330,9 @@
"Sheet"
"Lamina"
#
"Sound [assist]"
"Sonido [asistido]"
#MSG_SOUND_BLIND
"Assist"
"Asistido"
#
"Steel sheets"
@ -1426,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,22 +166,14 @@
"Copy selected language?"
"Copier la langue selectionne?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Detect.crash [on]"
#MSG_CRASHDETECT
"Crash det."
"Detect.crash"
#
"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_CRASHDETECT_NA
"Crash det. [N/A]"
"Detect.crash[N/A]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
"Detect.crash[off]"
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
"Crash detecte."
@ -274,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"
@ -298,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"
@ -578,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."
@ -594,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"
@ -638,7 +604,7 @@
"No SD card"
"Pas de carte SD"
#
#MSG_NA
"N/A"
"\x00"
@ -878,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"
@ -958,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"
@ -1038,22 +999,14 @@
"Select filament:"
"Selectionnez le filament:"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
#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]"
#
"Select temperature which matches your material."
"Selectionnez la temperature qui correspond a votre materiau."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Calib. Temp.[off]"
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
"Calibration temp."
@ -1239,8 +1192,12 @@
"Correct-Y:"
#MSG_OFF
" [off]"
" [off]"
"Off"
"\x00"
#MSG_ON
"On"
"\x00"
#
"Back"
@ -1258,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"
@ -1278,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"
#
@ -1306,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?"
@ -1414,9 +1327,9 @@
"Sheet"
"Plaque"
#
"Sound [assist]"
"Son [assist]"
#MSG_SOUND_BLIND
"Assist"
"\x00"
#
"Steel sheets"
@ -1426,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,22 +166,14 @@
"Copy selected language?"
"Copiare la lingua selezionata?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Rileva.crash [on]"
#MSG_CRASHDETECT
"Crash det."
"Rileva.crash"
#
"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_CRASHDETECT_NA
"Crash det. [N/A]"
"Rileva.crash[N/A]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
"Rileva.crash[off]"
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
"Rilevato impatto."
@ -274,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"
@ -298,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"
@ -578,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."
@ -594,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"
@ -638,7 +605,7 @@
"No SD card"
"Nessuna SD"
#
#MSG_NA
"N/A"
"\x00"
@ -878,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"
@ -958,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"
@ -1038,22 +1001,14 @@
"Select filament:"
"Seleziona il filamento:"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
"Calib. temp. "
#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."
#
"Select temperature which matches your material."
"Seleziona la temperatura appropriata per il tuo materiale."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Calib. temp.[off]"
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
"Calib. Temp."
@ -1239,7 +1194,11 @@
"Correzione-Y:"
#MSG_OFF
" [off]"
"Off"
"\x00"
#MSG_ON
"On"
"\x00"
#
@ -1258,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"
@ -1278,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"
@ -1306,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?"
@ -1414,9 +1329,9 @@
"Sheet"
"Piano"
#
"Sound [assist]"
"Suono [assist.]"
#MSG_SOUND_BLIND
"Assist"
"Assist."
#
"Steel sheets"
@ -1426,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"
@ -175,21 +167,13 @@
"Skopiowac wybrany jezyk?"
#MSG_CRASHDETECT_ON
"Crash det. [on]"
"Wykr.zderzen [wl]"
"Crash det."
"Wykr.zderzen"
#
"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_CRASHDETECT_NA
"Crash det. [N/A]"
"Wykr.zderzen[N/D]"
#MSG_CRASHDETECT_OFF
"Crash det. [off]"
"Wykr.zderzen[wyl]"
#MSG_CRASH_DETECTED c=20 r=1
"Crash detected."
"Zderzenie wykryte"
@ -274,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"
@ -298,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"
@ -578,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."
@ -594,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"
@ -638,7 +606,7 @@
"No SD card"
"Brak karty SD"
#
#MSG_NA
"N/A"
"N/D"
@ -878,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"
@ -958,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"
@ -1038,22 +1001,14 @@
"Select filament:"
"Wybierz filament:"
#MSG_TEMP_CALIBRATION c=20 r=1
"Temp. cal. "
#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]"
#
"Select temperature which matches your material."
"Wybierz temperature, ktora odpowiada Twojemu filamentowi."
#MSG_TEMP_CALIBRATION_OFF c=20 r=1
"Temp. cal. [off]"
"Kalibr.temp.[wyl]"
#MSG_CALIBRATION_PINDA_MENU c=17 r=1
"Temp. calibration"
"Kalibracja temp."
@ -1239,8 +1194,12 @@
"Korekcja-Y:"
#MSG_OFF
" [off]"
" [wyl]"
"Off"
"Wyl"
#MSG_ON
"On"
"Wl"
#
"Back"
@ -1258,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"
@ -1278,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"
@ -1306,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?"
@ -1414,9 +1329,9 @@
"Sheet"
"Plyta"
#
"Sound [assist]"
"Dzwiek [asyst.]"
#MSG_SOUND_BLIND
"Assist"
"Asyst."
#
"Steel sheets"
@ -1426,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"