Got a carve running and you need to make a quick change? Don’t want to start over, just stop for a while?
Grbl provides a method for pausing a G-code job without losing machine position.
The pause function is called “feed hold”. You can issue a software command to Grbl to invoke the feed hold function or you can use a hardware switch to invoke feed hold. Both methods are an immediate command to Grbl to execute a controlled stop without losing machine position. It is an immediate soft stop.
To resume a job that has been paused using the feed hold command you issue a “cycle start” command either with a software immediate command or using a hardware switch. When this function is invoked, Grbl will resume the job from the point that the feed hold was issued.
The Grbl software command for feed hold is ! (exclamation point) and the software command for cycle start is ~ (tilde).
NOTE: Universal G-code Sender does not support Grbl Immediate commands in the Command Tab.
However, in the File tab UGCS has a “Pause” button that issues the feed hold command. Once in feed hold mode the button changes to “Resume”. The “Resume” button issues the cycle start command.
In order to use the hardware switches for feed hold and cycle start you have to connect two switches (usually momentary contact switches) to the Arduino.
Feed hold uses pin A1 and cycle start uses pin A2. Connect one side of each switch to the appropriate pin for each function and connect the other pin of each switch to Arduino ground. These two pins are configured as inputs with internal pull-up resistors active so you don’t need any other components for this to work.
Then, when you want to pause, just press the feed hold switch. To resume, press the cycle start switch.