@droftarts thanks - I've been wrestling with M598's a lot over the last few days - trying to get parallel tool changing working (not actually parallel printing).
I am flipping between two motion systems - trying to kick off a process on the other motion system just before the current motion system finishes.
I'm getting close to getting it working - but I've at the moment I've more or less given up on using M598's. - as when you keep alternating between using them on different motion systems (a) sometimes they work fine, (b) sometimes they wait for around 20 seconds for no apparent reason. (c) Sometimes they hang and finally (d) sometimes they seem to just finish even though the other motion system is working on stuff.
I tried using axes machinePosition to tell what the opposite gantry was up to - but that doesn't seem reliable either.
So I have settled on using global variables to flag when the other motion system is parked - so when it is safe to proceed.
Seems to be working ok so far.