X axis moving the wrong way on a CoreXY
-
Having a weird issue with a machine I'm setting up atm with the X axis moving the wrong way while the Y axis works as intended. I didn't think that should even be possible on a corexy since the X/Y steppers have to work in tandem. And i can't for the life of it find an error in the config
And I've checked the wiring, both ends of each stepper wire is connected identical to each other
Here's a snippet of the config.g:
; General preferences M111 S0 ; Debugging off G21 ; Work in millimetres G90 ; send absolute coordinates... M83 ; set extruder to relative mode M575 P1 B57600 S1 ; enable and configure PanelDue ; General setup M669 K1 ; select CoreXY mode ; --- drive map --- ; _______ ; | 0 | ; | ----- | ; | 2 | 1 | ; ------- ; front ; Drives M569 P0 S0 ; Z1 (physical drive 0) goes backwards M569 P1 S0 ; Z2 (physical drive 1) goes backwards M569 P2 S0 ; Z3 (physical drive 2) goes backwards M569 P3 S0 ; X (physical drive 3) goes backwards M569 P4 S0 ; Y (physical drive 4) goes backwards M569 P5 S0 ; E (physical drive 5) goes backwards ; Motor mapping and steps per mm M584 X4 Y3 Z0:1:2 E5 ; set drive mapping M350 X16 Y16 Z16:16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z400.00:400.00:400.00 ; set XYZ steps per mm (1.8deg motors) M92 E430.11 ; set Extruder steps per mm (BMG) ; Drive currents M906 X1400 Y1400 Z1200:1200:1200 ; set XYZ motor currents (mA) M906 E1000 ; set Extruder motor current (mA) M906 I30 ; set ide current percentag M906 I30 ; set ide current percentage M84 S30 ; Set idle timeout ; Accelerations and speed M98 P"/macros/System/Speed/speed_printing.g" ; set normal speed & accel ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X347.5 Y358 Z300 S0 ; set axis maxima ; Endstops M574 X2 S1 P"xstop" ; configure active-low endstop for low end on X via pin xstop M574 Y2 S1 P"ystop" ; configure active-low endstop for low end on Y via pin ystop M574 Z0 P"nil" ; no endstop
-
@exerqtor mess around with the S setting on your M569 commands for the x and y steppers
-
But if i change the S parameter on only say "X" that will just make it shit the bad since the two steppers have to work together in CoreXY won't it? Or am i overcomplicating it.
-
@exerqtor no. It'll make sense once you start switching them about
-
From the DWC console execute M669. You should get something like this:
11/8/2021, 2:12:06 PM M669 1.00 1.00 0 0 1.00 -1.00 0 0 0 0 1.00 0
You can use M669 to enter the matrix values directly instead of specifying the kinematics type of K1.
M669 X1:1:0 Y1:-1:0 Z0:0:1 ; CoreXY
Use that form of M669 and try different values after the X. That worked for me.
X-1:1:0 or X1:-1:0 or X-1:-1:0 - one of them should work.
Frederick
-
@fcwilt said in X axis moving the wrong way on a CoreXY:
From the DWC console execute M669. You should get something like this:
11/8/2021, 2:12:06 PM M669 1.00 1.00 0 0 1.00 -1.00 0 0 0 0 1.00 0
You can use M669 to enter the matrix values directly instead of specifying the kinematics type of K1.
M669 X1:1:0 Y1:-1:0 Z0:0:1 ; CoreXY
Use that form of M669 and try different values after the X. That worked for me.
X-1:1:0 or X1:-1:0 or X-1:-1:0 - one of them should work.
Frederick
M669 X-1:-1:0 Y1:-1:0 Z0:0:1
worked! Thanks
-
undefined Exerqtor marked this topic as a question
-
undefined Exerqtor has marked this topic as solved
-
@exerqtor the usual way to switch between right hand and left hand coordinate systems on a CoreXY machine is to swap the X and Y motors, either in the wiring or in the M584 command. See https://duet3d.dozuki.com/Wiki/ConfiguringRepRapFirmwareCoreXYPrinter#Section_Testing_motor_movement.
-
Oh ok, so i will achieve the same result as adjusting the kinematics matrix by doing that? In that case that sounds like a more "correct" approach to solving the issue
EDIT:
Tried swaping around the steppers wires and setting the kinematics matrix back to stock. And that didn't fix the issue in this case -
undefined Exerqtor has marked this topic as unsolved
-
@exerqtor said in X axis moving the wrong way on a CoreXY:
Oh ok, so i will achieve the same result as adjusting the kinematics matrix by doing that? In that case that sounds like a more "correct" approach to solving the issue
EDIT:
Tried swaping around the steppers wires and setting the kinematics matrix back to stock. And that didn't fix the issue in this caseYou can fix the problem by changing wiring, etc but it seems to me that adding one minus sign to the config.g file is a simpler approach.
And it works.
Frederick
-
@fcwilt but like i can't shake the feeling of something having to be out of whack since i have to change up the wiring from how it's "supposed to be" , or to derp with the standard kinematics to make it behave like i want it to
-
@exerqtor said in X axis moving the wrong way on a CoreXY:
@fcwilt but like i can't shake the feeling of something having to be out of whack since i have to change up the wiring from how it's "supposed to be" , or to derp with the standard kinematics to make it behave like i want it to
I've always changed the matrix - it's simple, quick and easy.
Frederick
-
Either method will work.