I’ve been thinking about how to nail tool changes and decided in order to do it “right” I really need to be able to home in X an Y. For some reason I have a pile of this style end-stop, so I wanted to use them:
Of course if I’m making metal chips they need to be somewhat enclosed to avoid shorts. I looked around thingiverse and didn’t find anything appropriate, but did find a mounting style I liked, so I whipped up a couple of enclosed mounts. Kinda difficult to get a good pic, but hopefully it makes sense:
Had to make different versions for X vs Y axis, oh well…
My plan is to use one of those cheap Z-probes to set Z-zero. But I’m thinking that having a Z-Max end-stop would be good (to be able to lift the router for bit change access, but not run it off the Z-rails). I saw some Z-Max mounts, but most seemed to mount under the Z-tubes (which would technically, although probably not a problem in practice, eat into my already minimal Z space). I ended up with this:
It mounts to my (no longer needed) dust shoe rod holder, which is part of my bracket to hold the vacuum exhaust tube. The top edge of the tool holder activates the switch (also fully enclosed). It can also be easily removed if I want to pull the whole Z assembly out of the gantry.
I had to reconfigure marlin to recognize the limit switches and to get the proper polarity on them. X-min and Y-min work great. I haven’t hooked up the Z-probe yet, so I haven’t tested Z-min. However, Z-max has an issue I don’t understand… M119 confirms that the Z-max switch is recognized by marlin, and it reports back the correct status (activated or open) - BUT when the Z-max switch activates it does not act like an end-stop (meaning I can continue to move in the +Z direction). I’m sure this is some kind of config issue, but if anyone knows what it is - please let me know. Thanks!
EDIT - I think I’ve figured out the Z-max issue… Seems the default marlin behavior is to ignore endstops except when homing (ENDSTOPS_ALWAYS_ON_DEFAULT not defined). M120 enables them, M121 disables them. Since my use case is to lift the router all the way up during a tool-change I should be able to do something like:
M120 //enable zmax detection
G0 Z100 F280 //move router all-the-way up (stop when zmax activates)
M121 //back to default setting for zmax detection
Haven’t verified this on the machine yet, but from what I’ve read this seems like a viable approach for me.