diff --git a/Firmware/Configuration.h b/Firmware/Configuration.h index 5d8b28fea..af36b3616 100644 --- a/Firmware/Configuration.h +++ b/Firmware/Configuration.h @@ -17,8 +17,8 @@ extern PGM_P sPrinterName; // Firmware version #define FW_MAJOR 3 -#define FW_MINOR 11 -#define FW_REVISION 1 +#define FW_MINOR 13 +#define FW_REVISION 0 //#define FW_FLAVOR RC //uncomment if DEBUG, DEVEL, ALPHA, BETA or RC //#define FW_FLAVERSION 1 //uncomment if FW_FLAVOR is defined and versioning is needed. #ifndef FW_FLAVOR diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 9975310f3..504c0c727 100644 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -787,7 +787,7 @@ int uart_putchar(char c, FILE *) void lcd_splash() { lcd_clear(); // clears display and homes screen - lcd_puts_P(PSTR("\n Original Prusa i3\n Prusa Research")); + lcd_printf_P(PSTR("\n Original Prusa i3\n Prusa Research\n%20.20S"), PSTR(FW_VERSION)); } @@ -4313,11 +4313,11 @@ void process_commands() #endif //PRUSA_SN_SUPPORT else if(code_seen_P(PSTR("Fir"))){ // PRUSA Fir - SERIAL_PROTOCOLLN(FW_VERSION_FULL); + SERIAL_PROTOCOLLNPGM(FW_VERSION_FULL); } else if(code_seen_P(PSTR("Rev"))){ // PRUSA Rev - SERIAL_PROTOCOLLN(FILAMENT_SIZE "-" ELECTRONICS "-" NOZZLE_TYPE ); + SERIAL_PROTOCOLLNPGM(FILAMENT_SIZE "-" ELECTRONICS "-" NOZZLE_TYPE ); } else if(code_seen_P(PSTR("Lang"))) { // PRUSA Lang lang_reset(); diff --git a/Firmware/cmdqueue.cpp b/Firmware/cmdqueue.cpp index 4a3ef048c..ab9aca7bc 100755 --- a/Firmware/cmdqueue.cpp +++ b/Firmware/cmdqueue.cpp @@ -27,10 +27,7 @@ bool comment_mode = false; char *strchr_pointer; // just a pointer to find chars in the command string like X, Y, Z, E, etc ShortTimer serialTimeoutTimer; - -long gcode_N = 0; long gcode_LastN = 0; - uint32_t sdpos_atomic = 0; @@ -372,7 +369,7 @@ void get_command() cmdbuffer[bufindw+serial_count+CMDHDRSIZE] = 0; //terminate string if(!comment_mode){ - gcode_N = 0; + long gcode_N = -1; // Line numbers must be first in buffer @@ -459,7 +456,7 @@ void get_command() // Command is complete: store the current line into buffer, move to the next line. // Store type of entry - cmdbuffer[bufindw] = gcode_N ? CMDBUFFER_CURRENT_TYPE_USB_WITH_LINENR : CMDBUFFER_CURRENT_TYPE_USB; + cmdbuffer[bufindw] = gcode_N >= 0 ? CMDBUFFER_CURRENT_TYPE_USB_WITH_LINENR : CMDBUFFER_CURRENT_TYPE_USB; #ifdef CMDBUFFER_DEBUG SERIAL_ECHO_START; @@ -475,7 +472,8 @@ void get_command() ++ buflen; // Update the processed gcode line - gcode_LastN = gcode_N; + if (gcode_N >= 0) + gcode_LastN = gcode_N; #ifdef CMDBUFFER_DEBUG SERIAL_ECHOPGM("Number of commands in the buffer: "); diff --git a/Firmware/cmdqueue.h b/Firmware/cmdqueue.h index 5229b96b0..3573d5020 100644 --- a/Firmware/cmdqueue.h +++ b/Firmware/cmdqueue.h @@ -52,7 +52,6 @@ extern int serial_count; extern bool comment_mode; extern char *strchr_pointer; -extern long gcode_N; extern long gcode_LastN; extern bool cmdqueue_pop_front(); diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp old mode 100755 new mode 100644 index 12342bf98..fb5a1a91a --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -82,7 +82,7 @@ static float manual_feedrate[] = MANUAL_FEEDRATE; /* LCD message status */ static LongTimer lcd_status_message_timeout; static uint8_t lcd_status_message_level; -static char lcd_status_message[LCD_WIDTH + 1] = WELCOME_MSG; +static char lcd_status_message[LCD_WIDTH + 1]; /* !Configuration settings */ @@ -679,11 +679,6 @@ void lcdui_print_status_line(void) { break; } } - - // Fill the rest of line to have nice and clean output - for (uint8_t fillspace = 0; fillspace < LCD_WIDTH; fillspace++) - if ((lcd_status_message[fillspace] <= 31)) - lcd_print(' '); } //! @brief Show Status Screen @@ -7502,6 +7497,9 @@ void ultralcd_init() lcd_oldcardstatus = IS_SD_INSERTED; #endif//(SDCARDDETECT > 0) lcd_encoder_diff = 0; + + // Initialise status line + lcd_setstatuspgm(MSG_WELCOME); } void lcd_ignore_click(bool b) diff --git a/Firmware/variants/1_75mm_MK3-EINSy10a-E3Dv6full.h b/Firmware/variants/1_75mm_MK3-EINSy10a-E3Dv6full.h index ea498e101..92f129c0a 100644 --- a/Firmware/variants/1_75mm_MK3-EINSy10a-E3Dv6full.h +++ b/Firmware/variants/1_75mm_MK3-EINSy10a-E3Dv6full.h @@ -422,7 +422,7 @@ #define TEMP_MODEL_C_thr 0.01 // C estimation iteration threshold #define TEMP_MODEL_C_itr 30 // C estimation iteration limit -#define TEMP_MODEL_R 29.7 // initial guess for heatblock resistance (K/W) +#define TEMP_MODEL_R 20.5 // initial guess for heatblock resistance (K/W) #define TEMP_MODEL_Rl 5 // R estimation lower limit #define TEMP_MODEL_Rh 50 // R estimation upper limit #define TEMP_MODEL_R_thr 0.01 // R estimation iteration threshold diff --git a/Firmware/variants/1_75mm_MK3S-EINSy10a-E3Dv6full.h b/Firmware/variants/1_75mm_MK3S-EINSy10a-E3Dv6full.h index 942151040..2eb94d88b 100644 --- a/Firmware/variants/1_75mm_MK3S-EINSy10a-E3Dv6full.h +++ b/Firmware/variants/1_75mm_MK3S-EINSy10a-E3Dv6full.h @@ -426,7 +426,7 @@ #define TEMP_MODEL_C_thr 0.01 // C estimation iteration threshold #define TEMP_MODEL_C_itr 30 // C estimation iteration limit -#define TEMP_MODEL_R 29.7 // initial guess for heatblock resistance (K/W) +#define TEMP_MODEL_R 20.5 // initial guess for heatblock resistance (K/W) #define TEMP_MODEL_Rl 5 // R estimation lower limit #define TEMP_MODEL_Rh 50 // R estimation upper limit #define TEMP_MODEL_R_thr 0.01 // R estimation iteration threshold