Am I missing something? Seems to me, my suggestion of modifying the M6End macro is quite simple. You have access to the tool offset through the tool length DRO. So, even if Mach does apply that somewhere, it's a simple matter for the macro to un-apply it by adding/subtracting the offset to the Z DRO, re-setting the DRO, then moving the knee by the appropriate amount.
Regards,
Ray L.
I guess it would be a simple matter for someone who does VB for a living and knows the ins and outs of Mach. For me, it would be easier to ask me to levitate. I'm sure there are many who would love to see a post of all the code required to make this happen, feel free to be our hero. If you ever need a Piller 400 HZ parallel cabinet installed and wired up or autopilot aileron servo replaced or even an Atos hang glider rib adjustment for racing, I'm your man.
Vince
Well, I ain't no VB whiz, but I can learn enough to do what I need to do. Fact is, I consider VB to be one of the most abominable programming languages ever created. It's a God-awful mish-mash of about a dozen different paradigms, with more excpetions than rules.
In any case, I think we're talking about all of *maybe* a dozen lines of code:
1) Get the tool offset
2) Add/subtract tool offset to Z DRO, and reset Z DRO to this value
3) If necessary, do Z move to undo automatic tool length compensation, if there is one
4) Issue move command on knee axis, to do the tool length compensation
I'm guessing someone who's familiar with how Mach does toolchanges, and up on VB and all the Mach OEM codes, could do this in about 10 minutes. If I had a machine to work with, I'd guess I could get it done within an hour.
Tell you what, even though I don't have a machine, I'll try to play with it over the next few days, and see if I can do it in simulation. Should be pretty straight-forward, I think.
Regards,
Ray L.