Tool change Passthrough M6

Hey all, first off absolutely love the software!

I’m finding an issue with my setup. I run Fluidnc with a laser + spindle.

Fluidnc will enable the spindle based on the tool number in my case T100.

The issue I’m seeing is with both gsender 1.4.0 edge and now with 1.4.1. in the tool change passthrough.

If I run a macro with M6 T100 only the T100 makes it through to the controller.

If I then send a M6 in the console the change is executed, the same thing is happening for M6 in gcode files.

Looking at the console with the Macro the M6 is still being sent as (M6) no matter the tool change passthrough switch position.

Screenshot 2024-01-29 at 9.29.06 PM

Thanks, we’ll take a look.

Josh are you using rapidchange atc ?? with your fluidNC?? There is no real support of atcs with just fluidNC

Hey Andy, no I’m not using ATC. fluidNC will just change its output signal based on a tool number. This allows for the laser and the spindle to be on different outputs or even signal methods.

I dug into the code and it’s possible the fluidnc is being detected as a grblhal instance which looks like it lacks the code for passthrough of the M6. If I modify this and drop the replace for (M6) from M6 it works.

In the Grbl code I see the code and it looks clean but no matter the position of the pass through switch the line is replaced. I’m going to be at the machine in a few hours where I will run some debugging.

I have found the issue in the code, mind if I submit a pull request for the fix?

Not sure if I have done it right but here is my attempt.