| @@ -38,18 +38,26 @@ | ||||
| //=========================================================================== | ||||
| //=============================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 | ||||
| // 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 | ||||
| // 7 is 100k Honeywell thermistor 135-104LAG-J01 | ||||
| // 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) | ||||
| // 55 is 100k thermistor - ATC Semitec 104GT-2 (Used in ParCan) (1k pullup) | ||||
|  | ||||
| #define TEMP_SENSOR_0 -1 | ||||
| #define TEMP_SENSOR_1 0 | ||||
|   | ||||
| @@ -73,27 +73,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 = { | ||||
| //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 | ||||
|    {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 | ||||
|    {30*OVERSAMPLENR, 300}, //top rating 300C | ||||
|    {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 | ||||
| @@ -157,73 +171,48 @@ 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 = { | ||||
| // 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 | ||||
|    {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} | ||||
|    {17*OVERSAMPLENR, 300}, //top rating 300C | ||||
|    {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 | ||||
|  | ||||
| #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}, | ||||
| @@ -264,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}, | ||||
| @@ -321,6 +311,150 @@ const short temptable_7[][2] PROGMEM = { | ||||
| }; | ||||
| #endif | ||||
|  | ||||
| #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. | ||||
| // 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}, | ||||
|    {190*OVERSAMPLENR, 250}, //top rating 250C | ||||
|    {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 | ||||
|  | ||||
| #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 = { | ||||
|    {1*OVERSAMPLENR, 500}, | ||||
|    {125*OVERSAMPLENR, 300}, //top rating 300C | ||||
|    {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 | ||||
|  | ||||
| #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) | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user