From 9f9f498491c5c85dba16d49b1e141e05d2537562 Mon Sep 17 00:00:00 2001 From: linagee Date: Sat, 19 May 2012 05:47:30 -0600 Subject: [PATCH 01/15] Update Marlin/Configuration.h --- Marlin/Configuration.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 6c5b97432..40eb2eb18 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -43,12 +43,12 @@ // -2 is thermocouple with MAX6675 (only for sensor 0) // -1 is thermocouple with AD595 // 0 is not used -// 1 is 100k thermistor +// 1 is 100k thermistor - closer to EPCOS 100k manuf table // 2 is 200k thermistor // 3 is mendel-parts thermistor // 4 is 10k thermistor !! do not use it for a hotend. It gives bad resolution at high temp. !! // 5 is ParCan supplied 104GT-2 100K -// 6 is EPCOS 100k +// 6 is EPCOS 100k - Not calculated like table 1, measured using a fluke // 7 is 100k Honeywell thermistor 135-104LAG-J01 #define TEMP_SENSOR_0 -1 From 241f5a4c0ed603285cf91d18811fe3ef2aa83eb1 Mon Sep 17 00:00:00 2001 From: linagee Date: Sat, 19 May 2012 05:52:12 -0600 Subject: [PATCH 02/15] Update Marlin/thermistortables.h --- Marlin/thermistortables.h | 60 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 3071a6b5b..9a43d4cd2 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -321,6 +321,66 @@ const short temptable_7[][2] PROGMEM = { }; #endif +#if (THERMISTORHEATER_0 == 8) || (THERMISTORHEATER_1 == 8) || (THERMISTORHEATER_2 == 8) || (THERMISTORBED == 8) +// 100k EPCOS (WITH 1kohm RESISTOR FOR PULLUP, R9/R10 ON SANGUINOLOLU! NOT FOR 4.7kohm PULLUP! THIS IS NOT NORMAL!) +// Advantage: Twice the resolution and better linearity from 150C to 200C +// Experimental - untested +const short temptable_8[][2] PROGMEM = { + {190*OVERSAMPLENR, 250}, + {203*OVERSAMPLENR, 245}, + {217*OVERSAMPLENR, 240}, + {232*OVERSAMPLENR, 235}, + {248*OVERSAMPLENR, 230}, + {265*OVERSAMPLENR, 225}, + {283*OVERSAMPLENR, 220}, + {302*OVERSAMPLENR, 215}, + {322*OVERSAMPLENR, 210}, + {344*OVERSAMPLENR, 205}, + {366*OVERSAMPLENR, 200}, + {390*OVERSAMPLENR, 195}, + {415*OVERSAMPLENR, 190}, + {440*OVERSAMPLENR, 185}, + {467*OVERSAMPLENR, 180}, + {494*OVERSAMPLENR, 175}, + {522*OVERSAMPLENR, 170}, + {551*OVERSAMPLENR, 165}, + {580*OVERSAMPLENR, 160}, + {609*OVERSAMPLENR, 155}, + {638*OVERSAMPLENR, 150}, + {666*OVERSAMPLENR, 145}, + {695*OVERSAMPLENR, 140}, + {722*OVERSAMPLENR, 135}, + {749*OVERSAMPLENR, 130}, + {775*OVERSAMPLENR, 125}, + {800*OVERSAMPLENR, 120}, + {823*OVERSAMPLENR, 115}, + {845*OVERSAMPLENR, 110}, + {865*OVERSAMPLENR, 105}, + {884*OVERSAMPLENR, 100}, + {901*OVERSAMPLENR, 95}, + {917*OVERSAMPLENR, 90}, + {932*OVERSAMPLENR, 85}, + {944*OVERSAMPLENR, 80}, + {956*OVERSAMPLENR, 75}, + {966*OVERSAMPLENR, 70}, + {975*OVERSAMPLENR, 65}, + {982*OVERSAMPLENR, 60}, + {989*OVERSAMPLENR, 55}, + {995*OVERSAMPLENR, 50}, + {1000*OVERSAMPLENR, 45}, + {1004*OVERSAMPLENR, 40}, + {1007*OVERSAMPLENR, 35}, + {1010*OVERSAMPLENR, 30}, + {1013*OVERSAMPLENR, 25}, + {1015*OVERSAMPLENR, 20}, + {1017*OVERSAMPLENR, 15}, + {1018*OVERSAMPLENR, 10}, + {1019*OVERSAMPLENR, 5}, + {1020*OVERSAMPLENR, 0}, + {1021*OVERSAMPLENR, -5} +}; +#endif + #define _TT_NAME(_N) temptable_ ## _N #define TT_NAME(_N) _TT_NAME(_N) From c2fc466e1b9b95c6993ba16ea8fb029ae33b7e99 Mon Sep 17 00:00:00 2001 From: linagee Date: Sat, 19 May 2012 05:56:17 -0600 Subject: [PATCH 03/15] Update Marlin/Configuration.h --- Marlin/Configuration.h | 1 + 1 file changed, 1 insertion(+) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 40eb2eb18..e3036e8fe 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -50,6 +50,7 @@ // 5 is ParCan supplied 104GT-2 100K // 6 is EPCOS 100k - Not calculated like table 1, measured using a fluke // 7 is 100k Honeywell thermistor 135-104LAG-J01 +// 8 is EPCOS 100k - 1Kohm RESISTOR PULLUP ONLY! SEE therm table, should give twice resolution from 150C to 200C - EXPERIMENTAL! #define TEMP_SENSOR_0 -1 #define TEMP_SENSOR_1 0 From de2ca3b2e8f8bfefb060d44ef021a86abedccef5 Mon Sep 17 00:00:00 2001 From: linagee Date: Sat, 19 May 2012 07:40:35 -0600 Subject: [PATCH 04/15] Grammar correction. --- Marlin/Configuration.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index e3036e8fe..cb139e7cd 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -43,12 +43,12 @@ // -2 is thermocouple with MAX6675 (only for sensor 0) // -1 is thermocouple with AD595 // 0 is not used -// 1 is 100k thermistor - closer to EPCOS 100k manuf table +// 1 is 100k thermistor - best choice for EPCOS 100k // 2 is 200k thermistor // 3 is mendel-parts thermistor // 4 is 10k thermistor !! do not use it for a hotend. It gives bad resolution at high temp. !! // 5 is ParCan supplied 104GT-2 100K -// 6 is EPCOS 100k - Not calculated like table 1, measured using a fluke +// 6 is EPCOS 100k - Not as accurate as table 1 (created using a fluke thermocouple) // 7 is 100k Honeywell thermistor 135-104LAG-J01 // 8 is EPCOS 100k - 1Kohm RESISTOR PULLUP ONLY! SEE therm table, should give twice resolution from 150C to 200C - EXPERIMENTAL! From 4c37d0d9f175c5e76a6a53cb7884018094d9ae08 Mon Sep 17 00:00:00 2001 From: linagee Date: Sun, 20 May 2012 04:01:30 -0600 Subject: [PATCH 05/15] Extended range above 250C. (Operating range states up to 300C) --- Marlin/thermistortables.h | 57 ++++++++++++++++++++++++--------------- 1 file changed, 35 insertions(+), 22 deletions(-) diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 9a43d4cd2..bd7d38043 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -72,28 +72,41 @@ const short temptable_1[][2] PROGMEM = { }; #endif #if (THERMISTORHEATER_0 == 2) || (THERMISTORHEATER_1 == 2) || (THERMISTORHEATER_2 == 2) || (THERMISTORBED == 2) //200k bed thermistor -const short temptable_2[][2] PROGMEM = { - {1*OVERSAMPLENR, 848}, - {54*OVERSAMPLENR, 275}, - {107*OVERSAMPLENR, 228}, - {160*OVERSAMPLENR, 202}, - {213*OVERSAMPLENR, 185}, - {266*OVERSAMPLENR, 171}, - {319*OVERSAMPLENR, 160}, - {372*OVERSAMPLENR, 150}, - {425*OVERSAMPLENR, 141}, - {478*OVERSAMPLENR, 133}, - {531*OVERSAMPLENR, 125}, - {584*OVERSAMPLENR, 118}, - {637*OVERSAMPLENR, 110}, - {690*OVERSAMPLENR, 103}, - {743*OVERSAMPLENR, 95}, - {796*OVERSAMPLENR, 86}, - {849*OVERSAMPLENR, 77}, - {902*OVERSAMPLENR, 65}, - {955*OVERSAMPLENR, 49}, - {1008*OVERSAMPLENR, 17}, - {1020*OVERSAMPLENR, 0} //safety + const short temptable_2[][2] PROGMEM = { +//200k ATC Semitec 204GT-2 +//Verified by linagee. Source: http://shop.arcol.hu/static/datasheets/thermistors.pdf +// Calculated using 4.7kohm pullup, voltage divider math, and manufacturer provided temp/resistance + {30*OVERSAMPLENR, 300}, + {34*OVERSAMPLENR, 290}, + {39*OVERSAMPLENR, 280}, + {46*OVERSAMPLENR, 270}, + {53*OVERSAMPLENR, 260}, + {63*OVERSAMPLENR, 250}, + {74*OVERSAMPLENR, 240}, + {87*OVERSAMPLENR, 230}, + {104*OVERSAMPLENR, 220}, + {124*OVERSAMPLENR, 210}, + {148*OVERSAMPLENR, 200}, + {176*OVERSAMPLENR, 190}, + {211*OVERSAMPLENR, 180}, + {252*OVERSAMPLENR, 170}, + {301*OVERSAMPLENR, 160}, + {357*OVERSAMPLENR, 150}, + {420*OVERSAMPLENR, 140}, + {489*OVERSAMPLENR, 130}, + {562*OVERSAMPLENR, 120}, + {636*OVERSAMPLENR, 110}, + {708*OVERSAMPLENR, 100}, + {775*OVERSAMPLENR, 90}, + {835*OVERSAMPLENR, 80}, + {884*OVERSAMPLENR, 70}, + {924*OVERSAMPLENR, 60}, + {955*OVERSAMPLENR, 50}, + {977*OVERSAMPLENR, 40}, + {993*OVERSAMPLENR, 30}, + {1004*OVERSAMPLENR, 20}, + {1012*OVERSAMPLENR, 10}, + {1016*OVERSAMPLENR, 0}, }; #endif From dd9144994efb0828812372c15a1f019adfba0b9c Mon Sep 17 00:00:00 2001 From: linagee Date: Sun, 20 May 2012 04:13:29 -0600 Subject: [PATCH 06/15] Tested May 19 - It works! Verified with separate thermocouple TM-902C also. --- Marlin/thermistortables.h | 1 - 1 file changed, 1 deletion(-) diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index bd7d38043..f2d0079d1 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -337,7 +337,6 @@ const short temptable_7[][2] PROGMEM = { #if (THERMISTORHEATER_0 == 8) || (THERMISTORHEATER_1 == 8) || (THERMISTORHEATER_2 == 8) || (THERMISTORBED == 8) // 100k EPCOS (WITH 1kohm RESISTOR FOR PULLUP, R9/R10 ON SANGUINOLOLU! NOT FOR 4.7kohm PULLUP! THIS IS NOT NORMAL!) // Advantage: Twice the resolution and better linearity from 150C to 200C -// Experimental - untested const short temptable_8[][2] PROGMEM = { {190*OVERSAMPLENR, 250}, {203*OVERSAMPLENR, 245}, From c4490f5f3d995feaffbe1c3aaf49612197279c8b Mon Sep 17 00:00:00 2001 From: linagee Date: Sun, 20 May 2012 04:27:52 -0600 Subject: [PATCH 07/15] Update Marlin/Configuration.h --- Marlin/Configuration.h | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index cb139e7cd..153929a43 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -38,19 +38,25 @@ //=========================================================================== //=============================Thermal Settings ============================ //=========================================================================== - +// +//--NORMAL IS 4.7kohm PULLUP!-- 1kohm pullup can be used on hotend sensor, using correct resistor and table +// //// Temperature sensor settings: // -2 is thermocouple with MAX6675 (only for sensor 0) // -1 is thermocouple with AD595 // 0 is not used -// 1 is 100k thermistor - best choice for EPCOS 100k -// 2 is 200k thermistor -// 3 is mendel-parts thermistor +// 1 is 100k thermistor - best choice for EPCOS 100k (4.7k pullup) +// 2 is 200k thermistor - ATC Semitec 204GT-2 (4.7k pullup) +// 3 is mendel-parts thermistor (4.7k pullup) // 4 is 10k thermistor !! do not use it for a hotend. It gives bad resolution at high temp. !! -// 5 is ParCan supplied 104GT-2 100K -// 6 is EPCOS 100k - Not as accurate as table 1 (created using a fluke thermocouple) -// 7 is 100k Honeywell thermistor 135-104LAG-J01 -// 8 is EPCOS 100k - 1Kohm RESISTOR PULLUP ONLY! SEE therm table, should give twice resolution from 150C to 200C - EXPERIMENTAL! +// 5 is 100K thermistor - ATC Semitec 104GT-2 (Used in ParCan) (4.7k pullup) +// 6 is 100k EPCOS - Not as accurate as table 1 (created using a fluke thermocouple) (4.7k pullup) +// 7 is 100k Honeywell thermistor 135-104LAG-J01 (4.7k pullup) +// +// 1k ohm pullup tables - This is not normal, you would have to have changed out your 4.7k for 1k +// (but gives greater accuracy and more stable PID) +// 51 is 100k thermistor - EPCOS (1k pullup) +// 52 is 200k thermistor - ATC Semitec 204GT-2 (1k pullup) #define TEMP_SENSOR_0 -1 #define TEMP_SENSOR_1 0 From 2aa9f7b13139bc1cc60d97744e82b01857921edc Mon Sep 17 00:00:00 2001 From: linagee Date: Sun, 20 May 2012 04:35:28 -0600 Subject: [PATCH 08/15] Update Marlin/thermistortables.h --- Marlin/thermistortables.h | 50 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 47 insertions(+), 3 deletions(-) diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index f2d0079d1..94f831abd 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -334,10 +334,12 @@ const short temptable_7[][2] PROGMEM = { }; #endif -#if (THERMISTORHEATER_0 == 8) || (THERMISTORHEATER_1 == 8) || (THERMISTORHEATER_2 == 8) || (THERMISTORBED == 8) -// 100k EPCOS (WITH 1kohm RESISTOR FOR PULLUP, R9/R10 ON SANGUINOLOLU! NOT FOR 4.7kohm PULLUP! THIS IS NOT NORMAL!) +#if (THERMISTORHEATER_0 == 51) || (THERMISTORHEATER_1 == 51) || (THERMISTORHEATER_2 == 51) || (THERMISTORBED == 51) +// 100k EPCOS (WITH 1kohm RESISTOR FOR PULLUP, R9 ON SANGUINOLOLU! NOT FOR 4.7kohm PULLUP! THIS IS NOT NORMAL!) +// Verified by linagee. Source: http://shop.arcol.hu/static/datasheets/thermistors.pdf +// Calculated using 1kohm pullup, voltage divider math, and manufacturer provided temp/resistance // Advantage: Twice the resolution and better linearity from 150C to 200C -const short temptable_8[][2] PROGMEM = { +const short temptable_51[][2] PROGMEM = { {190*OVERSAMPLENR, 250}, {203*OVERSAMPLENR, 245}, {217*OVERSAMPLENR, 240}, @@ -393,6 +395,48 @@ const short temptable_8[][2] PROGMEM = { }; #endif +#if (THERMISTORHEATER_0 == 52) || (THERMISTORHEATER_1 == 52) || (THERMISTORHEATER_2 == 52) || (THERMISTORBED == 52) +// 200k ATC Semitec 204GT-2 (WITH 1kohm RESISTOR FOR PULLUP, R9 ON SANGUINOLOLU! NOT FOR 4.7kohm PULLUP! THIS IS NOT NORMAL!) +// Verified by linagee. Source: http://shop.arcol.hu/static/datasheets/thermistors.pdf +// Calculated using 1kohm pullup, voltage divider math, and manufacturer provided temp/resistance +// Advantage: More resolution and better linearity from 150C to 200C +const short temptable_52[][2] PROGMEM = { + {125*OVERSAMPLENR, 300}, + {142*OVERSAMPLENR, 290}, + {162*OVERSAMPLENR, 280}, + {185*OVERSAMPLENR, 270}, + {211*OVERSAMPLENR, 260}, + {240*OVERSAMPLENR, 250}, + {274*OVERSAMPLENR, 240}, + {312*OVERSAMPLENR, 230}, + {355*OVERSAMPLENR, 220}, + {401*OVERSAMPLENR, 210}, + {452*OVERSAMPLENR, 200}, + {506*OVERSAMPLENR, 190}, + {563*OVERSAMPLENR, 180}, + {620*OVERSAMPLENR, 170}, + {677*OVERSAMPLENR, 160}, + {732*OVERSAMPLENR, 150}, + {783*OVERSAMPLENR, 140}, + {830*OVERSAMPLENR, 130}, + {871*OVERSAMPLENR, 120}, + {906*OVERSAMPLENR, 110}, + {935*OVERSAMPLENR, 100}, + {958*OVERSAMPLENR, 90}, + {976*OVERSAMPLENR, 80}, + {990*OVERSAMPLENR, 70}, + {1000*OVERSAMPLENR, 60}, + {1008*OVERSAMPLENR, 50}, + {1013*OVERSAMPLENR, 40}, + {1017*OVERSAMPLENR, 30}, + {1019*OVERSAMPLENR, 20}, + {1021*OVERSAMPLENR, 10}, + {1022*OVERSAMPLENR, 0} +}; +#endif + + + #define _TT_NAME(_N) temptable_ ## _N #define TT_NAME(_N) _TT_NAME(_N) From 96a4baa0bed3e063935a070fcecd43e8791358e5 Mon Sep 17 00:00:00 2001 From: linagee Date: Sun, 20 May 2012 04:55:22 -0600 Subject: [PATCH 09/15] Update Marlin/thermistortables.h --- Marlin/thermistortables.h | 97 ++++++++++++++------------------------- 1 file changed, 35 insertions(+), 62 deletions(-) diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 94f831abd..459508540 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -170,67 +170,40 @@ const short temptable_4[][2] PROGMEM = { #if (THERMISTORHEATER_0 == 5) || (THERMISTORHEATER_1 == 5) || (THERMISTORHEATER_2 == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2) const short temptable_5[][2] PROGMEM = { -{1*OVERSAMPLENR, 713}, -{18*OVERSAMPLENR, 316}, -{35*OVERSAMPLENR, 266}, -{52*OVERSAMPLENR, 239}, -{69*OVERSAMPLENR, 221}, -{86*OVERSAMPLENR, 208}, -{103*OVERSAMPLENR, 197}, -{120*OVERSAMPLENR, 188}, -{137*OVERSAMPLENR, 181}, -{154*OVERSAMPLENR, 174}, -{171*OVERSAMPLENR, 169}, -{188*OVERSAMPLENR, 163}, -{205*OVERSAMPLENR, 159}, -{222*OVERSAMPLENR, 154}, -{239*OVERSAMPLENR, 150}, -{256*OVERSAMPLENR, 147}, -{273*OVERSAMPLENR, 143}, -{290*OVERSAMPLENR, 140}, -{307*OVERSAMPLENR, 136}, -{324*OVERSAMPLENR, 133}, -{341*OVERSAMPLENR, 130}, -{358*OVERSAMPLENR, 128}, -{375*OVERSAMPLENR, 125}, -{392*OVERSAMPLENR, 122}, -{409*OVERSAMPLENR, 120}, -{426*OVERSAMPLENR, 117}, -{443*OVERSAMPLENR, 115}, -{460*OVERSAMPLENR, 112}, -{477*OVERSAMPLENR, 110}, -{494*OVERSAMPLENR, 108}, -{511*OVERSAMPLENR, 106}, -{528*OVERSAMPLENR, 103}, -{545*OVERSAMPLENR, 101}, -{562*OVERSAMPLENR, 99}, -{579*OVERSAMPLENR, 97}, -{596*OVERSAMPLENR, 95}, -{613*OVERSAMPLENR, 92}, -{630*OVERSAMPLENR, 90}, -{647*OVERSAMPLENR, 88}, -{664*OVERSAMPLENR, 86}, -{681*OVERSAMPLENR, 84}, -{698*OVERSAMPLENR, 81}, -{715*OVERSAMPLENR, 79}, -{732*OVERSAMPLENR, 77}, -{749*OVERSAMPLENR, 75}, -{766*OVERSAMPLENR, 72}, -{783*OVERSAMPLENR, 70}, -{800*OVERSAMPLENR, 67}, -{817*OVERSAMPLENR, 64}, -{834*OVERSAMPLENR, 61}, -{851*OVERSAMPLENR, 58}, -{868*OVERSAMPLENR, 55}, -{885*OVERSAMPLENR, 52}, -{902*OVERSAMPLENR, 48}, -{919*OVERSAMPLENR, 44}, -{936*OVERSAMPLENR, 40}, -{953*OVERSAMPLENR, 34}, -{970*OVERSAMPLENR, 28}, -{987*OVERSAMPLENR, 20}, -{1004*OVERSAMPLENR, 8}, -{1021*OVERSAMPLENR, 0} +// ATC Semitec 104GT-2 (Used in ParCan) +// Verified by linagee. Source: http://shop.arcol.hu/static/datasheets/thermistors.pdf +// Calculated using 4.7kohm pullup, voltage divider math, and manufacturer provided temp/resistance + {17*OVERSAMPLENR, 300}, + {20*OVERSAMPLENR, 290}, + {23*OVERSAMPLENR, 280}, + {27*OVERSAMPLENR, 270}, + {31*OVERSAMPLENR, 260}, + {37*OVERSAMPLENR, 250}, + {43*OVERSAMPLENR, 240}, + {51*OVERSAMPLENR, 230}, + {61*OVERSAMPLENR, 220}, + {73*OVERSAMPLENR, 210}, + {87*OVERSAMPLENR, 200}, + {106*OVERSAMPLENR, 190}, + {128*OVERSAMPLENR, 180}, + {155*OVERSAMPLENR, 170}, + {189*OVERSAMPLENR, 160}, + {230*OVERSAMPLENR, 150}, + {278*OVERSAMPLENR, 140}, + {336*OVERSAMPLENR, 130}, + {402*OVERSAMPLENR, 120}, + {476*OVERSAMPLENR, 110}, + {554*OVERSAMPLENR, 100}, + {635*OVERSAMPLENR, 90}, + {713*OVERSAMPLENR, 80}, + {784*OVERSAMPLENR, 70}, + {846*OVERSAMPLENR, 60}, + {897*OVERSAMPLENR, 50}, + {937*OVERSAMPLENR, 40}, + {966*OVERSAMPLENR, 30}, + {986*OVERSAMPLENR, 20}, + {1000*OVERSAMPLENR, 10}, + {1010*OVERSAMPLENR, 0} }; #endif @@ -336,7 +309,7 @@ const short temptable_7[][2] PROGMEM = { #if (THERMISTORHEATER_0 == 51) || (THERMISTORHEATER_1 == 51) || (THERMISTORHEATER_2 == 51) || (THERMISTORBED == 51) // 100k EPCOS (WITH 1kohm RESISTOR FOR PULLUP, R9 ON SANGUINOLOLU! NOT FOR 4.7kohm PULLUP! THIS IS NOT NORMAL!) -// Verified by linagee. Source: http://shop.arcol.hu/static/datasheets/thermistors.pdf +// Verified by linagee. // Calculated using 1kohm pullup, voltage divider math, and manufacturer provided temp/resistance // Advantage: Twice the resolution and better linearity from 150C to 200C const short temptable_51[][2] PROGMEM = { From 775da3f1038d222aa058a5aa542154c4561eb7d2 Mon Sep 17 00:00:00 2001 From: linagee Date: Sun, 20 May 2012 05:35:57 -0600 Subject: [PATCH 10/15] Added top ratings and extended to ADC=1 for table 3 and 5. --- Marlin/thermistortables.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 459508540..7c54cb45e 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -76,7 +76,8 @@ const short temptable_1[][2] PROGMEM = { //200k ATC Semitec 204GT-2 //Verified by linagee. Source: http://shop.arcol.hu/static/datasheets/thermistors.pdf // Calculated using 4.7kohm pullup, voltage divider math, and manufacturer provided temp/resistance - {30*OVERSAMPLENR, 300}, + {1*OVERSAMPLENR, 848}, + {30*OVERSAMPLENR, 300}, //top rating 300C {34*OVERSAMPLENR, 290}, {39*OVERSAMPLENR, 280}, {46*OVERSAMPLENR, 270}, @@ -173,7 +174,8 @@ const short temptable_5[][2] PROGMEM = { // ATC Semitec 104GT-2 (Used in ParCan) // Verified by linagee. Source: http://shop.arcol.hu/static/datasheets/thermistors.pdf // Calculated using 4.7kohm pullup, voltage divider math, and manufacturer provided temp/resistance - {17*OVERSAMPLENR, 300}, + {1*OVERSAMPLENR, 713}, + {17*OVERSAMPLENR, 300}, //top rating 300C {20*OVERSAMPLENR, 290}, {23*OVERSAMPLENR, 280}, {27*OVERSAMPLENR, 270}, From bd966ef389c47c3f5ec15d8ec8eff1124d0c4601 Mon Sep 17 00:00:00 2001 From: linagee Date: Sun, 20 May 2012 05:49:01 -0600 Subject: [PATCH 11/15] Update Marlin/thermistortables.h --- Marlin/thermistortables.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 7c54cb45e..13fd5c198 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -211,7 +211,8 @@ const short temptable_5[][2] PROGMEM = { #if (THERMISTORHEATER_0 == 6) || (THERMISTORHEATER_1 == 6) || (THERMISTORHEATER_2 == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor const short temptable_6[][2] PROGMEM = { - {28*OVERSAMPLENR, 250}, + {1*OVERSAMPLENR, 350} + {28*OVERSAMPLENR, 250}, //top rating 250C {31*OVERSAMPLENR, 245}, {35*OVERSAMPLENR, 240}, {39*OVERSAMPLENR, 235}, @@ -252,7 +253,8 @@ const short temptable_6[][2] PROGMEM = { #if (THERMISTORHEATER_0 == 7) || (THERMISTORHEATER_1 == 7) || (THERMISTORHEATER_2 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 const short temptable_7[][2] PROGMEM = { - {46*OVERSAMPLENR, 270}, + {1*OVERSAMPLENR, 500} + {46*OVERSAMPLENR, 270}, //top rating 300C {50*OVERSAMPLENR, 265}, {54*OVERSAMPLENR, 260}, {58*OVERSAMPLENR, 255}, @@ -315,7 +317,8 @@ const short temptable_7[][2] PROGMEM = { // Calculated using 1kohm pullup, voltage divider math, and manufacturer provided temp/resistance // Advantage: Twice the resolution and better linearity from 150C to 200C const short temptable_51[][2] PROGMEM = { - {190*OVERSAMPLENR, 250}, + {1*OVERSAMPLENR, 350} + {190*OVERSAMPLENR, 250}, //top rating 250C {203*OVERSAMPLENR, 245}, {217*OVERSAMPLENR, 240}, {232*OVERSAMPLENR, 235}, @@ -376,7 +379,8 @@ const short temptable_51[][2] PROGMEM = { // Calculated using 1kohm pullup, voltage divider math, and manufacturer provided temp/resistance // Advantage: More resolution and better linearity from 150C to 200C const short temptable_52[][2] PROGMEM = { - {125*OVERSAMPLENR, 300}, + {1*OVERSAMPLENR, 500} + {125*OVERSAMPLENR, 300}, //top rating 300C {142*OVERSAMPLENR, 290}, {162*OVERSAMPLENR, 280}, {185*OVERSAMPLENR, 270}, From 9e9db65c3f6741bb034f4b521d4c072577230c84 Mon Sep 17 00:00:00 2001 From: linagee Date: Sun, 20 May 2012 05:51:29 -0600 Subject: [PATCH 12/15] Update Marlin/thermistortables.h --- Marlin/thermistortables.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index 13fd5c198..e6731b2a8 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -72,7 +72,7 @@ const short temptable_1[][2] PROGMEM = { }; #endif #if (THERMISTORHEATER_0 == 2) || (THERMISTORHEATER_1 == 2) || (THERMISTORHEATER_2 == 2) || (THERMISTORBED == 2) //200k bed thermistor - const short temptable_2[][2] PROGMEM = { +const short temptable_2[][2] PROGMEM = { //200k ATC Semitec 204GT-2 //Verified by linagee. Source: http://shop.arcol.hu/static/datasheets/thermistors.pdf // Calculated using 4.7kohm pullup, voltage divider math, and manufacturer provided temp/resistance From 2d0d8e52721e37efde99ce5574c8a3d1ce6135a7 Mon Sep 17 00:00:00 2001 From: linagee Date: Sun, 20 May 2012 11:09:07 -0600 Subject: [PATCH 13/15] Small correction. --- Marlin/thermistortables.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index e6731b2a8..d7c19043b 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -211,7 +211,7 @@ const short temptable_5[][2] PROGMEM = { #if (THERMISTORHEATER_0 == 6) || (THERMISTORHEATER_1 == 6) || (THERMISTORHEATER_2 == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor const short temptable_6[][2] PROGMEM = { - {1*OVERSAMPLENR, 350} + {1*OVERSAMPLENR, 350}, {28*OVERSAMPLENR, 250}, //top rating 250C {31*OVERSAMPLENR, 245}, {35*OVERSAMPLENR, 240}, @@ -253,7 +253,7 @@ const short temptable_6[][2] PROGMEM = { #if (THERMISTORHEATER_0 == 7) || (THERMISTORHEATER_1 == 7) || (THERMISTORHEATER_2 == 7) || (THERMISTORBED == 7) // 100k Honeywell 135-104LAG-J01 const short temptable_7[][2] PROGMEM = { - {1*OVERSAMPLENR, 500} + {1*OVERSAMPLENR, 500}, {46*OVERSAMPLENR, 270}, //top rating 300C {50*OVERSAMPLENR, 265}, {54*OVERSAMPLENR, 260}, @@ -317,7 +317,7 @@ const short temptable_7[][2] PROGMEM = { // Calculated using 1kohm pullup, voltage divider math, and manufacturer provided temp/resistance // Advantage: Twice the resolution and better linearity from 150C to 200C const short temptable_51[][2] PROGMEM = { - {1*OVERSAMPLENR, 350} + {1*OVERSAMPLENR, 350}, {190*OVERSAMPLENR, 250}, //top rating 250C {203*OVERSAMPLENR, 245}, {217*OVERSAMPLENR, 240}, @@ -379,7 +379,7 @@ const short temptable_51[][2] PROGMEM = { // Calculated using 1kohm pullup, voltage divider math, and manufacturer provided temp/resistance // Advantage: More resolution and better linearity from 150C to 200C const short temptable_52[][2] PROGMEM = { - {1*OVERSAMPLENR, 500} + {1*OVERSAMPLENR, 500}, {125*OVERSAMPLENR, 300}, //top rating 300C {142*OVERSAMPLENR, 290}, {162*OVERSAMPLENR, 280}, From 2e8c5049c5c06c529f47a5397689254bc90edae0 Mon Sep 17 00:00:00 2001 From: linagee Date: Sun, 20 May 2012 13:18:45 -0600 Subject: [PATCH 14/15] Update Marlin/thermistortables.h --- Marlin/thermistortables.h | 41 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h index d7c19043b..fa7b230aa 100644 --- a/Marlin/thermistortables.h +++ b/Marlin/thermistortables.h @@ -414,7 +414,46 @@ const short temptable_52[][2] PROGMEM = { }; #endif - +#if (THERMISTORHEATER_0 == 55) || (THERMISTORHEATER_1 == 55) || (THERMISTORHEATER_2 == 55) || (THERMISTORBED == 55) +// 100k ATC Semitec 104GT-2 (Used on ParCan) (WITH 1kohm RESISTOR FOR PULLUP, R9 ON SANGUINOLOLU! NOT FOR 4.7kohm PULLUP! THIS IS NOT NORMAL!) +// Verified by linagee. Source: http://shop.arcol.hu/static/datasheets/thermistors.pdf +// Calculated using 1kohm pullup, voltage divider math, and manufacturer provided temp/resistance +// Advantage: More resolution and better linearity from 150C to 200C +const short temptable_52[][2] PROGMEM = { + {1*OVERSAMPLENR, 500}, + {76*OVERSAMPLENR, 300}, + {87*OVERSAMPLENR, 290}, + {100*OVERSAMPLENR, 280}, + {114*OVERSAMPLENR, 270}, + {131*OVERSAMPLENR, 260}, + {152*OVERSAMPLENR, 250}, + {175*OVERSAMPLENR, 240}, + {202*OVERSAMPLENR, 230}, + {234*OVERSAMPLENR, 220}, + {271*OVERSAMPLENR, 210}, + {312*OVERSAMPLENR, 200}, + {359*OVERSAMPLENR, 190}, + {411*OVERSAMPLENR, 180}, + {467*OVERSAMPLENR, 170}, + {527*OVERSAMPLENR, 160}, + {590*OVERSAMPLENR, 150}, + {652*OVERSAMPLENR, 140}, + {713*OVERSAMPLENR, 130}, + {770*OVERSAMPLENR, 120}, + {822*OVERSAMPLENR, 110}, + {867*OVERSAMPLENR, 100}, + {905*OVERSAMPLENR, 90}, + {936*OVERSAMPLENR, 80}, + {961*OVERSAMPLENR, 70}, + {979*OVERSAMPLENR, 60}, + {993*OVERSAMPLENR, 50}, + {1003*OVERSAMPLENR, 40}, + {1010*OVERSAMPLENR, 30}, + {1015*OVERSAMPLENR, 20}, + {1018*OVERSAMPLENR, 10}, + {1020*OVERSAMPLENR, 0} +}; +#endif #define _TT_NAME(_N) temptable_ ## _N #define TT_NAME(_N) _TT_NAME(_N) From fbd282b3bab54c486b157822319d26a183da3f6a Mon Sep 17 00:00:00 2001 From: linagee Date: Sun, 20 May 2012 13:19:28 -0600 Subject: [PATCH 15/15] Update Marlin/Configuration.h --- Marlin/Configuration.h | 1 + 1 file changed, 1 insertion(+) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 153929a43..f91b9b022 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -57,6 +57,7 @@ // (but gives greater accuracy and more stable PID) // 51 is 100k thermistor - EPCOS (1k pullup) // 52 is 200k thermistor - ATC Semitec 204GT-2 (1k pullup) +// 55 is 100k thermistor - ATC Semitec 104GT-2 (Used in ParCan) (1k pullup) #define TEMP_SENSOR_0 -1 #define TEMP_SENSOR_1 0