Parcourir la source

Merge pull request #5250 from CONSULitAS/RCBugFix_K8200_backinsync_2016-11-18

K8200: Example configuration back in sync
Scott Lahteine il y a 8 ans
Parent
révision
0be6167f14

+ 59
- 42
Marlin/example_configurations/K8200/Configuration.h Voir le fichier

@@ -21,13 +21,6 @@
21 21
  */
22 22
 
23 23
 /**
24
- * Sample configuration file for Vellemann K8200
25
- * tested on K8200 with VM8201 (Display)
26
- * and Arduino 1.6.8 (Mac) by @CONSULitAS, 2016-02-21
27
- * https://github.com/CONSULitAS/Marlin-K8200/archive/K8200_stable_2016-02-21.zip
28
- */
29
-
30
-/**
31 24
  * Configuration.h
32 25
  *
33 26
  * Basic settings such as:
@@ -58,6 +51,22 @@
58 51
  */
59 52
 #define CONFIGURATION_H_VERSION 010100
60 53
 
54
+/**
55
+ * Sample configuration file for Vellemann K8200
56
+ * tested on K8200 with VM8201 (Display)
57
+ * and Arduino 1.6.12 (Mac OS X) by @CONSULitAS, 2016-11-18
58
+ * https://github.com/CONSULitAS/Marlin-K8200/archive/K8200_stable_2016-11-18.zip
59
+ *
60
+ * Please choose your hardware options for the K8200:
61
+ */
62
+
63
+// VM8201 Display unit
64
+#define K8200_VM8201
65
+// K8204 Z axis upgrade rod and coupler -> TODO
66
+// #define K8200_K8204
67
+// K8203 direct drive extruder -> TODO
68
+// #define K8200_K8203
69
+
61 70
 //===========================================================================
62 71
 //============================= Getting Started =============================
63 72
 //===========================================================================
@@ -146,7 +155,11 @@
146 155
 
147 156
 // Define this to set a unique identifier for this printer, (Used by some programs to differentiate between machines)
148 157
 // You can use an online service to generate a random UUID. (eg http://www.uuidgenerator.net/version4)
149
-#define MACHINE_UUID "2b7dea3b-844e-4ab1-aa96-bb6406607d6e" // K8200 standard config with VM8201 (Display)
158
+#if ENABLED(K8200_VM8201)
159
+  #define MACHINE_UUID "2b7dea3b-844e-4ab1-aa96-bb6406607d6e" // K8200 standard config with VM8201 (Display)
160
+#else
161
+  #define MACHINE_UUID "92f72de1-c211-452e-9f2b-61ef88a4751e" // K8200 standard config without VM8201 (Display)
162
+#endif
150 163
 
151 164
 // This defines the number of extruders
152 165
 // :[1, 2, 3, 4]
@@ -194,7 +207,7 @@
194 207
  *
195 208
  * :{ 0:'No power switch', 1:'ATX', 2:'X-Box 360' }
196 209
  */
197
-#define POWER_SUPPLY 1
210
+#define POWER_SUPPLY 0
198 211
 
199 212
 #if POWER_SUPPLY > 0
200 213
   // Enable this option to leave the PSU off at startup.
@@ -274,7 +287,7 @@
274 287
 #define TEMP_WINDOW     1       // (degC) Window around target to start the residency timer x degC early.
275 288
 
276 289
 // Bed temperature must be close to target for this long before M190 returns success
277
-#define TEMP_BED_RESIDENCY_TIME 0   // (seconds)
290
+#define TEMP_BED_RESIDENCY_TIME 10  // (seconds)
278 291
 #define TEMP_BED_HYSTERESIS 3       // (degC) range of +/- temperatures considered "close" to the target one
279 292
 #define TEMP_BED_WINDOW     1       // (degC) Window around target to start the residency timer x degC early.
280 293
 
@@ -378,11 +391,11 @@
378 391
 
379 392
   // FIND YOUR OWN: "M303 E-1 C8 S90" to run autotune on the bed at 90 degreesC for 8 cycles.
380 393
 
381
-  // Vellemann K8200 PCB heatbed with standard PCU at 60 degreesC - calculated with PID Autotune and tested
382
-  // from pidautotune
383
-  #define  DEFAULT_bedKp 341.88
384
-  #define  DEFAULT_bedKi 25.32
385
-  #define  DEFAULT_bedKd 1153.89
394
+    // Vellemann K8200 PCB heatbed with standard PCU at 60 degreesC - calculated with PID Autotune and tested
395
+    // from pidautotune
396
+    #define  DEFAULT_bedKp 341.88
397
+    #define  DEFAULT_bedKi 25.32
398
+    #define  DEFAULT_bedKd 1153.89
386 399
 #endif // PIDTEMPBED
387 400
 
388 401
 // @section extruder
@@ -466,9 +479,9 @@
466 479
 #define X_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
467 480
 #define Y_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
468 481
 #define Z_MIN_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
469
-#define X_MAX_ENDSTOP_INVERTING true  // set to true to invert the logic of the endstop.
470
-#define Y_MAX_ENDSTOP_INVERTING true  // set to true to invert the logic of the endstop.
471
-#define Z_MAX_ENDSTOP_INVERTING true  // set to true to invert the logic of the endstop.
482
+#define X_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
483
+#define Y_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
484
+#define Z_MAX_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
472 485
 #define Z_MIN_PROBE_ENDSTOP_INVERTING false // set to true to invert the logic of the endstop.
473 486
 
474 487
 // Enable this feature if all enabled endstop pins are interrupt-capable.
@@ -492,13 +505,12 @@
492 505
  * Default Axis Steps Per Unit (steps/mm)
493 506
  * Override with M92
494 507
  */
495
-#define DEFAULT_AXIS_STEPS_PER_UNIT   { 64.25, 64.25, 2560, 600 }  // default steps per unit for K8200
496
-
508
+#define DEFAULT_AXIS_STEPS_PER_UNIT   { 64.25, 64.25, 2560, 600}  // for K8200
497 509
 /**
498 510
  * Default Max Feed Rate (mm/s)
499 511
  * Override with M203
500 512
  */
501
-#define DEFAULT_MAX_FEEDRATE          { 500, 500, 5, 500 }
513
+#define DEFAULT_MAX_FEEDRATE          { 500, 500, 5, 25 }
502 514
 
503 515
 /**
504 516
  * Default Max Acceleration (change/s) change = mm/s
@@ -583,9 +595,9 @@
583 595
 //    |           |
584 596
 //    O-- FRONT --+
585 597
 //  (0,0)
586
-#define X_PROBE_OFFSET_FROM_EXTRUDER -25     // X offset: -left  +right  [of the nozzle]
587
-#define Y_PROBE_OFFSET_FROM_EXTRUDER -29     // Y offset: -front +behind [the nozzle]
588
-#define Z_PROBE_OFFSET_FROM_EXTRUDER -12.35  // Z offset: -below +above  [the nozzle]
598
+#define X_PROBE_OFFSET_FROM_EXTRUDER 10  // X offset: -left  +right  [of the nozzle]
599
+#define Y_PROBE_OFFSET_FROM_EXTRUDER 10  // Y offset: -front +behind [the nozzle]
600
+#define Z_PROBE_OFFSET_FROM_EXTRUDER 0   // Z offset: -below +above  [the nozzle]
589 601
 
590 602
 // X and Y axis travel speed (mm/m) between probes
591 603
 #define XY_PROBE_SPEED 8000
@@ -660,7 +672,7 @@
660 672
  * Example: `M851 Z-5` with a CLEARANCE of 4  =>  9mm from bed to nozzle.
661 673
  *     But: `M851 Z+1` with a CLEARANCE of 2  =>  2mm from bed to nozzle.
662 674
  */
663
-#define Z_CLEARANCE_DEPLOY_PROBE   15 // Z Clearance for Deploy/Stow
675
+#define Z_CLEARANCE_DEPLOY_PROBE   10 // Z Clearance for Deploy/Stow
664 676
 #define Z_CLEARANCE_BETWEEN_PROBES  5 // Z Clearance between probe points
665 677
 
666 678
 //
@@ -680,7 +692,7 @@
680 692
 // WARNING: When motors turn off there is a chance of losing position accuracy!
681 693
 #define DISABLE_X false
682 694
 #define DISABLE_Y false
683
-#define DISABLE_Z false // not for K8200 -> looses Steps
695
+#define DISABLE_Z false
684 696
 // Warn on display about possibly reduced accuracy
685 697
 //#define DISABLE_REDUCED_ACCURACY_WARNING
686 698
 
@@ -693,7 +705,7 @@
693 705
 
694 706
 // Invert the stepper direction. Change (or reverse the motor connector) if an axis goes the wrong way.
695 707
 #define INVERT_X_DIR false
696
-#define INVERT_Y_DIR false // was true -> why for K8200?
708
+#define INVERT_Y_DIR false // K8200: false
697 709
 #define INVERT_Z_DIR false
698 710
 
699 711
 // @section extruder
@@ -705,9 +717,9 @@
705 717
 #define INVERT_E3_DIR true
706 718
 
707 719
 // @section homing
708
-
709
-//#define Z_HOMING_HEIGHT 4  // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
710
-                             // Be sure you have this distance over your Z_MAX_POS in case.
720
+// K8200: it is usual to have clamps for the glass plate on the heatbed
721
+#define Z_HOMING_HEIGHT 4   // (in mm) Minimal z height before homing (G28) for Z clearance above the bed, clamps, ...
722
+                            // Be sure you have this distance over your Z_MAX_POS in case.
711 723
 
712 724
 // ENDSTOP SETTINGS:
713 725
 // Sets direction of endstops when homing; 1=MAX, -1=MIN
@@ -883,7 +895,7 @@
883 895
 // M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
884 896
 // M502 - reverts to the default "factory settings".  You still need to store them in EEPROM afterwards if you want to.
885 897
 //define this to enable EEPROM support
886
-#define EEPROM_SETTINGS
898
+#define EEPROM_SETTINGS // K8200: uses EEPROM by default
887 899
 
888 900
 #if ENABLED(EEPROM_SETTINGS)
889 901
   // To disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out:
@@ -917,12 +929,12 @@
917 929
 // @section temperature
918 930
 
919 931
 // Preheat Constants
920
-#define PREHEAT_1_TEMP_HOTEND 190
921
-#define PREHEAT_1_TEMP_BED     50 // K8200: set back to 70 if you have an upgraded heatbed power supply
932
+#define PREHEAT_1_TEMP_HOTEND 180
933
+#define PREHEAT_1_TEMP_BED     50 // K8200: PLA / set back to 70 if you have an upgraded heatbed power supply
922 934
 #define PREHEAT_1_FAN_SPEED     0 // Value from 0 to 255
923 935
 
924 936
 #define PREHEAT_2_TEMP_HOTEND 240
925
-#define PREHEAT_2_TEMP_BED     60 // K8200: set back to 110 if you have an upgraded heatbed power supply
937
+#define PREHEAT_2_TEMP_BED     60 // K8200: ABS / set back to 110 if you have an upgraded heatbed power supply
926 938
 #define PREHEAT_2_FAN_SPEED     0 // Value from 0 to 255
927 939
 
928 940
 //
@@ -1024,7 +1036,7 @@
1024 1036
 //  - Total time printing
1025 1037
 //
1026 1038
 // This information can be viewed by the M78 command.
1027
-//#define PRINTCOUNTER
1039
+#define PRINTCOUNTER
1028 1040
 
1029 1041
 //=============================================================================
1030 1042
 //============================= LCD and SD support ============================
@@ -1032,6 +1044,9 @@
1032 1044
 
1033 1045
 // @section lcd
1034 1046
 
1047
+// K8200: for Display VM8201 with SD slot
1048
+#if ENABLED(K8200_VM8201)
1049
+
1035 1050
 //
1036 1051
 // LCD LANGUAGE
1037 1052
 //
@@ -1066,7 +1081,7 @@
1066 1081
 //
1067 1082
 // :['JAPANESE', 'WESTERN', 'CYRILLIC']
1068 1083
 //
1069
-#define DISPLAY_CHARSET_HD44780 JAPANESE     // K8200: for Display VM8201
1084
+#define DISPLAY_CHARSET_HD44780 JAPANESE // K8200: for Display VM8201 // this is the most common hardware
1070 1085
 
1071 1086
 //
1072 1087
 // LCD TYPE
@@ -1104,7 +1119,7 @@
1104 1119
 //
1105 1120
 // Use CRC checks and retries on the SD communication.
1106 1121
 //
1107
-//#define SD_CHECK_AND_RETRY
1122
+#define SD_CHECK_AND_RETRY
1108 1123
 
1109 1124
 //
1110 1125
 // ENCODER SETTINGS
@@ -1112,13 +1127,13 @@
1112 1127
 // This option overrides the default number of encoder pulses needed to
1113 1128
 // produce one step. Should be increased for high-resolution encoders.
1114 1129
 //
1115
-//#define ENCODER_PULSES_PER_STEP 1
1130
+#define ENCODER_PULSES_PER_STEP 4 // K8200_VM8201: four steps per encoder step
1116 1131
 
1117 1132
 //
1118 1133
 // Use this option to override the number of step signals required to
1119 1134
 // move between next/prev menu items.
1120 1135
 //
1121
-//#define ENCODER_STEPS_PER_MENU_ITEM 5
1136
+#define ENCODER_STEPS_PER_MENU_ITEM 1 // K8200_VM8201: One step per menu item
1122 1137
 
1123 1138
 /**
1124 1139
  * Encoder Direction Options
@@ -1143,14 +1158,14 @@
1143 1158
 //  If CLOCKWISE normally moves DOWN this makes it go UP.
1144 1159
 //  If CLOCKWISE normally moves UP this makes it go DOWN.
1145 1160
 //
1146
-//#define REVERSE_MENU_DIRECTION
1161
+#define REVERSE_MENU_DIRECTION // K8200: for Display VM8201 encoder on right side
1147 1162
 
1148 1163
 //
1149 1164
 // Individual Axis Homing
1150 1165
 //
1151 1166
 // Add individual axis homing items (Home X, Home Y, and Home Z) to the LCD menu.
1152 1167
 //
1153
-//#define INDIVIDUAL_AXIS_HOMING_MENU
1168
+#define INDIVIDUAL_AXIS_HOMING_MENU
1154 1169
 
1155 1170
 //
1156 1171
 // SPEAKER/BUZZER
@@ -1180,7 +1195,7 @@
1180 1195
 //
1181 1196
 // ULTIMAKER Controller.
1182 1197
 //
1183
-//#define ULTIMAKERCONTROLLER
1198
+#define ULTIMAKERCONTROLLER // K8200: for Display VM8201
1184 1199
 
1185 1200
 //
1186 1201
 // ULTIPANEL as seen on Thingiverse.
@@ -1338,6 +1353,8 @@
1338 1353
 //
1339 1354
 //#define SAV_3DLCD
1340 1355
 
1356
+#endif // K8200_VM8201
1357
+
1341 1358
 //=============================================================================
1342 1359
 //=============================== Extra Features ==============================
1343 1360
 //=============================================================================

+ 22
- 15
Marlin/example_configurations/K8200/Configuration_adv.h Voir le fichier

@@ -20,12 +20,6 @@
20 20
  *
21 21
  */
22 22
 
23
-// Sample configuration file for Vellemann K8200
24
-// tested on K8200 with VM8201 (Display)
25
-// and Arduino 1.6.8 (Mac) by @CONSULitAS, 2016-02-21
26
-// https://github.com/CONSULitAS/Marlin-K8200/archive/K8200_stable_2016-02-21.zip
27
-
28
-
29 23
 /**
30 24
  * Configuration_adv.h
31 25
  *
@@ -36,6 +30,15 @@
36 30
  * Basic settings can be found in Configuration.h
37 31
  *
38 32
  */
33
+
34
+ /**
35
+  * Sample configuration file for Vellemann K8200
36
+  * tested on K8200 with VM8201 (Display)
37
+  * and Arduino 1.6.12 (Mac) by @CONSULitAS, 2016-11-18
38
+  * https://github.com/CONSULitAS/Marlin-K8200/archive/K8200_stable_2016-11-18.zip
39
+  *
40
+  */
41
+
39 42
 #ifndef CONFIGURATION_ADV_H
40 43
 #define CONFIGURATION_ADV_H
41 44
 
@@ -80,6 +83,7 @@
80 83
  * If you get false positives for "Thermal Runaway" increase THERMAL_PROTECTION_HYSTERESIS and/or THERMAL_PROTECTION_PERIOD
81 84
  */
82 85
 #if ENABLED(THERMAL_PROTECTION_HOTENDS)
86
+  // K8200 has weak heaters/power supply by default, so you have to relax!
83 87
   #define THERMAL_PROTECTION_PERIOD 60        // Seconds
84 88
   #define THERMAL_PROTECTION_HYSTERESIS 8     // Degrees Celsius
85 89
 
@@ -92,16 +96,19 @@
92 96
    * If you get false positives for "Heating failed" increase WATCH_TEMP_PERIOD and/or decrease WATCH_TEMP_INCREASE
93 97
    * WATCH_TEMP_INCREASE should not be below 2.
94 98
    */
99
+  // K8200 has weak heaters/power supply by default, so you have to relax!
95 100
   #define WATCH_TEMP_PERIOD 30                // Seconds
96
-  #define WATCH_TEMP_INCREASE 4               // Degrees Celsius
101
+  #define WATCH_TEMP_INCREASE 2               // Degrees Celsius
97 102
 #endif
98 103
 
99 104
 /**
100 105
  * Thermal Protection parameters for the bed are just as above for hotends.
101 106
  */
102 107
 #if ENABLED(THERMAL_PROTECTION_BED)
103
-  #define THERMAL_PROTECTION_BED_PERIOD 20    // Seconds
104
-  #define THERMAL_PROTECTION_BED_HYSTERESIS 2 // Degrees Celsius
108
+// K8200 has weak heaters/power supply by default, so you have to relax!
109
+// the default bed is so weak, that you can hardly go over 75°C
110
+  #define THERMAL_PROTECTION_BED_PERIOD 60    // Seconds
111
+  #define THERMAL_PROTECTION_BED_HYSTERESIS 10 // Degrees Celsius
105 112
 
106 113
   /**
107 114
    * Whenever an M140 or M190 increases the target temperature the firmware will wait for the
@@ -358,7 +365,7 @@
358 365
 // Default stepper release if idle. Set to 0 to deactivate.
359 366
 // Steppers will shut down DEFAULT_STEPPER_DEACTIVE_TIME seconds after the last move when DISABLE_INACTIVE_? is true.
360 367
 // Time can be set by M18 and M84.
361
-#define DEFAULT_STEPPER_DEACTIVE_TIME 60
368
+#define DEFAULT_STEPPER_DEACTIVE_TIME 120
362 369
 #define DISABLE_INACTIVE_X true
363 370
 #define DISABLE_INACTIVE_Y true
364 371
 #define DISABLE_INACTIVE_Z true  // set to false if the nozzle will fall down on your printed part when print has finished.
@@ -535,7 +542,7 @@
535 542
 //#define LIN_ADVANCE
536 543
 
537 544
 #if ENABLED(LIN_ADVANCE)
538
-  #define LIN_ADVANCE_K 75
545
+  #define LIN_ADVANCE_K 140 // start value for PLA on K8200
539 546
 #endif
540 547
 
541 548
 // @section leveling
@@ -567,7 +574,7 @@
567 574
 #endif
568 575
 
569 576
 // Moves (or segments) with fewer steps than this will be joined with the next move
570
-#define MIN_STEPS_PER_SEGMENT 3
577
+#define MIN_STEPS_PER_SEGMENT 6
571 578
 
572 579
 // The minimum pulse width (in µs) for stepping a stepper.
573 580
 // Set this if you find stepping unreliable, or if using a very fast CPU.
@@ -605,7 +612,7 @@
605 612
 // For debug-echo: 128 bytes for the optimal speed.
606 613
 // Other output doesn't need to be that speedy.
607 614
 // :[0, 2, 4, 8, 16, 32, 64, 128, 256]
608
-#define TX_BUFFER_SIZE 0
615
+#define TX_BUFFER_SIZE 128
609 616
 
610 617
 // Enable an emergency-command parser to intercept certain commands as they
611 618
 // enter the serial receive buffer, so they cannot be blocked.
@@ -644,9 +651,9 @@
644 651
 
645 652
 // Add support for experimental filament exchange support M600; requires display
646 653
 #if ENABLED(ULTIPANEL)
647
-  // #define FILAMENT_CHANGE_FEATURE             // Enable filament exchange menu and M600 g-code (used for runout sensor too)
654
+  #define FILAMENT_CHANGE_FEATURE               // Enable filament exchange menu and M600 g-code (used for runout sensor too)
648 655
   #if ENABLED(FILAMENT_CHANGE_FEATURE)
649
-    #define FILAMENT_CHANGE_X_POS 3             // X position of hotend
656
+    #define FILAMENT_CHANGE_X_POS (X_MAX_POS-3) // X position of hotend
650 657
     #define FILAMENT_CHANGE_Y_POS 3             // Y position of hotend
651 658
     #define FILAMENT_CHANGE_Z_ADD 10            // Z addition of hotend (lift)
652 659
     #define FILAMENT_CHANGE_XY_FEEDRATE 100     // X and Y axes feedrate in mm/s (also used for delta printers Z axis)

+ 1
- 1
Marlin/example_configurations/K8200/README.md Voir le fichier

@@ -7,7 +7,7 @@
7 7
 * VM8201 uses "DISPLAY_CHARSET_HD44870_JAPAN" and "ULTIMAKERCONTROLLER"
8 8
 * german (de) translation with umlaut is supported now - thanks to @AnHardt for the great hardware based umlaut support
9 9
 
10
-I [@CONSULitAS](https://github.com/CONSULitAS) tested the changes on my K8200 with 20x4-LCD and Arduino 1.6.1 for Windows (SD library added to IDE manually) - everything works well.
10
+I [@CONSULitAS](https://github.com/CONSULitAS) tested the changes on my K8200 with 20x4-LCD and Arduino 1.6.12 for Mac (SD library added to IDE manually), 2016-11-18 - everything works well.
11 11
 
12 12
 **Source for genuine [Vellemann Firmware](http://www.k8200.eu/support/downloads/)**
13 13
 * V2.1.1 (for z axis upgrade, date branched: 2013-06-05): [firmware_k8200_v2.1.1.zip](http://www.k8200.eu/downloads/files/downloads/firmware_k8200_v2.1.1.zip)

Chargement…
Annuler
Enregistrer