Using Probe for shapoko style bit setter (tool length)

I’m familiar with using G28/38.3 and G92 offsets to probe and set z0 off of a work piece. I have a Shapoko 3xl and it has a bit setter/tool length Probe (aka the end mill lowers onto a limit switch so you can switch tools and not have to find the z height again) It’s way convenient for tool changes and I can’t figure out a way to do it with Marlin Gcode.

I was thinking one could do some coordinate workspace shenanigans but it doesn’t seem like that will work because there’s no way to add a relative amount of coordinates dynamically based on a tool length probe.

Google bitsetter youtube. It’s a game changer.

Once you had the number, you could make a macro for each tool to set G92. But you would need to unset by the same amount when you were done with the tool.

The more common solution is to just home Z again with your touch plate after you change bits. That seems more accurate than trusting your chuck will be at the right depth anyway.

1 Like

Yeah, I was hoping for more of a set it and forget it type solution like the way it is on the shapoko tool setter because once you have to do tool changes on curved surfaces, touching off with new tools gets tricky. Also I’ve never had any issues with their bit setter probes as far as accuracy. They’re within .001mm just like a touch off.

I was thinking another way it could be sort of done is by offsetting the probe in relation to the bed. At least in fusion 360 you can set your cam paths in relation to the bottom of your parts. I know that’s maybe not an option with other cam packages.

Ok I love a puzzle and I spent too much time thinking about this. I think you’re right that there are no workspace shenanigans that make this automatic because, as you said, there is no way to apply an offset to a workspace.

But there may be another way. If you imagine an additional axis with a Z leadscrew you could mount the probe on the second Z, and instead of lowering the tool onto the touch probe you could raise the touch probe to meet the tool (hypothetically if you could get G38.2 to work on the extra Z axis). You could touch off your workpiece first (and G92) and then raising the probe device to meet the tool after which the probe would be aligned with your workpiece zero and it would be simple to touch off after changing tools. You would still want a separate workspaces for the XY at least, so you can set XY at your workpiece origin and still be able to find your probe device.

Unfortunately I dont think its possible to do G38.2 on any axes other than X Y or Z. And anyway its a lot of extra construction to build a second Z axis for the probe to ride on.

But you might be able to get the same effect with a ramp. Suppose you have a conductive ramp along the X axis and suppose it goes “uphill” in the +X direction. You touch off your workpiece as before and establish G92 Z0 for your workpiece. Now at some point along the ramp, at some unknown X coordinate, you would have Z that matches your workpiece Z. So move to the left side of your ramp and probe G38.2 in the positive X direction. You would find the X coordinate where the ramp matches your workpiece Z. Set G92 X=0 in some other coordinate space so you can come back to that X coordinate in the future. Then when you change tools, you go back to that X coordinate on your ramp and G38.2 downward to reestablish the workpiece Z with the new tool.

The ramp would need to have a very shallow incline or else the tool diameter would induce an error (also true for single flute bits where the point of contact is unpredictable).

This idea is somewhat indirect on a conceptual level but the physical implementation and the gcode should be fairly straightforward.

2 Likes

Or…

Cut a scrap piece of wood the same height as your starting material. After swapping bits, jog to the scrap material and Z home there. You can z home anywhere on your spoil board. You have to move the spindle away from the work to swap bits anyways, just z home where you swap bits.

3 Likes

I’m actually modifying the G38 gcode to do what I need it to do. I’ll let ya know how it goes.

Get anywhere on this? I had someone give me a bitsetter tonight… I’d be very much interested in using it on my machine.