I get the general process. It’s just that FluidNC doesn’t seem to like feed holds in the macro or I have something not quite right. I have M6 macros working on my pen plotter. For that, I just took the defined process that was being used and “converted” it to M6 handling. That doesn’t require user intervention so there weren’t any issues.
For FluidNC, there is only one macro for all of it. When you execute an M6 command, it calls this single macro so it has to use the gcode parameters and expressions to figure it out. It gives you the current tool and the selected tool. There has been a change since the one I created for my pen plotter. When the tool change is complete, you need to actually set the selected tool as the current tool with M61 #<_selected_tool>
. Unless it fails, then it should raise an alarm with $Alarm/Send=3
.
For positions, my intention is to have variables that store the position of the first tool location and the spacing between. So, the X location is just X location for T1 + (tool number * spacing). All the tools should do the same thing, just at different locations.