| 
						
					 | 
					 | 
					@@ -8,7 +8,7 @@
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//===========================================================================
 | 
					 | 
					 | 
					 | 
					//===========================================================================
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					/*
 | 
					 | 
					 | 
					 | 
					/*
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					Here are some standard links for getting your machine calibrated:
 | 
					 | 
					 | 
					 | 
					Here are some standard links for getting your machine calibrated:
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 * http://reprap.org/wiki/Calibration 
 | 
					 | 
					 | 
					 | 
					 * http://reprap.org/wiki/Calibration
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 * http://youtu.be/wAL9d7FgInk
 | 
					 | 
					 | 
					 | 
					 * http://youtu.be/wAL9d7FgInk
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 * http://calculator.josefprusa.cz
 | 
					 | 
					 | 
					 | 
					 * http://calculator.josefprusa.cz
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 * http://reprap.org/wiki/Triffid_Hunter%27s_Calibration_Guide
 | 
					 | 
					 | 
					 | 
					 * http://reprap.org/wiki/Triffid_Hunter%27s_Calibration_Guide
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -127,10 +127,15 @@ Here are some standard links for getting your machine calibrated:
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// 1010 is Pt1000 with 1k pullup (non standard)
 | 
					 | 
					 | 
					 | 
					// 1010 is Pt1000 with 1k pullup (non standard)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// 147 is Pt100 with 4k7 pullup
 | 
					 | 
					 | 
					 | 
					// 147 is Pt100 with 4k7 pullup
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// 110 is Pt100 with 1k pullup (non standard)
 | 
					 | 
					 | 
					 | 
					// 110 is Pt100 with 1k pullup (non standard)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// :{ 0: "Not used", 4: "10k !! do not use for a hotend. Bad resolution at high temp. !!", 1: "100k / 4.7k - EPCOS", 51: "100k / 1k - EPCOS", 6: "100k / 4.7k EPCOS - Not as accurate as Table 1", 5: "100K / 4.7k - ATC Semitec 104GT-2 (Used in ParCan & J-Head)", 7: "100k / 4.7k Honeywell 135-104LAG-J01", 71: "100k / 4.7k Honeywell 135-104LAF-J01", 8: "100k / 4.7k 0603 SMD Vishay NTCS0603E3104FXT", 9: "100k / 4.7k GE Sensing AL03006-58.2K-97-G1", 10: "100k / 4.7k RS 198-961", 11: "100k / 4.7k beta 3950 1%", 12: "100k / 4.7k 0603 SMD Vishay NTCS0603E3104FXT (calibrated for Makibox hot bed)", 13: "100k Hisens 3950  1% up to 300°C for hotend 'Simple ONE ' & hotend 'All In ONE'", 60: "100k Maker's Tool Works Kapton Bed Thermistor beta=3950", 55: "100k / 1k - ATC Semitec 104GT-2 (Used in ParCan & J-Head)", 2: "200k / 4.7k - ATC Semitec 204GT-2", 52: "200k / 1k - ATC Semitec 204GT-2", '-2': "Thermocouple + MAX6675 (only for sensor 0)", '-1': "Thermocouple + AD595", 3: "Mendel-parts / 4.7k", 1047: "Pt1000 / 4.7k", 1010: "Pt1000 / 1k (non standard)", 20: "PT100 (Ultimainboard V2.x)", 147: "Pt100 / 4.7k", 110: "Pt100 / 1k (non-standard)" }
 | 
					 | 
					 | 
					 | 
					// 998 and 999 are Dummy Tables. They will ALWAYS read 25°C or the temperature defined below. 
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					//     Use it for Testing or Development purposes. NEVER for production machine.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					//     #define DUMMY_THERMISTOR_998_VALUE 25
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					//     #define DUMMY_THERMISTOR_999_VALUE 100
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					// :{ 0: "Not used", 4: "10k !! do not use for a hotend. Bad resolution at high temp. !!", 1: "100k / 4.7k - EPCOS", 51: "100k / 1k - EPCOS", 6: "100k / 4.7k EPCOS - Not as accurate as Table 1", 5: "100K / 4.7k - ATC Semitec 104GT-2 (Used in ParCan & J-Head)", 7: "100k / 4.7k Honeywell 135-104LAG-J01", 71: "100k / 4.7k Honeywell 135-104LAF-J01", 8: "100k / 4.7k 0603 SMD Vishay NTCS0603E3104FXT", 9: "100k / 4.7k GE Sensing AL03006-58.2K-97-G1", 10: "100k / 4.7k RS 198-961", 11: "100k / 4.7k beta 3950 1%", 12: "100k / 4.7k 0603 SMD Vishay NTCS0603E3104FXT (calibrated for Makibox hot bed)", 13: "100k Hisens 3950  1% up to 300°C for hotend 'Simple ONE ' & hotend 'All In ONE'", 60: "100k Maker's Tool Works Kapton Bed Thermistor beta=3950", 55: "100k / 1k - ATC Semitec 104GT-2 (Used in ParCan & J-Head)", 2: "200k / 4.7k - ATC Semitec 204GT-2", 52: "200k / 1k - ATC Semitec 204GT-2", '-2': "Thermocouple + MAX6675 (only for sensor 0)", '-1': "Thermocouple + AD595", 3: "Mendel-parts / 4.7k", 1047: "Pt1000 / 4.7k", 1010: "Pt1000 / 1k (non standard)", 20: "PT100 (Ultimainboard V2.x)", 147: "Pt100 / 4.7k", 110: "Pt100 / 1k (non-standard)", 998: "Dummy 1", 999: "Dummy 2" }
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define TEMP_SENSOR_0 -1
 | 
					 | 
					 | 
					 | 
					#define TEMP_SENSOR_0 -1
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define TEMP_SENSOR_1 -1
 | 
					 | 
					 | 
					 | 
					#define TEMP_SENSOR_1 -1
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define TEMP_SENSOR_2 0
 | 
					 | 
					 | 
					 | 
					#define TEMP_SENSOR_2 0
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#define TEMP_SENSOR_3 0
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define TEMP_SENSOR_BED 0
 | 
					 | 
					 | 
					 | 
					#define TEMP_SENSOR_BED 0
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// This makes temp sensor 1 a redundant sensor for sensor 0. If the temperatures difference between these sensors is to high the print will be aborted.
 | 
					 | 
					 | 
					 | 
					// This makes temp sensor 1 a redundant sensor for sensor 0. If the temperatures difference between these sensors is to high the print will be aborted.
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -148,6 +153,7 @@ Here are some standard links for getting your machine calibrated:
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define HEATER_0_MINTEMP 5
 | 
					 | 
					 | 
					 | 
					#define HEATER_0_MINTEMP 5
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define HEATER_1_MINTEMP 5
 | 
					 | 
					 | 
					 | 
					#define HEATER_1_MINTEMP 5
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define HEATER_2_MINTEMP 5
 | 
					 | 
					 | 
					 | 
					#define HEATER_2_MINTEMP 5
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#define HEATER_3_MINTEMP 5
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define BED_MINTEMP 5
 | 
					 | 
					 | 
					 | 
					#define BED_MINTEMP 5
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// When temperature exceeds max temp, your heater will be switched off.
 | 
					 | 
					 | 
					 | 
					// When temperature exceeds max temp, your heater will be switched off.
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -156,6 +162,7 @@ Here are some standard links for getting your machine calibrated:
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define HEATER_0_MAXTEMP 275
 | 
					 | 
					 | 
					 | 
					#define HEATER_0_MAXTEMP 275
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define HEATER_1_MAXTEMP 275
 | 
					 | 
					 | 
					 | 
					#define HEATER_1_MAXTEMP 275
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define HEATER_2_MAXTEMP 275
 | 
					 | 
					 | 
					 | 
					#define HEATER_2_MAXTEMP 275
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#define HEATER_3_MAXTEMP 275
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define BED_MAXTEMP 150
 | 
					 | 
					 | 
					 | 
					#define BED_MAXTEMP 150
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// If your bed has low resistance e.g. .6 ohm and throws the fuse you can duty cycle it to reduce the
 | 
					 | 
					 | 
					 | 
					// If your bed has low resistance e.g. .6 ohm and throws the fuse you can duty cycle it to reduce the
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -300,9 +307,12 @@ your extruder heater takes 2 minutes to hit the target on heating.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// @section machine
 | 
					 | 
					 | 
					 | 
					// @section machine
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// Uncomment the following line to enable CoreXY kinematics
 | 
					 | 
					 | 
					 | 
					// Uncomment this option to enable CoreXY kinematics
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// #define COREXY
 | 
					 | 
					 | 
					 | 
					// #define COREXY
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					// Enable this option for Toshiba steppers
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					// #define CONFIG_STEPPERS_TOSHIBA
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// @section homing
 | 
					 | 
					 | 
					 | 
					// @section homing
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// coarse Endstop Settings
 | 
					 | 
					 | 
					 | 
					// coarse Endstop Settings
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -337,13 +347,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//#define DISABLE_MAX_ENDSTOPS
 | 
					 | 
					 | 
					 | 
					//#define DISABLE_MAX_ENDSTOPS
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//#define DISABLE_MIN_ENDSTOPS
 | 
					 | 
					 | 
					 | 
					//#define DISABLE_MIN_ENDSTOPS
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// @section hidden
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// Disable max endstops for compatibility with endstop checking routine
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#if defined(COREXY) && !defined(DISABLE_MAX_ENDSTOPS)
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #define DISABLE_MAX_ENDSTOPS
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#endif
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// @section machine
 | 
					 | 
					 | 
					 | 
					// @section machine
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
 | 
					 | 
					 | 
					 | 
					// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -366,17 +369,17 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// @section machine
 | 
					 | 
					 | 
					 | 
					// @section machine
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
 | 
					 | 
					 | 
					 | 
					// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define INVERT_X_DIR true     // Mendel: false
 | 
					 | 
					 | 
					 | 
					#define INVERT_X_DIR true     // for Mendel set to false, for Orca set to true
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define INVERT_Y_DIR false    // Mendel: true
 | 
					 | 
					 | 
					 | 
					#define INVERT_Y_DIR false    // for Mendel set to true, for Orca set to false
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define INVERT_Z_DIR true     // Mendel: false
 | 
					 | 
					 | 
					 | 
					#define INVERT_Z_DIR true     // for Mendel set to false, for Orca set to true
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// @section extruder
 | 
					 | 
					 | 
					 | 
					// @section extruder
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// For direct drive extruder v9 set to true, for geared extruder set to false.
 | 
					 | 
					 | 
					 | 
					// For direct drive extruder v9 set to true, for geared extruder set to false.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define INVERT_E0_DIR false   
 | 
					 | 
					 | 
					 | 
					#define INVERT_E0_DIR false   // Direct drive extruder v9: true. Geared extruder: false
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define INVERT_E1_DIR false
 | 
					 | 
					 | 
					 | 
					#define INVERT_E1_DIR false   // Direct drive extruder v9: true. Geared extruder: false
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define INVERT_E2_DIR false
 | 
					 | 
					 | 
					 | 
					#define INVERT_E2_DIR false   // Direct drive extruder v9: true. Geared extruder: false
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define INVERT_E3_DIR false
 | 
					 | 
					 | 
					 | 
					#define INVERT_E3_DIR false   // Direct drive extruder v9: true. Geared extruder: false
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// @section homing
 | 
					 | 
					 | 
					 | 
					// @section homing
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -418,40 +421,38 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#ifdef ENABLE_AUTO_BED_LEVELING
 | 
					 | 
					 | 
					 | 
					#ifdef ENABLE_AUTO_BED_LEVELING
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// There are 2 different ways to pick the X and Y locations to probe:
 | 
					 | 
					 | 
					 | 
					  // There are 2 different ways to specify probing locations
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					  //
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//  - "grid" mode
 | 
					 | 
					 | 
					 | 
					  // - "grid" mode
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//    Probe every point in a rectangular grid
 | 
					 | 
					 | 
					 | 
					  //   Probe several points in a rectangular grid.
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//    You must specify the rectangle, and the density of sample points
 | 
					 | 
					 | 
					 | 
					  //   You specify the rectangle and the density of sample points.
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//    This mode is preferred because there are more measurements.
 | 
					 | 
					 | 
					 | 
					  //   This mode is preferred because there are more measurements.
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//    It used to be called ACCURATE_BED_LEVELING but "grid" is more descriptive
 | 
					 | 
					 | 
					 | 
					  //
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					  // - "3-point" mode
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//  - "3-point" mode
 | 
					 | 
					 | 
					 | 
					  //   Probe 3 arbitrary points on the bed (that aren't colinear)
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//    Probe 3 arbitrary points on the bed (that aren't colinear)
 | 
					 | 
					 | 
					 | 
					  //   You specify the XY coordinates of all 3 points.
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//    You must specify the X & Y coordinates of all 3 points
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					  // Enable this to sample the bed in a grid (least squares solution)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					  // Note: this feature generates 10KB extra code size
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #define AUTO_BED_LEVELING_GRID
 | 
					 | 
					 | 
					 | 
					  #define AUTO_BED_LEVELING_GRID
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  // with AUTO_BED_LEVELING_GRID, the bed is sampled in a
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  // AUTO_BED_LEVELING_GRID_POINTSxAUTO_BED_LEVELING_GRID_POINTS grid
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  // and least squares solution is calculated
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  // Note: this feature occupies 10'206 byte
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #ifdef AUTO_BED_LEVELING_GRID
 | 
					 | 
					 | 
					 | 
					  #ifdef AUTO_BED_LEVELING_GRID
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    // set the rectangle in which to probe
 | 
					 | 
					 | 
					 | 
					    // The edges of the rectangle in which to probe
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    #define LEFT_PROBE_BED_POSITION 15
 | 
					 | 
					 | 
					 | 
					    #define LEFT_PROBE_BED_POSITION 15
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    #define RIGHT_PROBE_BED_POSITION 170
 | 
					 | 
					 | 
					 | 
					    #define RIGHT_PROBE_BED_POSITION 170
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    #define BACK_PROBE_BED_POSITION 180
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    #define FRONT_PROBE_BED_POSITION 20
 | 
					 | 
					 | 
					 | 
					    #define FRONT_PROBE_BED_POSITION 20
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					    #define BACK_PROBE_BED_POSITION 170
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					     // set the number of grid points per dimension
 | 
					 | 
					 | 
					 | 
					    // Set the number of grid points per dimension
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					     // I wouldn't see a reason to go above 3 (=9 probing points on the bed)
 | 
					 | 
					 | 
					 | 
					    // You probably don't need more than 3 (squared=9)
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    #define AUTO_BED_LEVELING_GRID_POINTS 2
 | 
					 | 
					 | 
					 | 
					    #define AUTO_BED_LEVELING_GRID_POINTS 2
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #else  // not AUTO_BED_LEVELING_GRID
 | 
					 | 
					 | 
					 | 
					  #else  // !AUTO_BED_LEVELING_GRID
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    // with no grid, just probe 3 arbitrary points.  A simple cross-product
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    // is used to esimate the plane of the print bed
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					      // Arbitrary points to probe. A simple cross-product
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					      // is used to estimate the plane of the bed.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      #define ABL_PROBE_PT_1_X 15
 | 
					 | 
					 | 
					 | 
					      #define ABL_PROBE_PT_1_X 15
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      #define ABL_PROBE_PT_1_Y 180
 | 
					 | 
					 | 
					 | 
					      #define ABL_PROBE_PT_1_Y 180
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      #define ABL_PROBE_PT_2_X 15
 | 
					 | 
					 | 
					 | 
					      #define ABL_PROBE_PT_2_X 15
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -462,11 +463,11 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #endif // AUTO_BED_LEVELING_GRID
 | 
					 | 
					 | 
					 | 
					  #endif // AUTO_BED_LEVELING_GRID
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  // these are the offsets to the probe relative to the extruder tip (Hotend - Probe)
 | 
					 | 
					 | 
					 | 
					  // Offsets to the probe relative to the extruder tip (Hotend - Probe)
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  // X and Y offsets must be integers
 | 
					 | 
					 | 
					 | 
					  // X and Y offsets must be integers
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #define X_PROBE_OFFSET_FROM_EXTRUDER -25
 | 
					 | 
					 | 
					 | 
					  #define X_PROBE_OFFSET_FROM_EXTRUDER -25     // -left  +right
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #define Y_PROBE_OFFSET_FROM_EXTRUDER -29
 | 
					 | 
					 | 
					 | 
					  #define Y_PROBE_OFFSET_FROM_EXTRUDER -29     // -front +behind
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35
 | 
					 | 
					 | 
					 | 
					  #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35  // -below (always!)
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #define Z_RAISE_BEFORE_HOMING 4       // (in mm) Raise Z before homing (G28) for Probe Clearance.
 | 
					 | 
					 | 
					 | 
					  #define Z_RAISE_BEFORE_HOMING 4       // (in mm) Raise Z before homing (G28) for Probe Clearance.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					                                        // Be sure you have this distance over your Z_MAX_POS in case
 | 
					 | 
					 | 
					 | 
					                                        // Be sure you have this distance over your Z_MAX_POS in case
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -503,29 +504,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #endif
 | 
					 | 
					 | 
					 | 
					  #endif
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #ifdef AUTO_BED_LEVELING_GRID	// Check if Probe_Offset * Grid Points is greater than Probing Range
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    #if X_PROBE_OFFSET_FROM_EXTRUDER < 0
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      #if (-(X_PROBE_OFFSET_FROM_EXTRUDER * (AUTO_BED_LEVELING_GRID_POINTS-1)) >= (RIGHT_PROBE_BED_POSITION - LEFT_PROBE_BED_POSITION))
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						     #error "The X axis probing range is not enough to fit all the points defined in AUTO_BED_LEVELING_GRID_POINTS"
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						  #endif
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						#else
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      #if ((X_PROBE_OFFSET_FROM_EXTRUDER * (AUTO_BED_LEVELING_GRID_POINTS-1)) >= (RIGHT_PROBE_BED_POSITION - LEFT_PROBE_BED_POSITION))
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						     #error "The X axis probing range is not enough to fit all the points defined in AUTO_BED_LEVELING_GRID_POINTS"
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						  #endif
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						#endif
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    #if Y_PROBE_OFFSET_FROM_EXTRUDER < 0
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      #if (-(Y_PROBE_OFFSET_FROM_EXTRUDER * (AUTO_BED_LEVELING_GRID_POINTS-1)) >= (BACK_PROBE_BED_POSITION - FRONT_PROBE_BED_POSITION))
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						     #error "The Y axis probing range is not enough to fit all the points defined in AUTO_BED_LEVELING_GRID_POINTS"
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						  #endif
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						#else
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					      #if ((Y_PROBE_OFFSET_FROM_EXTRUDER * (AUTO_BED_LEVELING_GRID_POINTS-1)) >= (BACK_PROBE_BED_POSITION - FRONT_PROBE_BED_POSITION))
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						     #error "The Y axis probing range is not enough to fit all the points defined in AUTO_BED_LEVELING_GRID_POINTS"
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						  #endif
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						#endif
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  #endif
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					  
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#endif // ENABLE_AUTO_BED_LEVELING
 | 
					 | 
					 | 
					 | 
					#endif // ENABLE_AUTO_BED_LEVELING
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -609,9 +587,13 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define ABS_PREHEAT_HPB_TEMP 100
 | 
					 | 
					 | 
					 | 
					#define ABS_PREHEAT_HPB_TEMP 100
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define ABS_PREHEAT_FAN_SPEED 255   // Insert Value between 0 and 255
 | 
					 | 
					 | 
					 | 
					#define ABS_PREHEAT_FAN_SPEED 255   // Insert Value between 0 and 255
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					//==============================LCD and SD support=============================
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// @section lcd
 | 
					 | 
					 | 
					 | 
					// @section lcd
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//LCD and SD support
 | 
					 | 
					 | 
					 | 
					// Define your display language below. Replace (en) with your language code and uncomment.
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					// en, pl, fr, de, es, ru, it, pt, pt-br, fi, an, nl, ca, eu
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					// See also language.h
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					//#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// Character based displays can have different extended charsets.
 | 
					 | 
					 | 
					 | 
					// Character based displays can have different extended charsets.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define DISPLAY_CHARSET_HD44780_JAPAN     // "ääööüüß23°"
 | 
					 | 
					 | 
					 | 
					#define DISPLAY_CHARSET_HD44780_JAPAN     // "ääööüüß23°"
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -629,10 +611,20 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//#define LCD_FEEDBACK_FREQUENCY_HZ 1000	// this is the tone frequency the buzzer plays when on UI feedback. ie Screen Click
 | 
					 | 
					 | 
					 | 
					//#define LCD_FEEDBACK_FREQUENCY_HZ 1000	// this is the tone frequency the buzzer plays when on UI feedback. ie Screen Click
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 100 // the duration the buzzer plays the UI feedback sound. ie Screen Click
 | 
					 | 
					 | 
					 | 
					//#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 100 // the duration the buzzer plays the UI feedback sound. ie Screen Click
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					// PanelOne from T3P3 (via RAMPS 1.4 AUX2/AUX3)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					// http://reprap.org/wiki/PanelOne
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					//#define PANEL_ONE
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// The MaKr3d Makr-Panel with graphic controller and SD support
 | 
					 | 
					 | 
					 | 
					// The MaKr3d Makr-Panel with graphic controller and SD support
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// http://reprap.org/wiki/MaKr3d_MaKrPanel
 | 
					 | 
					 | 
					 | 
					// http://reprap.org/wiki/MaKr3d_MaKrPanel
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//#define MAKRPANEL
 | 
					 | 
					 | 
					 | 
					//#define MAKRPANEL
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					// The Panucatt Devices Viki 2.0 and mini Viki with Graphic LCD
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					// http://panucatt.com
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					// ==> REMEMBER TO INSTALL U8glib to your ARDUINO library folder: http://code.google.com/p/u8glib/wiki/u8glib
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					//#define VIKI2
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					//#define miniVIKI
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// The RepRapDiscount Smart Controller (white PCB)
 | 
					 | 
					 | 
					 | 
					// The RepRapDiscount Smart Controller (white PCB)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// http://reprap.org/wiki/RepRapDiscount_Smart_Controller
 | 
					 | 
					 | 
					 | 
					// http://reprap.org/wiki/RepRapDiscount_Smart_Controller
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					//#define REPRAP_DISCOUNT_SMART_CONTROLLER
 | 
					 | 
					 | 
					 | 
					//#define REPRAP_DISCOUNT_SMART_CONTROLLER
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					@@ -668,6 +660,26 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 #define DEFAULT_LCD_CONTRAST 17
 | 
					 | 
					 | 
					 | 
					 #define DEFAULT_LCD_CONTRAST 17
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#endif
 | 
					 | 
					 | 
					 | 
					#endif
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#if defined(miniVIKI) || defined(VIKI2)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 #define ULTRA_LCD  //general LCD support, also 16x2
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 #define DOGLCD  // Support for SPI LCD 128x64 (Controller ST7565R graphic Display Family)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 #define ULTIMAKERCONTROLLER //as available from the Ultimaker online store.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					  #ifdef miniVIKI
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					   #define DEFAULT_LCD_CONTRAST 95
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					  #else
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					   #define DEFAULT_LCD_CONTRAST 40
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					  #endif
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					  
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 #define ENCODER_PULSES_PER_STEP 4
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 #define ENCODER_STEPS_PER_MENU_ITEM 1
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#endif
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#if defined (PANEL_ONE)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 #define SDSUPPORT
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 #define ULTIMAKERCONTROLLER
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					#endif
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#if defined (REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER)
 | 
					 | 
					 | 
					 | 
					#if defined (REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 #define DOGLCD
 | 
					 | 
					 | 
					 | 
					 #define DOGLCD
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 #define U8GLIB_ST7920
 | 
					 | 
					 | 
					 | 
					 #define U8GLIB_ST7920
 | 
				
			
			
		
	
	
		
		
			
				
					
					| 
						
					 | 
					 | 
					 
 |