From a5f1f23fe272327775a5dd786e16d2c390e3a154 Mon Sep 17 00:00:00 2001 From: Voinea Dragos Date: Sun, 30 May 2021 13:01:11 +0300 Subject: [PATCH] TimeNow && TimeSent --- Firmware/cmdqueue.cpp | 18 +++++------------- Firmware/cmdqueue.h | 3 --- 2 files changed, 5 insertions(+), 16 deletions(-) diff --git a/Firmware/cmdqueue.cpp b/Firmware/cmdqueue.cpp index 3bde3336..7cd0c463 100755 --- a/Firmware/cmdqueue.cpp +++ b/Firmware/cmdqueue.cpp @@ -26,8 +26,7 @@ int serial_count = 0; //index of character read from serial line boolean comment_mode = false; char *strchr_pointer; // just a pointer to find chars in the command string like X, Y, Z, E, etc -unsigned long TimeSent = _millis(); -unsigned long TimeNow = _millis(); +ShortTimer farm_incomplete_command_timeout_timer; long gcode_N = 0; long gcode_LastN = 0; @@ -396,14 +395,8 @@ void get_command() while (((MYSERIAL.available() > 0 && !saved_printing) || (MYSERIAL.available() > 0 && isPrintPaused)) && !cmdqueue_serial_disabled) { //is print is saved (crash detection or filament detection), dont process data from serial line char serial_char = MYSERIAL.read(); -/* if (selectedSerialPort == 1) - { - selectedSerialPort = 0; - MYSERIAL.write(serial_char); // for debuging serial line 2 in farm_mode - selectedSerialPort = 1; - } */ //RP - removed - TimeSent = _millis(); - TimeNow = _millis(); + + farm_incomplete_command_timeout_timer.start(); if (serial_char < 0) // Ignore extended ASCII characters. These characters have no meaning in the G-code apart from the file names @@ -537,9 +530,8 @@ void get_command() } } // end of serial line processing loop - if(farm_mode){ - TimeNow = _millis(); - if ( ((TimeNow - TimeSent) > 800) && (serial_count > 0) ) { + if(farm_mode && (serial_count > 0)){ + if (farm_incomplete_command_timeout_timer.expired(800)) { cmdbuffer[bufindw+serial_count+CMDHDRSIZE] = 0; bufindw += strlen(cmdbuffer+bufindw+CMDHDRSIZE) + (1 + CMDHDRSIZE); diff --git a/Firmware/cmdqueue.h b/Firmware/cmdqueue.h index bb9e174d..f9cbd9bb 100644 --- a/Firmware/cmdqueue.h +++ b/Firmware/cmdqueue.h @@ -52,9 +52,6 @@ extern int serial_count; extern boolean comment_mode; extern char *strchr_pointer; -extern unsigned long TimeSent; -extern unsigned long TimeNow; - extern long gcode_N; extern long gcode_LastN; extern long Stopped_gcode_LastN;