dual z drivers and dual z endstops
i had a thought of having individual z drivers and then add another Z endstop
would this allow me to sync the 2 steppers so that X axis is level? tried to look in the web config tool for an explanation but failed
would this allow me to sync the 2 steppers so that X axis is level? tried to look in the web config tool for an explanation but failed
Comments
am i correct in this?
i need to enable FEATURE_TWO_ZSTEPPER
then set correct socket in "Mirror stepper socket"
then set ENDSTOP_PULLUP_Z2_MINMAX/ENDSTOP_Z2_MINMAX_INVERTING correctly
select the right connector on Z2_MINMAX_PIN
are there an offset should i need it? ie if one endstop is ever so slightly higher or lower than the other?
i dont want to destroy things
i checked both endstops for Z and they work as they should
with repetier host i can drive Z up and down and both steppers move normally,
but when homing only one Z stepper stops... the other tries to continue even thou endstop is activated
so its seems that it stops Z2 but not Z1
and i tried by hand to place the 2 z steppers very differently and they now stop as expected
static INLINE void startZStep() {
#if MULTI_ZENDSTOP_HOMING
if(Printer::multiZHomeFlags & 1) {
WRITE(Z_STEP_PIN, START_STEP_WITH_HIGH);
}
#if FEATURE_TWO_ZSTEPPER
if(Printer::multiZHomeFlags & 2) {
WRITE(Z2_STEP_PIN, START_STEP_WITH_HIGH);
}
#endif
You see normal motor is linked to 1 and second motor to 2.
In checkEndstops you see
#if MULTI_ZENDSTOP_HOMING
{
if(Printer::isHoming()) {
if(isZNegativeMove()) {
if(Endstops::zMin())
Printer::multiZHomeFlags &= ~1;
if(Endstops::z2MinMax())
Printer::multiZHomeFlags &= ~2;
if(Printer::multiZHomeFlags == 0)
setZMoveFinished();
} else if(isZPositiveMove()) {
if(Endstops::zMax())
Printer::multiZHomeFlags &= ~1;
if(Endstops::z2MinMax())
Printer::multiZHomeFlags &= ~2;
if(Printer::multiZHomeFlags == 0) {
#if MAX_HARDWARE_ENDSTOP_Z
Printer::stepsRemainingAtZHit = stepsRemaining;
#endif
setZMoveFinished();
}
}
You see z2minmax is linked to 2, so I wonder that you needed to cross the endstops. I really do not see this in the code. Can you double check that you did not just use wrong sockets (flipped) so you just mimic wrong hardware connection.
In any case I'm glad it is now working.
so i just add a stepper driver where extruder1 was empty and connected one more endstop and took one stepper motor and connected it to extruder 1
i think i might have connected the wrong stepper to extruder one, all the wires are in cable sleeve and secured to the printer