endstop offset...Again
-
Hi,
I'm trying to reconfigure my Voron 2.4. My X limit switch is fine, mechanically it just lined up right. My Y limit switch however is behind where the nozzle would be on the build surface, about 10mm.
One thread said M201 S1 for far limit switches, but M201 anything seems to have nothing to do with it. One link on how to center the work plane goes to the old doc sight.
I read the various threads and nothing really seemed to be the right answer. I played with M208, that place my origin at not 0,0, it becomes 0,-10.
I thought G10 was exactly what I would want, seems to do the right thing with the Z axis. with the Y axis, it does nothing.
G10 P0 Y10 or G10 P0 Y-10 made no change.Seems like this should be a stupid simple task, or maybe I'm just stupid.
Both my limit switches are far switches, 0,0 is front left.
How do I fix this?
-
@Joel there is no need to have your limit switches at 0,0 . You use M208 to define the axes lengths and that, in combination with M574 to set if the switch is at the top or bottom of the axis let the firmware know the head position one the endstop is triggered. so in your case it looks like th X endstop triggers at the X -10 position (from your description) so you would setup M208 to have -10 as the lower limit for X. That's absolutely fine. if after homing you want to move the nozzle to 0,0 then you can do so in the homing file, there is no reason that the start point have to be 0,0 though.
If i have missed something about what you are tying to do then a diagram may help.
-
It's the Y axis that is off, but your comment applies either way.
Conceptually to treat the physical 0,0 as 0,-10 is broken. There should be a way to shift the origin so that 0,0 is physically 0,0. when the print nozzle is at the corner of the board that is really 0,0, the display should not read 0,-10.
It seems that G10 should do exactly this, is seems to for the Z axis, why is is not working for the Y axis?
Thanks
-
you you can use offsets to achieve what you are talking about, I do not mean you should setup M208 that when the nozzle ti is at the physical 0,0 it should be reading 0,-10.
What I mean is you should setup M208 so that the difference between the switch trigger point and 0,0 is accounted for.
Here is an example. On my tool changer My X switch triggers at -32 relative to the 0,0 position on my bed. the Y switch triggers at -46. so my M208 command is this:
M208 X-32.5:328.5 Y-46.2:244 Z-1:270 C0:500 S0 ; Set axis maxima & minima
So if you have M208 Y-10:mmm etc
where mmm is the maximum then when the switch is triggered the head will read -10 (and it will be at -10) and then when you send it to Y0 it will be at 0
-
Conceptually to treat the physical 0,0 as 0,-10 is broken. There should be a way to shift the origin so that 0,0 is physically 0,0.
There’s nothing broken at all. Aside from mixing the physical coordinates of your printer with the rather „logical“ origin of your workspace, you misunderstand what M208 does. It allows me to even define the center of my bed as X0 Y0. @T3P3Tony is exactly to the point - now it’s your turn to understand M208. I recommend to study the reference manual, I.e. the GCode dictionary. Oh, and forget G10 in this context (or better look it up, too). If questions remain, post your config.g and indicate where your endstops are located.
-
OK,
So I was thinking about it wrong.
What I needed to do was set M208 Y358, not -10.
Now 0,0 is where I want. Is there a way to set the actual travel limit so that the nozzle will stop at Y350 and not be able to go to Y360. It will do that in the slicer but is there a way to do it in the controller. Say I'm at Y0 and I hit move Y 100mm 4 times, I want it to stop at 350, still on the build bed, not stop at 360, the limit switch.
-
@Joel it is possible to redefine M208 in the homing macro before and after homing AFAIK. This is untested but basically:
Set M208 Y350 in config.gIn your homey.g.macro
- first set M208 to the true value.
- then home as usual
- then move inside of the allowed area
- then set M208 to the lower value.
See if that works
-
I think I'm actually OK with it working the way it does. I moved my build surface back so the far edge is at the end stop. I then gave myself some overhang at the front. Now when I start a print I move the nozzle off the build surface at the front and prime. When I start the print, any ooz gets sliced off.
Thanks For the help
-
-