diff --git a/Firmware/Configuration.h b/Firmware/Configuration.h index 2ceda4e9b..19057d796 100644 --- a/Firmware/Configuration.h +++ b/Firmware/Configuration.h @@ -5,7 +5,7 @@ #include "Configuration_prusa.h" // Firmware version -#define FW_version "3.0.10-5" +#define FW_version "3.0.10-6" #define FW_PRUSA3D_MAGIC "PRUSA3DFW" #define FW_PRUSA3D_MAGIC_LEN 10 diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index a8ccc49c0..6b7735105 100644 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -1962,7 +1962,7 @@ void process_commands() if (code_seen("Ping")) { //PRUSA Ping if (farm_mode) { PingTime = millis(); - MYSERIAL.print(farm_no); MYSERIAL.println(": OK"); + //MYSERIAL.print(farm_no); MYSERIAL.println(": OK"); } } else if (code_seen("PRN")) { diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index a495329cd..86bdf91fa 100644 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -152,6 +152,7 @@ static void lcd_control_motion_menu(); static void lcd_control_volumetric_menu(); static void prusa_stat_printerstatus(int _status); +static void prusa_stat_farm_number(); static void prusa_stat_temperatures(); static void prusa_stat_printinfo(); static void lcd_farm_no(); @@ -1891,19 +1892,18 @@ void prusa_statistics(int _message) { { SERIAL_ECHO("{"); prusa_stat_printerstatus(4); - status_number = 4; + prusa_stat_farm_number(); prusa_stat_printinfo(); SERIAL_ECHOLN("}"); + status_number = 4; } else { SERIAL_ECHO("{"); prusa_stat_printerstatus(1); - status_number = 1; - SERIAL_ECHO("[PFN:"); - SERIAL_ECHO(farm_no); - SERIAL_ECHO("]"); + prusa_stat_farm_number(); SERIAL_ECHOLN("}"); + status_number = 1; } break; @@ -1911,8 +1911,9 @@ void prusa_statistics(int _message) { farm_status = 2; SERIAL_ECHO("{"); prusa_stat_printerstatus(2); - status_number = 2; + prusa_stat_farm_number(); SERIAL_ECHOLN("}"); + status_number = 2; farm_timer = 1; break; @@ -1920,8 +1921,9 @@ void prusa_statistics(int _message) { farm_status = 3; SERIAL_ECHO("{"); prusa_stat_printerstatus(3); - status_number = 3; + prusa_stat_farm_number(); SERIAL_ECHOLN("}"); + status_number = 3; farm_timer = 1; if (IS_SD_PRINTING) @@ -1929,15 +1931,17 @@ void prusa_statistics(int _message) { farm_status = 4; SERIAL_ECHO("{"); prusa_stat_printerstatus(4); - status_number = 4; + prusa_stat_farm_number(); SERIAL_ECHOLN("}"); + status_number = 4; } else { SERIAL_ECHO("{"); prusa_stat_printerstatus(3); + prusa_stat_farm_number(); + SERIAL_ECHOLN("}"); status_number = 3; - SERIAL_ECHOLN("}");; } farm_timer = 1; break; @@ -1946,20 +1950,30 @@ void prusa_statistics(int _message) { break; case 4: // print succesfull - SERIAL_ECHOLN("{[RES:1]}"); + SERIAL_ECHOLN("{[RES:1]"); + prusa_stat_printerstatus(status_number); + prusa_stat_farm_number(); + SERIAL_ECHOLN("}"); farm_timer = 2; break; case 5: // print not succesfull - SERIAL_ECHOLN("{[RES:0]}"); + SERIAL_ECHOLN("{[RES:0]"); + prusa_stat_printerstatus(status_number); + prusa_stat_farm_number(); + SERIAL_ECHOLN("}"); farm_timer = 2; break; case 6: // print done - SERIAL_ECHOLN("{[PRN:8]}"); + SERIAL_ECHOLN("{[PRN:8]"); + prusa_stat_farm_number(); + SERIAL_ECHOLN("}"); status_number = 8; farm_timer = 2; break; case 7: // print done - stopped - SERIAL_ECHOLN("{[PRN:9]}"); + SERIAL_ECHOLN("{[PRN:9]"); + prusa_stat_farm_number(); + SERIAL_ECHOLN("}"); status_number = 9; farm_timer = 2; break; @@ -1971,32 +1985,45 @@ void prusa_statistics(int _message) { farm_timer = 2; break; case 20: // echo farm no - SERIAL_ECHO("{[PFN:"); - SERIAL_ECHO(farm_no); - SERIAL_ECHOLN("]}"); + SERIAL_ECHOLN("{"); + prusa_stat_printerstatus(status_number); + prusa_stat_farm_number(); + SERIAL_ECHOLN("}"); farm_timer = 5; break; case 21: // temperatures SERIAL_ECHO("{"); prusa_stat_temperatures(); + prusa_stat_farm_number(); + prusa_stat_printerstatus(status_number); SERIAL_ECHOLN("}"); break; case 22: // waiting for filament change - SERIAL_ECHOLN("{[PRN:5]}"); + SERIAL_ECHOLN("{[PRN:5]"); + prusa_stat_farm_number(); + SERIAL_ECHOLN("}"); status_number = 5; break; case 90: // Error - Thermal Runaway - SERIAL_ECHOLN("{[ERR:1]}"); + SERIAL_ECHOLN("{[ERR:1]"); + prusa_stat_farm_number(); + SERIAL_ECHOLN("}"); break; case 91: // Error - Thermal Runaway Preheat - SERIAL_ECHOLN("{[ERR:2]}"); + SERIAL_ECHOLN("{[ERR:2]"); + prusa_stat_farm_number(); + SERIAL_ECHOLN("}"); break; case 92: // Error - Min temp - SERIAL_ECHOLN("{[ERR:3]}"); + SERIAL_ECHOLN("{[ERR:3]"); + prusa_stat_farm_number(); + SERIAL_ECHOLN("}"); break; case 93: // Error - Max temp - SERIAL_ECHOLN("{[ERR:4]}"); + SERIAL_ECHOLN("{[ERR:4]"); + prusa_stat_farm_number(); + SERIAL_ECHOLN("}"); break; case 99: // heartbeat @@ -2019,6 +2046,12 @@ static void prusa_stat_printerstatus(int _status) SERIAL_ECHO("]"); } +static void prusa_stat_farm_number() { + SERIAL_ECHO("[PFN:"); + SERIAL_ECHO(farm_no); + SERIAL_ECHO("]"); +} + static void prusa_stat_temperatures() { SERIAL_ECHO("[ST0:"); @@ -4503,14 +4536,14 @@ void lcd_printer_connected() { printer_connected = true; } -void lcd_ping() { +void lcd_ping() { //chceck if printer is connected to monitoring when in farm mode if (farm_mode) { bool empty = is_buffer_empty(); if ((millis() - PingTime) * 0.001 > (empty ? PING_TIME : PING_TIME_LONG)) { //if commands buffer is empty use shorter time period //if there are comamnds in buffer, some long gcodes can delay execution of ping command //therefore longer period is used printer_connected = false; - lcd_ping_allert(); + //lcd_ping_allert(); //acustic signals } else { lcd_printer_connected();