From 9e7b5056a0a02921d1e31d511b34efc9732e3c88 Mon Sep 17 00:00:00 2001 From: Johann Rocholl Date: Fri, 28 Dec 2012 16:20:10 -0800 Subject: [PATCH] {X,Y,Z}_{MIN,MAX}_POS are actually in Gcode coordinates. --- Marlin/Configuration.h | 16 +++++++--------- Marlin/Marlin_main.cpp | 8 ++++---- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/Marlin/Configuration.h b/Marlin/Configuration.h index 836ac6f24d..f66db708b2 100644 --- a/Marlin/Configuration.h +++ b/Marlin/Configuration.h @@ -275,16 +275,14 @@ const bool Z_ENDSTOPS_INVERTING = false; // set to true to invert the logic of t #define Y_HOME_DIR 1 #define Z_HOME_DIR 1 -#define min_software_endstops false //If true, axis won't move to coordinates less than HOME_POS. -#define max_software_endstops false //If true, axis won't move to coordinates greater than the defined lengths below. +#define min_software_endstops true //If true, axis won't move to coordinates less than *_MIN_POS. +#define max_software_endstops true //If true, axis won't move to coordinates greater than *_MAX_POS. -// Travel limits after homing -// For deltabots, the MAX_POS doesn't have to be exact, it will be recalculated from MANUAL_Z_HOME_POS below. -#define X_MAX_POS 620 -#define X_MIN_POS 0 -#define Y_MAX_POS 620 -#define Y_MIN_POS 0 -#define Z_MAX_POS 620 +#define X_MAX_POS 90 +#define X_MIN_POS -90 +#define Y_MAX_POS 90 +#define Y_MIN_POS -90 +#define Z_MAX_POS MANUAL_Z_HOME_POS #define Z_MIN_POS 0 #define X_MAX_LENGTH (X_MAX_POS - X_MIN_POS) diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 84ff091d97..eee54d5db8 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -618,7 +618,7 @@ static void homeaxis(int axis) { 0) { current_position[axis] = 0; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[axis] = 1.5 * max_length(axis) * home_dir(axis); + destination[axis] = 3 * Z_MAX_LENGTH; feedrate = homing_feedrate[axis]; plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); st_synchronize(); @@ -740,9 +740,9 @@ void process_commands() current_position[Z_AXIS] = 0; plan_set_position(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - destination[X_AXIS] = 1.5 * X_MAX_LENGTH * X_HOME_DIR; - destination[Y_AXIS] = 1.5 * Y_MAX_LENGTH * Y_HOME_DIR; - destination[Z_AXIS] = 1.5 * Z_MAX_LENGTH * Z_HOME_DIR; + destination[X_AXIS] = 3 * Z_MAX_LENGTH; + destination[Y_AXIS] = 3 * Z_MAX_LENGTH; + destination[Z_AXIS] = 3 * Z_MAX_LENGTH; feedrate = 1.732 * homing_feedrate[X_AXIS]; plan_buffer_line(destination[X_AXIS], destination[Y_AXIS], destination[Z_AXIS], destination[E_AXIS], feedrate/60, active_extruder); st_synchronize();