diff options
author | Lawrence Leung larryleungcal@yahoo.com <lawrence@Barrett.petitearmy.com> | 2011-07-25 00:51:01 -0700 |
---|---|---|
committer | Lawrence Leung larryleungcal@yahoo.com <lawrence@Barrett.petitearmy.com> | 2011-07-25 00:51:27 -0700 |
commit | 067c662510309a3c1841921d2c01e408d6311da4 (patch) | |
tree | a77978aa6ad55bc8e8dadcaadb366402a0e57914 | |
parent | 4c385a2f5d0cdb375bed7f095dbc3382cc8b66f2 (diff) |
add support for TEMP_RESIDENCY_TIME for M109
-rw-r--r-- | Sprinter/Configuration.h | 3 | ||||
-rw-r--r-- | Sprinter/Sprinter.pde | 17 |
2 files changed, 20 insertions, 0 deletions
diff --git a/Sprinter/Configuration.h b/Sprinter/Configuration.h index bbc2cfe..c1c4918 100644 --- a/Sprinter/Configuration.h +++ b/Sprinter/Configuration.h @@ -140,6 +140,9 @@ char uuid[] = "00000000-0000-0000-0000-000000000000"; // If the temperature has not increased at the end of that period, the target temperature is set to zero. It can be reset with another M104/M109 //#define WATCHPERIOD 5000 //5 seconds +// Wait this long after achieving target temperature on M109 before continuing with print (seconds) +#define TEMP_RESIDENCY_TIME 20 + //// The minimal temperature defines the temperature below which the heater will not be enabled #define MINTEMP 5 diff --git a/Sprinter/Sprinter.pde b/Sprinter/Sprinter.pde index dde302c..801f103 100644 --- a/Sprinter/Sprinter.pde +++ b/Sprinter/Sprinter.pde @@ -778,6 +778,23 @@ inline void process_commands() } manage_heater(); } + // wait extra time before letting the print continue + #ifdef TEMP_RESIDENCY_TIME + { + long residencyStart = millis(); + codenum = millis(); + while(millis()-residencyStart<(TEMP_RESIDENCY_TIME*1000)) { + if( (millis() - codenum) > 1000 ) //Print Temp Reading every 1 second while heating up. + { + Serial.print("T:"); + Serial.println( analog2temp(current_raw) ); + codenum = millis(); + } + manage_heater(); + } + } + #endif + break; case 190: // M190 - Wait bed for heater to reach target. #if TEMP_1_PIN > -1 |