Cleaned up configuration. Made a hack so that board versions can be set from configuration.h. Combined thermistor tables. Enabled maxtemp and mintemp by default.

Changed case of configuration.h to make it appear first in Arduino IDE
This commit is contained in:
kliment 2011-07-05 20:20:15 +02:00
parent 873e85b3bb
commit d1cfd12190
9 changed files with 392 additions and 386 deletions

View file

@ -1,85 +0,0 @@
#ifndef THERMISTORTABLE_H_
#define THERMISTORTABLE_H_
// Thermistor lookup table for RepRap Temperature Sensor Boards (http://make.rrrf.org/ts)
// See this page:
// http://dev.www.reprap.org/bin/view/Main/Thermistor
// for details of what goes in this table.
// Made with createTemperatureLookup.py (http://svn.reprap.org/trunk/reprap/firmware/Arduino/utilities/createTemperatureLookup.py)
// ./createTemperatureLookup.py --r0=100000 --t0=25 --r1=0 --r2=4700 --beta=4066 --max-adc=1023
// r0: 100000
// t0: 25
// r1: 0
// r2: 4700
// beta: 4066
// max adc: 1023
#define BNUMTEMPS 61
const short bedtemptable[BNUMTEMPS][2] = {
{ 23 , 300 },
{ 25 , 295 },
{ 27 , 290 },
{ 28 , 285 },
{ 31 , 280 },
{ 33 , 275 },
{ 35 , 270 },
{ 38 , 265 },
{ 41 , 260 },
{ 44 , 255 },
{ 48 , 250 },
{ 52 , 245 },
{ 56 , 240 },
{ 61 , 235 },
{ 66 , 230 },
{ 71 , 225 },
{ 78 , 220 },
{ 84 , 215 },
{ 92 , 210 },
{ 100 , 205 },
{ 109 , 200 },
{ 120 , 195 },
{ 131 , 190 },
{ 143 , 185 },
{ 156 , 180 },
{ 171 , 175 },
{ 187 , 170 },
{ 205 , 165 },
{ 224 , 160 },
{ 245 , 155 },
{ 268 , 150 },
{ 293 , 145 },
{ 320 , 140 },
{ 348 , 135 },
{ 379 , 130 },
{ 411 , 125 },
{ 445 , 120 },
{ 480 , 115 },
{ 516 , 110 },
{ 553 , 105 },
{ 591 , 100 },
{ 628 , 95 },
{ 665 , 90 },
{ 702 , 85 },
{ 737 , 80 },
{ 770 , 75 },
{ 801 , 70 },
{ 830 , 65 },
{ 857 , 60 },
{ 881 , 55 },
{ 903 , 50 },
{ 922 , 45 },
{ 939 , 40 },
{ 954 , 35 },
{ 966 , 30 },
{ 977 , 25 },
{ 985 , 20 },
{ 993 , 15 },
{ 999 , 10 },
{ 1004 , 5 },
{ 1008 , 0 },
};
#endif

View file

@ -1,42 +0,0 @@
#ifndef THERMISTORTABLE_H_
#define THERMISTORTABLE_H_
// Thermistor lookup table for RepRap Temperature Sensor Boards (http://make.rrrf.org/ts)
// See this page:
// http://dev.www.reprap.org/bin/view/Main/Thermistor
// for details of what goes in this table.
// Made with createTemperatureLookup.py (http://svn.reprap.org/trunk/reprap/firmware/Arduino/utilities/createTemperatureLookup.py)
// ./createTemperatureLookup.py --r0=100000 --t0=25 --r1=0 --r2=4700 --beta=4066 --max-adc=1023
// r0: 100000
// t0: 25
// r1: 0
// r2: 4700
// beta: 4066
// max adc: 1023
#define BNUMTEMPS 20
const short bedtemptable[BNUMTEMPS][2] = {
{1, 848},
{54, 275},
{107, 228},
{160, 202},
{213, 185},
{266, 171},
{319, 160},
{372, 150},
{425, 141},
{478, 133},
{531, 125},
{584, 118},
{637, 110},
{690, 103},
{743, 95},
{796, 86},
{849, 77},
{902, 65},
{955, 49},
{1008, 17}
};
#endif

View file

@ -1,13 +1,87 @@
#ifndef PARAMETERS_H
#define PARAMETERS_H
#ifndef CONFIGURATION_H
#define CONFIGURATION_H
// NO RS485/EXTRUDER CONTROLLER SUPPORT
// PLEASE VERIFY PIN ASSIGNMENTS FOR YOUR CONFIGURATION!!!!!!!
#define MOTHERBOARD 3 // ATMEGA168 = 0, SANGUINO = 1, MOTHERBOARD = 2, MEGA/RAMPS = 3, ATMEGA328 = 4, Gen6 = 5, Sanguinololu = 6
//Comment out to disable SD support
//BASIC SETTINGS: select your board type, thermistor type, axis scaling, and endstop configuration
// The following define selects which electronics board you have. Please choose the one that matches your setup
// MEGA/RAMPS up to 1.2 = 3,
// RAMPS 1.3 = 63
// Gen6 = 5,
// Sanguinololu up to 1.1 = 6
// Sanguinololu 1.2 and above = 62
#define MOTHERBOARD 3
//Thermistor settings:
// 1 is 100k thermistor
// 2 is 200k thermistor
// 3 is mendel-parts thermistor
#define THERMISTORHEATER 1
#define THERMISTORBED 1
//Calibration variables
//X, Y, Z, E steps per unit - Metric Prusa Mendel with Wade extruder:
float axis_steps_per_unit[] = {80, 80, 3200/1.25,700};
//Metric Prusa Mendel with Makergear geared stepper extruder:
//float axis_steps_per_unit[] = {80,80,3200/1.25,1380};
////Endstop Settings
#define ENDSTOPPULLUPS 1 // Comment this out (using // at the start of the line) to disable the endstop pullup resistors
//The pullups are needed if you directly connect a mechanical endswitch between the signal and ground pins.
const bool ENDSTOPS_INVERTING = false; //set to true to invert the logic of the endstops
//This determines the communication speed of the printer
#define BAUDRATE 115200
//Comment out (using // at the start of the line) to disable SD support:
#define SDSUPPORT 1
//ADVANCED SETTINGS - to tweak parameters
#include "thermistortables.h"
//For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
const bool X_ENABLE_ON = 0;
const bool Y_ENABLE_ON = 0;
const bool Z_ENABLE_ON = 0;
const bool E_ENABLE_ON = 0;
//Disables axis when it's not being used.
const bool DISABLE_X = false;
const bool DISABLE_Y = false;
const bool DISABLE_Z = true;
const bool DISABLE_E = false;
const bool INVERT_X_DIR = false;
const bool INVERT_Y_DIR = false;
const bool INVERT_Z_DIR = true;
const bool INVERT_E_DIR = false;
//ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
const int X_HOME_DIR = -1;
const int Y_HOME_DIR = -1;
const int Z_HOME_DIR = -1;
const bool min_software_endstops = false; //If true, axis won't move to coordinates less than zero.
const bool max_software_endstops = true; //If true, axis won't move to coordinates greater than the defined lengths below.
const int X_MAX_LENGTH = 200;
const int Y_MAX_LENGTH = 200;
const int Z_MAX_LENGTH = 100;
//MOVEMENT SETTINGS
const int NUM_AXIS = 4; // The axis order in all axis related arrays is X, Y, Z, E
float max_feedrate[] = {200000, 200000, 240, 500000};
bool axis_relative_modes[] = {false, false, false, false};
//Min step delay in microseconds. If you are experiencing missing steps, try to raise the delay microseconds, but be aware this
// If you enable this, make sure STEP_DELAY_RATIO is disabled.
//#define STEP_DELAY_MICROS 1
@ -63,13 +137,13 @@ long max_travel_acceleration_units_per_sq_second[] = {500,500,50}; // X, Y, Z ma
//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
//The minimal temperature defines the temperature below which the heater will not be enabled
//#define MINTEMP
#define MINTEMP 5
//Experimental max temp
//When temperature exceeds max temp, your bot will halt.
//This feature exists to protect your hotend from overheating accidentally, but *NOT* from thermistor short/failure!
//You should use MINTEMP for thermistor short/failure protection.
//#define MAXTEMP 275
#define MAXTEMP 275
// Select one of these only to define how the nozzle temp is read.
#define HEATER_USES_THERMISTOR
@ -80,69 +154,7 @@ long max_travel_acceleration_units_per_sq_second[] = {500,500,50}; // X, Y, Z ma
#define BED_USES_THERMISTOR
//#define BED_USES_AD595
// Calibration formulas
// e_extruded_steps_per_mm = e_feedstock_steps_per_mm * (desired_extrusion_diameter^2 / feedstock_diameter^2)
// new_axis_steps_per_mm = previous_axis_steps_per_mm * (test_distance_instructed/test_distance_traveled)
// units are in millimeters or whatever length unit you prefer: inches,football-fields,parsecs etc
//Calibration variables
const int NUM_AXIS = 4; // The axis order in all axis related arrays is X, Y, Z, E
bool axis_relative_modes[] = {false, false, false, false};
float axis_steps_per_unit[] = {80.376,80.376,3200/1.25,16}; // {X steps per unit, Y steps per unit, Z steps per unit, E steps per unit}
//For SAE Prusa mendeel float z_steps_per_unit = should be 3200/1.411 for 5/16-18 rod and 3200/1.058 for 5/16-24
//float axis_steps_per_unit[] = {10.047,10.047,833.398,0.706};
float max_feedrate[] = {200000, 200000, 240, 500000}; //mmm, acceleration!
//For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
const bool X_ENABLE_ON = 0;
const bool Y_ENABLE_ON = 0;
const bool Z_ENABLE_ON = 0;
const bool E_ENABLE_ON = 0;
//Disables axis when it's not being used.
const bool DISABLE_X = false;
const bool DISABLE_Y = false;
const bool DISABLE_Z = true;
const bool DISABLE_E = false;
const bool INVERT_X_DIR = false;
const bool INVERT_Y_DIR = false;
const bool INVERT_Z_DIR = true;
const bool INVERT_E_DIR = false;
// Sets direction of endstops when homing; 1=MAX, -1=MIN
const int X_HOME_DIR = -1;
const int Y_HOME_DIR = -1;
const int Z_HOME_DIR = -1;
//Thermistor settings:
//Uncomment for 100k thermistor
//#include "ThermistorTable_100k.h"
//#include "BedThermistorTable_100k.h"
//Uncomment for 200k thermistor
//#include "ThermistorTable_200k.h"
//#include "BedThermistorTable_200k.h"
//Identical thermistors on heater and bed - use this if you have no heated bed or if the thermistors are the same on both:
#include "ThermistorTable_200k.h"
//#include "ThermistorTable_100k.h"
//#include "ThermistorTable_mendelparts.h"
#define BNUMTEMPS NUMTEMPS
#define bedtemptable temptable
//Endstop Settings
#define ENDSTOPPULLUPS 1
const bool ENDSTOPS_INVERTING = false;
const bool min_software_endstops = false; //If true, axis won't move to coordinates less than zero.
const bool max_software_endstops = true; //If true, axis won't move to coordinates greater than the defined lengths below.
const int X_MAX_LENGTH = 220;
const int Y_MAX_LENGTH = 220;
const int Z_MAX_LENGTH = 100;
#define BAUDRATE 115200
//Uncomment the following line to enable debugging. You can better control debugging below the following line
//#define DEBUG

View file

@ -2,7 +2,7 @@
// Licence: GPL
#include "Sprinter.h"
#include "configuration.h"
#include "Configuration.h"
#include "pins.h"
#ifdef SDSUPPORT

View file

@ -1,85 +0,0 @@
#ifndef THERMISTORTABLE_H_
#define THERMISTORTABLE_H_
// Thermistor lookup table for RepRap Temperature Sensor Boards (http://make.rrrf.org/ts)
// See this page:
// http://dev.www.reprap.org/bin/view/Main/Thermistor
// for details of what goes in this table.
// Made with createTemperatureLookup.py (http://svn.reprap.org/trunk/reprap/firmware/Arduino/utilities/createTemperatureLookup.py)
// ./createTemperatureLookup.py --r0=100000 --t0=25 --r1=0 --r2=4700 --beta=4066 --max-adc=1023
// r0: 100000
// t0: 25
// r1: 0
// r2: 4700
// beta: 4066
// max adc: 1023
#define NUMTEMPS 61
const short temptable[NUMTEMPS][2] = {
{ 23 , 300 },
{ 25 , 295 },
{ 27 , 290 },
{ 28 , 285 },
{ 31 , 280 },
{ 33 , 275 },
{ 35 , 270 },
{ 38 , 265 },
{ 41 , 260 },
{ 44 , 255 },
{ 48 , 250 },
{ 52 , 245 },
{ 56 , 240 },
{ 61 , 235 },
{ 66 , 230 },
{ 71 , 225 },
{ 78 , 220 },
{ 84 , 215 },
{ 92 , 210 },
{ 100 , 205 },
{ 109 , 200 },
{ 120 , 195 },
{ 131 , 190 },
{ 143 , 185 },
{ 156 , 180 },
{ 171 , 175 },
{ 187 , 170 },
{ 205 , 165 },
{ 224 , 160 },
{ 245 , 155 },
{ 268 , 150 },
{ 293 , 145 },
{ 320 , 140 },
{ 348 , 135 },
{ 379 , 130 },
{ 411 , 125 },
{ 445 , 120 },
{ 480 , 115 },
{ 516 , 110 },
{ 553 , 105 },
{ 591 , 100 },
{ 628 , 95 },
{ 665 , 90 },
{ 702 , 85 },
{ 737 , 80 },
{ 770 , 75 },
{ 801 , 70 },
{ 830 , 65 },
{ 857 , 60 },
{ 881 , 55 },
{ 903 , 50 },
{ 922 , 45 },
{ 939 , 40 },
{ 954 , 35 },
{ 966 , 30 },
{ 977 , 25 },
{ 985 , 20 },
{ 993 , 15 },
{ 999 , 10 },
{ 1004 , 5 },
{ 1008 , 0 },
};
#endif

View file

@ -1,42 +0,0 @@
#ifndef THERMISTORTABLE_H_
#define THERMISTORTABLE_H_
// Thermistor lookup table for RepRap Temperature Sensor Boards (http://make.rrrf.org/ts)
// See this page:
// http://dev.www.reprap.org/bin/view/Main/Thermistor
// for details of what goes in this table.
// Made with createTemperatureLookup.py (http://svn.reprap.org/trunk/reprap/firmware/Arduino/utilities/createTemperatureLookup.py)
// ./createTemperatureLookup.py --r0=100000 --t0=25 --r1=0 --r2=4700 --beta=4066 --max-adc=1023
// r0: 100000
// t0: 25
// r1: 0
// r2: 4700
// beta: 4066
// max adc: 1023
#define NUMTEMPS 20
const short temptable[NUMTEMPS][2] = {
{1, 848},
{54, 275},
{107, 228},
{160, 202},
{213, 185},
{266, 171},
{319, 160},
{372, 150},
{425, 141},
{478, 133},
{531, 125},
{584, 118},
{637, 110},
{690, 103},
{743, 95},
{796, 86},
{849, 77},
{902, 65},
{955, 49},
{1008, 17}
};
#endif

View file

@ -1,45 +0,0 @@
#ifndef THERMISTORTABLE_H_
#define THERMISTORTABLE_H_
//thermistor table for mendel-parts thermistor
// Standardized R/T characteristic no. 8404
// RS thermistor 484-0183; EPCOS NTC
// Mendel-Parts thermistor G540 / G550
// Optimized for 100...300C working range.
// Max range: -20...300C
// Max reading error on Gen 6 electronics: ~+5%, -3% in 100 - 300C range.
#define NUMTEMPS 28
const short temptable[NUMTEMPS][2] = {
{1,864},
{21,300},
{25,290},
{29,280},
{33,270},
{39,260},
{46,250},
{54,240},
{64,230},
{75,220},
{90,210},
{107,200},
{128,190},
{154,180},
{184,170},
{221,160},
{265,150},
{316,140},
{375,130},
{441,120},
{513,110},
{588,100},
{734,80},
{856,60},
{938,40},
{986,20},
{1008,0},
{1018,-20}
};
#endif

View file

@ -23,6 +23,8 @@
* +----+
****************************************************************************************/
#if MOTHERBOARD == 0
#define KNOWN_BOARD 1
#ifndef __AVR_ATmega168__
#error Oops! Make sure you have 'Arduino Diecimila' selected from the boards menu.
#endif
@ -60,7 +62,7 @@
#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
#endif
@ -93,7 +95,9 @@
* +--------+
*
****************************************************************************************/
#elif MOTHERBOARD == 1
#if MOTHERBOARD == 1
#define KNOWN_BOARD 1
#ifndef __AVR_ATmega644P__
#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
#endif
@ -134,14 +138,16 @@
#endif
/****************************************************************************************
* RepRap Motherboard ****---NOOOOOO RS485/EXTRUDER CONTROLLER!!!!!!!!!!!!!!!!!---*******
*
****************************************************************************************/
#elif MOTHERBOARD == 2
#if MOTHERBOARD == 2
#define KNOWN_BOARD 1
#ifndef __AVR_ATmega644P__
#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
#endif
@ -192,13 +198,19 @@
#endif
/****************************************************************************************
* Arduino Mega pin assignment
*
****************************************************************************************/
#elif MOTHERBOARD == 3
#if MOTHERBOARD == 33
#define MOTHERBOARD 3
#define RAMPS_V_1_3
#endif
#if MOTHERBOARD == 3
#define KNOWN_BOARD 1
//////////////////FIX THIS//////////////
#ifndef __AVR_ATmega1280__
#ifndef __AVR_ATmega2560__
@ -210,7 +222,6 @@
// #define RAMPS_V_1_3
// #define RAMPS_V_1_0
#ifdef RAMPS_V_1_3
#define X_STEP_PIN 54
@ -307,12 +318,14 @@
#endif
#endif
/****************************************************************************************
* Duemilanove w/ ATMega328P pin assignment
*
****************************************************************************************/
#elif MOTHERBOARD == 4
#if MOTHERBOARD == 4
#define KNOWN_BOARD 1
#ifndef __AVR_ATmega328P__
#error Oops! Make sure you have 'Arduino Duemilanove w/ ATMega328' selected from the 'Tools -> Boards' menu.
#endif
@ -350,13 +363,14 @@
#define TEMP_0_PIN 0 // MUST USE ANALOG INPUT NUMBERING NOT DIGITAL OUTPUT NUMBERING!!!!!!!!!
#endif
/****************************************************************************************
* Gen6 pin assignment
*
****************************************************************************************/
#elif MOTHERBOARD == 5
#if MOTHERBOARD == 5
#define KNOWN_BOARD 1
#ifndef __AVR_ATmega644P__
#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
@ -393,7 +407,7 @@
#define SDPOWER -1
#define SDSS -1
#define SDSS 17
#define LED_PIN -1 //changed @ rkoeppl 20110410
#define TEMP_1_PIN -1 //changed @ rkoeppl 20110410
#define FAN_PIN -1 //changed @ rkoeppl 20110410
@ -406,12 +420,17 @@
#define TX_ENABLE_PIN 12
#define RX_ENABLE_PIN 13
#endif
/****************************************************************************************
* Sanguinololu pin assignment
*
****************************************************************************************/
#elif MOTHERBOARD == 6
#if MOTHERBOARD == 62
#define MOTHERBOARD 6
#define
#endif
#if MOTHERBOARD == 6
#define KNOWN_BOARD 1
#ifndef __AVR_ATmega644P__
#error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu.
#endif
@ -468,9 +487,9 @@
#define SDPOWER -1
#define SDSS 31
#else
#ifndef KNOWN_BOARD
#error Unknown MOTHERBOARD value in configuration.h
#endif
#endif

274
Sprinter/thermistortables.h Normal file
View file

@ -0,0 +1,274 @@
#ifndef THERMISTORTABLES_H_
#define THERMISTORTABLES_H_
#if THERMISTORHEATER == 1 //100k bed thermistor
#define NUMTEMPS 61
const short temptable[NUMTEMPS][2] = {
{ 23 , 300 },
{ 25 , 295 },
{ 27 , 290 },
{ 28 , 285 },
{ 31 , 280 },
{ 33 , 275 },
{ 35 , 270 },
{ 38 , 265 },
{ 41 , 260 },
{ 44 , 255 },
{ 48 , 250 },
{ 52 , 245 },
{ 56 , 240 },
{ 61 , 235 },
{ 66 , 230 },
{ 71 , 225 },
{ 78 , 220 },
{ 84 , 215 },
{ 92 , 210 },
{ 100 , 205 },
{ 109 , 200 },
{ 120 , 195 },
{ 131 , 190 },
{ 143 , 185 },
{ 156 , 180 },
{ 171 , 175 },
{ 187 , 170 },
{ 205 , 165 },
{ 224 , 160 },
{ 245 , 155 },
{ 268 , 150 },
{ 293 , 145 },
{ 320 , 140 },
{ 348 , 135 },
{ 379 , 130 },
{ 411 , 125 },
{ 445 , 120 },
{ 480 , 115 },
{ 516 , 110 },
{ 553 , 105 },
{ 591 , 100 },
{ 628 , 95 },
{ 665 , 90 },
{ 702 , 85 },
{ 737 , 80 },
{ 770 , 75 },
{ 801 , 70 },
{ 830 , 65 },
{ 857 , 60 },
{ 881 , 55 },
{ 903 , 50 },
{ 922 , 45 },
{ 939 , 40 },
{ 954 , 35 },
{ 966 , 30 },
{ 977 , 25 },
{ 985 , 20 },
{ 993 , 15 },
{ 999 , 10 },
{ 1004 , 5 },
{ 1008 , 0 } //safety
};
#elif THERMISTORHEATER == 2 //200k bed thermistor
#define NUMTEMPS 21
const short temptable[NUMTEMPS][2] = {
{1, 848},
{54, 275},
{107, 228},
{160, 202},
{213, 185},
{266, 171},
{319, 160},
{372, 150},
{425, 141},
{478, 133},
{531, 125},
{584, 118},
{637, 110},
{690, 103},
{743, 95},
{796, 86},
{849, 77},
{902, 65},
{955, 49},
{1008, 17},
{1020, 0} //safety
};
#elif THERMISTORHEATER == 3 //mendel-parts
#define NUMTEMPS 28
const short temptable[NUMTEMPS][2] = {
{1,864},
{21,300},
{25,290},
{29,280},
{33,270},
{39,260},
{46,250},
{54,240},
{64,230},
{75,220},
{90,210},
{107,200},
{128,190},
{154,180},
{184,170},
{221,160},
{265,150},
{316,140},
{375,130},
{441,120},
{513,110},
{588,100},
{734,80},
{856,60},
{938,40},
{986,20},
{1008,0},
{1018,-20}
};
#else
#error No thermistor table specified
#endif
#if THERMISTORHEATER==THERMISTORBED
#define BNUMTEMPS NUMTEMPS
#define bedtemptable temptable
#else
#if THERMISTORBED == 1 //100k bed thermistor
#define BNUMTEMPS 61
const short bedtemptable[BNUMTEMPS][2] = {
{ 23 , 300 },
{ 25 , 295 },
{ 27 , 290 },
{ 28 , 285 },
{ 31 , 280 },
{ 33 , 275 },
{ 35 , 270 },
{ 38 , 265 },
{ 41 , 260 },
{ 44 , 255 },
{ 48 , 250 },
{ 52 , 245 },
{ 56 , 240 },
{ 61 , 235 },
{ 66 , 230 },
{ 71 , 225 },
{ 78 , 220 },
{ 84 , 215 },
{ 92 , 210 },
{ 100 , 205 },
{ 109 , 200 },
{ 120 , 195 },
{ 131 , 190 },
{ 143 , 185 },
{ 156 , 180 },
{ 171 , 175 },
{ 187 , 170 },
{ 205 , 165 },
{ 224 , 160 },
{ 245 , 155 },
{ 268 , 150 },
{ 293 , 145 },
{ 320 , 140 },
{ 348 , 135 },
{ 379 , 130 },
{ 411 , 125 },
{ 445 , 120 },
{ 480 , 115 },
{ 516 , 110 },
{ 553 , 105 },
{ 591 , 100 },
{ 628 , 95 },
{ 665 , 90 },
{ 702 , 85 },
{ 737 , 80 },
{ 770 , 75 },
{ 801 , 70 },
{ 830 , 65 },
{ 857 , 60 },
{ 881 , 55 },
{ 903 , 50 },
{ 922 , 45 },
{ 939 , 40 },
{ 954 , 35 },
{ 966 , 30 },
{ 977 , 25 },
{ 985 , 20 },
{ 993 , 15 },
{ 999 , 10 },
{ 1004 , 5 },
{ 1008 , 0 } //safety
};
#elif THERMISTORBED == 2 //200k bed thermistor
#define BNUMTEMPS 21
const short bedtemptable[BNUMTEMPS][2] = {
{1, 848},
{54, 275},
{107, 228},
{160, 202},
{213, 185},
{266, 171},
{319, 160},
{372, 150},
{425, 141},
{478, 133},
{531, 125},
{584, 118},
{637, 110},
{690, 103},
{743, 95},
{796, 86},
{849, 77},
{902, 65},
{955, 49},
{1008, 17},
{1020, 0} //safety
};
#elif THERMISTORBED == 3 //mendel-parts
#define BNUMTEMPS 28
const short bedtemptable[BNUMTEMPS][2] = {
{1,864},
{21,300},
{25,290},
{29,280},
{33,270},
{39,260},
{46,250},
{54,240},
{64,230},
{75,220},
{90,210},
{107,200},
{128,190},
{154,180},
{184,170},
{221,160},
{265,150},
{316,140},
{375,130},
{441,120},
{513,110},
{588,100},
{734,80},
{856,60},
{938,40},
{986,20},
{1008,0},
{1018,-20}
};
#else
#error No bed thermistor table specified
#endif
#endif //if THERMISTORHEATER==THERMISTORBED
#endif //THERMISTORTABLES_H_