Skip to main content

Single Block Behavior


This document outlines the expected behavior of the control while Single Block is on.

General Behavior

  • Single block will always stop at the end of an executable block and highlight the next executable block, waiting for a Cycle Start before continuing.
    • Single block will not stop at the end of a single pass threading cycle if another single-pass threading cycle immediately follows it.
  • Some executable blocks will generate additional stops while processing.
  • Single block has no effect on MDI commands.
  • Any motion generated during an mcode will not be affected by single block.
  • If single block is turned on while in the middle of the file, the control will stop motion at the next planned stop that it can safely decelerate to.

Gcode Specific Behavior

The following table outlines how single block will behave for specific gcodes.

Block Description Behavior
Comment-only, blank, "%" Skip over and highlight the next executable block.
Any block with modals, MST, macro-b, or gcodes, regardless of motion generated or modals only. Stop at the end of processing the block and highlight the next executable block.
G65 and Industrial+ gcodes without "Step Into Subs" on Run the entire subroutine and stop at the end of the G65 block.
G65 and Industrial+ gcodes with "Step Into Subs" on Stop at the end of each executable block of the opened subroutine and at the end of the G65 block when returning from the subroutine.
G66 (modal macro call), G10 (modal fixture offset setting) Stop at the end of processing each block.

G32 (single line threading)

G34 (lathe) (variable lead threading)

G35 (lathe) (clockwise circular threading)

G36 (lathe) (counter-clockwise circular threading)

Stop at the end of the block, unless the next executable block is another single-pass threading cycle. Single block will stop at the end of all contiguous single-pass threading blocks.

G73 (high speed pecking)

G73.1 (lathe) (high speed peck drilling - advanced)

G74 (LH tapping)

G74.1 (lathe) (reverse tapping - advanced)

G76 (fine boring)

G76.1 (lathe) (fine boring - advanced)

G81 (drilling)

G81.1 (lathe) (hole drilling - advanced)

G82 (spot face)

G82.1 (lathe) (spot face - advanced)

G83 (peck drilling)

G83 (lathe) (face drilling)

G83.1 (lathe) (deep hole peck drilling - advanced)

G84 (RH tapping)

G84 (lathe) (face tapping)

G84.1 (lathe) (tapping - advanced)

G84.2 (RH rigid tapping)

G84.2 (lathe) (RH rigid tapping - advanced)

G84.3 (LH rigid tapping)

G84.3 (lathe) (LH rigid tapping - advanced)

G85 (boring, feedrate retract)

G85 (lathe) (face boring)

G85.1 (lathe) (boring, retract at feedrate - advanced)

G86 (boring, rapid retract)

G86.1 (lathe) (boring, retract at rapid - advanced)

G87 (back boring)

G87 (lathe) (side drilling)

G87.1 (lathe) (back boring - advanced)

G88 (lathe) (side tapping)

G89 (boring, dwell, feedrate retract)

G89 (lathe) (side boring)

G89.1 (lathe) (boring with dwell - advanced)

Stop at the end of the block and before entering the next hole.

There is a parameter that controls if there is an additional stop after completing each hole, before moving to the next position, that is off by default.

Canned cycles with the repetitive L parameter will behave the same as if each position was a new block.

G88 (boring, manual retract)

G88.1 (lathe) (boring, manual retract - advanced)

The cycle start that signals retract completed also satisfies single block continue. It will stop again before entering the next hole.
G76 (lathe) (thread cutting) Stop at the end of the block and at the beginning of each pass, after Z has returned to the start point and X is ready to start feeding in.
G92 (lathe) (simple threading cycle) Stop at the end of the block, after X and Z have returned to the start point.