Fixed homing on CoreXY machines only.
- The homing routine for CoreXY/H-Bot CNC machines has been fixed. - Version date bumped, but this update does NOT effect any normal users. Only CoreXY users.
This commit is contained in:
@@ -1,3 +1,32 @@
|
||||
----------------
|
||||
Date: 2016-07-26
|
||||
Author: chamnit
|
||||
Subject: Merge branch 'master-corexy'
|
||||
|
||||
|
||||
----------------
|
||||
Date: 2016-07-25
|
||||
Author: chamnit
|
||||
Subject: CoreXY homing bug fix attempt 2.
|
||||
|
||||
|
||||
----------------
|
||||
Date: 2016-07-25
|
||||
Author: chamnit
|
||||
Subject: CoreXY homing fix attempt.
|
||||
|
||||
|
||||
----------------
|
||||
Date: 2016-03-17
|
||||
Author: Sonny Jeon
|
||||
Subject: No variable spindle and spindle speed fix.
|
||||
|
||||
- When VARIABLE_SPINDLE output is disabled in config.h, the last commit
|
||||
would keep the spindle enable pin disabled when spindle speed is not
|
||||
defined (S0). This is now ignored and will enable with S0, as spindle
|
||||
speed is ignored in this mode.
|
||||
|
||||
|
||||
----------------
|
||||
Date: 2016-03-16
|
||||
Author: Sonny Jeon
|
||||
|
||||
@@ -72,8 +72,8 @@
|
||||
// on separate pin, but homed in one cycle. Also, it should be noted that the function of hard limits
|
||||
// will not be affected by pin sharing.
|
||||
// NOTE: Defaults are set for a traditional 3-axis CNC machine. Z-axis first to clear, followed by X & Y.
|
||||
#define HOMING_CYCLE_0 (1<<X_AXIS) // REQUIRED: First move Z to clear workspace.
|
||||
#define HOMING_CYCLE_1 (1<<Y_AXIS) // OPTIONAL: Then move X,Y at the same time.
|
||||
#define HOMING_CYCLE_0 (1<<Z_AXIS) // REQUIRED: First move Z to clear workspace.
|
||||
#define HOMING_CYCLE_1 ((1<<X_AXIS)|(1<<Y_AXIS)) // OPTIONAL: Then move X,Y at the same time.
|
||||
// #define HOMING_CYCLE_2 // OPTIONAL: Uncomment and add axes mask to enable
|
||||
|
||||
// Number of homing cycles performed after when the machine initially jogs to limit switches.
|
||||
@@ -147,9 +147,9 @@
|
||||
// #define HOMING_CYCLE_0 (1<<X_AXIS) and #define HOMING_CYCLE_1 (1<<Y_AXIS)
|
||||
// NOTE: This configuration option alters the motion of the X and Y axes to principle of operation
|
||||
// defined at (http://corexy.com/theory.html). Motors are assumed to positioned and wired exactly as
|
||||
// described, if not, motions may move in strange directions. Grbl assumes the CoreXY A and B motors
|
||||
// described, if not, motions may move in strange directions. Grbl requires the CoreXY A and B motors
|
||||
// have the same steps per mm internally.
|
||||
#define COREXY // Default disabled. Uncomment to enable.
|
||||
// #define COREXY // Default disabled. Uncomment to enable.
|
||||
|
||||
// Inverts pin logic of the control command pins. This essentially means when this option is enabled
|
||||
// you can use normally-closed switches, rather than the default normally-open switches.
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
|
||||
// Grbl versioning system
|
||||
#define GRBL_VERSION "0.9j"
|
||||
#define GRBL_VERSION_BUILD "20160317"
|
||||
#define GRBL_VERSION_BUILD "20160726"
|
||||
|
||||
// Define standard libraries used by Grbl.
|
||||
#include <avr/io.h>
|
||||
|
||||
@@ -265,9 +265,9 @@ float system_convert_axis_steps_to_mpos(int32_t *steps, uint8_t idx)
|
||||
float pos;
|
||||
#ifdef COREXY
|
||||
if (idx==X_AXIS) {
|
||||
pos = (float)system_convert_corexy_to_x_axis_steps(steps) / settings.steps_per_mm[idx];
|
||||
pos = (float)system_convert_corexy_to_x_axis_steps(steps) / settings.steps_per_mm[A_MOTOR];
|
||||
} else if (idx==Y_AXIS) {
|
||||
pos = (float)system_convert_corexy_to_y_axis_steps(steps) / settings.steps_per_mm[idx];
|
||||
pos = (float)system_convert_corexy_to_y_axis_steps(steps) / settings.steps_per_mm[B_MOTOR];
|
||||
} else {
|
||||
pos = steps[idx]/settings.steps_per_mm[idx];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user