Height map does not match home position
-
@droftarts
The picture is taken from the front of the machine. So, when I move x pos, it moves to the right from 0,0. When I move Y in the pos direction, it moves toward the camera. I have 0,0 set to the back left as pictured. The movement is correct, the height map should shows the Y at the back and not the front.If I need to move my sensors to correct this, just tell me
I like my machines to home this way, but if it is not correct, I will just change it.
-
@Jered your machine is set up using a left hand coordinate system. Your prints will come out mirrored, unless the slicer you use has an option to mirror prints and you enable it. If you really want X0 Y0 to be at the back left, then +X motion should be towards the front and +Y toward the right.
The simplest way to correct this is to move X0 Y0 to front left. You can do this by reversing the direction of Y motion and changing the Y endstop configuration to be a YMax endstop instead of YMin. You do not need to move any endstop switches.
Changing between left and right hand coordinate systems on a CoreXY machine requires swapping the X and Y motors, which you can do in the M584 command in config.g.
-
@dc42
I will move my home switches.Thanks for your help
-
@Jered you don’t need to move the switches. You can home y to the axis maximum, rather than the minimum.
Ian
-
See my post above. I describe what to change.
also see this guide for corexy setup and testing.
https://docs.duet3d.com/en/User_manual/Machine_configuration/Configuration_coreXY
-
@Phaedrux
Ok, I will have a closer look. -
@Jered There's also a description of a homing file for maximum end endstop here: https://docs.duet3d.com/User_manual/Machine_configuration/Configuration_cartesian#homing-files
See M574 for information on setting an endstop to the high end.Ian
-
One thing that would be different in my post based on what I see from your photo is that you have the switches at left and back, that would be X min, Y max. Which would be this in the config
; Endstops M574 X1 S1 P"io0.in" M574 Y2 S1 P"io1.in"
Then in your homing files the X movement would be negative, and the Y movement positive.
-X moves should go to the left, +X moves to the right
-Y moves to the front, Y moves to the backThat way the homing switches stay in the same place, but your 0,0 point becomes the front left.
That corexy guide I linked has a section on testing the motor movement to make sure things are going in the correct direction.
-
@Phaedrux
I have another question. Do you think this could also be messing with my G32 command. I have the ratrig with true bed leveling. -
Yes if the coordinate system is incorrect things may not behave how you'd expect.
-
I think I have this fixed now. I just want to make sure that the G32 comand is correct.
When this command is issued, my machine drives to the z leadscrew which is at the front right, then to the middle back, then to the front left leadscrew. Is my bed.g in the correct order?
Seems like it should starting at the closest z leadscrew to 0,0 then moving in order from there.
In other words, should P0 be closest to the 0,0 point?
Attached is my bed.g
At least this can be fixed easily if it is an issue.
-
See here: https://docs.duet3d.com/en/User_manual/Connecting_hardware/Z_probe_auto_levelling
The order it probes them in bed.g is irrelevant but the order of the positions in the M671 command must match the order of the axis in M584.
You must use the M671 command to define the X and Y coordinates of the leadscrews. The M671 command must come after the M584 command and must specify the same number of X and Y coordinates as the number of motors assigned to the Z axis in the M584 command; and these coordinates must be in the same order as the driver numbers of the associated motors in the M584 command. The M671 command must also come after any M667 or M669 command.
-
Thank for your help guys! I think this is all sorted out. Everything seems to match now.
-
-