Commit 41537618 authored by MagoKimbra's avatar MagoKimbra

Fix Homeaxis DELTA

parent e2a2c5c1
...@@ -1420,11 +1420,15 @@ inline void set_destination_to_current() { memcpy(destination, current_position, ...@@ -1420,11 +1420,15 @@ inline void set_destination_to_current() { memcpy(destination, current_position,
current_position[axis] = 0; current_position[axis] = 0;
sync_plan_position(); sync_plan_position();
enable_endstops(false); // Disable endstops while moving away
// Move away from the endstop by the axis HOME_BUMP_MM // Move away from the endstop by the axis HOME_BUMP_MM
destination[axis] = -home_bump_mm(axis) * axis_home_dir; destination[axis] = -home_bump_mm(axis) * axis_home_dir;
line_to_destination(); line_to_destination();
st_synchronize(); st_synchronize();
enable_endstops(true); // Enable endstops for next homing move
// Slow down the feedrate for the next move // Slow down the feedrate for the next move
set_homing_bump_feedrate(axis); set_homing_bump_feedrate(axis);
...@@ -1460,6 +1464,7 @@ inline void set_destination_to_current() { memcpy(destination, current_position, ...@@ -1460,6 +1464,7 @@ inline void set_destination_to_current() { memcpy(destination, current_position,
// Set the axis position to its home position (plus home offsets) // Set the axis position to its home position (plus home offsets)
axis_is_at_home(axis); axis_is_at_home(axis);
sync_plan_position();
destination[axis] = current_position[axis]; destination[axis] = current_position[axis];
feedrate = 0.0; feedrate = 0.0;
...@@ -1502,24 +1507,36 @@ inline void set_destination_to_current() { memcpy(destination, current_position, ...@@ -1502,24 +1507,36 @@ inline void set_destination_to_current() { memcpy(destination, current_position,
current_position[axis] = 0; current_position[axis] = 0;
sync_plan_position(); sync_plan_position();
enable_endstops(false); // Disable endstops while moving away
// Move away from the endstop by the axis HOME_BUMP_MM // Move away from the endstop by the axis HOME_BUMP_MM
destination[axis] = -home_bump_mm(axis) * axis_home_dir; destination[axis] = -home_bump_mm(axis) * axis_home_dir;
line_to_destination(); line_to_destination();
st_synchronize(); st_synchronize();
enable_endstops(true); // Enable endstops for next homing move
// Slow down the feedrate for the next move // Slow down the feedrate for the next move
set_homing_bump_feedrate(axis); set_homing_bump_feedrate(axis);
// Move slowly towards the endstop until triggered
destination[axis] = 2 * home_bump_mm(axis) * axis_home_dir;
line_to_destination();
st_synchronize();
// retrace by the amount specified in endstop_adj // retrace by the amount specified in endstop_adj
if (endstop_adj[axis] * axis_home_dir < 0) { if (endstop_adj[axis] * axis_home_dir < 0) {
enable_endstops(false); // Disable endstops while moving away
sync_plan_position(); sync_plan_position();
destination[axis] = endstop_adj[axis]; destination[axis] = endstop_adj[axis];
line_to_destination(); line_to_destination();
st_synchronize(); st_synchronize();
enable_endstops(true); // Enable endstops for next homing move
} }
// Set the axis position to its home position (plus home offsets) // Set the axis position to its home position (plus home offsets)
axis_is_at_home(axis); axis_is_at_home(axis);
sync_plan_position();
destination[axis] = current_position[axis]; destination[axis] = current_position[axis];
feedrate = 0.0; feedrate = 0.0;
......
...@@ -107,13 +107,15 @@ ...@@ -107,13 +107,15 @@
#define MSG_FILE_PRINTED "Done printing file" #define MSG_FILE_PRINTED "Done printing file"
#define MSG_BEGIN_FILE_LIST "Begin file list" #define MSG_BEGIN_FILE_LIST "Begin file list"
#define MSG_END_FILE_LIST "End file list" #define MSG_END_FILE_LIST "End file list"
#define MSG_M104_INVALID_EXTRUDER "M104 Invalid extruder " #define MSG_INVALID_EXTRUDER "Invalid extruder"
#define MSG_M105_INVALID_EXTRUDER "M105 Invalid extruder " #define MSG_INVALID_SOLENOID "Invalid solenoid"
#define MSG_M200_INVALID_EXTRUDER "M200 Invalid extruder " #define MSG_M104_INVALID_EXTRUDER "M104 " MSG_INVALID_EXTRUDER " "
#define MSG_M218_INVALID_EXTRUDER "M218 Invalid extruder " #define MSG_M105_INVALID_EXTRUDER "M105 " MSG_INVALID_EXTRUDER " "
#define MSG_M221_INVALID_EXTRUDER "M221 Invalid extruder " #define MSG_M109_INVALID_EXTRUDER "M109 " MSG_INVALID_EXTRUDER " "
#define MSG_M200_INVALID_EXTRUDER "M200 " MSG_INVALID_EXTRUDER " "
#define MSG_M218_INVALID_EXTRUDER "M218 " MSG_INVALID_EXTRUDER " "
#define MSG_M221_INVALID_EXTRUDER "M221 " MSG_INVALID_EXTRUDER " "
#define MSG_ERR_NO_THERMISTORS "No thermistors - no temperature" #define MSG_ERR_NO_THERMISTORS "No thermistors - no temperature"
#define MSG_M109_INVALID_EXTRUDER "M109 Invalid extruder "
#define MSG_HEATING "Heating..." #define MSG_HEATING "Heating..."
#define MSG_HEATING_COMPLETE "Heating done." #define MSG_HEATING_COMPLETE "Heating done."
#define MSG_BED_HEATING "Bed Heating." #define MSG_BED_HEATING "Bed Heating."
...@@ -126,8 +128,6 @@ ...@@ -126,8 +128,6 @@
#define MSG_ACTIVE_DRIVER "Active Driver: " #define MSG_ACTIVE_DRIVER "Active Driver: "
#define MSG_ACTIVE_EXTRUDER "Active Extruder: " #define MSG_ACTIVE_EXTRUDER "Active Extruder: "
#define MSG_ACTIVE_COLOR "Active Color: " #define MSG_ACTIVE_COLOR "Active Color: "
#define MSG_INVALID_EXTRUDER "Invalid extruder"
#define MSG_INVALID_SOLENOID "Invalid solenoid"
#define MSG_X_MIN "x_min: " #define MSG_X_MIN "x_min: "
#define MSG_X_MAX "x_max: " #define MSG_X_MAX "x_max: "
#define MSG_Y_MIN "y_min: " #define MSG_Y_MIN "y_min: "
......
...@@ -21,6 +21,7 @@ ...@@ -21,6 +21,7 @@
*401 BOARD_RADDS - Radds Arduino DUE *401 BOARD_RADDS - Radds Arduino DUE
*403 BOARD_RAMPS_FD_V1 - Ramps FD version 1 Arduino DUE *403 BOARD_RAMPS_FD_V1 - Ramps FD version 1 Arduino DUE
*404 BOARD_RAMPS_FD_V2 - Ramps FD version 2 Arduino DUE *404 BOARD_RAMPS_FD_V2 - Ramps FD version 2 Arduino DUE
*433 BOARD_RAMPS4DUE - Ramps for Arduino DUE
* *
* 5 BOARD_GEN6 - Gen6 * 5 BOARD_GEN6 - Gen6
* 51 BOARD_GEN6_DELUXE - Gen6 deluxe * 51 BOARD_GEN6_DELUXE - Gen6 deluxe
...@@ -1963,7 +1964,7 @@ ...@@ -1963,7 +1964,7 @@
* Arduino Due pin assignment * Arduino Due pin assignment
* Ramps - FD v1 & v2 * Ramps - FD v1 & v2
****************************************************************************************/ ****************************************************************************************/
#if MB(RAMPS_FDV1) || MB(RAMPS_FDV2) #if MB(RAMPS_FD_V1) || MB(RAMPS_FD_V2)
#define KNOWN_BOARD 1 #define KNOWN_BOARD 1
#ifndef __SAM3X8E__ #ifndef __SAM3X8E__
...@@ -1971,14 +1972,14 @@ ...@@ -1971,14 +1972,14 @@
#endif #endif
#if MB(RAMPS_FDV1) #if MB(RAMPS_FD_V1)
#define INVERTED_HEATER_PINS #define INVERTED_HEATER_PINS
#define RAMPS_FDV1 #define RAMPS_FD_V1
#define INVERTED_HEATER_PINS #define INVERTED_HEATER_PINS
// No EEPROM // No EEPROM
// Use 4k7 thermistor tables // Use 4k7 thermistor tables
#else #else
#define RAMPS_FDV2 #define RAMPS_FD_V2
// EEPROM supported // EEPROM supported
// Use 1k thermistor tables // Use 1k thermistor tables
#endif #endif
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment