лучше изменения выложу, если что не понятно - спрашивай.
у меня из настройки как ни странно самую большую сложность вызвало разобраться с правильностью направлений осей и настройками концевиков, для калибровки динамических характеристик и нормального детектирования режима "срыва" пришлось поставить все 6 шт
Код:
diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h
index 74c03eb..e6fd7d7 100644
--- a/Marlin/Configuration.h
+++ b/Marlin/Configuration.h
@@ -8,12 +8,12 @@
//User specified version info of THIS file to display in [Pronterface, etc] terminal window during startup.
//Implementation of an idea by Prof Braino to inform user that any changes made
//to THIS file by the user have been successfully uploaded into firmware.
-#define STRING_VERSION_CONFIG_H "2012-02-25" //Personal revision number for changes to THIS file.
-#define STRING_CONFIG_H_AUTHOR "erik" //Who made the changes.
+#define STRING_VERSION_CONFIG_H "28/02/2012" //Personal revision number for changes to THIS file.
+#define STRING_CONFIG_H_AUTHOR "Setar" //Who made the changes.
// This determines the communication speed of the printer
-#define BAUDRATE 250000
-//#define BAUDRATE 115200
+//#define BAUDRATE 250000
+#define BAUDRATE 115200
//// The following define selects which electronics board you have. Please choose the one that matches your setup
// Gen7 custom (Alfons3 Version) = 10 "https://github.com/Alfons3/Generation_7_Electronics"
@@ -29,7 +29,7 @@
// Ultimaker = 7
// Teensylu = 8
// Gen3+ =9
-#define MOTHERBOARD 7
+#define MOTHERBOARD 33
//===========================================================================
//=============================Thermal Settings ============================
@@ -47,10 +47,10 @@
// 6 is EPCOS 100k
// 7 is 100k Honeywell thermistor 135-104LAG-J01
-#define TEMP_SENSOR_0 -1
+#define TEMP_SENSOR_0 1
#define TEMP_SENSOR_1 0
#define TEMP_SENSOR_2 0
-#define TEMP_SENSOR_BED 0
+#define TEMP_SENSOR_BED 4
// Actual temperature must be close to target for this long before M109 returns success
#define TEMP_RESIDENCY_TIME 10 // (seconds)
@@ -84,11 +84,15 @@
#define K1 0.95 //smoothing factor withing the PID
#define PID_dT 0.128 //sampling period of the PID
+ #define DEFAULT_Kp 30
+ #define DEFAULT_Ki 1.71
+ #define DEFAULT_Kd 131.25
+
// If you are using a preconfigured hotend then you can use one of the value sets by uncommenting it
// Ultimaker
- #define DEFAULT_Kp 22.2
- #define DEFAULT_Ki (1.25*PID_dT)
- #define DEFAULT_Kd (99/PID_dT)
+// #define DEFAULT_Kp 22.2
+// #define DEFAULT_Ki (1.25*PID_dT)
+// #define DEFAULT_Kd (99/PID_dT)
// Makergear
// #define DEFAULT_Kp 7.0
@@ -115,9 +119,9 @@
#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 X_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
-const bool Y_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
-const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of the endstops.
+const bool X_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops.
+const bool Y_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops.
+const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of the endstops.
// For Inverting Stepper Enable Pins (Active Low) use 0, Non Inverting (Active High) use 1
#define X_ENABLE_ON 0
@@ -132,7 +136,7 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th
#define DISABLE_E false // For all extruders
#define INVERT_X_DIR true // for Mendel set to false, for Orca set to true
-#define INVERT_Y_DIR false // for Mendel set to true, for Orca set to false
+#define INVERT_Y_DIR true // for Mendel set to true, for Orca set to false
#define INVERT_Z_DIR true // for Mendel set to false, for Orca set to true
#define INVERT_E0_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
#define INVERT_E1_DIR false // for direct drive extruder v9 set to true, for geared extruder set to false
@@ -141,14 +145,14 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th
// ENDSTOP SETTINGS:
// Sets direction of endstops when homing; 1=MAX, -1=MIN
#define X_HOME_DIR -1
-#define Y_HOME_DIR -1
+#define Y_HOME_DIR 1
#define Z_HOME_DIR -1
#define min_software_endstops true //If true, axis won't move to coordinates less than HOME_POS.
#define max_software_endstops true //If true, axis won't move to coordinates greater than the defined lengths below.
-#define X_MAX_LENGTH 205
-#define Y_MAX_LENGTH 205
-#define Z_MAX_LENGTH 200
+#define X_MAX_LENGTH 175
+#define Y_MAX_LENGTH 195
+#define Z_MAX_LENGTH 90
// The position of the homing switches. Use MAX_LENGTH * -0.5 if the center should be 0, 0, 0
#define X_HOME_POS 0
@@ -161,9 +165,9 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th
// default settings
-#define DEFAULT_AXIS_STEPS_PER_UNIT {78.7402,78.7402,200*8/3,760*1.1} // default steps per unit for ultimaker
-#define DEFAULT_MAX_FEEDRATE {500, 500, 5, 45} // (mm/sec)
-#define DEFAULT_MAX_ACCELERATION {9000,9000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot
+#define DEFAULT_AXIS_STEPS_PER_UNIT {64.335,64.6464,200*16/1.25,603} //579.5 // steps per unit
+#define DEFAULT_MAX_FEEDRATE {300, 300, 5, 45} // (mm/sec)
+#define DEFAULT_MAX_ACCELERATION {4000,4000,100,10000} // X, Y, Z, E maximum start speed for accelerated moves. E default values are good for skeinforge 40+, for older versions raise them a lot
#define DEFAULT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for printing moves
#define DEFAULT_RETRACT_ACCELERATION 3000 // X, Y, Z and E max acceleration in mm/s^2 for r retracts
@@ -182,14 +186,14 @@ const bool Z_ENDSTOPS_INVERTING = true; // set to true to invert the logic of th
// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
// M502 - reverts to the default "factory settings". You still need to store them in EEPROM afterwards if you want to.
//define this to enable eeprom support
-//#define EEPROM_SETTINGS
+#define EEPROM_SETTINGS
//to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out:
// please keep turned on if you can.
-//#define EEPROM_CHITCHAT
+#define EEPROM_CHITCHAT
//LCD and SD support
//#define ULTRA_LCD //general lcd support, also 16x2
-//#define SDSUPPORT // Enable SD Card Support in Hardware Console
+#define SDSUPPORT // Enable SD Card Support in Hardware Console
//#define ULTIPANEL
#ifdef ULTIPANEL
diff --git a/Marlin/Configuration_adv.h b/Marlin/Configuration_adv.h
index 38e9409..eb793bd 100644
--- a/Marlin/Configuration_adv.h
+++ b/Marlin/Configuration_adv.h
@@ -42,7 +42,7 @@
// you exit the value by any M109 without F*
// Also, if the temperature is set to a value <mintemp, it is not changed by autotemp.
// on an ultimaker, some initial testing worked with M109 S215 T260 F0.1 in the start.gcode
-//#define AUTOTEMP
+#define AUTOTEMP
#ifdef AUTOTEMP
#define AUTOTEMP_OLDWEIGHT 0.98
#endif
@@ -68,7 +68,7 @@
// This defines the number of extruders
#define EXTRUDERS 1
-#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing
+//#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing
//#define Z_LATE_ENABLE // Enable Z the last moment. Needed if your Z driver overheats.
@@ -76,7 +76,7 @@
#define X_HOME_RETRACT_MM 5
#define Y_HOME_RETRACT_MM 5
#define Z_HOME_RETRACT_MM 1
-//#define QUICK_HOME //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially.
+#define QUICK_HOME //if this is defined, if both x and y are to be homed, a diagonal move will be performed initially.
#define AXIS_RELATIVE_MODES {false, false, false, false}
@@ -142,13 +142,13 @@
#endif // ADVANCE
// A debugging feature to compare calculated vs performed steps, to see if steps are lost by the software.
-//#define DEBUG_STEPS
+#define DEBUG_STEPS
// Arc interpretation settings:
#define MM_PER_ARC_SEGMENT 1
#define N_ARC_CORRECTION 25
-const int dropsegments=5; //everything with less than this number of steps will be ignored as move and joined with the next movement
+const int dropsegments= 5; //everything with less than this number of steps will be ignored as move and joined with the next movement
// If you are using a RAMPS board or cheap E-bay purchased boards that do not detect when an SD card is inserted
// You can get round this by connecting a push button or single throw switch to the pin defined as SDCARDCARDDETECT
diff --git a/Marlin/Marlin.h b/Marlin/Marlin.h
index e01d98a..0269576 100644
--- a/Marlin/Marlin.h
+++ b/Marlin/Marlin.h
@@ -62,6 +62,8 @@
//#define MYPGM(s) (__extension__({static char __c[] __attribute__((__progmem__)) = (s); &__c[0];})) //This is the normal behaviour
//#define MYPGM(s) (__extension__({static prog_char __c[] = (s); &__c[0];})) //this does not work but hides the warnings
+// Macro for getting current active extruder
+#define ACTIVE_EXTRUDER ((int)active_extruder)
#define SERIAL_PROTOCOL(x) MYSERIAL.print(x);
#define SERIAL_PROTOCOLPGM(x) serialprintPGM(MYPGM(x));
diff --git a/Marlin/thermistortables.h b/Marlin/thermistortables.h
index 3071a6b..5db7cff 100644
--- a/Marlin/thermistortables.h
+++ b/Marlin/thermistortables.h
@@ -132,26 +132,47 @@ const short temptable_3[][2] PROGMEM = {
#endif
#if (THERMISTORHEATER_0 == 4) || (THERMISTORHEATER_1 == 4) || (THERMISTORHEATER_2 == 4) || (THERMISTORBED == 4) //10k thermistor
const short temptable_4[][2] PROGMEM = {
- {1*OVERSAMPLENR, 430},
- {54*OVERSAMPLENR, 137},
- {107*OVERSAMPLENR, 107},
- {160*OVERSAMPLENR, 91},
- {213*OVERSAMPLENR, 80},
- {266*OVERSAMPLENR, 71},
- {319*OVERSAMPLENR, 64},
- {372*OVERSAMPLENR, 57},
- {425*OVERSAMPLENR, 51},
- {478*OVERSAMPLENR, 46},
- {531*OVERSAMPLENR, 41},
- {584*OVERSAMPLENR, 35},
- {637*OVERSAMPLENR, 30},
- {690*OVERSAMPLENR, 25},
- {743*OVERSAMPLENR, 20},
- {796*OVERSAMPLENR, 14},
- {849*OVERSAMPLENR, 7},
- {902*OVERSAMPLENR, 0},
- {955*OVERSAMPLENR, -11},
- {1008*OVERSAMPLENR, -35}
+// {1*OVERSAMPLENR, 430},
+// {54*OVERSAMPLENR, 137},
+// {107*OVERSAMPLENR, 107},
+// {160*OVERSAMPLENR, 91},
+// {213*OVERSAMPLENR, 80},
+// {266*OVERSAMPLENR, 71},
+// {319*OVERSAMPLENR, 64},
+// {372*OVERSAMPLENR, 57},
+// {425*OVERSAMPLENR, 51},
+// {478*OVERSAMPLENR, 46},
+// {531*OVERSAMPLENR, 41},
+// {584*OVERSAMPLENR, 35},
+// {637*OVERSAMPLENR, 30},
+// {690*OVERSAMPLENR, 25},
+// {743*OVERSAMPLENR, 20},
+// {796*OVERSAMPLENR, 14},
+// {849*OVERSAMPLENR, 7},
+// {902*OVERSAMPLENR, 0},
+// {955*OVERSAMPLENR, -11},
+// {1008*OVERSAMPLENR, -35}
+
+ {1*OVERSAMPLENR, 452},
+ {54*OVERSAMPLENR, 146},
+ {107*OVERSAMPLENR, 118},
+ {160*OVERSAMPLENR, 102},
+ {213*OVERSAMPLENR, 91},
+ {266*OVERSAMPLENR, 82},
+ {319*OVERSAMPLENR, 75},
+ {372*OVERSAMPLENR, 66},
+ {425*OVERSAMPLENR, 62},
+ {478*OVERSAMPLENR, 55},
+ {531*OVERSAMPLENR, 52},
+ {584*OVERSAMPLENR, 46},
+ {637*OVERSAMPLENR, 37},
+ {690*OVERSAMPLENR, 32},
+ {743*OVERSAMPLENR, 27},
+ {796*OVERSAMPLENR, 21},
+ {849*OVERSAMPLENR, 14},
+ {902*OVERSAMPLENR, 7},
+ {955*OVERSAMPLENR, -3},
+ {1008*OVERSAMPLENR, -28}
};
#endif