|
@@ -8,7 +8,7 @@
|
8
|
8
|
//===========================================================================
|
9
|
9
|
/*
|
10
|
10
|
Here are some standard links for getting your machine calibrated:
|
11
|
|
- * http://reprap.org/wiki/Calibration
|
|
11
|
+ * http://reprap.org/wiki/Calibration
|
12
|
12
|
* http://youtu.be/wAL9d7FgInk
|
13
|
13
|
* http://calculator.josefprusa.cz
|
14
|
14
|
* http://reprap.org/wiki/Triffid_Hunter%27s_Calibration_Guide
|
|
@@ -127,10 +127,15 @@ Here are some standard links for getting your machine calibrated:
|
127
|
127
|
// 1010 is Pt1000 with 1k pullup (non standard)
|
128
|
128
|
// 147 is Pt100 with 4k7 pullup
|
129
|
129
|
// 110 is Pt100 with 1k pullup (non standard)
|
130
|
|
-// :{ 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)" }
|
|
130
|
+// 998 and 999 are Dummy Tables. They will ALWAYS read 25°C or the temperature defined below.
|
|
131
|
+// Use it for Testing or Development purposes. NEVER for production machine.
|
|
132
|
+// #define DUMMY_THERMISTOR_998_VALUE 25
|
|
133
|
+// #define DUMMY_THERMISTOR_999_VALUE 100
|
|
134
|
+// :{ 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" }
|
131
|
135
|
#define TEMP_SENSOR_0 -1
|
132
|
136
|
#define TEMP_SENSOR_1 -1
|
133
|
137
|
#define TEMP_SENSOR_2 0
|
|
138
|
+#define TEMP_SENSOR_3 0
|
134
|
139
|
#define TEMP_SENSOR_BED 0
|
135
|
140
|
|
136
|
141
|
// 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:
|
148
|
153
|
#define HEATER_0_MINTEMP 5
|
149
|
154
|
#define HEATER_1_MINTEMP 5
|
150
|
155
|
#define HEATER_2_MINTEMP 5
|
|
156
|
+#define HEATER_3_MINTEMP 5
|
151
|
157
|
#define BED_MINTEMP 5
|
152
|
158
|
|
153
|
159
|
// 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:
|
156
|
162
|
#define HEATER_0_MAXTEMP 275
|
157
|
163
|
#define HEATER_1_MAXTEMP 275
|
158
|
164
|
#define HEATER_2_MAXTEMP 275
|
|
165
|
+#define HEATER_3_MAXTEMP 275
|
159
|
166
|
#define BED_MAXTEMP 150
|
160
|
167
|
|
161
|
168
|
// 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.
|
300
|
307
|
|
301
|
308
|
// @section machine
|
302
|
309
|
|
303
|
|
-// Uncomment the following line to enable CoreXY kinematics
|
|
310
|
+// Uncomment this option to enable CoreXY kinematics
|
304
|
311
|
// #define COREXY
|
305
|
312
|
|
|
313
|
+// Enable this option for Toshiba steppers
|
|
314
|
+// #define CONFIG_STEPPERS_TOSHIBA
|
|
315
|
+
|
306
|
316
|
// @section homing
|
307
|
317
|
|
308
|
318
|
// coarse Endstop Settings
|
|
@@ -337,13 +347,6 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
|
337
|
347
|
//#define DISABLE_MAX_ENDSTOPS
|
338
|
348
|
//#define DISABLE_MIN_ENDSTOPS
|
339
|
349
|
|
340
|
|
-// @section hidden
|
341
|
|
-
|
342
|
|
-// Disable max endstops for compatibility with endstop checking routine
|
343
|
|
-#if defined(COREXY) && !defined(DISABLE_MAX_ENDSTOPS)
|
344
|
|
- #define DISABLE_MAX_ENDSTOPS
|
345
|
|
-#endif
|
346
|
|
-
|
347
|
350
|
// @section machine
|
348
|
351
|
|
349
|
352
|
// 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
|
366
|
369
|
// @section machine
|
367
|
370
|
|
368
|
371
|
// Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
|
369
|
|
-#define INVERT_X_DIR true // Mendel: false
|
370
|
|
-#define INVERT_Y_DIR false // Mendel: true
|
371
|
|
-#define INVERT_Z_DIR true // Mendel: false
|
|
372
|
+#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true
|
|
373
|
+#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false
|
|
374
|
+#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true
|
372
|
375
|
|
373
|
376
|
// @section extruder
|
374
|
377
|
|
375
|
378
|
// For direct drive extruder v9 set to true, for geared extruder set to false.
|
376
|
|
-#define INVERT_E0_DIR false
|
377
|
|
-#define INVERT_E1_DIR false
|
378
|
|
-#define INVERT_E2_DIR false
|
379
|
|
-#define INVERT_E3_DIR false
|
|
379
|
+#define INVERT_E0_DIR false // Direct drive extruder v9: true. Geared extruder: false
|
|
380
|
+#define INVERT_E1_DIR false // Direct drive extruder v9: true. Geared extruder: false
|
|
381
|
+#define INVERT_E2_DIR false // Direct drive extruder v9: true. Geared extruder: false
|
|
382
|
+#define INVERT_E3_DIR false // Direct drive extruder v9: true. Geared extruder: false
|
380
|
383
|
|
381
|
384
|
// @section homing
|
382
|
385
|
|
|
@@ -418,40 +421,38 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
|
418
|
421
|
|
419
|
422
|
#ifdef ENABLE_AUTO_BED_LEVELING
|
420
|
423
|
|
421
|
|
-// There are 2 different ways to pick the X and Y locations to probe:
|
422
|
|
-
|
423
|
|
-// - "grid" mode
|
424
|
|
-// Probe every point in a rectangular grid
|
425
|
|
-// You must specify the rectangle, and the density of sample points
|
426
|
|
-// This mode is preferred because there are more measurements.
|
427
|
|
-// It used to be called ACCURATE_BED_LEVELING but "grid" is more descriptive
|
428
|
|
-
|
429
|
|
-// - "3-point" mode
|
430
|
|
-// Probe 3 arbitrary points on the bed (that aren't colinear)
|
431
|
|
-// You must specify the X & Y coordinates of all 3 points
|
432
|
|
-
|
|
424
|
+ // There are 2 different ways to specify probing locations
|
|
425
|
+ //
|
|
426
|
+ // - "grid" mode
|
|
427
|
+ // Probe several points in a rectangular grid.
|
|
428
|
+ // You specify the rectangle and the density of sample points.
|
|
429
|
+ // This mode is preferred because there are more measurements.
|
|
430
|
+ //
|
|
431
|
+ // - "3-point" mode
|
|
432
|
+ // Probe 3 arbitrary points on the bed (that aren't colinear)
|
|
433
|
+ // You specify the XY coordinates of all 3 points.
|
|
434
|
+
|
|
435
|
+ // Enable this to sample the bed in a grid (least squares solution)
|
|
436
|
+ // Note: this feature generates 10KB extra code size
|
433
|
437
|
#define AUTO_BED_LEVELING_GRID
|
434
|
|
- // with AUTO_BED_LEVELING_GRID, the bed is sampled in a
|
435
|
|
- // AUTO_BED_LEVELING_GRID_POINTSxAUTO_BED_LEVELING_GRID_POINTS grid
|
436
|
|
- // and least squares solution is calculated
|
437
|
|
- // Note: this feature occupies 10'206 byte
|
|
438
|
+
|
438
|
439
|
#ifdef AUTO_BED_LEVELING_GRID
|
439
|
440
|
|
440
|
|
- // set the rectangle in which to probe
|
|
441
|
+ // The edges of the rectangle in which to probe
|
441
|
442
|
#define LEFT_PROBE_BED_POSITION 15
|
442
|
443
|
#define RIGHT_PROBE_BED_POSITION 170
|
443
|
|
- #define BACK_PROBE_BED_POSITION 180
|
444
|
444
|
#define FRONT_PROBE_BED_POSITION 20
|
|
445
|
+ #define BACK_PROBE_BED_POSITION 170
|
445
|
446
|
|
446
|
|
- // set the number of grid points per dimension
|
447
|
|
- // I wouldn't see a reason to go above 3 (=9 probing points on the bed)
|
|
447
|
+ // Set the number of grid points per dimension
|
|
448
|
+ // You probably don't need more than 3 (squared=9)
|
448
|
449
|
#define AUTO_BED_LEVELING_GRID_POINTS 2
|
449
|
450
|
|
450
|
451
|
|
451
|
|
- #else // not AUTO_BED_LEVELING_GRID
|
452
|
|
- // with no grid, just probe 3 arbitrary points. A simple cross-product
|
453
|
|
- // is used to esimate the plane of the print bed
|
|
452
|
+ #else // !AUTO_BED_LEVELING_GRID
|
454
|
453
|
|
|
454
|
+ // Arbitrary points to probe. A simple cross-product
|
|
455
|
+ // is used to estimate the plane of the bed.
|
455
|
456
|
#define ABL_PROBE_PT_1_X 15
|
456
|
457
|
#define ABL_PROBE_PT_1_Y 180
|
457
|
458
|
#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
|
462
|
463
|
#endif // AUTO_BED_LEVELING_GRID
|
463
|
464
|
|
464
|
465
|
|
465
|
|
- // these are the offsets to the probe relative to the extruder tip (Hotend - Probe)
|
|
466
|
+ // Offsets to the probe relative to the extruder tip (Hotend - Probe)
|
466
|
467
|
// X and Y offsets must be integers
|
467
|
|
- #define X_PROBE_OFFSET_FROM_EXTRUDER -25
|
468
|
|
- #define Y_PROBE_OFFSET_FROM_EXTRUDER -29
|
469
|
|
- #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35
|
|
468
|
+ #define X_PROBE_OFFSET_FROM_EXTRUDER -25 // -left +right
|
|
469
|
+ #define Y_PROBE_OFFSET_FROM_EXTRUDER -29 // -front +behind
|
|
470
|
+ #define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35 // -below (always!)
|
470
|
471
|
|
471
|
472
|
#define Z_RAISE_BEFORE_HOMING 4 // (in mm) Raise Z before homing (G28) for Probe Clearance.
|
472
|
473
|
// 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
|
503
|
504
|
|
504
|
505
|
#endif
|
505
|
506
|
|
506
|
|
- #ifdef AUTO_BED_LEVELING_GRID // Check if Probe_Offset * Grid Points is greater than Probing Range
|
507
|
|
- #if X_PROBE_OFFSET_FROM_EXTRUDER < 0
|
508
|
|
- #if (-(X_PROBE_OFFSET_FROM_EXTRUDER * (AUTO_BED_LEVELING_GRID_POINTS-1)) >= (RIGHT_PROBE_BED_POSITION - LEFT_PROBE_BED_POSITION))
|
509
|
|
- #error "The X axis probing range is not enough to fit all the points defined in AUTO_BED_LEVELING_GRID_POINTS"
|
510
|
|
- #endif
|
511
|
|
- #else
|
512
|
|
- #if ((X_PROBE_OFFSET_FROM_EXTRUDER * (AUTO_BED_LEVELING_GRID_POINTS-1)) >= (RIGHT_PROBE_BED_POSITION - LEFT_PROBE_BED_POSITION))
|
513
|
|
- #error "The X axis probing range is not enough to fit all the points defined in AUTO_BED_LEVELING_GRID_POINTS"
|
514
|
|
- #endif
|
515
|
|
- #endif
|
516
|
|
- #if Y_PROBE_OFFSET_FROM_EXTRUDER < 0
|
517
|
|
- #if (-(Y_PROBE_OFFSET_FROM_EXTRUDER * (AUTO_BED_LEVELING_GRID_POINTS-1)) >= (BACK_PROBE_BED_POSITION - FRONT_PROBE_BED_POSITION))
|
518
|
|
- #error "The Y axis probing range is not enough to fit all the points defined in AUTO_BED_LEVELING_GRID_POINTS"
|
519
|
|
- #endif
|
520
|
|
- #else
|
521
|
|
- #if ((Y_PROBE_OFFSET_FROM_EXTRUDER * (AUTO_BED_LEVELING_GRID_POINTS-1)) >= (BACK_PROBE_BED_POSITION - FRONT_PROBE_BED_POSITION))
|
522
|
|
- #error "The Y axis probing range is not enough to fit all the points defined in AUTO_BED_LEVELING_GRID_POINTS"
|
523
|
|
- #endif
|
524
|
|
- #endif
|
525
|
|
-
|
526
|
|
-
|
527
|
|
- #endif
|
528
|
|
-
|
529
|
507
|
#endif // ENABLE_AUTO_BED_LEVELING
|
530
|
508
|
|
531
|
509
|
|
|
@@ -609,9 +587,13 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
|
609
|
587
|
#define ABS_PREHEAT_HPB_TEMP 100
|
610
|
588
|
#define ABS_PREHEAT_FAN_SPEED 255 // Insert Value between 0 and 255
|
611
|
589
|
|
|
590
|
+//==============================LCD and SD support=============================
|
612
|
591
|
// @section lcd
|
613
|
592
|
|
614
|
|
-//LCD and SD support
|
|
593
|
+// Define your display language below. Replace (en) with your language code and uncomment.
|
|
594
|
+// en, pl, fr, de, es, ru, it, pt, pt-br, fi, an, nl, ca, eu
|
|
595
|
+// See also language.h
|
|
596
|
+//#define LANGUAGE_INCLUDE GENERATE_LANGUAGE_INCLUDE(en)
|
615
|
597
|
|
616
|
598
|
// Character based displays can have different extended charsets.
|
617
|
599
|
#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
|
629
|
611
|
//#define LCD_FEEDBACK_FREQUENCY_HZ 1000 // this is the tone frequency the buzzer plays when on UI feedback. ie Screen Click
|
630
|
612
|
//#define LCD_FEEDBACK_FREQUENCY_DURATION_MS 100 // the duration the buzzer plays the UI feedback sound. ie Screen Click
|
631
|
613
|
|
|
614
|
+// PanelOne from T3P3 (via RAMPS 1.4 AUX2/AUX3)
|
|
615
|
+// http://reprap.org/wiki/PanelOne
|
|
616
|
+//#define PANEL_ONE
|
|
617
|
+
|
632
|
618
|
// The MaKr3d Makr-Panel with graphic controller and SD support
|
633
|
619
|
// http://reprap.org/wiki/MaKr3d_MaKrPanel
|
634
|
620
|
//#define MAKRPANEL
|
635
|
621
|
|
|
622
|
+// The Panucatt Devices Viki 2.0 and mini Viki with Graphic LCD
|
|
623
|
+// http://panucatt.com
|
|
624
|
+// ==> REMEMBER TO INSTALL U8glib to your ARDUINO library folder: http://code.google.com/p/u8glib/wiki/u8glib
|
|
625
|
+//#define VIKI2
|
|
626
|
+//#define miniVIKI
|
|
627
|
+
|
636
|
628
|
// The RepRapDiscount Smart Controller (white PCB)
|
637
|
629
|
// http://reprap.org/wiki/RepRapDiscount_Smart_Controller
|
638
|
630
|
//#define REPRAP_DISCOUNT_SMART_CONTROLLER
|
|
@@ -668,6 +660,26 @@ const bool Z_MAX_ENDSTOP_INVERTING = true; // set to true to invert the logic of
|
668
|
660
|
#define DEFAULT_LCD_CONTRAST 17
|
669
|
661
|
#endif
|
670
|
662
|
|
|
663
|
+#if defined(miniVIKI) || defined(VIKI2)
|
|
664
|
+ #define ULTRA_LCD //general LCD support, also 16x2
|
|
665
|
+ #define DOGLCD // Support for SPI LCD 128x64 (Controller ST7565R graphic Display Family)
|
|
666
|
+ #define ULTIMAKERCONTROLLER //as available from the Ultimaker online store.
|
|
667
|
+
|
|
668
|
+ #ifdef miniVIKI
|
|
669
|
+ #define DEFAULT_LCD_CONTRAST 95
|
|
670
|
+ #else
|
|
671
|
+ #define DEFAULT_LCD_CONTRAST 40
|
|
672
|
+ #endif
|
|
673
|
+
|
|
674
|
+ #define ENCODER_PULSES_PER_STEP 4
|
|
675
|
+ #define ENCODER_STEPS_PER_MENU_ITEM 1
|
|
676
|
+#endif
|
|
677
|
+
|
|
678
|
+#if defined (PANEL_ONE)
|
|
679
|
+ #define SDSUPPORT
|
|
680
|
+ #define ULTIMAKERCONTROLLER
|
|
681
|
+#endif
|
|
682
|
+
|
671
|
683
|
#if defined (REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER)
|
672
|
684
|
#define DOGLCD
|
673
|
685
|
#define U8GLIB_ST7920
|