Feed Hold & Auto Mode

System variable #3004 controls Feed Hold, Feed Rate Override, and Exact Stop behavior. Set the value according to the table below to enable or disable each feature.

#3004Feed HoldFeed Rate OverrideExact Stop
0EnableEnableEnable
1DisableEnableEnable
2EnableDisableEnable
3DisableDisableEnable
4EnableEnableDisable
5DisableEnableDisable
6EnableDisableDisable
7DisableDisableDisable

Single Block Control (#3003)

System variable #3003 controls Single Block behavior during macro execution. When the operator has Single Block mode active on the control panel, the machine normally stops after each block (line) of the program. Setting #3003=1 overrides this, allowing the macro to run continuously even when Single Block is switched on.

#3003 ValueSingle Block
0Enable (normal — operator can step through blocks)
1Disable (macro runs continuously even in single block mode)

Why disable Single Block? During probing cycles or critical multi-block sequences, you do not want the operator to accidentally stop the machine mid-sequence. A probe move that halts halfway through could leave the stylus engaged, and the next manual action might crash it. Similarly, a thread milling interpolation that stops mid-arc can break the tap or ruin the part.

Always restore: Set #3003=0 at the end of your macro so the operator regains normal Single Block control. Failing to restore this can be a serious safety issue—the operator expects Single Block to work when they turn it on.

#3003=1 (DISABLE SINGLE BLOCK)
G65 P9810 ... (PROBING CYCLE)
#3003=0 (RESTORE SINGLE BLOCK)

Feedrate Override Lock

Feedrate Override is controlled by bit 1 of the #3004 bit pattern. When feedrate override is disabled (#3004=2, 3, 6, or 7), the operator's feedrate override dial is locked at 100%. The programmed feed rate executes exactly as written, regardless of the dial position.

Critical for: Probing moves (must travel at the exact programmed feed rate), thread milling (feedrate is synchronized with spindle speed and pitch), and tapping cycles where feed-to-spindle synchronization is essential.

Without this lock, an operator turning the override dial to 0% during a probe move could cause the probe to stall while the axis is still in motion, leading to a crash. During thread milling, changing the override mid-cut produces an incorrect thread pitch and a scrapped part.

Exact Stop Control

Exact Stop is controlled by bit 2 of the #3004 bit pattern. When Exact Stop is disabled (#3004=4, 5, 6, or 7), the control may round corners between blocks to maintain continuous motion rather than decelerating to a full stop at each block boundary.

Normally you want Exact Stop enabled during probing, because the machine needs to reach the exact programmed position before the control reads the skip signal. Disabling it during probing can cause inaccurate measurements.

You may disable Exact Stop for high-speed machining paths where smooth, continuous motion is preferred over precise corner positioning. This is typically done in finishing passes on contoured surfaces where corner rounding improves surface finish and reduces cycle time.

Practical Auto Mode Patterns

Lock Everything During Probing

The most common pattern: disable both Single Block and Feed Hold during a protected probe move, then immediately restore operator control.

(SAVE CURRENT STATE)
#3003=1 (DISABLE SINGLE BLOCK)
#3004=1 (DISABLE FEED HOLD)
G65 P9811 ... (PROTECTED PROBE MOVE)
(RESTORE)
#3003=0
#3004=0

Safe Macro Wrapper Pattern

For longer macros with multiple critical sections, wrap the entire body in a lockout block. This prevents any operator interference during the entire sequence. Always restore settings before M99, even if an error occurs.

(STORE ORIGINAL SETTINGS)
(LOCK OUT OPERATOR INTERFERENCE)
#3003=1 (NO SINGLE BLOCK)
#3004=3 (NO FEED HOLD, NO OVERRIDE)
...
(MACRO BODY)
...
(ALWAYS RESTORE - EVEN AFTER ERRORS)
#3003=0
#3004=0
M99

The table below summarizes common use cases and the recommended #3003 / #3004 settings for each scenario.

Scenario#3003#3004Why
Normal cutting00Operator has full control
Probing cycle11Prevent mid-probe interruption
Thread milling02Lock feed rate at 100%
Critical sequence13Full lockout during critical moves

See also: Macro Control Flow for WHILE/DO loop structure.

References

  • Peter Smid, Fanuc CNC Custom Macros, Industrial Press, 2004.
  • Fanuc, Operator’s Manual / Parameter Manual, FANUC Corporation.

Have a question or want to contribute?

Contact us with corrections, additions, or topics you'd like covered.

Get in Touch