While GRBL officially does not support tool changes, the constructs are there to support it. It doesn't complain if you sneak in a Tool (T) command and slicers such as VCarve can pass in the tool # you set in their tool database with a slight modification to their Grbl (metric) post processor.
I have full control over the data stream and it is very feasible for me to trigger a job pause, unlock the machine, preserve the location of the spindle upon pause, direct it to a predefined "tool change" location, allow for the tool change and adjustment of Z 0, re-orient the machine back to the preserved location, and restart the job.
While GRBL officially does not support tool changes, the constructs are there to support it. It doesn't complain if you sneak in a Tool (T) command and slicers such as VCarve can pass in the tool # you set in their tool database with a slight modification to their Grbl (metric) post processor.
I have full control over the data stream and it is very feasible for me to trigger a job pause, unlock the machine, preserve the location of the spindle upon pause, direct it to a predefined "tool change" location, allow for the tool change and adjustment of Z 0, re-orient the machine back to the preserved location, and restart the job.