G69 Balance Cut Cancel: Coordinate Recovery & Crash Prevention
Learn how to program the G69 balance cut cancel command for Fanuc, Siemens, and Mitsubishi turning centers. Cancel dual slide synchronization and prevent crashes.
Introduction
Under uncancelled G68 conditions, or if the G69 block fails to execute, the indexing turret can travel along an uncompensated or uncancelled path. This unexpected travel can result in a catastrophic hard collision where the turning tool or the turret carrier crashes directly into the revolving jaws of the spindle chuck, table-mounted clamps, or a workpiece vise jaw. This sudden impact shatters the cutting tool, damages the spindle assembly, generates an overload preprocessor alarm code, and converts the raw stock into a completely ruined scrap part. A properly programmed G69 balance cut cancel code acts as a necessary coordinate recovery protocol during multi-path machining cycles, restoring independent tool post motion and protecting workholding equipment.
Technical Summary
| Field | Value |
|---|---|
| Command Code | G69 (Fanuc/Siemens ISO), G14 / G69 (Mitsubishi) |
| Modal Group | Group 04 (Fanuc), Group 4 (Siemens ISO), Group 15/18 (Mitsubishi) |
| Critical Parameter | Fanuc Parameter No. 8103 Bit 1 (MWP), Siemens MD 20154, Mitsubishi #1037 |
| Main Constraint | Must be programmed in a standalone block, or synchronously in both paths. |
Quick Read
- Cancel synchronized state before executing rapid retractions or tool-indexing movements.
- G69 only halts the timing synchronization and does not dynamically revert overrides on its own.
- Siemens requires ISO Dialect mode (G291) to recognize G69.
- Mitsubishi commands rely on #1037 cmdtyp to dictate if G14 or G69 applies to balance cut cancel.
- Forgetting G69 can send the turret into spindle chucks, triggering alarms like Alarm 14800 or P481.
- NC reset behavior can be set to unconditionally revert to G69 on Fanuc systems.
Basic Concepts
The practical programming of G69 Balance Cut Cancel on Fanuc turning centers serves as a critical coordination recovery protocol during multi-path machining cycles. Balance cutting (G68) is utilized when machining long, thin workpieces to cut the raw stock from both sides simultaneously, which prevents workpiece deflection, suppresses structural slack, and reduces overall cycle times. Once the synchronized turning sequence is complete, the programmer must command G69 to release the paths from this coordinated state, returning the tool posts to independent path control.
Implementing the custom G69 dual slide/turret cancel command on Siemens turning centers serves as a critical safety and coordinate recovery protocol during automated machining cycles. When the bilingual interpreter is switched to ISO Dialect Mode, G68 activates coordinated dual-slide execution to synchronize the motion paths of independent tool posts, allowing workpieces to be turned simultaneously from both sides. Cutting a thin workpiece concurrently from opposing sides suppresses structural slack, eliminates vibrations, and prevents raw stock deflection. Once this synchronized sequence is complete, the programmer must command G69 in a standalone block to deactivate the coordinated state, restoring the tool posts to standard independent operation.
The practical programming effect of the G14 (or G69) balance cut cancel command on Mitsubishi turning systems is to release the motion kernel of both the 1st and 2nd part system turrets from a synchronized timing state, restoring independent path execution. When turning a workpiece that is relatively long and thin on a lathe, machining it from a single side causes workpiece deflection and violent chatter. By commanding G15 (or G68), the control synchronizes the starting timing of both cutting tools, applying them simultaneously on both sides of the raw stock to suppress workpiece slack and significantly reduce total machining cycle times. Once this coordinated roughing or finishing segment is complete, the programmer must explicitly command G14 (or G69) to cancel the balance cut modal before either tool post executes rapid retractions or tool-indexing movements.
Command Structure
The G69 command is structured as a standalone block with no coordinate or movement address inputs. It is generally programmed sequentially after the final synchronized cutting feed command has been executed. When a program reaches a G69 or G14 block, the control terminates the standby wait state and releases the associated tool posts from the coordinated multi-path link.
For optimal reliability, the command must be programmed concurrently in the part programs of both synchronized tool paths. Failing to program the release code in one of the paths will leave that specific channel waiting indefinitely for a synchronization marker that will never arrive, halting execution. The syntax typically follows a simple format without address arguments.
- Fanuc:
G69 ;(Group 04) - Siemens:
G69 ;(Group 4 in ISO Dialect mode) - Mitsubishi:
G14 ;(Group 18) orG69 ;(Group 15)
Brand Applications
Fanuc
Fanuc controls rely on G68 and G69 for dual slide synchronization. The path formatting depends on Parameter No. 8103 Bit 1 (MWP). Setup operators and programmers must maintain absolute vigilance when coordinating balance-cut sequences. Programmers must understand that the balance cut function only synchronizes the start of the cutting feed at the pulse distribution start block; it does not dynamically coordinate axis movements, velocity, or feedrate overrides thereafter. To prevent catastrophic machining failures, the travel distances, feedrates, override states, and interlock keys of both synchronized tool posts must be programmed identically. If a programming mismatch is executed, the uneven forces on the opposing turrets will cause the thin workpiece to vibrate violently, resulting in chatter, tool breakage, and a completely ruined scrap part.
- Parameter No. 8103 Bit 1 (MWP): Determines the parameter designation format for identifying synchronized paths (binary sum vs. decimal combination).
- Alarm PS0191: Triggered during thread cutting cycles if taper height violates limit rules.
- Alarm PS0082: Triggered if tool offset change is specified in same block as measurement.
- Series 15 Program Format (FCV = 1): Bypasses standard rough-cutting parameter limits.
Fortunately, Fanuc controls configure the cancel mode (G69) to be unconditionally set by an NC reset, allowing operators to safely cancel synchronized standby states in emergency situations.
Siemens
On Siemens SINUMERIK systems, Group 4 commands are exclusively evaluated in ISO Dialect mode. To manage external reset states safely, machine data parameter MD 20154 must initialize Group 4 to the cleared state (G69) upon system power-up or reset. Setup operators and programmers must maintain absolute vigilance when coordinating dual-slide trajectories. If the G69 cancellation block is omitted, or if a reset fails to initialize Group 4 to the G69 state, the indexable tool turret will continue to move in a coordinated, synchronized, or mirrored path during subsequent positioning commands. If an operator executes manual adjustments or a coordinate reset, and then resumes automatic cycle start, the indexing turret head can travel along an uncancelled, shifted path. Under these uncompensated conditions, the tool post can easily bypass software boundaries, driving the cutting tools directly into physical workholding components—such as table-mounted fixture clamps or the rotating jaws of a spindle chuck.
- MD 18800 $MN_MM_EXTERN_LANGUAGE: Enables external CNC language compiler to parse G69.
- MD 20154 $MC_EXTERN_GCODE_RESET_VALUES[n]: Defines default G-code modal state.
- Alarm 61800: Compiler switch to external G-code executed with MD 18800 disabled.
- Alarm 14800: Axis overload triggered due to hard collision or zero feedrate conflicts.
Operators must dry-run programs in single-block mode and monitor HMI sidescreen displays to verify that the active G-group modal registers successfully display G69 before proceeding.
Mitsubishi
Mitsubishi utilizes parameter #1037 cmdtyp to dictate standard list active functions. Programmers and setup operators must maintain absolute vigilance because balance cutting only coordinates the start of cutting feed blocks and does not dynamically coordinate speeds or overrides during path travel. Prior to automatic cycle start, the operator must physically position and secure the raw stock within the spindle chuck or tailstock support. If a coordinate mismatch or feedrate override difference is present between the two part programs, the turrets will distribute pulses at different rates. This can cause uneven forces on the workpiece, creating chatter, ruining the surface finish, and potentially leading to a physical hard collision if one turret attempts to travel beyond safe boundaries. To prevent severe collisions, programmers must configure the chuck barrier (G22 / G23) and tailstock barrier on the HMI setting screens to establish a secure electronic protection envelope around workholding equipment.
- Parameter #1037 cmdtyp: Configures whether G14 or G69 handles the balance cut cancel based on the active list (Lists 2 to 7).
- Parameter #1244 set16/bit2: Configures if timing synchronization standby is executed on cutting feeds only or all blocks.
- Program Error (P481): Executed if a balance cut command is called while in milling mode.
- Program Error (P29): Triggered if multi-part simultaneous thread cutting is programmed under active balance cut mode.
Operators must also verify that active G-code modal displays show G14 (or G69) cancel codes before running manual positioning sequences after a machining interruption.
Brand Comparison
| Topic | Fanuc | Siemens | Mitsubishi |
|---|---|---|---|
| Command Code | G69 (Group 04) | G69 (Group 4 in ISO Dialect) | G14 (Group 18) or G69 (Group 15) |
| Standard / Legacy activation | Activated by G68 with address P. | Switch to ISO Dialect with G291 then activate via G68. | Activated by G15 or G68. |
| Standby / Wait logic | Rigid standby wait logic: halts system. | — (no source) | Configurable standby check via parameter #1244 set16/bit2. |
| Reset Modal Behavior | Unconditionally set to G69 on NC reset. | Configured via MD 20154. | Configured via Parameter #1210 RstGmd. |
Technical Analysis
Three key programmatic and coordinate behaviors clearly distinguish Siemens from Fanuc and Mitsubishi controls during turning coordinate transformations and compiler execution. First, Siemens decouples slide mirroring from G68/G69 Group 4 commands in its native environment. While Fanuc and Mitsubishi turning controls utilize standard Group 4 or Group 15 G-codes to toggle turret mirror offsets directly, Siemens manages mirroring natively through explicit, text-based frame commands. Second, Siemens utilizes dedicated channel-specific machine data to dynamically configure external G-group defaults. Through variables such as MD 20154, Siemens allows machine tool builders to specify exactly which preparatory G-codes become active for each external G group upon NC reset. Fanuc and Mitsubishi systems handle reset initializations on flat, parameters-locked registers.
Mitsubishi exhibits distinct characteristics when dealing with G69 coordinate operations. Mitsubishi permits the mirror image of facing turrets to be turned ON and OFF directly via the tool selection (T command) rather than preparatory G-codes. Guided by parameters #1119 Tmiron and others, selecting a designated tool number dynamically shifts the workpiece coordinate systems and wear offsets. Furthermore, Mitsubishi dynamically integrates G68/G69 turning modals with its manual arbitrary reverse run (G127) function. During this reverse tracing, Mitsubishi’s motion kernel successfully tracks and maintains the active G68 coordinate shifts using its specialized modal information storage block, preventing axis drift. Finally, Mitsubishi enforces a parameter-locked validation flag for bimodal program format switching under active mirroring. If a G188 command is issued in a part system that is actively in T-code mirror image mode, the control immediately blocks the compiler switch and generates Program Error (P29).
Program Examples
; Fanuc: G68 ; Turn balance cut mode ON for paths 1 and 2
; Fanuc: G01 X80.0 Z-50.0 F0.25 ; Perform synchronized cutting feed on both tool posts
; Fanuc: G69 ; Cancel balance cut mode and resume independent tool post motion
dry run: Verifies that the G69 cancellation immediately follows the synchronization cut, checking that the independent paths release properly without raising PS alarms.
; Siemens: G291 ; Switch bilingual interpreter to ISO Dialect mode
; Siemens: G68 ; Dual slide/turret ON to synchronize the opposing tool carriers
; Siemens: G69 ; Dual slide/turret OFF to cancel synchronization
dry run: Ensures the interpreter safely returns the tool post to G69 OFF prior to executing subsequent rapid traverse motions or frame shifts.
; Mitsubishi: G15 ; Turn balance cut ON (G-code List 3 standard Group 18)
; Mitsubishi: G01 W47.0 F10.0 ; Execute synchronized cutting feed simultaneously
; Mitsubishi: G14 ; Cancel balance cut (Balance cut OFF) in an independent block
dry run: Confirms that G14 successfully disables the L-address wait lock, enabling turrets to retract back to their home reference positions individually without causing an axis limit alarm.
Error Analysis
| Brand | Alarm Code | Trigger | Operator Symptom | Root Cause / Fix |
|---|---|---|---|---|
| Fanuc | Alarm PS0191 | Violating taper height limits during thread cycles. | Cycle halts. | Ensure taper height is programmed within valid limits. |
| Siemens | Alarm 61800 | Executing ISO Dialect switch with MD 18800 disabled. | External CNC system missing message. | Enable MD 18800 (or verify option bit 19800). |
| Mitsubishi | Program Error (P481) | Executing balance cut command while in milling mode. | Program stops executing. | Ensure channel is in turning mode. |
Application Note
Omitting a G69 cancellation block poses an immediate threat to the machine’s physical integrity, particularly when handling long, thin workpieces. If the cancellation is missed, the turret may travel along an uncompensated or shifted path, leading directly to a catastrophic hard collision with the revolving jaws of the spindle chuck or table-mounted clamps. Always verify that active G-code modal displays show G69 cancel codes before running manual positioning sequences after any machining interruption.
Related Command Network
- G68: Triggers the balance cut or dual slide/turret synchronization state on turning centers.
- G67: A cancellation code that terminates modal custom macro states, operating similarly as a recovery command.
- G68 (Milling): Although a coordinate system rotation code in milling, it emphasizes the importance of cancellation codes across different control modes.
- G291 (Siemens): Engages the ISO Dialect interpreter required to successfully parse G69 blocks.
Conclusion
Securing the cancellation of balance cut modes via G69 ensures precise, independent recovery of tool paths following complex multi-turret synchronizations. Diligent use of this command prevents hard collisions, safeguards workholding equipment, and maintains uninterrupted machine workflow.
FAQ
How do I switch out of dual slide/turret mode safely?
Ensure that the G69 command is explicitly called on a standalone line right after the synchronized cuts are completed. Always run a dry test to confirm that modal displays properly register the canceled state before attempting rapid tool retractions.
Why does the machine ignore my G69 command in native Siemens mode?
Siemens processes G69 as an ISO Dialect code rather than a native SINUMERIK command. Command G291 in a preceding block to switch the bilingual interpreter to ISO mode, allowing the control to process external G-groups properly.
Can I program G69 with coordinates in the same block?
Commanding axis movements or M-functions in the same block as G69 can cause concurrency violations or desynchronized standby locks. Write G69 by itself on an independent block to cleanly sever the path synchronization link without introducing secondary errors.
Still not resolved?
Ask our AI assistant about this topic in natural language. Grounded in verified sources, no hallucinations.

- CNC CARE Co-Founder (May 2025 - Present)
- Mitsubishi Electric NC Sales & Service Section Manager (2008 - 2025)
- Reis CNC Service Engineer (2003 - 2008)
- Ören Kalıp CNC Mold Line Team Leader (1999 - 2002)
With over 25 years of experience working in all areas of the CNC machine industry, I continue my activities as a co-founder of CNC CARE, where we offer brand-independent consulting, engineering, and original spare parts services.
Related Articles
Other articles on this topic
G71 Metric Dimensioning Guide for Siemens SINUMERIK Controls
Learn how to program G71 and G710 metric dimensioning on Siemens SINUMERIK controls, including parameter MD 10240, alarm codes, and G-code syntax errors.
G70 CNC Finishing Cycle Guide for Fanuc, Siemens, and Mitsubishi
Learn the G70 finishing cycle for CNC turning. Master syntax, parameters, and alarm codes for Fanuc, Siemens CYCLE95, and Mitsubishi controls to avoid crashes.
G69 Coordinate System Rotation Cancel: Modals, Alarms, and Setup
Learn to cancel G68 facing turret mirrors and coordinate rotations using G69 on Fanuc, Siemens, and Mitsubishi CNCs to prevent turret crashes.
G68 Mirror Image and Balance Cut Programming for CNC Lathes
Master G68 mirror image and balance cutting on Fanuc, Siemens, and Mitsubishi CNC turning centers to prevent tool crashes and coordinate dual turrets.