Many problems with the firmware configuration

Hello everyone,

I have built a Vulcanus Max 40 (with 2 extruders) over a year but I can't make it work because I am facing many problems with the firmware configuration. I tryed many firmware versions but I had many problems like compiling errors, no motor moving and more. The only version that kind of works is 0.92. I have done many changes and tests with the configuration etc, to make my machine work. I have reached to a point and I stuck. My main problems are:

1. I home all axis with sequence XYZ to my upper left front corner (I use X min,Y min, Z max). They all home fine. I move axis XY to any direction and move fine, BUT when I press any button from Host, to move the Z axis, either up or down, the bed moves downwards and it stops to my Z max position.


2. If I try to change the #define NUM_EXTRUDER to 2 I get many compiling errors (I attatched the file with the errors). 

I would also like to fix the distance between my hotends and the autoleveling bed but I think I have to fix the above first.

Thank you in advance for your help. 

Below my configuration.h

/*
    This file is part of Repetier-Firmware.

    Repetier-Firmware is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    Repetier-Firmware is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with Repetier-Firmware.  If not, see <http://www.gnu.org/licenses/>.

*/

#ifndef CONFIGURATION_H
#define CONFIGURATION_H

/**************** READ FIRST ************************

   This configuration file was created with the configuration tool. For that
   reason, it does not contain the same informations as the original Configuration.h file.
   It misses the comments and unused parts. Open this file file in the config tool
   to see and change the data. You can also upload it to newer/older versions. The system
   will silently add new options, so compilation continues to work.

   This file is optimized for version 0.92

   If you are in doubt which named functions use which pins on your board, please check the
   pins.h for the used name->pin assignments and your board documentation to verify it is
   as you expect.

*/

#define NUM_EXTRUDER 1
#define MOTHERBOARD 33
#include "pins.h"

// ################## EDIT THESE SETTINGS MANUALLY ################
// ################ END MANUAL SETTINGS ##########################

#undef FAN_BOARD_PIN
#define FAN_BOARD_PIN -1
#define FAN_THERMO_PIN -1
#define FAN_THERMO_MIN_PWM 128
#define FAN_THERMO_MAX_PWM 255
#define FAN_THERMO_MIN_TEMP 45
#define FAN_THERMO_MAX_TEMP 60
#define FAN_THERMO_THERMISTOR_PIN -1
#define FAN_THERMO_THERMISTOR_TYPE 1

//#define EXTERNALSERIAL  use Arduino serial library instead of build in. Requires more ram, has only 63 byte input buffer.
// Uncomment the following line if you are using arduino compatible firmware made for Arduino version earlier then 1.0
// If it is incompatible you will get compiler errors about write functions not beeing compatible!
//#define COMPAT_PRE1
#define BLUETOOTH_SERIAL  -1
#define BLUETOOTH_BAUD  115200
#define MIXING_EXTRUDER 0

#define DRIVE_SYSTEM 1
#define XAXIS_STEPS_PER_MM 155
#define YAXIS_STEPS_PER_MM 155
#define ZAXIS_STEPS_PER_MM 420
#define EXTRUDER_FAN_COOL_TEMP 50
#define PDM_FOR_EXTRUDER 0
#define PDM_FOR_COOLER 0
#define DECOUPLING_TEST_MAX_HOLD_VARIANCE 20
#define DECOUPLING_TEST_MIN_TEMP_RISE 1
#define KILL_IF_SENSOR_DEFECT 0
#define RETRACT_ON_PAUSE 2
#define PAUSE_START_COMMANDS ""
#define PAUSE_END_COMMANDS ""
#define EXT0_X_OFFSET 0
#define EXT0_Y_OFFSET 0
#define EXT0_Z_OFFSET 0
#define EXT0_STEPS_PER_MM 213
#define EXT0_TEMPSENSOR_TYPE 1
#define EXT0_TEMPSENSOR_PIN TEMP_0_PIN
#define EXT0_HEATER_PIN HEATER_0_PIN
#define EXT0_STEP_PIN ORIG_E0_STEP_PIN
#define EXT0_DIR_PIN ORIG_E0_DIR_PIN
#define EXT0_INVERSE 0
#define EXT0_ENABLE_PIN ORIG_E0_ENABLE_PIN
#define EXT0_ENABLE_ON 0
#define EXT0_MAX_FEEDRATE 50
#define EXT0_MAX_START_FEEDRATE 20
#define EXT0_MAX_ACCELERATION 5000
#define EXT0_HEAT_MANAGER 1
#define EXT0_WATCHPERIOD 1
#define EXT0_PID_INTEGRAL_DRIVE_MAX 230
#define EXT0_PID_INTEGRAL_DRIVE_MIN 40
#define EXT0_PID_PGAIN_OR_DEAD_TIME 45.98
#define EXT0_PID_I 4.76
#define EXT0_PID_D 111.1
#define EXT0_PID_MAX 255
#define EXT0_ADVANCE_K 0
#define EXT0_ADVANCE_L 0
#define EXT0_ADVANCE_BACKLASH_STEPS 0
#define EXT0_WAIT_RETRACT_TEMP 150
#define EXT0_WAIT_RETRACT_UNITS 0
#define EXT0_SELECT_COMMANDS ""
#define EXT0_DESELECT_COMMANDS ""
#define EXT0_EXTRUDER_COOLER_PIN -1
#define EXT0_EXTRUDER_COOLER_SPEED 255
#define EXT0_DECOUPLE_TEST_PERIOD 12000
#define EXT0_JAM_PIN -1
#define EXT0_JAM_PULLUP 0

#define FEATURE_RETRACTION 1
#define AUTORETRACT_ENABLED 1
#define RETRACTION_LENGTH 3
#define RETRACTION_LONG_LENGTH 13
#define RETRACTION_SPEED 40
#define RETRACTION_Z_LIFT 0
#define RETRACTION_UNDO_EXTRA_LENGTH 0
#define RETRACTION_UNDO_EXTRA_LONG_LENGTH 0
#define RETRACTION_UNDO_SPEED 20
#define FILAMENTCHANGE_X_POS 0
#define FILAMENTCHANGE_Y_POS 0
#define FILAMENTCHANGE_Z_ADD  2
#define FILAMENTCHANGE_REHOME 1
#define FILAMENTCHANGE_SHORTRETRACT 5
#define FILAMENTCHANGE_LONGRETRACT 50
#define JAM_STEPS 220
#define JAM_SLOWDOWN_STEPS 320
#define JAM_SLOWDOWN_TO 70
#define JAM_ERROR_STEPS 500
#define JAM_MIN_STEPS 10
#define JAM_ACTION 1

#define RETRACT_DURING_HEATUP true
#define PID_CONTROL_RANGE 20
#define SKIP_M109_IF_WITHIN 2
#define SCALE_PID_TO_MAX 0
#define TEMP_HYSTERESIS 0
#define EXTRUDE_MAXLENGTH 160
#define NUM_TEMPS_USERTHERMISTOR0 0
#define USER_THERMISTORTABLE0 {}
#define NUM_TEMPS_USERTHERMISTOR1 0
#define USER_THERMISTORTABLE1 {}
#define NUM_TEMPS_USERTHERMISTOR2 0
#define USER_THERMISTORTABLE2 {}
#define GENERIC_THERM_VREF 5
#define GENERIC_THERM_NUM_ENTRIES 33
#define HEATER_PWM_SPEED 0

// ############# Heated bed configuration ########################

#define HAVE_HEATED_BED 1
#define HEATED_BED_MAX_TEMP 120
#define SKIP_M190_IF_WITHIN 3
#define HEATED_BED_SENSOR_TYPE 1
#define HEATED_BED_SENSOR_PIN TEMP_1_PIN
#define HEATED_BED_HEATER_PIN HEATER_1_PIN
#define HEATED_BED_SET_INTERVAL 5000
#define HEATED_BED_HEAT_MANAGER 1
#define HEATED_BED_PID_INTEGRAL_DRIVE_MAX 255
#define HEATED_BED_PID_INTEGRAL_DRIVE_MIN 80
#define HEATED_BED_PID_PGAIN_OR_DEAD_TIME   196
#define HEATED_BED_PID_IGAIN   33
#define HEATED_BED_PID_DGAIN 290
#define HEATED_BED_PID_MAX 255
#define HEATED_BED_DECOUPLE_TEST_PERIOD 300000
#define MIN_EXTRUDER_TEMP 150
#define MAXTEMP 290
#define MIN_DEFECT_TEMPERATURE -10
#define MAX_DEFECT_TEMPERATURE 305

// ##########################################################################################
// ##                             Laser configuration                                      ##
// ##########################################################################################

/*
If the firmware is in laser mode, it can control a laser output to cut or engrave materials.
Please use this feature only if you know about safety and required protection. Lasers are
dangerous and can hurt or make you blind!!!

The default laser driver only supports laser on and off. Here you control the eΓ­ntensity with
your feedrate. For exchangeable diode lasers this is normally enough. If you need more control
you can set the intensity in a range 0-255 with a custom extension to the driver. See driver.h
and comments on how to extend the functions non invasive with our event system.

If you have a laser - powder system you will like your E override. If moves contain a
increasing extruder position it will laser that move. With this trick you can
use existing fdm slicers to laser the output. Laser width is extrusion width.

Other tools may use M3 and M5 to enable/disable laser. Here G1/G2/G3 moves have laser enabled
and G0 moves have it disables.

In any case, laser only enables while moving. At the end of a move it gets
automatically disabled.
*/

#define SUPPORT_LASER 0
#define LASER_PIN -1
#define LASER_ON_HIGH 1

// ##                              CNC configuration                                       ##

/*
If the firmware is in CNC mode, it can control a mill with M3/M4/M5. It works
similar to laser mode, but mill keeps enabled during G0 moves and it allows
setting rpm (only with event extension that supports this) and milling direction.
It also can add a delay to wait for spindle to run on full speed.
*/

#define SUPPORT_CNC 0
#define CNC_WAIT_ON_ENABLE 300
#define CNC_WAIT_ON_DISABLE 0
#define CNC_ENABLE_PIN -1
#define CNC_ENABLE_WITH 1
#define CNC_DIRECTION_PIN -1
#define CNC_DIRECTION_CW 1


#define DEFAULT_PRINTER_MODE 0

// ################ Endstop configuration #####################

#define ENDSTOP_PULLUP_X_MIN true
#define ENDSTOP_X_MIN_INVERTING true
#define MIN_HARDWARE_ENDSTOP_X true
#define ENDSTOP_PULLUP_Y_MIN true
#define ENDSTOP_Y_MIN_INVERTING true
#define MIN_HARDWARE_ENDSTOP_Y true
#define ENDSTOP_PULLUP_Z_MIN false
#define ENDSTOP_Z_MIN_INVERTING false
#define MIN_HARDWARE_ENDSTOP_Z false
#define ENDSTOP_PULLUP_X_MAX false
#define ENDSTOP_X_MAX_INVERTING true
#define MAX_HARDWARE_ENDSTOP_X false
#define ENDSTOP_PULLUP_Y_MAX false
#define ENDSTOP_Y_MAX_INVERTING true
#define MAX_HARDWARE_ENDSTOP_Y false
#define ENDSTOP_PULLUP_Z_MAX true
#define ENDSTOP_Z_MAX_INVERTING false
#define MAX_HARDWARE_ENDSTOP_Z true
#define max_software_endstop_r false

#define min_software_endstop_x true
#define min_software_endstop_y true
#define min_software_endstop_z false
#define max_software_endstop_x false
#define max_software_endstop_y false
#define max_software_endstop_z true
#define ENDSTOP_X_BACK_MOVE 5
#define ENDSTOP_Y_BACK_MOVE 5
#define ENDSTOP_Z_BACK_MOVE 2
#define ENDSTOP_X_RETEST_REDUCTION_FACTOR 3
#define ENDSTOP_Y_RETEST_REDUCTION_FACTOR 3
#define ENDSTOP_Z_RETEST_REDUCTION_FACTOR 3
#define ENDSTOP_X_BACK_ON_HOME 1
#define ENDSTOP_Y_BACK_ON_HOME 1
#define ENDSTOP_Z_BACK_ON_HOME 1
#define ALWAYS_CHECK_ENDSTOPS 1

// ################# XYZ movements ###################

#define X_ENABLE_ON 0
#define Y_ENABLE_ON 0
#define Z_ENABLE_ON 0
#define DISABLE_X 0
#define DISABLE_Y 0
#define DISABLE_Z 0
#define DISABLE_E 0
#define INVERT_X_DIR 1
#define INVERT_Y_DIR 1
#define INVERT_Z_DIR 0
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR 1
#define X_MAX_LENGTH 350
#define Y_MAX_LENGTH 430
#define Z_MAX_LENGTH 350
#define X_MIN_POS 0
#define Y_MIN_POS 0
#define Z_MIN_POS 0
#define DISTORTION_CORRECTION 0
#define DISTORTION_CORRECTION_POINTS 5
#define DISTORTION_CORRECTION_R 100
#define DISTORTION_PERMANENT 1
#define DISTORTION_UPDATE_FREQUENCY 15
#define DISTORTION_START_DEGRADE 0.5
#define DISTORTION_END_HEIGHT 1
#define DISTORTION_EXTRAPOLATE_CORNERS 0
#define DISTORTION_XMIN 10
#define DISTORTION_YMIN 10
#define DISTORTION_XMAX 190
#define DISTORTION_YMAX 190

// ##########################################################################################
// ##                           Movement settings                                          ##
// ##########################################################################################

#define FEATURE_BABYSTEPPING 1
#define BABYSTEP_MULTIPLICATOR 1

#define DELTA_SEGMENTS_PER_SECOND_PRINT 180 // Move accurate setting for print moves
#define DELTA_SEGMENTS_PER_SECOND_MOVE 70 // Less accurate setting for other moves
#define EXACT_DELTA_MOVES 1

// Delta settings
#define DELTA_HOME_ON_POWER 0

#define DELTASEGMENTS_PER_PRINTLINE 24
#define STEPPER_INACTIVE_TIME 360L
#define MAX_INACTIVE_TIME 0L
#define MAX_FEEDRATE_X 200
#define MAX_FEEDRATE_Y 200
#define MAX_FEEDRATE_Z 20
#define HOMING_FEEDRATE_X 40
#define HOMING_FEEDRATE_Y 40
#define HOMING_FEEDRATE_Z 28
#define HOMING_ORDER HOME_ORDER_XYZ
#define ZHOME_MIN_TEMPERATURE 0
#define ZHOME_HEAT_ALL 1
#define ZHOME_HEAT_HEIGHT 20
#define ZHOME_X_POS 999999
#define ZHOME_Y_POS 999999
#define ENABLE_BACKLASH_COMPENSATION 0
#define X_BACKLASH 0
#define Y_BACKLASH 0
#define Z_BACKLASH 0
#define RAMP_ACCELERATION 1
#define STEPPER_HIGH_DELAY 1
#define DIRECTION_DELAY 2
#define STEP_DOUBLER_FREQUENCY 12000
#define ALLOW_QUADSTEPPING 1
#define DOUBLE_STEP_DELAY 0 // time in microseconds
#define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_X 100
#define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Y 100
#define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Z 50
#define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_X 50
#define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Y 50
#define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Z 40
#define INTERPOLATE_ACCELERATION_WITH_Z 0
#define ACCELERATION_FACTOR_TOP 100
#define MAX_JERK 20
#define MAX_ZJERK 0.3
#define PRINTLINE_CACHE_SIZE 16
#define MOVE_CACHE_LOW 10
#define LOW_TICKS_PER_MOVE 250000
#define FEATURE_TWO_XSTEPPER 0
#define X2_STEP_PIN   ORIG_E1_STEP_PIN
#define X2_DIR_PIN    ORIG_E1_DIR_PIN
#define X2_ENABLE_PIN ORIG_E1_ENABLE_PIN
#define FEATURE_TWO_YSTEPPER 0
#define Y2_STEP_PIN   ORIG_E1_STEP_PIN
#define Y2_DIR_PIN    ORIG_E1_DIR_PIN
#define Y2_ENABLE_PIN ORIG_E1_ENABLE_PIN
#define FEATURE_TWO_ZSTEPPER 0
#define Z2_STEP_PIN   ORIG_E1_STEP_PIN
#define Z2_DIR_PIN    ORIG_E1_DIR_PIN
#define Z2_ENABLE_PIN ORIG_E1_ENABLE_PIN
#define FEATURE_THREE_ZSTEPPER 0
#define Z3_STEP_PIN   ORIG_E2_STEP_PIN
#define Z3_DIR_PIN    ORIG_E2_DIR_PIN
#define Z3_ENABLE_PIN ORIG_E2_ENABLE_PIN
#define FEATURE_DITTO_PRINTING 0
#define USE_ADVANCE 0
#define ENABLE_QUADRATIC_ADVANCE 0


// ################# Misc. settings ##################

#define BAUDRATE 115200
#define ENABLE_POWER_ON_STARTUP 1
#define POWER_INVERTING 0
#define KILL_METHOD 1
#define ACK_WITH_LINENUMBER 1
#define WAITING_IDENTIFIER "wait"
#define ECHO_ON_EXECUTE 1
#define EEPROM_MODE 1
#undef PS_ON_PIN
#define PS_ON_PIN ORIG_PS_ON_PIN
#define JSON_OUTPUT 0

/* ======== Servos =======
Control the servos with
M340 P<servoId> S<pulseInUS>   / ServoID = 0..3  pulseInUs = 500..2500
Servos are controlled by a pulse width normally between 500 and 2500 with 1500ms in center position. 0 turns servo off.
WARNING: Servos can draw a considerable amount of current. Make sure your system can handle this or you may risk your hardware!
*/
#define FEATURE_SERVO 0
#define SERVO0_PIN 11
#define SERVO1_PIN -1
#define SERVO2_PIN -1
#define SERVO3_PIN -1
#define SERVO0_NEUTRAL_POS  -1
#define SERVO1_NEUTRAL_POS  -1
#define SERVO2_NEUTRAL_POS  -1
#define SERVO3_NEUTRAL_POS  -1
#define UI_SERVO_CONTROL 0
#define FAN_KICKSTART_TIME  200

        #define FEATURE_WATCHDOG 1

// #################### Z-Probing #####################

#define Z_PROBE_Z_OFFSET 0
#define Z_PROBE_Z_OFFSET_MODE 0
#define UI_BED_COATING 1
#define FEATURE_Z_PROBE 0
#define Z_PROBE_BED_DISTANCE 10
#define Z_PROBE_PIN -1
#define Z_PROBE_PULLUP 0
#define Z_PROBE_ON_HIGH 0
#define Z_PROBE_X_OFFSET 0
#define Z_PROBE_Y_OFFSET 0
#define Z_PROBE_WAIT_BEFORE_TEST 0
#define Z_PROBE_SPEED 2
#define Z_PROBE_XY_SPEED 150
#define Z_PROBE_SWITCHING_DISTANCE 1
#define Z_PROBE_REPETITIONS 1
#define Z_PROBE_HEIGHT 4
#define Z_PROBE_START_SCRIPT ""
#define Z_PROBE_FINISHED_SCRIPT ""
#define Z_PROBE_REQUIRES_HEATING 0
#define Z_PROBE_MIN_TEMPERATURE 150
#define FEATURE_AUTOLEVEL 1
#define Z_PROBE_X1 20
#define Z_PROBE_Y1 20
#define Z_PROBE_X2 160
#define Z_PROBE_Y2 20
#define Z_PROBE_X3 100
#define Z_PROBE_Y3 160
#define BED_LEVELING_METHOD 0
#define BED_CORRECTION_METHOD 0
#define BED_LEVELING_GRID_SIZE 5
#define BED_LEVELING_REPETITIONS 5
#define BED_MOTOR_1_X 0
#define BED_MOTOR_1_Y 0
#define BED_MOTOR_2_X 200
#define BED_MOTOR_2_Y 0
#define BED_MOTOR_3_X 100
#define BED_MOTOR_3_Y 200
#define BENDING_CORRECTION_A 0
#define BENDING_CORRECTION_B 0
#define BENDING_CORRECTION_C 0
#define FEATURE_AXISCOMP 0
#define AXISCOMP_TANXY 0
#define AXISCOMP_TANYZ 0
#define AXISCOMP_TANXZ 0

#ifndef SDSUPPORT  // Some boards have sd support on board. These define the values already in pins.h
#define SDSUPPORT 1
#undef SDCARDDETECT
#define SDCARDDETECT -1
#define SDCARDDETECTINVERTED 0
#define SD_EXTENDED_DIR 1 /** Show extended directory including file length. Don't use this with Pronterface! */
#define SD_RUN_ON_STOP ""
#define SD_STOP_HEATER_AND_MOTORS_ON_STOP 1
#define ARC_SUPPORT 1
#define FEATURE_MEMORY_POSITION 1
#define FEATURE_CHECKSUM_FORCED 0
#define FEATURE_FAN_CONTROL 1
#define FEATURE_FAN2_CONTROL 0
#define FEATURE_CONTROLLER 2
#define LANGUAGE_EN_ACTIVE 1
#define LANGUAGE_DE_ACTIVE 1
#define LANGUAGE_NL_ACTIVE 1
#define LANGUAGE_PT_ACTIVE 1
#define LANGUAGE_IT_ACTIVE 1
#define LANGUAGE_ES_ACTIVE 1
#define LANGUAGE_FI_ACTIVE 1
#define LANGUAGE_SE_ACTIVE 1
#define LANGUAGE_FR_ACTIVE 1
#define LANGUAGE_CZ_ACTIVE 1
#define LANGUAGE_PL_ACTIVE 1
#define LANGUAGE_TR_ACTIVE 1
#define UI_PRINTER_NAME "Vulcanus"
#define UI_PRINTER_COMPANY "Johannes Rostek"
#define UI_PAGES_DURATION 4000
#define UI_ANIMATION 0
#define UI_SPEEDDEPENDENT_POSITIONING 0
#define UI_DISABLE_AUTO_PAGESWITCH 1
#define UI_AUTORETURN_TO_MENU_AFTER 30000
#define FEATURE_UI_KEYS 0
#define UI_ENCODER_SPEED 1
#define UI_REVERSE_ENCODER 0
#define UI_KEY_BOUNCETIME 10
#define UI_KEY_FIRST_REPEAT 500
#define UI_KEY_REDUCE_REPEAT 50
#define UI_KEY_MIN_REPEAT 50
#define FEATURE_BEEPER 0
#define CASE_LIGHTS_PIN -1
#define CASE_LIGHT_DEFAULT_ON 1
#define UI_START_SCREEN_DELAY 1000
#define UI_DYNAMIC_ENCODER_SPEED 1
        /**
Beeper sound definitions for short beeps during key actions
and longer beeps for important actions.
Parameter is delay in microseconds and the secons is the number of repetitions.
Values must be in range 1..255
*/
#define BEEPER_SHORT_SEQUENCE 2,2
#define BEEPER_LONG_SEQUENCE 8,8
#define UI_SET_PRESET_HEATED_BED_TEMP_PLA 60
#define UI_SET_PRESET_EXTRUDER_TEMP_PLA   190
#define UI_SET_PRESET_HEATED_BED_TEMP_ABS 110
#define UI_SET_PRESET_EXTRUDER_TEMP_ABS   240
#define UI_SET_MIN_HEATED_BED_TEMP  30
#define UI_SET_MAX_HEATED_BED_TEMP 120
#define UI_SET_MIN_EXTRUDER_TEMP   170
#define UI_SET_MAX_EXTRUDER_TEMP   260
#define UI_SET_EXTRUDER_FEEDRATE 2
#define UI_SET_EXTRUDER_RETRACT_DISTANCE 3


#define NUM_MOTOR_DRIVERS 0






Comments

  • edited April 20
    You could try this for your movement issues:
    what does m119 return? should show L when endstop is activated H when not
    #define ENDSTOP_Z_MAX_INVERTING false should be true like the other physical endstops.
    software endstops should be false for the physical (existing) ones and true for the non-existing ones.

    These should be changed if motors move in the wrong direction or you could reverse the plug orientation on the RAMPS board (if possible)
    #define INVERT_X_DIR 1
    #define INVERT_Y_DIR 1
    #define INVERT_Z_DIR 0
    Hope that might help.

    I don't have dual extruders but I am pretty sure you have to compile it in the firmware. The on-line configurator tool will allow this.

  • Thanks for the eply Roko!

    All of them shows L when they are opened and H when they are triggered.

    I tryed #define ENDSTOP_Z_MAX_INVERTING false, but then when I home Z, bed moves downwards a bit and then stops.
    I also changed the status of the software endstops but nothing changed.

    My motors work fine to every direction. I didn't mention, before home the Z axis, I can move it upwards or downwards normally. I can home all axis and after that if I try to move the Z axis it moves downwards till the farest point (which is Zmax).

    What do you mean to compile it in the firmware? Arduini software does the compliling and uploads it to my board.
    The firmware that I get from the on-line configuration tool also doesn't work.
  • Can you verify,  where is the Z endstop switch located, at the top or the bottom of the machine ?
  • just to be shure i took a look at this:
    http://www.instructables.com/id/Vulcanus-MAX-CoreXY-Aluminum-Frame-RepRap-3D-Print/

    so when your plate moves to bottom of machine at homing homing direction is zmax.

    when it moves close to extruders homing direction is zmin



  • MartinH is located near the extruder. Is a proximity sensor.

    RAyWB yes this is the machine I build a copy of. I am not sure what exactly do you mean. I know that ( in general) the Zmin is the lowest point that a bed can reach and the Zmax the highest right?
    When I turn on the machine and the bed is at any point (let's say in the middle of the printer) I can move it upwards or downwards normally from host. When I press home Z, the bed goes upwards and stops near the extruders (when the Z endstop triggers) as it should. NOW my problem starts. If now I try to move downwards the bed, it starts moving downwards and doesn't stop. It stops after 350mm which is the Z max length I have set for my printer.
  • edited April 21
    youre wrong.  Zaxis  distance is measured from extruders to bed.

    so when bed is on biggest distance to extruders its ZMAX and when it´s closest distance to extruders its ZMIN.

    when you do your homing the way you wrote it´s zmin homing.

    so it seems your defines of zaxis direction ,Zendstop and homing direction is wrong.

    you have to set

    #define ENDSTOP_PULLUP_Z_MIN true
    #define ENDSTOP_Z_MIN_INVERTING true
    #define MIN_HARDWARE_ENDSTOP_Z true

    #define ENDSTOP_PULLUP_Z_MAX false
    #define ENDSTOP_Z_MAX_INVERTING false
    #define MAX_HARDWARE_ENDSTOP_Z false


    #define X_HOME_DIR -1
    #define Y_HOME_DIR -1
    #define Z_HOME_DIR -1


    not shure about

    #define INVERT_Z_DIR 0   ,

    if you move z+ direction and it moves away from extruders its ok,otherwise set

    #define INVERT_Z_DIR 1












  • I did what you told me and  also connected the proximity sensor to Zmin pin on the raps 1.4 board.

    Now I can move the bed normally, with z+ goes upwards and with z- goes downwards.
    But when I home Z it moves a little bit upwards and stops which it means the machine understands the bed has reached the home position right? I trigger the sensor with a metal and press the Zhome button and the bed goes downwards and when I release the sensor the bed stops. In this case the bed is trying to home away from the extruders.
  • Sorry I forgot to mention I fixed the sensor triggering by changing #define MIN_HARDWARE_ENDSTOP_Z from true to false and again when I home Z my bed goes downwards.
  • I fixed that! I didn't read carefully the part you said :

    "if you move z+ direction and it moves away from extruders its ok,otherwise set
    #define INVERT_Z_DIR 1
    Sorry about that.

    Now it homes fine but when I press Z+ from host my bed moves downwards and when I press Z- my bed goes upwards. Is this normal? it is going to print normally?
    Thank you anyway for your help.

    About the two extruders configuration and the compiling problem has anyone any idea?
  • edited April 21
    yes, that´s exactly what it should do !

    if you move z + , the distance from bedto extruder has to get bigger

    regarding 2nd extruder , it´s not enough to change the number from 1 to 2.

    think it´s best to use the configtool with corrected settings
  • RAyWB you are the best!!!! Your tips were really helpful!

    I tryed again the configuration tool (by the way it is very helpful) and I put the settings that I have tested so far. The only problem I have now is with my  second extruder heater. To heat it up from Host, I need to turn on the second extruder icon and also the fan. I think this has something to do with the pins configuration right? I am trying right now to fix this.
  • edited April 21
    on Ramps it is not possible to have heated bed, 2 extruders and fan as you just have 3 mosfet outputs...

    there are some extension boards available to add more mosfet outputs.
  • Yes I know. I have connected the fan directly on 12VDC for now and later I will fix that. I also saw that there are some extention boards for extra fans. I have connected my 2nd extruder to D9 instead of fan. How can I make this D9 output to control 2nd extruder?
  • edited April 21
    seems you have activated fan and second extruder  in config tool.

    disable fan in config tool or

    add following lines to configuration.h

    after line :
    #include "pins.h"

    add :

    #undef FAN_PIN
    #define FAN_PIN           4


  • Yes that worked for me thank you.

    After a long day with configurating, testing etc I have everything almost done, except autoleveling bed.
    I followed the instructions of z probing, although some points werent perfectly clear for me, and I sent a G30! I got the following error:

    "Error:z-probe triggered before strarting probing."

    I use z prob and z min endstop from the same pin and their status operates normally when I trigger it.
    I looked around  in forum but didn't find any topic about this.

    Below my latest configuration file if you can see something wrong

    /*
        This file is part of Repetier-Firmware.

        Repetier-Firmware is free software: you can redistribute it and/or modify
        it under the terms of the GNU General Public License as published by
        the Free Software Foundation, either version 3 of the License, or
        (at your option) any later version.

        Repetier-Firmware is distributed in the hope that it will be useful,
        but WITHOUT ANY WARRANTY; without even the implied warranty of
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        GNU General Public License for more details.

        You should have received a copy of the GNU General Public License
        along with Repetier-Firmware.  If not, see <http://www.gnu.org/licenses/>.

    */

    #ifndef CONFIGURATION_H
    #define CONFIGURATION_H

    /**************** READ FIRST ************************

       This configuration file was created with the configuration tool. For that
       reason, it does not contain the same informations as the original Configuration.h file.
       It misses the comments and unused parts. Open this file file in the config tool
       to see and change the data. You can also upload it to newer/older versions. The system
       will silently add new options, so compilation continues to work.

       This file is optimized for version 0.92

       If you are in doubt which named functions use which pins on your board, please check the
       pins.h for the used name->pin assignments and your board documentation to verify it is
       as you expect.

    */

    #define NUM_EXTRUDER 2
    #define MOTHERBOARD 33
    #include "pins.h"

    // ################## EDIT THESE SETTINGS MANUALLY ################
    // ################ END MANUAL SETTINGS ##########################

    #undef FAN_PIN
    #define FAN_PIN -1
    #undef FAN_BOARD_PIN
    #define FAN_BOARD_PIN -1
    #define BOARD_FAN_SPEED 255
    #define FAN_THERMO_PIN -1
    #define FAN_THERMO_MIN_PWM 128
    #define FAN_THERMO_MAX_PWM 255
    #define FAN_THERMO_MIN_TEMP 45
    #define FAN_THERMO_MAX_TEMP 60
    #define FAN_THERMO_THERMISTOR_PIN -1
    #define FAN_THERMO_THERMISTOR_TYPE 1

    //#define EXTERNALSERIAL  use Arduino serial library instead of build in. Requires more ram, has only 63 byte input buffer.
    // Uncomment the following line if you are using Arduino compatible firmware made for Arduino version earlier then 1.0
    // If it is incompatible you will get compiler errors about write functions not being compatible!
    //#define COMPAT_PRE1
    #define BLUETOOTH_SERIAL  -1
    #define BLUETOOTH_BAUD  115200
    #define MIXING_EXTRUDER 0

    #define DRIVE_SYSTEM 1
    #define XAXIS_STEPS_PER_MM 155
    #define YAXIS_STEPS_PER_MM 155
    #define ZAXIS_STEPS_PER_MM 420
    #define EXTRUDER_FAN_COOL_TEMP 50
    #define PDM_FOR_EXTRUDER 0
    #define PDM_FOR_COOLER 0
    #define DECOUPLING_TEST_MAX_HOLD_VARIANCE 20
    #define DECOUPLING_TEST_MIN_TEMP_RISE 1
    #define KILL_IF_SENSOR_DEFECT 0
    #define RETRACT_ON_PAUSE 2
    #define PAUSE_START_COMMANDS ""
    #define PAUSE_END_COMMANDS ""
    #define SHARED_EXTRUDER_HEATER 0
    #define EXT0_X_OFFSET 0
    #define EXT0_Y_OFFSET 0
    #define EXT0_Z_OFFSET 0
    #define EXT0_STEPS_PER_MM 120
    #define EXT0_TEMPSENSOR_TYPE 1
    #define EXT0_TEMPSENSOR_PIN TEMP_0_PIN
    #define EXT0_HEATER_PIN HEATER_0_PIN
    #define EXT0_STEP_PIN ORIG_E0_STEP_PIN
    #define EXT0_DIR_PIN ORIG_E0_DIR_PIN
    #define EXT0_INVERSE 0
    #define EXT0_ENABLE_PIN ORIG_E0_ENABLE_PIN
    #define EXT0_ENABLE_ON 0
    #define EXT0_MIRROR_STEPPER 0
    #define EXT0_STEP2_PIN ORIG_E0_STEP_PIN
    #define EXT0_DIR2_PIN ORIG_E0_DIR_PIN
    #define EXT0_INVERSE2 0
    #define EXT0_ENABLE2_PIN ORIG_E0_ENABLE_PIN
    #define EXT0_MAX_FEEDRATE 50
    #define EXT0_MAX_START_FEEDRATE 20
    #define EXT0_MAX_ACCELERATION 5000
    #define EXT0_HEAT_MANAGER 1
    #define EXT0_WATCHPERIOD 1
    #define EXT0_PID_INTEGRAL_DRIVE_MAX 230
    #define EXT0_PID_INTEGRAL_DRIVE_MIN 40
    #define EXT0_PID_PGAIN_OR_DEAD_TIME 45.98
    #define EXT0_PID_I 4.76
    #define EXT0_PID_D 111.1
    #define EXT0_PID_MAX 255
    #define EXT0_ADVANCE_K 0
    #define EXT0_ADVANCE_L 0
    #define EXT0_ADVANCE_BACKLASH_STEPS 0
    #define EXT0_WAIT_RETRACT_TEMP 150
    #define EXT0_WAIT_RETRACT_UNITS 0
    #define EXT0_SELECT_COMMANDS ""
    #define EXT0_DESELECT_COMMANDS ""
    #define EXT0_EXTRUDER_COOLER_PIN -1
    #define EXT0_EXTRUDER_COOLER_SPEED 255
    #define EXT0_DECOUPLE_TEST_PERIOD 12000
    #define EXT0_JAM_PIN -1
    #define EXT0_JAM_PULLUP 0
    #define EXT1_X_OFFSET 8812
    #define EXT1_Y_OFFSET 0
    #define EXT1_Z_OFFSET 0
    #define EXT1_STEPS_PER_MM 107
    #define EXT1_TEMPSENSOR_TYPE 1
    #define EXT1_TEMPSENSOR_PIN TEMP_2_PIN
    #define EXT1_HEATER_PIN HEATER_2_PIN
    #define EXT1_STEP_PIN ORIG_E1_STEP_PIN
    #define EXT1_DIR_PIN ORIG_E1_DIR_PIN
    #define EXT1_INVERSE 0
    #define EXT1_ENABLE_PIN ORIG_E1_ENABLE_PIN
    #define EXT1_ENABLE_ON 0
    #define EXT1_MIRROR_STEPPER 0
    #define EXT1_STEP2_PIN ORIG_E1_STEP_PIN
    #define EXT1_DIR2_PIN ORIG_E1_DIR_PIN
    #define EXT1_INVERSE2 0
    #define EXT1_ENABLE2_PIN ORIG_E1_ENABLE_PIN
    #define EXT1_MAX_FEEDRATE 50
    #define EXT1_MAX_START_FEEDRATE 20
    #define EXT1_MAX_ACCELERATION 5000
    #define EXT1_HEAT_MANAGER 3
    #define EXT1_WATCHPERIOD 1
    #define EXT1_PID_INTEGRAL_DRIVE_MAX 230
    #define EXT1_PID_INTEGRAL_DRIVE_MIN 40
    #define EXT1_PID_PGAIN_OR_DEAD_TIME 7
    #define EXT1_PID_I 2
    #define EXT1_PID_D 40
    #define EXT1_PID_MAX 255
    #define EXT1_ADVANCE_K 0
    #define EXT1_ADVANCE_L 0
    #define EXT1_ADVANCE_BACKLASH_STEPS 0
    #define EXT1_WAIT_RETRACT_TEMP 150
    #define EXT1_WAIT_RETRACT_UNITS 0
    #define EXT1_SELECT_COMMANDS ""
    #define EXT1_DESELECT_COMMANDS ""
    #define EXT1_EXTRUDER_COOLER_PIN -1
    #define EXT1_EXTRUDER_COOLER_SPEED 255
    #define EXT1_DECOUPLE_TEST_PERIOD 12000
    #define EXT1_JAM_PIN -1
    #define EXT1_JAM_PULLUP 0

    #define FEATURE_RETRACTION 1
    #define AUTORETRACT_ENABLED 1
    #define RETRACTION_LENGTH 3
    #define RETRACTION_LONG_LENGTH 13
    #define RETRACTION_SPEED 40
    #define RETRACTION_Z_LIFT 0
    #define RETRACTION_UNDO_EXTRA_LENGTH 0
    #define RETRACTION_UNDO_EXTRA_LONG_LENGTH 0
    #define RETRACTION_UNDO_SPEED 20
    #define FILAMENTCHANGE_X_POS 0
    #define FILAMENTCHANGE_Y_POS 0
    #define FILAMENTCHANGE_Z_ADD  2
    #define FILAMENTCHANGE_REHOME 1
    #define FILAMENTCHANGE_SHORTRETRACT 5
    #define FILAMENTCHANGE_LONGRETRACT 50
    #define JAM_STEPS 220
    #define JAM_SLOWDOWN_STEPS 320
    #define JAM_SLOWDOWN_TO 70
    #define JAM_ERROR_STEPS 500
    #define JAM_MIN_STEPS 10
    #define JAM_ACTION 1

    #define RETRACT_DURING_HEATUP true
    #define PID_CONTROL_RANGE 20
    #define SKIP_M109_IF_WITHIN 2
    #define SCALE_PID_TO_MAX 0
    #define TEMP_HYSTERESIS 0
    #define EXTRUDE_MAXLENGTH 160
    #define NUM_TEMPS_USERTHERMISTOR0 0
    #define USER_THERMISTORTABLE0 {}
    #define NUM_TEMPS_USERTHERMISTOR1 0
    #define USER_THERMISTORTABLE1 {}
    #define NUM_TEMPS_USERTHERMISTOR2 0
    #define USER_THERMISTORTABLE2 {}
    #define GENERIC_THERM_VREF 5
    #define GENERIC_THERM_NUM_ENTRIES 33
    #define HEATER_PWM_SPEED 0

    // ############# Heated bed configuration ########################

    #define HAVE_HEATED_BED 1
    #define HEATED_BED_MAX_TEMP 68
    #define SKIP_M190_IF_WITHIN 3
    #define HEATED_BED_SENSOR_TYPE 1
    #define HEATED_BED_SENSOR_PIN TEMP_1_PIN
    #define HEATED_BED_HEATER_PIN HEATER_1_PIN
    #define HEATED_BED_SET_INTERVAL 5000
    #define HEATED_BED_HEAT_MANAGER 1
    #define HEATED_BED_PID_INTEGRAL_DRIVE_MAX 255
    #define HEATED_BED_PID_INTEGRAL_DRIVE_MIN 80
    #define HEATED_BED_PID_PGAIN_OR_DEAD_TIME   196
    #define HEATED_BED_PID_IGAIN   33
    #define HEATED_BED_PID_DGAIN 290
    #define HEATED_BED_PID_MAX 255
    #define HEATED_BED_DECOUPLE_TEST_PERIOD 300000
    #define MIN_EXTRUDER_TEMP 150
    #define MAXTEMP 275
    #define MIN_DEFECT_TEMPERATURE -10
    #define MAX_DEFECT_TEMPERATURE 290

    // ##########################################################################################
    // ##                             Laser configuration                                      ##
    // ##########################################################################################

    /*
    If the firmware is in laser mode, it can control a laser output to cut or engrave materials.
    Please use this feature only if you know about safety and required protection. Lasers are
    dangerous and can hurt or make you blind!!!

    The default laser driver only supports laser on and off. Here you control the eíntensity with
    your feedrate. For exchangeable diode lasers this is normally enough. If you need more control
    you can set the intensity in a range 0-255 with a custom extension to the driver. See driver.h
    and comments on how to extend the functions non invasive with our event system.

    If you have a laser - powder system you will like your E override. If moves contain a
    increasing extruder position it will laser that move. With this trick you can
    use existing fdm slicers to laser the output. Laser width is extrusion width.

    Other tools may use M3 and M5 to enable/disable laser. Here G1/G2/G3 moves have laser enabled
    and G0 moves have it disables.

    In any case, laser only enables while moving. At the end of a move it gets
    automatically disabled.
    */

    #define SUPPORT_LASER 0
    #define LASER_PIN -1
    #define LASER_ON_HIGH 1

    // ##                              CNC configuration                                       ##

    /*
    If the firmware is in CNC mode, it can control a mill with M3/M4/M5. It works
    similar to laser mode, but mill keeps enabled during G0 moves and it allows
    setting rpm (only with event extension that supports this) and milling direction.
    It also can add a delay to wait for spindle to run on full speed.
    */

    #define SUPPORT_CNC 0
    #define CNC_WAIT_ON_ENABLE 300
    #define CNC_WAIT_ON_DISABLE 0
    #define CNC_ENABLE_PIN -1
    #define CNC_ENABLE_WITH 1
    #define CNC_DIRECTION_PIN -1
    #define CNC_DIRECTION_CW 1


    #define DEFAULT_PRINTER_MODE 0

    // ################ Endstop configuration #####################

    #define ENDSTOP_PULLUP_X_MIN true
    #define ENDSTOP_X_MIN_INVERTING true
    #define MIN_HARDWARE_ENDSTOP_X true
    #define ENDSTOP_PULLUP_Y_MIN true
    #define ENDSTOP_Y_MIN_INVERTING true
    #define MIN_HARDWARE_ENDSTOP_Y true
    #define ENDSTOP_PULLUP_Z_MIN true
    #define ENDSTOP_Z_MIN_INVERTING false
    #define MIN_HARDWARE_ENDSTOP_Z true
    #define ENDSTOP_PULLUP_X_MAX true
    #define ENDSTOP_X_MAX_INVERTING false
    #define MAX_HARDWARE_ENDSTOP_X false
    #define ENDSTOP_PULLUP_Y_MAX true
    #define ENDSTOP_Y_MAX_INVERTING false
    #define MAX_HARDWARE_ENDSTOP_Y false
    #define ENDSTOP_PULLUP_Z_MAX true
    #define ENDSTOP_Z_MAX_INVERTING false
    #define MAX_HARDWARE_ENDSTOP_Z false
    #define max_software_endstop_r true

    #define min_software_endstop_x false
    #define min_software_endstop_y false
    #define min_software_endstop_z false
    #define max_software_endstop_x true
    #define max_software_endstop_y true
    #define max_software_endstop_z true
    #define ENDSTOP_X_BACK_MOVE 5
    #define ENDSTOP_Y_BACK_MOVE 5
    #define ENDSTOP_Z_BACK_MOVE 2
    #define ENDSTOP_X_RETEST_REDUCTION_FACTOR 3
    #define ENDSTOP_Y_RETEST_REDUCTION_FACTOR 3
    #define ENDSTOP_Z_RETEST_REDUCTION_FACTOR 3
    #define ENDSTOP_X_BACK_ON_HOME 1
    #define ENDSTOP_Y_BACK_ON_HOME 1
    #define ENDSTOP_Z_BACK_ON_HOME 0
    #define ALWAYS_CHECK_ENDSTOPS 1

    // ################# XYZ movements ###################

    #define X_ENABLE_ON 0
    #define Y_ENABLE_ON 0
    #define Z_ENABLE_ON 0
    #define DISABLE_X 0
    #define DISABLE_Y 0
    #define DISABLE_Z 0
    #define DISABLE_E 0
    #define INVERT_X_DIR 1
    #define INVERT_Y_DIR 1
    #define INVERT_Z_DIR 1
    #define X_HOME_DIR -1
    #define Y_HOME_DIR -1
    #define Z_HOME_DIR -1
    #define X_MAX_LENGTH 350
    #define Y_MAX_LENGTH 450
    #define Z_MAX_LENGTH 350
    #define X_MIN_POS 0
    #define Y_MIN_POS 0
    #define Z_MIN_POS 0
    #define DISTORTION_CORRECTION 0
    #define DISTORTION_CORRECTION_POINTS 3
    #define DISTORTION_CORRECTION_R 100
    #define DISTORTION_PERMANENT 1
    #define DISTORTION_UPDATE_FREQUENCY 15
    #define DISTORTION_START_DEGRADE 0.5
    #define DISTORTION_END_HEIGHT 1
    #define DISTORTION_EXTRAPOLATE_CORNERS 0
    #define DISTORTION_XMIN 0
    #define DISTORTION_YMIN 0
    #define DISTORTION_XMAX 334
    #define DISTORTION_YMAX 432

    // ##########################################################################################
    // ##                           Movement settings                                          ##
    // ##########################################################################################

    #define FEATURE_BABYSTEPPING 1
    #define BABYSTEP_MULTIPLICATOR 1

    #define DELTA_SEGMENTS_PER_SECOND_PRINT 180 // Move accurate setting for print moves
    #define DELTA_SEGMENTS_PER_SECOND_MOVE 70 // Less accurate setting for other moves
    #define EXACT_DELTA_MOVES 1

    // Delta settings
    #define DELTA_HOME_ON_POWER 0

    #define DELTASEGMENTS_PER_PRINTLINE 24
    #define STEPPER_INACTIVE_TIME 360L
    #define MAX_INACTIVE_TIME 0L
    #define MAX_FEEDRATE_X 200
    #define MAX_FEEDRATE_Y 200
    #define MAX_FEEDRATE_Z 140
    #define HOMING_FEEDRATE_X 40
    #define HOMING_FEEDRATE_Y 40
    #define HOMING_FEEDRATE_Z 14
    #define HOMING_ORDER HOME_ORDER_XYZ
    #define ZHOME_MIN_TEMPERATURE 0
    #define ZHOME_HEAT_ALL 1
    #define ZHOME_HEAT_HEIGHT 20
    #define ZHOME_X_POS 999999
    #define ZHOME_Y_POS 999999
    #define ENABLE_BACKLASH_COMPENSATION 0
    #define X_BACKLASH 0
    #define Y_BACKLASH 0
    #define Z_BACKLASH 0
    #define RAMP_ACCELERATION 1
    #define STEPPER_HIGH_DELAY 1
    #define DIRECTION_DELAY 2
    #define STEP_DOUBLER_FREQUENCY 12000
    #define ALLOW_QUADSTEPPING 1
    #define DOUBLE_STEP_DELAY 0 // time in microseconds
    #define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_X 1000
    #define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Y 1000
    #define MAX_ACCELERATION_UNITS_PER_SQ_SECOND_Z 500
    #define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_X 50
    #define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Y 50
    #define MAX_TRAVEL_ACCELERATION_UNITS_PER_SQ_SECOND_Z 40
    #define INTERPOLATE_ACCELERATION_WITH_Z 0
    #define ACCELERATION_FACTOR_TOP 100
    #define MAX_JERK 14
    #define MAX_ZJERK 0.3
    #define PRINTLINE_CACHE_SIZE 16
    #define MOVE_CACHE_LOW 10
    #define LOW_TICKS_PER_MOVE 250000
    #define EXTRUDER_SWITCH_XY_SPEED 100
    #define DUAL_X_AXIS 0
    #define FEATURE_TWO_XSTEPPER 0
    #define X2_STEP_PIN   ORIG_E1_STEP_PIN
    #define X2_DIR_PIN    ORIG_E1_DIR_PIN
    #define X2_ENABLE_PIN ORIG_E1_ENABLE_PIN
    #define FEATURE_TWO_YSTEPPER 0
    #define Y2_STEP_PIN   ORIG_E1_STEP_PIN
    #define Y2_DIR_PIN    ORIG_E1_DIR_PIN
    #define Y2_ENABLE_PIN ORIG_E1_ENABLE_PIN
    #define FEATURE_TWO_ZSTEPPER 0
    #define Z2_STEP_PIN   ORIG_E1_STEP_PIN
    #define Z2_DIR_PIN    ORIG_E1_DIR_PIN
    #define Z2_ENABLE_PIN ORIG_E1_ENABLE_PIN
    #define FEATURE_THREE_ZSTEPPER 0
    #define Z3_STEP_PIN   ORIG_E2_STEP_PIN
    #define Z3_DIR_PIN    ORIG_E2_DIR_PIN
    #define Z3_ENABLE_PIN ORIG_E2_ENABLE_PIN
    #define FEATURE_DITTO_PRINTING 0
    #define USE_ADVANCE 0
    #define ENABLE_QUADRATIC_ADVANCE 0


    // ################# Misc. settings ##################

    #define BAUDRATE 115200
    #define ENABLE_POWER_ON_STARTUP 1
    #define POWER_INVERTING 0
    #define KILL_METHOD 1
    #define ACK_WITH_LINENUMBER 1
    #define WAITING_IDENTIFIER "wait"
    #define ECHO_ON_EXECUTE 1
    #define EEPROM_MODE 1
    #undef PS_ON_PIN
    #define PS_ON_PIN ORIG_PS_ON_PIN
    #define JSON_OUTPUT 0

    /* ======== Servos =======
    Control the servos with
    M340 P<servoId> S<pulseInUS>   / ServoID = 0..3  pulseInUs = 500..2500
    Servos are controlled by a pulse width normally between 500 and 2500 with 1500ms in center position. 0 turns servo off.
    WARNING: Servos can draw a considerable amount of current. Make sure your system can handle this or you may risk your hardware!
    */
    #define FEATURE_SERVO 0
    #define SERVO0_PIN 11
    #define SERVO1_PIN -1
    #define SERVO2_PIN -1
    #define SERVO3_PIN -1
    #define SERVO0_NEUTRAL_POS  -1
    #define SERVO1_NEUTRAL_POS  -1
    #define SERVO2_NEUTRAL_POS  -1
    #define SERVO3_NEUTRAL_POS  -1
    #define UI_SERVO_CONTROL 0
    #define FAN_KICKSTART_TIME  200

            #define FEATURE_WATCHDOG 1

    // #################### Z-Probing #####################

    #define Z_PROBE_Z_OFFSET 0
    #define Z_PROBE_Z_OFFSET_MODE 0
    #define UI_BED_COATING 1
    #define FEATURE_Z_PROBE true
    #define Z_PROBE_BED_DISTANCE 3.32
    #define Z_PROBE_PIN ORIG_Z_MIN_PIN
    #define Z_PROBE_PULLUP true
    #define Z_PROBE_ON_HIGH true
    #define Z_PROBE_X_OFFSET 42
    #define Z_PROBE_Y_OFFSET 54
    #define Z_PROBE_WAIT_BEFORE_TEST false
    #define Z_PROBE_SPEED 2
    #define Z_PROBE_XY_SPEED 150
    #define Z_PROBE_SWITCHING_DISTANCE 5
    #define Z_PROBE_REPETITIONS 4
    #define Z_PROBE_HEIGHT 1.6
    #define Z_PROBE_START_SCRIPT "Auto leveling bed started.."
    #define Z_PROBE_FINISHED_SCRIPT "Auto leveling bed completed!"
    #define Z_PROBE_REQUIRES_HEATING 0
    #define Z_PROBE_MIN_TEMPERATURE 150
    #define FEATURE_AUTOLEVEL 1
    #define Z_PROBE_X1 0
    #define Z_PROBE_Y1 0
    #define Z_PROBE_X2 334
    #define Z_PROBE_Y2 0
    #define Z_PROBE_X3 0
    #define Z_PROBE_Y3 432
    #define BED_LEVELING_METHOD 0
    #define BED_CORRECTION_METHOD 0
    #define BED_LEVELING_GRID_SIZE 5
    #define BED_LEVELING_REPETITIONS 5
    #define BED_MOTOR_1_X 0
    #define BED_MOTOR_1_Y 0
    #define BED_MOTOR_2_X 200
    #define BED_MOTOR_2_Y 0
    #define BED_MOTOR_3_X 100
    #define BED_MOTOR_3_Y 200
    #define BENDING_CORRECTION_A 0
    #define BENDING_CORRECTION_B 0
    #define BENDING_CORRECTION_C 0
    #define FEATURE_AXISCOMP 0
    #define AXISCOMP_TANXY 0
    #define AXISCOMP_TANYZ 0
    #define AXISCOMP_TANXZ 0

    #ifndef SDSUPPORT  // Some boards have sd support on board. These define the values already in pins.h
    #define SDSUPPORT 1
    #undef SDCARDDETECT
    #define SDCARDDETECT -1
    #define SDCARDDETECTINVERTED 0
    #define SD_EXTENDED_DIR 1 /** Show extended directory including file length. Don't use this with Pronterface! */
    #define SD_RUN_ON_STOP ""
    #define SD_STOP_HEATER_AND_MOTORS_ON_STOP 1
    #define ARC_SUPPORT 1
    #define FEATURE_MEMORY_POSITION 1
    #define FEATURE_CHECKSUM_FORCED 0
    #define FEATURE_FAN_CONTROL 1
    #define FEATURE_FAN2_CONTROL 0
    #define FEATURE_CONTROLLER 2
    #define ADC_KEYPAD_PIN -1
    #define LANGUAGE_EN_ACTIVE 1
    #define LANGUAGE_DE_ACTIVE 0
    #define LANGUAGE_NL_ACTIVE 0
    #define LANGUAGE_PT_ACTIVE 0
    #define LANGUAGE_IT_ACTIVE 0
    #define LANGUAGE_ES_ACTIVE 0
    #define LANGUAGE_FI_ACTIVE 0
    #define LANGUAGE_SE_ACTIVE 0
    #define LANGUAGE_FR_ACTIVE 0
    #define LANGUAGE_CZ_ACTIVE 0
    #define LANGUAGE_PL_ACTIVE 0
    #define LANGUAGE_TR_ACTIVE 0
    #define UI_PRINTER_NAME "3DP"
    #define UI_PRINTER_COMPANY "Laspiros"
    #define UI_PAGES_DURATION 4000
    #define UI_ANIMATION 1
    #define UI_SPEEDDEPENDENT_POSITIONING 0
    #define UI_DISABLE_AUTO_PAGESWITCH 1
    #define UI_AUTORETURN_TO_MENU_AFTER 8000
    #define FEATURE_UI_KEYS 0
    #define UI_ENCODER_SPEED 1
    #define UI_REVERSE_ENCODER 0
    #define UI_KEY_BOUNCETIME 10
    #define UI_KEY_FIRST_REPEAT 500
    #define UI_KEY_REDUCE_REPEAT 50
    #define UI_KEY_MIN_REPEAT 50
    #define FEATURE_BEEPER 1
    #define CASE_LIGHTS_PIN -1
    #define CASE_LIGHT_DEFAULT_ON 1
    #define UI_START_SCREEN_DELAY 1000
    #define UI_DYNAMIC_ENCODER_SPEED 1
            /**
    Beeper sound definitions for short beeps during key actions
    and longer beeps for important actions.
    Parameter is delay in microseconds and the secons is the number of repetitions.
    Values must be in range 1..255
    */
    #define BEEPER_SHORT_SEQUENCE 2,2
    #define BEEPER_LONG_SEQUENCE 8,8
    #define UI_SET_PRESET_HEATED_BED_TEMP_PLA 55
    #define UI_SET_PRESET_EXTRUDER_TEMP_PLA   200
    #define UI_SET_PRESET_HEATED_BED_TEMP_ABS 110
    #define UI_SET_PRESET_EXTRUDER_TEMP_ABS   240
    #define UI_SET_MIN_HEATED_BED_TEMP  30
    #define UI_SET_MAX_HEATED_BED_TEMP 120
    #define UI_SET_MIN_EXTRUDER_TEMP   170
    #define UI_SET_MAX_EXTRUDER_TEMP   260
    #define UI_SET_EXTRUDER_FEEDRATE 2
    #define UI_SET_EXTRUDER_RETRACT_DISTANCE 3


    #define NUM_MOTOR_DRIVERS 0




    /* Below you will find the configuration string, that created this Configuration.h

    ========== Start configuration string ==========
    {
        "editMode": 0,
        "processor": 0,
        "baudrate": 115200,
        "bluetoothSerial": -1,
        "bluetoothBaudrate": 115200,
        "xStepsPerMM": 155,
        "yStepsPerMM": 155,
        "zStepsPerMM": 420,
        "xInvert": "1",
        "xInvertEnable": 0,
        "eepromMode": 1,
        "yInvert": "1",
        "yInvertEnable": 0,
        "zInvert": "1",
        "zInvertEnable": 0,
        "extruder": [
            {
                "id": 0,
                "heatManager": 1,
                "pidDriveMin": 40,
                "pidDriveMax": 230,
                "pidMax": 255,
                "sensorType": 1,
                "sensorPin": "TEMP_0_PIN",
                "heaterPin": "HEATER_0_PIN",
                "maxFeedrate": 50,
                "startFeedrate": 20,
                "invert": "0",
                "invertEnable": "0",
                "acceleration": 5000,
                "watchPeriod": 1,
                "pidP": 45.98,
                "pidI": 4.76,
                "pidD": 111.1,
                "advanceK": 0,
                "advanceL": 0,
                "waitRetractTemp": 150,
                "waitRetractUnits": 0,
                "waitRetract": 0,
                "stepsPerMM": 213,
                "coolerPin": -1,
                "coolerSpeed": 255,
                "selectCommands": "",
                "deselectCommands": "",
                "xOffset": 0,
                "yOffset": 0,
                "zOffset": 0,
                "xOffsetSteps": 0,
                "yOffsetSteps": 0,
                "zOffsetSteps": 0,
                "stepper": {
                    "name": "Extruder 0",
                    "step": "ORIG_E0_STEP_PIN",
                    "dir": "ORIG_E0_DIR_PIN",
                    "enable": "ORIG_E0_ENABLE_PIN"
                },
                "advanceBacklashSteps": 0,
                "decoupleTestPeriod": 12,
                "jamPin": -1,
                "jamPullup": "0",
                "mirror": "0",
                "invert2": "0",
                "stepper2": {
                    "name": "Extruder 0",
                    "step": "ORIG_E0_STEP_PIN",
                    "dir": "ORIG_E0_DIR_PIN",
                    "enable": "ORIG_E0_ENABLE_PIN"
                }
            },
            {
                "id": 1,
                "heatManager": 3,
                "pidDriveMin": 40,
                "pidDriveMax": 230,
                "pidMax": 255,
                "sensorType": 1,
                "sensorPin": "TEMP_2_PIN",
                "heaterPin": "HEATER_2_PIN",
                "maxFeedrate": 50,
                "startFeedrate": 20,
                "invert": "0",
                "invertEnable": "0",
                "acceleration": 5000,
                "watchPeriod": 1,
                "pidP": 7,
                "pidI": 2,
                "pidD": 40,
                "advanceK": 0,
                "advanceL": 0,
                "waitRetractTemp": 150,
                "waitRetractUnits": 0,
                "waitRetract": 0,
                "stepsPerMM": 370,
                "coolerPin": -1,
                "coolerSpeed": 255,
                "selectCommands": "",
                "deselectCommands": "",
                "xOffset": 56.85,
                "yOffset": 0,
                "zOffset": 0,
                "xOffsetSteps": 8812,
                "yOffsetSteps": 0,
                "zOffsetSteps": 0,
                "stepper": {
                    "name": "Extruder 1",
                    "step": "ORIG_E1_STEP_PIN",
                    "dir": "ORIG_E1_DIR_PIN",
                    "enable": "ORIG_E1_ENABLE_PIN"
                },
                "advanceBacklashSteps": 0,
                "decoupleTestPeriod": 12,
                "jamPin": -1,
                "jamPullup": "0",
                "mirror": "0",
                "invert2": "0",
                "stepper2": {
                    "name": "Extruder 1",
                    "step": "ORIG_E1_STEP_PIN",
                    "dir": "ORIG_E1_DIR_PIN",
                    "enable": "ORIG_E1_ENABLE_PIN"
                }
            }
        ],
        "uiLanguage": 0,
        "uiController": 0,
        "xMinEndstop": 1,
        "yMinEndstop": 1,
        "zMinEndstop": 2,
        "xMaxEndstop": 0,
        "yMaxEndstop": 0,
        "zMaxEndstop": 0,
        "motherboard": 33,
        "driveSystem": 1,
        "xMaxSpeed": 200,
        "xHomingSpeed": 40,
        "xTravelAcceleration": 50,
        "xPrintAcceleration": 1000,
        "yMaxSpeed": 200,
        "yHomingSpeed": 40,
        "yTravelAcceleration": 50,
        "yPrintAcceleration": 1000,
        "zMaxSpeed": 120,
        "zHomingSpeed": 14,
        "zTravelAcceleration": 40,
        "zPrintAcceleration": 100,
        "xMotor": {
            "name": "X motor",
            "step": "ORIG_X_STEP_PIN",
            "dir": "ORIG_X_DIR_PIN",
            "enable": "ORIG_X_ENABLE_PIN"
        },
        "yMotor": {
            "name": "Y motor",
            "step": "ORIG_Y_STEP_PIN",
            "dir": "ORIG_Y_DIR_PIN",
            "enable": "ORIG_Y_ENABLE_PIN"
        },
        "zMotor": {
            "name": "Z motor",
            "step": "ORIG_Z_STEP_PIN",
            "dir": "ORIG_Z_DIR_PIN",
            "enable": "ORIG_Z_ENABLE_PIN"
        },
        "enableBacklash": "0",
        "backlashX": 0,
        "backlashY": 0,
        "backlashZ": 0,
        "stepperInactiveTime": 360,
        "maxInactiveTime": 0,
        "xMinPos": 0,
        "yMinPos": 0,
        "zMinPos": 0,
        "xLength": 350,
        "yLength": 450,
        "zLength": 350,
        "alwaysCheckEndstops": "1",
        "disableX": "0",
        "disableY": "0",
        "disableZ": "0",
        "disableE": "0",
        "xHomeDir": "-1",
        "yHomeDir": "-1",
        "zHomeDir": "-1",
        "xEndstopBack": 1,
        "yEndstopBack": 1,
        "zEndstopBack": 0,
        "deltaSegmentsPerSecondPrint": 180,
        "deltaSegmentsPerSecondTravel": 70,
        "deltaDiagonalRod": 445,
        "deltaHorizontalRadius": 209.25,
        "deltaAlphaA": 210,
        "deltaAlphaB": 330,
        "deltaAlphaC": 90,
        "deltaDiagonalCorrA": 0,
        "deltaDiagonalCorrB": 0,
        "deltaDiagonalCorrC": 0,
        "deltaMaxRadius": 150,
        "deltaFloorSafetyMarginMM": 15,
        "deltaRadiusCorrA": 0,
        "deltaRadiusCorrB": 0,
        "deltaRadiusCorrC": 0,
        "deltaXOffsetSteps": 0,
        "deltaYOffsetSteps": 0,
        "deltaZOffsetSteps": 0,
        "deltaSegmentsPerLine": 24,
        "stepperHighDelay": 1,
        "directionDelay": 2,
        "stepDoublerFrequency": 12000,
        "allowQuadstepping": "1",
        "doubleStepDelay": 0,
        "maxJerk": 14,
        "maxZJerk": 0.3,
        "moveCacheSize": 16,
        "moveCacheLow": 10,
        "lowTicksPerMove": 250000,
        "enablePowerOnStartup": "1",
        "echoOnExecute": "1",
        "sendWaits": "1",
        "ackWithLineNumber": "1",
        "killMethod": 1,
        "useAdvance": "0",
        "useQuadraticAdvance": "0",
        "powerInverting": 0,
        "mirrorX": 0,
        "mirrorXMotor": {
            "name": "Extruder 1",
            "step": "ORIG_E1_STEP_PIN",
            "dir": "ORIG_E1_DIR_PIN",
            "enable": "ORIG_E1_ENABLE_PIN"
        },
        "mirrorY": 0,
        "mirrorYMotor": {
            "name": "Extruder 1",
            "step": "ORIG_E1_STEP_PIN",
            "dir": "ORIG_E1_DIR_PIN",
            "enable": "ORIG_E1_ENABLE_PIN"
        },
        "mirrorZ": "0",
        "mirrorZMotor": {
            "name": "Extruder 1",
            "step": "ORIG_E1_STEP_PIN",
            "dir": "ORIG_E1_DIR_PIN",
            "enable": "ORIG_E1_ENABLE_PIN"
        },
        "mirrorZ3": "0",
        "mirrorZ3Motor": {
            "name": "Extruder 2",
            "step": "ORIG_E2_STEP_PIN",
            "dir": "ORIG_E2_DIR_PIN",
            "enable": "ORIG_E2_ENABLE_PIN"
        },
        "dittoPrinting": "0",
        "featureServos": "0",
        "servo0Pin": 11,
        "servo1Pin": -1,
        "servo2Pin": -1,
        "servo3Pin": -1,
        "featureWatchdog": "1",
        "hasHeatedBed": "1",
        "enableZProbing": "1",
        "extrudeMaxLength": 160,
        "homeOrder": "HOME_ORDER_XYZ",
        "featureController": 2,
        "uiPrinterName": "3DP",
        "uiPrinterCompany": "Laspiros",
        "uiPagesDuration": 4000,
        "uiAnimation": "1",
        "uiDisablePageswitch": "1",
        "uiAutoReturnAfter": 8000,
        "featureKeys": "0",
        "uiEncoderSpeed": 1,
        "uiReverseEncoder": "0",
        "uiKeyBouncetime": 10,
        "uiKeyFirstRepeat": 500,
        "uiKeyReduceRepeat": 50,
        "uiKeyMinRepeat": 50,
        "featureBeeper": "1",
        "uiPresetBedTempPLA": 55,
        "uiPresetBedABS": 110,
        "uiPresetExtruderPLA": 200,
        "uiPresetExtruderABS": 240,
        "uiMinHeatedBed": 30,
        "uiMaxHeatedBed": 120,
        "uiMinEtxruderTemp": 170,
        "uiMaxExtruderTemp": 260,
        "uiExtruderFeedrate": 2,
        "uiExtruderRetractDistance": 3,
        "uiSpeeddependentPositioning": "0",
        "maxBedTemperature": 68,
        "bedSensorType": 1,
        "bedSensorPin": "TEMP_1_PIN",
        "bedHeaterPin": "HEATER_1_PIN",
        "bedHeatManager": 1,
        "bedUpdateInterval": 5000,
        "bedPidDriveMin": 80,
        "bedPidDriveMax": 255,
        "bedPidP": 196,
        "bedPidI": 33,
        "bedPidD": 290,
        "bedPidMax": 255,
        "bedDecoupleTestPeriod": 300,
        "caseLightPin": -1,
        "caseLightDefaultOn": "1",
        "bedSkipIfWithin": 3,
        "gen1T0": 25,
        "gen1R0": 100000,
        "gen1Beta": 4036,
        "gen1MinTemp": -20,
        "gen1MaxTemp": 300,
        "gen1R1": 0,
        "gen1R2": 4700,
        "gen2T0": 25,
        "gen2R0": 100000,
        "gen2Beta": 4036,
        "gen2MinTemp": -20,
        "gen2MaxTemp": 300,
        "gen2R1": 0,
        "gen2R2": 4700,
        "gen3T0": 25,
        "gen3R0": 100000,
        "gen3Beta": 4036,
        "gen3MinTemp": -20,
        "gen3MaxTemp": 300,
        "gen3R1": 0,
        "gen3R2": 4700,
        "userTable0": {
            "r1": 0,
            "r2": 4700,
            "temps": [],
            "numEntries": 0
        },
        "userTable1": {
            "r1": 0,
            "r2": 4700,
            "temps": [],
            "numEntries": 0
        },
        "userTable2": {
            "r1": 0,
            "r2": 4700,
            "temps": [],
            "numEntries": 0
        },
        "tempHysteresis": 0,
        "pidControlRange": 20,
        "skipM109Within": 2,
        "extruderFanCoolTemp": 50,
        "minTemp": 150,
        "maxTemp": 275,
        "minDefectTemp": -10,
        "maxDefectTemp": 290,
        "arcSupport": "1",
        "featureMemoryPositionWatchdog": "1",
        "forceChecksum": "0",
        "sdExtendedDir": "1",
        "featureFanControl": "1",
        "fanPin": -1,
        "featureFan2Control": "0",
        "fan2Pin": "ORIG_FAN2_PIN",
        "fanThermoPin": -1,
        "fanThermoMinPWM": 128,
        "fanThermoMaxPWM": 255,
        "fanThermoMinTemp": 45,
        "fanThermoMaxTemp": 60,
        "fanThermoThermistorPin": -1,
        "fanThermoThermistorType": 1,
        "scalePidToMax": 0,
        "zProbePin": "ORIG_Z_MIN_PIN",
        "zProbeBedDistance": 10,
        "zProbePullup": "1",
        "zProbeOnHigh": "0",
        "zProbeXOffset": 0,
        "zProbeYOffset": 0,
        "zProbeWaitBeforeTest": "0",
        "zProbeSpeed": 2,
        "zProbeXYSpeed": 150,
        "zProbeHeight": 2.5,
        "zProbeStartScript": "Auto leveling bed started..",
        "zProbeFinishedScript": "Auto leveling bed completed!",
        "featureAutolevel": "1",
        "zProbeX1": 0,
        "zProbeY1": 0,
        "zProbeX2": 334,
        "zProbeY2": 0,
        "zProbeX3": 0,
        "zProbeY3": 432,
        "zProbeSwitchingDistance": 1,
        "zProbeRepetitions": 1,
        "sdSupport": "1",
        "sdCardDetectPin": -1,
        "sdCardDetectInverted": "0",
        "uiStartScreenDelay": 1000,
        "xEndstopBackMove": 5,
        "yEndstopBackMove": 5,
        "zEndstopBackMove": 2,
        "xEndstopRetestFactor": 3,
        "yEndstopRetestFactor": 3,
        "zEndstopRetestFactor": 3,
        "xMinPin": "ORIG_X_MIN_PIN",
        "yMinPin": "ORIG_Y_MIN_PIN",
        "zMinPin": "ORIG_Z_MIN_PIN",
        "xMaxPin": "ORIG_X_MAX_PIN",
        "yMaxPin": "ORIG_Y_MAX_PIN",
        "zMaxPin": "ORIG_Z_MAX_PIN",
        "deltaHomeOnPower": "0",
        "fanBoardPin": -1,
        "heaterPWMSpeed": 0,
        "featureBabystepping": "1",
        "babystepMultiplicator": 1,
        "pdmForHeater": "0",
        "pdmForCooler": "0",
        "psOn": "ORIG_PS_ON_PIN",
        "mixingExtruder": "0",
        "decouplingTestMaxHoldVariance": 20,
        "decouplingTestMinTempRise": 1,
        "featureAxisComp": "0",
        "axisCompTanXY": 0,
        "axisCompTanXZ": 0,
        "axisCompTanYZ": 0,
        "retractOnPause": 2,
        "pauseStartCommands": "",
        "pauseEndCommands": "",
        "distortionCorrection": "0",
        "distortionCorrectionPoints": 3,
        "distortionCorrectionR": 100,
        "distortionPermanent": "1",
        "distortionUpdateFrequency": 15,
        "distortionStartDegrade": 0.5,
        "distortionEndDegrade": 1,
        "distortionExtrapolateCorners": "0",
        "distortionXMin": 0,
        "distortionXMax": 334,
        "distortionYMin": 0,
        "distortionYMax": 432,
        "sdRunOnStop": "",
        "sdStopHeaterMotorsOnStop": "1",
        "featureRetraction": "1",
        "autoretractEnabled": "1",
        "retractionLength": 3,
        "retractionLongLength": 13,
        "retractionSpeed": 40,
        "retractionZLift": 0,
        "retractionUndoExtraLength": 0,
        "retractionUndoExtraLongLength": 0,
        "retractionUndoSpeed": 20,
        "filamentChangeXPos": 0,
        "filamentChangeYPos": 0,
        "filamentChangeZAdd": 2,
        "filamentChangeRehome": 1,
        "filamentChangeShortRetract": 5,
        "filamentChangeLongRetract": 50,
        "fanKickstart": 200,
        "servo0StartPos": -1,
        "servo1StartPos": -1,
        "servo2StartPos": -1,
        "servo3StartPos": -1,
        "uiDynamicEncoderSpeed": "1",
        "uiServoControl": 0,
        "killIfSensorDefect": "0",
        "jamSteps": 220,
        "jamSlowdownSteps": 320,
        "jamSlowdownTo": 70,
        "jamErrorSteps": 500,
        "jamMinSteps": 10,
        "jamAction": 1,
        "primaryPort": 0,
        "numMotorDrivers": 0,
        "motorDrivers": [
            {
                "t": "None",
                "s": "",
                "invertEnable": "0",
                "invertDirection": "0",
                "stepsPerMM": 100,
                "speed": 10,
                "dirPin": -1,
                "stepPin": -1,
                "enablePin": -1
            },
            {
                "t": "None",
                "s": "",
                "invertEnable": "0",
                "invertDirection": "0",
                "stepsPerMM": 100,
                "speed": 10,
                "dirPin": -1,
                "stepPin": -1,
                "enablePin": -1
            },
            {
                "t": "None",
                "s": "",
                "invertEnable": "0",
                "invertDirection": "0",
                "stepsPerMM": 100,
                "speed": 10,
                "dirPin": -1,
                "stepPin": -1,
                "enablePin": -1
            },
            {
                "t": "None",
                "s": "",
                "invertEnable": "0",
                "invertDirection": "0",
                "stepsPerMM": 100,
                "speed": 10,
                "dirPin": -1,
                "stepPin": -1,
                "enablePin": -1
            },
            {
                "t": "None",
                "s": "",
                "invertEnable": "0",
                "invertDirection": "0",
                "stepsPerMM": 100,
                "speed": 10,
                "dirPin": -1,
                "stepPin": -1,
                "enablePin": -1
            },
            {
                "t": "None",
                "s": "",
                "invertEnable": "0",
                "invertDirection": "0",
                "stepsPerMM": 100,
                "speed": 10,
                "dirPin": -1,
                "stepPin": -1,
                "enablePin": -1
            }
        ],
        "manualConfig": "",
        "zHomeMinTemperature": 0,
        "zHomeXPos": 999999,
        "zHomeYPos": 999999,
        "zHomeHeatHeight": 20,
        "zHomeHeatAll": "1",
        "zProbeZOffsetMode": 0,
        "zProbeZOffset": 0,
        "uiBedCoating": "1",
        "langEN": "1",
        "langDE": "0",
        "langNL": "0",
        "langPT": "0",
        "langIT": "0",
        "langES": "0",
        "langFI": "0",
        "langSE": "0",
        "langFR": "0",
        "langCZ": "0",
        "langPL": "0",
        "langTR": "0",
        "interpolateAccelerationWithZ": 0,
        "accelerationFactorTop": 100,
        "bendingCorrectionA": 0,
        "bendingCorrectionB": 0,
        "bendingCorrectionC": 0,
        "preventZDisableOnStepperTimeout": "0",
        "supportLaser": "0",
        "laserPin": -1,
        "laserOnHigh": "1",
        "defaultPrinterMode": 0,
        "supportCNC": "0",
        "cncWaitOnEnable": 300,
        "cncWaitOnDisable": 0,
        "cncEnablePin": -1,
        "cncEnableWith": "1",
        "cncDirectionPin": -1,
        "cncDirectionCW": "1",
        "startupGCode": "",
        "jsonOutput": "0",
        "bedLevelingMethod": 0,
        "bedCorrectionMethod": 0,
        "bedLevelingGridSize": 5,
        "bedLevelingRepetitions": 5,
        "bedMotor1X": 0,
        "bedMotor1Y": 0,
        "bedMotor2X": 200,
        "bedMotor2Y": 0,
        "bedMotor3X": 100,
        "bedMotor3Y": 200,
        "zProbeRequiresHeating": "0",
        "zProbeMinTemperature": 150,
        "adcKeypadPin": -1,
        "sharedExtruderHeater": "0",
        "extruderSwitchXYSpeed": 100,
        "dualXAxis": "0",
        "boardFanSpeed": 255,
        "hasMAX6675": false,
        "hasMAX31855": false,
        "hasGeneric1": false,
        "hasGeneric2": false,
        "hasGeneric3": false,
        "hasUser0": false,
        "hasUser1": false,
        "hasUser2": false,
        "numExtruder": 2,
        "version": 92.9,
        "primaryPortName": ""
    }
    ========== End configuration string ==========

    */
  • edited April 23
    Might be this setting :

    #define ENDSTOP_Z_BACK_ON_HOME 0

    as endstop is still triggered after homing try to set it to 1  

    for a simple test send g1 Z10 before the autolevel command

    BTW:

    change to actual firmware as there are many improvements especially on autolevel
  • Yup! once again that worked! Really thank you!

    Do you mean to update to firmware 1.0 right?
    I suppose I can upload my fixed configuration file and update it to the newest right?
  • exactly
  • Hi again,
    So I have updated my firmware to the latest one, I have set z probing and everything works smoothly. I also print some objects very good. 
    At this point I have a strange communication problem and I don't know if I should start a new topic about this or I should continue here. I also looked around in forum for similar problem but I didn'r found something.

    The problem is this. I print something only with the extruder 1 and everything is OK. I print something only with the extruder 2 and everything is fine. BUT when I try to print a combined object with both extruders I have continuously this:
    14:30:20.170 : Resend:16
    14:30:20.195 : Error:Wrong checksum
    14:30:20.195 : Resend:16
    14:30:23.213 : Warning: Seems like we missed a ok, got a wait - continue sending.
    14:30:23.222 : Error:expected line 16 got 18
    14:30:23.222 : Resend:16
    14:30:23.246 : Error:Wrong checksum
    14:30:23.246 : Resend:16
    14:30:26.265 : Warning: Seems like we missed a ok, got a wait - continue sending.
    14:30:26.274 : Error:expected line 16 got 18
    14:30:26.274 : Resend:16
    14:30:26.298 : Error:Wrong checksum
    14:30:26.298 : Resend:16
    14:30:29.313 : Warning: Seems like we missed a ok, got a wait - continue sending.
    14:30:29.321 : Error:expected line 16 got 18
    14:30:29.321 : Resend:16
    14:30:29.346 : Error:Wrong checksum
    14:30:29.346 : Resend:16

    Although, Host has enabled the bed heating, the temperature of the bed doesn't rise and I have continuously this error. 
    I also tryed another cable but nothing changed.
  • edited April 24

    regarding heatbed :

    did you power up both 12V Inputs on Ramps Board?   (the one marked 11A is for Heatbed)


    regarding command:

    What´s sent in Line 16 ( the one which causes Checksum error)

    (you have to enable commands in log to see)

  • I'm not sure which inputs do you mean for heatbed.
    Heatbed is working normal. It reaches my set tempersture (54oC).

    How do I find line 16?

    The last lines of log here:

    15:39:12.433 : Resend: N28 G90*42
    15:39:12.442 : Error:expected line 16 got 18
    15:39:12.442 : Resend:16
    15:39:12.454 : Resend: N16 M531 Dual_Extruder_Calibration_Printc55beef74c122c69c80c3bef6b349fd6-Calibration_Target_A_v1-1 +1*1
    15:39:12.454 : Resend: N17 M117 ETE 12m 11s*123
    15:39:12.471 : Error:Wrong checksum
    15:39:12.471 : Resend:16
    15:39:15.489 : Warning: Seems like we missed a ok, got a wait - continue sending.
    15:39:15.489 : Resend: N18 M532 X0.0 L0*20
    15:39:15.489 : Resend: N19 M107*29
    15:39:15.489 : Resend: N20 M190 S57*104
    15:39:15.489 : Resend: N21 M104 T0 S200*16
    15:39:15.489 : Resend: N22 M104 T1 S200*18
    15:39:15.489 : Resend: N23 G28*34
    15:39:15.489 : Resend: N24 G1 Z5 F5000*50
    15:39:15.489 : Resend: N25 M109 T0 S200*25
    15:39:15.489 : Resend: N26 M109 T1 S200*27
    15:39:15.489 : Resend: N27 G21*47
    15:39:15.489 : Resend: N28 G90*42
    15:39:15.497 : Error:expected line 16 got 18
    15:39:15.497 : Resend:16
    15:39:15.510 : Resend: N16 M531 Dual_Extruder_Calibration_Printc55beef74c122c69c80c3bef6b349fd6-Calibration_Target_A_v1-1 +1*1
    15:39:15.510 : Resend: N17 M117 ETE 12m 11s*123
    15:39:15.523 : Error:Wrong checksum
    15:39:15.526 : Resend:16
    15:39:18.545 : Warning: Seems like we missed a ok, got a wait - continue sending.
    15:39:18.546 : Resend: N18 M532 X0.0 L0*20
    15:39:18.546 : Resend: N19 M107*29
    15:39:18.546 : Resend: N20 M190 S57*104
    15:39:18.546 : Resend: N21 M104 T0 S200*16
    15:39:18.546 : Resend: N22 M104 T1 S200*18
    15:39:18.546 : Resend: N23 G28*34
    15:39:18.546 : Resend: N24 G1 Z5 F5000*50
    15:39:18.546 : Resend: N25 M109 T0 S200*25
    15:39:18.546 : Resend: N26 M109 T1 S200*27
    15:39:18.546 : Resend: N27 G21*47
    15:39:18.546 : Resend: N28 G90*42
    15:39:18.554 : Error:expected line 16 got 18
    15:39:18.554 : Resend:16
    15:39:18.566 : Resend: N16 M531 Dual_Extruder_Calibration_Printc55beef74c122c69c80c3bef6b349fd6-Calibration_Target_A_v1-1 +1*1
    15:39:18.566 : Resend: N17 M117 ETE 12m 11s*123
    15:39:18.579 : Error:Wrong checksum
    15:39:18.579 : Resend:16

  • edited April 24

    seems that the filename is causing the Problem:

    15:39:18.566 : Resend: N16 M531 Dual_Extruder_Calibration_Printc55beef74c122c69c80c3bef6b349fd6-Calibration_Target_A_v1-1 +1*1

    can you rename the file ?


    or give more Information what slicer / host Software you are using incl. your setup


  • Yes after I rename the files it worked fine. I think the file names were too long.
Sign In or Register to comment.