FluidNC - Pause a job / move manually then resume?

I’m running a huge job (flattening an MDF spoilboard) and the carbide cutters on my surfacing bit have gotten dull. (It’s a long story. Didn’t intend to cut as deep as I am. But that’s not the point…)

Is there any way to pause a job in FluidNC so that I can lift the Z axis long enough to change the cutters and then resume? I see that I can pause, but none of the commands I enter on the terminal do anything.

Running the V3 web UI at present.

I don’t run FluidNC, and I don’t see any g-codes in the FluidNC reference to help you. But, if this was my problem, I would:

  • Note the percentage the job is completed
  • Note the XY coordinate
  • Stop the job
  • Change the cutters
  • Reset the Z height
  • Edit the g-code file to cut out the completed work
  • Run the edited script.

If you have the XY coordinate, it should be easy to find the current line in the g-code file for the horizontal or vertical pass. If you don’t have the XY coordinated, you can cut the file by a percentage minus some padding. You will have to fix or add the first rapid move. If you are concerned about editing the g-code, I’ll be glad to give it a try.

I agree. I’m not aware of a way to pause in the middle of a job and perform an action without cancelling the job. I agree that I would probably tackle it similar to the way @robertbu describes, but that “reset the Z height” step could prove to be tricky. It might be worth just starting over now that you probably have a better idea of where the high point is.

Someday I might have a better answer for this but not anytime soon. When I get around to surfacing my spoilboard (which I haven’t found necessary yet), I plan on trying to write a generic surfacing script using some FluidNC functionality. That will likely have you probe a few places on the spoilboard to give you an indication of where the high point is. I also have intentions of investigating some options to pause/resume likely using line numbers, variables, and some post processing.

I wonder if it could be possible to display in fluidNC the line number of the file where it was paused

Y’all need Estlcam as a controller as well… :stuck_out_tongue:

1 Like

If you include line numbers in the gcode, it will include the line number in the status string. However, that’s not entirely accurate but still useful enough to figure out a good place to restart.

From the FluidNC wiki: GRBL Execution Pipeline | Wiki.js

When the sender requests a status report by issuing the realtime character ‘?’, FluidNC responds with a report that contains, among other information, the current position and possibly the GCode line number. The position is very accurate because it is derived from pulse counts at the very end of the pipeline. Line numbers are less accurate because they are propagated only as far as the end of the Planner Queue, but do not reflect delays due to the Segment Queue. In general there is no easy way to tell exactly when a given GCode line has fully executed, unless you add synchronizing commands in the GCode stream. Synchronizing commands like dwells wait for all motion to cease before proceeding.

There are pros and cons to Estlcam as well. I don’t want to have a computer tethered to my CNC if I don’t have to.

If you use FluidNC with a gcode sender like UGS, you have more options but I don’t use them, for some of the same reasons why I wouldn’t use Estlcam as a controller. Since that is handling the sending of the gcode lines, it has more control over the process. At least for UGS, you can run from a selected line.

Usage - Run from a selected line · winder/Universal-G-Code-Sender Wiki

1 Like

That really is the only drawback. :stuck_out_tongue: But I am not going to start again. :joy:

1 Like