diff options
-rw-r--r-- | Sprinter/Configuration.h | 14 | ||||
-rw-r--r-- | Sprinter/Sd2PinMap.h | 2 | ||||
-rw-r--r-- | Sprinter/fastio.h | 4 | ||||
-rw-r--r-- | Sprinter/pins.h | 133 | ||||
-rw-r--r-- | Sprinter/thermistortables.h | 122 |
5 files changed, 262 insertions, 13 deletions
diff --git a/Sprinter/Configuration.h b/Sprinter/Configuration.h index 354e59d..aa676bd 100644 --- a/Sprinter/Configuration.h +++ b/Sprinter/Configuration.h @@ -9,6 +9,8 @@ // Gen6 = 5, // Sanguinololu up to 1.1 = 6 // Sanguinololu 1.2 and above = 62 +// Gen 3 Plus = 21 +// gen 3 Monolithic Electronics = 22 #define MOTHERBOARD 3 //// Thermistor settings: @@ -16,6 +18,8 @@ // 2 is 200k thermistor // 3 is mendel-parts thermistor // 4 is 10k thermistor +// 5 is ParCan supplied 104GT-2 100K +// 6 is EPCOS 100k #define THERMISTORHEATER 1 #define THERMISTORBED 1 @@ -29,7 +33,7 @@ float axis_steps_per_unit[] = {80, 80, 3200/1.25,700}; //float axis_steps_per_unit[] = {104.987, 104.987, 4545.4544, 1487}; //// Endstop Settings -#define ENDSTOPPULLUPS 1 // Comment this out (using // at the start of the line) to disable the endstop pullup resistors +#define ENDSTOPPULLUPS // 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 //If your axes are only moving in one direction, make sure the endstops are connected properly. @@ -39,7 +43,7 @@ const bool ENDSTOPS_INVERTING = false; //set to true to invert the logic of the #define BAUDRATE 115200 // Comment out (using // at the start of the line) to disable SD support: -#define SDSUPPORT 1 +#define SDSUPPORT //// ADVANCED SETTINGS - to tweak parameters @@ -91,7 +95,7 @@ bool axis_relative_modes[] = {false, false, false, false}; //#define STEP_DELAY_RATIO 0.25 // Comment this to disable ramp acceleration -#define RAMP_ACCELERATION 1 +#define RAMP_ACCELERATION //// Acceleration settings #ifdef RAMP_ACCELERATION @@ -111,7 +115,7 @@ char uuid[] = "00000000-0000-0000-0000-000000000000"; //// PID settings: // Uncomment the following line to enable PID support. This is untested and could be disastrous. Be careful. -//#define PIDTEMP 1 +//#define PIDTEMP #ifdef PIDTEMP #define PID_INTEGRAL_DRIVE_MAX 220 #define PID_PGAIN 180 //100 is 1.0 @@ -137,7 +141,7 @@ char uuid[] = "00000000-0000-0000-0000-000000000000"; #define DISABLE_CHECK_DURING_TRAVEL 1000 //// Temperature smoothing - only uncomment this if your temp readings are noisy (Gen6 without EvdZ's 5V hack) -//#define SMOOTHING 1 +//#define SMOOTHING //#define SMOOTHFACTOR 16 //best to use a power of two here - determines how many values are averaged together by the smoothing algorithm //// Experimental watchdog and minimal temp diff --git a/Sprinter/Sd2PinMap.h b/Sprinter/Sd2PinMap.h index 4bd75a3..55518ed 100644 --- a/Sprinter/Sd2PinMap.h +++ b/Sprinter/Sd2PinMap.h @@ -117,7 +117,7 @@ static const pin_map_t digitalPinMap[] = { {&DDRK, &PINK, &PORTK, 7} // K7 69
};
//------------------------------------------------------------------------------
-#elif defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644__)
+#elif defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644__) || defined(__AVR_ATmega1284P__)
// Sanguino
// Two Wire (aka I2C) ports
diff --git a/Sprinter/fastio.h b/Sprinter/fastio.h index 1d28d05..73410cb 100644 --- a/Sprinter/fastio.h +++ b/Sprinter/fastio.h @@ -400,7 +400,7 @@ pins #define PD7_PWM NULL #endif /* _AVR_ATmega{168,328,328P}__ */ -#if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644PA__) +#if defined (__AVR_ATmega644__) || defined (__AVR_ATmega644P__) || defined (__AVR_ATmega644PA__) || defined(__AVR_ATmega1284P__) // UART #define RXD DIO8 #define TXD DIO9 @@ -901,7 +901,7 @@ pins #define PD7_WPORT PORTD #define PD7_DDR DDRD #define PD7_PWM &OCR2A -#endif /* _AVR_ATmega{644,644P,644PA}__ */ +#endif /* _AVR_ATmega{644,644P,644PA,1284P}__ */ #if defined (__AVR_ATmega1280__) || defined (__AVR_ATmega2560__) // UART diff --git a/Sprinter/pins.h b/Sprinter/pins.h index 9c38bed..c0cd697 100644 --- a/Sprinter/pins.h +++ b/Sprinter/pins.h @@ -98,7 +98,7 @@ #if MOTHERBOARD == 1 #define KNOWN_BOARD 1 -#ifndef __AVR_ATmega644P__ +#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega1284P__) #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. #endif @@ -148,7 +148,7 @@ #if MOTHERBOARD == 2 #define KNOWN_BOARD 1 -#ifndef __AVR_ATmega644P__ +#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega1284P__) #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. #endif @@ -201,6 +201,129 @@ #endif /**************************************************************************************** +* Gen3 PLUS +* +****************************************************************************************/ +#if MOTHERBOARD == 21 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ + #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + + +//x axis pins +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_ENABLE_PIN 19 +#define X_MIN_PIN 20 +#define X_MAX_PIN -1 + +//y axis pins +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_ENABLE_PIN 24 +#define Y_MIN_PIN 25 +#define Y_MAX_PIN -1 + +//z axis pins +#define Z_STEP_PIN 27 +#define Z_DIR_PIN 28 +#define Z_ENABLE_PIN 29 +#define Z_MIN_PIN 30 +#define Z_MAX_PIN -1 + +#define E_DIR_PIN 21 +#define E_STEP_PIN 17 +#define E_ENABLE_PIN 13 + +//heaters + +//pin for hot end heater +#define HEATER_0_PIN 12 + +//Pin for heated bed heater +#define HEATER_1_PIN 5 + + +//pin for debugging. +#define DEBUG_PIN -1 + +//SD card pin + +#define SDSS 4 + +#define SDPOWER -1 +#define FAN_PIN -1 +#define TEMP_0_PIN 0 +#define TEMP_1_PIN 5 +#define LED_PIN -1 + +//pin for controlling the PSU. +#define PS_ON_PIN 14 + +#endif + +/**************************************************************************************** +* Gen3 Monolithic Electronics +* +****************************************************************************************/ +#if MOTHERBOARD == 22 +#define KNOWN_BOARD 1 + +#ifndef __AVR_ATmega644P__ + #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. +#endif + +#define DEBUG_PIN 0 + + +// x axis +#define X_STEP_PIN 15 +#define X_DIR_PIN 18 +#define X_MIN_PIN 20 +#define X_ENABLE_PIN 24 //actually uses Y_enable_pin +#define X_MAX_PIN -1 + +// y axes +#define Y_STEP_PIN 23 +#define Y_DIR_PIN 22 +#define Y_MIN_PIN 25 +#define Y_ENABLE_PIN 24 //shared with X_enable_pin +#define Y_MAX_PIN -1 + +// z axes +#define Z_STEP_PIN 27 +#define Z_DIR_PIN 28 +#define Z_MIN_PIN 30 +#define Z_ENABLE_PIN 29 +#define Z_MAX_PIN -1 + +//extruder pins +#define E_STEP_PIN 12 +#define E_DIR_PIN 17 +#define E_ENABLE_PIN 3 +#define HEATER_0_PIN 16 +#define TEMP_0_PIN 0 + +#define FAN_PIN -1 + +//bed pins +#define HEATER_1_PIN -1 +#define TEMP_1_PIN -1 + + +#define SDSS -1 +#define SDPOWER -1 +#define LED_PIN -1 + +//pin for controlling the PSU. +#define PS_ON_PIN 14 + +#endif + + +/**************************************************************************************** * Arduino Mega pin assignment * ****************************************************************************************/ @@ -261,7 +384,7 @@ #define HEATER_1_PIN 8 #define TEMP_0_PIN 13 // ANALOG NUMBERING #define TEMP_1_PIN 14 // ANALOG NUMBERING - +#define TEMP_2_PIN 15 // ANALOG NUMBERING #else // RAMPS_V_1_1 or RAMPS_V_1_2 as default @@ -376,7 +499,7 @@ #if MOTHERBOARD == 5 #define KNOWN_BOARD 1 -#ifndef __AVR_ATmega644P__ +#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega1284P__) #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. #endif @@ -435,7 +558,7 @@ #endif #if MOTHERBOARD == 6 #define KNOWN_BOARD 1 -#ifndef __AVR_ATmega644P__ +#if !defined(__AVR_ATmega644P__) && !defined(__AVR_ATmega1284P__) #error Oops! Make sure you have 'Sanguino' selected from the 'Tools -> Boards' menu. #endif diff --git a/Sprinter/thermistortables.h b/Sprinter/thermistortables.h index de9aee6..67fb666 100644 --- a/Sprinter/thermistortables.h +++ b/Sprinter/thermistortables.h @@ -157,6 +157,116 @@ short temptable_4[NUMTEMPS_4][2] = { }; #endif +#if (THERMISTORHEATER == 5) || (THERMISTORBED == 5) //100k ParCan thermistor (104GT-2) + +#define NUMTEMPS_5 61 +const short temptable_5[NUMTEMPS_5][2] = { +{1, 713}, +{18, 316}, +{35, 266}, +{52, 239}, +{69, 221}, +{86, 208}, +{103, 197}, +{120, 188}, +{137, 181}, +{154, 174}, +{171, 169}, +{188, 163}, +{205, 159}, +{222, 154}, +{239, 150}, +{256, 147}, +{273, 143}, +{290, 140}, +{307, 136}, +{324, 133}, +{341, 130}, +{358, 128}, +{375, 125}, +{392, 122}, +{409, 120}, +{426, 117}, +{443, 115}, +{460, 112}, +{477, 110}, +{494, 108}, +{511, 106}, +{528, 103}, +{545, 101}, +{562, 99}, +{579, 97}, +{596, 95}, +{613, 92}, +{630, 90}, +{647, 88}, +{664, 86}, +{681, 84}, +{698, 81}, +{715, 79}, +{732, 77}, +{749, 75}, +{766, 72}, +{783, 70}, +{800, 67}, +{817, 64}, +{834, 61}, +{851, 58}, +{868, 55}, +{885, 52}, +{902, 48}, +{919, 44}, +{936, 40}, +{953, 34}, +{970, 28}, +{987, 20}, +{1004, 8}, +{1021, 0} +}; +#endif + +#if (THERMISTORHEATER == 6) || (THERMISTORBED == 6) // 100k Epcos thermistor +#define NUMTEMPS_6 36 +const short temptable_6[NUMTEMPS_6][2] = { + {28, 250}, + {31, 245}, + {35, 240}, + {39, 235}, + {42, 230}, + {44, 225}, + {49, 220}, + {53, 215}, + {62, 210}, + {73, 205}, + {72, 200}, + {94, 190}, + {102, 185}, + {116, 170}, + {143, 160}, + {183, 150}, + {223, 140}, + {270, 130}, + {318, 120}, + {383, 110}, + {413, 105}, + {439, 100}, + {484, 95}, + {513, 90}, + {607, 80}, + {664, 70}, + {781, 60}, + {810, 55}, + {849, 50}, + {914, 45}, + {914, 40}, + {935, 35}, + {954, 30}, + {970, 25}, + {978, 22}, + {1008, 3} +}; +#endif + #if THERMISTORHEATER == 1 #define NUMTEMPS NUMTEMPS_1 #define temptable temptable_1 @@ -169,6 +279,12 @@ short temptable_4[NUMTEMPS_4][2] = { #elif THERMISTORHEATER == 4 #define NUMTEMPS NUMTEMPS_4 #define temptable temptable_4 +#elif THERMISTORHEATER == 5 +#define NUMTEMPS NUMTEMPS_5 +#define temptable temptable_5 +#elif THERMISTORHEATER == 6 +#define NUMTEMPS NUMTEMPS_6 +#define temptable temptable_6 #elif defined HEATER_USES_THERMISTOR #error No heater thermistor table specified #endif @@ -184,6 +300,12 @@ short temptable_4[NUMTEMPS_4][2] = { #elif THERMISTORBED == 4 #define BNUMTEMPS NUMTEMPS_4 #define bedtemptable temptable_4 +#elif THERMISTORBED == 5 +#define BNUMTEMPS NUMTEMPS_5 +#define bedtemptable temptable_5 +#elif THERMISTORBED == 6 +#define BNUMTEMPS NUMTEMPS_6 +#define bedtemptable temptable_6 #elif defined BED_USES_THERMISTOR #error No bed thermistor table specified #endif |