snmm: czech messages corrected, M600 filament not loaded, timers updated, updated behavior when choosing "change filament" from menu

This commit is contained in:
PavelSindler 2017-05-12 10:23:01 +02:00
parent 7c2caa0fec
commit 9fdd23aaa5
4 changed files with 54 additions and 14 deletions

View File

@ -5180,7 +5180,7 @@ case 404: //M404 Enter the nominal filament width (3mm, 1.75mm ) N<3.0> or disp
plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], FILAMENTCHANGE_EXFEED, active_extruder);
//Wait for user to check the state
lcd_change_fil_state = 0;
@ -5192,13 +5192,33 @@ case 404: //M404 Enter the nominal filament width (3mm, 1.75mm ) N<3.0> or disp
// Filament failed to load so load it again
case 2:
#ifdef SNMM
display_loading();
do {
target[E_AXIS] += 0.002;
plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], 500, active_extruder);
delay_keep_alive(2);
} while (!lcd_clicked());
st_synchronize();
target[E_AXIS] += bowden_length[snmm_extruder];
plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], 3000, active_extruder);
target[E_AXIS] += FIL_LOAD_LENGTH - 60;
plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], 1400, active_extruder);
target[E_AXIS] += 40;
plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], 400, active_extruder);
target[E_AXIS] += 10;
plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], 50, active_extruder);
#else
target[E_AXIS]+= FILAMENTCHANGE_FIRSTFEED ;
plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], FILAMENTCHANGE_EFEED, active_extruder);
#endif
target[E_AXIS]+= FILAMENTCHANGE_FINALFEED ;
plan_buffer_line(target[X_AXIS], target[Y_AXIS], target[Z_AXIS], target[E_AXIS], FILAMENTCHANGE_EXFEED, active_extruder);
lcd_loading_filament();
break;
// Filament loaded properly but color is not clear
@ -5252,7 +5272,10 @@ case 404: //M404 Enter the nominal filament width (3mm, 1.75mm ) N<3.0> or disp
char cmd[9];
sprintf_P(cmd, PSTR("M220 S%i"), feedmultiplyBckp);
enquecommand(cmd);
lcd_setstatuspgm(WELCOME_MSG);
custom_message = false;
custom_message_type = 0;
}
break;
@ -6345,7 +6368,9 @@ void temp_compensation_start() {
custom_message_type = 5;
custom_message_state = PINDA_HEAT_T + 1;
lcd_update(2);
if (degHotend(active_extruder)>EXTRUDE_MINTEMP) current_position[E_AXIS] -= DEFAULT_RETRACTION;
if (degHotend(active_extruder) > EXTRUDE_MINTEMP) {
current_position[E_AXIS] -= DEFAULT_RETRACTION;
}
plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], 400, active_extruder);
current_position[X_AXIS] = PINDA_PREHEAT_X;
@ -6473,7 +6498,7 @@ void long_pause() //long pause print
pause_lastpos[E_AXIS] = current_position[E_AXIS];
//retract
current_position[E_AXIS] -= PAUSE_RETRACT;
current_position[E_AXIS] -= DEFAULT_RETRACTION;
plan_buffer_line(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS], 400, active_extruder);
//lift z

View File

@ -258,10 +258,10 @@
#define MSG_TOSHIBA_FLASH_AIR_COMPATIBILITY_ON "SD card [FlshAir]"
#define MSG_LOOSE_PULLEY "Uvolnena remenicka"
#define MSG_FILAMENT_LOADING_T0 "Vložte filament do extruderu 1. Potvrdte tlacitkem."
#define MSG_FILAMENT_LOADING_T1 "Vložte filament do extruderu 2. Potvrdte tlacitkem."
#define MSG_FILAMENT_LOADING_T2 "Vložte filament do extruderu 3. Potvrdte tlacitkem."
#define MSG_FILAMENT_LOADING_T3 "Vložte filament do extruderu 4. Potvrdte tlacitkem."
#define MSG_FILAMENT_LOADING_T0 "Vlozte filament do extruderu 1. Potvrdte tlacitkem."
#define MSG_FILAMENT_LOADING_T1 "Vlozte filament do extruderu 2. Potvrdte tlacitkem."
#define MSG_FILAMENT_LOADING_T2 "Vlozte filament do extruderu 3. Potvrdte tlacitkem."
#define MSG_FILAMENT_LOADING_T3 "Vlozte filament do extruderu 4. Potvrdte tlacitkem."
#define MSG_CHANGE_EXTR "Zmenit extruder"
#define MSG_FIL_ADJUSTING "Probiha srovnani filamentu. Prosim cekejte."

View File

@ -563,7 +563,7 @@ void lcd_commands()
enquecommand(cmd1);
if (axis_relative_modes[3] == true) enquecommand_P(PSTR("M83")); // set extruder to relative mode.
else enquecommand_P(PSTR("M82")); // set extruder to absolute mode
enquecommand_P(PSTR("G1 E" STRINGIFY(PAUSE_RETRACT))); //unretract
enquecommand_P(PSTR("G1 E" STRINGIFY(DEFAULT_RETRACTION))); //unretract
enquecommand_P(PSTR("G90")); //absolute positioning
lcd_commands_step = 1;
}
@ -1037,7 +1037,6 @@ void lcd_loading_filament() {
lcd.setCursor(0, 2);
lcd_printPGM(MSG_PLEASE_WAIT);
for (int i = 0; i < 20; i++) {
lcd.setCursor(i, 3);
@ -1045,7 +1044,11 @@ void lcd_loading_filament() {
for (int j = 0; j < 10 ; j++) {
manage_heater();
manage_inactivity(true);
delay(110);
#ifdef SNMM
delay(153);
#else
delay(137);
#endif
}
@ -3066,7 +3069,7 @@ static int get_ext_nr() { //reads multiplexer input pins and return current extr
void display_loading() {
switch (snmm_extruder) {
case 1: (MSG_FILAMENT_LOADING_T1); break;
case 1: lcd_display_message_fullscreen_P(MSG_FILAMENT_LOADING_T1); break;
case 2: lcd_display_message_fullscreen_P(MSG_FILAMENT_LOADING_T2); break;
case 3: lcd_display_message_fullscreen_P(MSG_FILAMENT_LOADING_T3); break;
default: lcd_display_message_fullscreen_P(MSG_FILAMENT_LOADING_T0); break;
@ -3612,6 +3615,17 @@ static void lcd_silent_mode_set_tune() {
lcd_goto_menu(lcd_tune_menu, 9);
}
static void lcd_colorprint_change() {
enquecommand_P(PSTR("M600"));
custom_message = true;
custom_message_type = 2; //just print status message
lcd_setstatuspgm(MSG_FINISHING_MOVEMENTS);
lcd_return_to_status();
lcdDrawUpdate = 3;
}
static void lcd_tune_menu()
{
EEPROM_read(EEPROM_SILENT, (uint8_t*)&SilentModeMenu, sizeof(SilentModeMenu));
@ -3628,7 +3642,7 @@ static void lcd_tune_menu()
MENU_ITEM_EDIT(int3, MSG_FAN_SPEED, &fanSpeed, 0, 255);//5
MENU_ITEM_EDIT(int3, MSG_FLOW, &extrudemultiply, 10, 999);//6
#ifdef FILAMENTCHANGEENABLE
MENU_ITEM(gcode, MSG_FILAMENTCHANGE, PSTR("M600"));//7
MENU_ITEM(function, MSG_FILAMENTCHANGE, lcd_colorprint_change);//7
#endif
if (SilentModeMenu == 0) {

View File

@ -208,6 +208,7 @@ extern void lcd_implementation_print_at(uint8_t x, uint8_t y, const char *str);
void change_extr(int extr);
static void lcd_colorprint_change();
static int get_ext_nr();
static void extr_adj(int extruder);
static void extr_adj_0();