Skip to main content
CNC.wiki

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.

Hakan Gündoğdu
Hakan Gündoğdu

CNC CARE Co-founder

Introduction

A catastrophic hard collision that shatters the cutting tool and damages the axis ball screws will occur if a coordinate scaling mismatch between imperial and metric units is introduced during setup. When zero offsets or tool offset data are miscalculated, the indexing turret or spindle head travels along a dangerously shifted path, bypassing soft safety limits. The resulting path deviation drives the tool nose directly into workpiece workholding components, such as table-mounted fixture clamps, a workpiece fixture vise jaw, or the rotating jaws of a spindle chuck. Operators must maintain absolute vigilance regarding active scaling data, tool offsets, and reset parameters to avoid converting raw stock into a completely ruined scrap part.

Technical Summary

FieldDescription
Command CodeG71 / G710 (or G21 in ISO Dialect mode G291)
Modal GroupGroup 13 / Modal
BrandsSiemens
Critical ParametersMD 10240 $MN_SCALING_SYSTEM_IS_METRIC, FGREF
Main ConstraintCompact SINUMERIK 802D sl locks working area limitation parameter MD 10604 and does not support widescreen multi-touch coordinate displays.

Quick Read

  • Choose between G71 and G710: Use G71 when you only need to scale linear geometric coordinates, but select G710 to dynamically scale coordinate velocities, active path feedrates (F-values), and length-related system variables concurrently.
  • Configure bilingual interpretation: Explicitly command G291 to switch the interpreter to ISO Dialect Mode before executing legacy ISO-style G21 metric dimensioning commands.
  • Isolate program dimensions: Set the dimension unit in ShopMill or ShopTurn program headers to scale program-specific coordinate positions while leaving system offsets in the machine's default system unit.
  • Program ISO G21 in isolation: Always write the ISO Dialect G21 command on a separate block at the start of a line without concurrent travel or auxiliary commands to avoid syntax errors.
  • Set default reset states: Utilize machine data parameter MD 20150 $MC_GCODE_RESET_VALUES to automatically initialize Group 13 to G71 upon system reset or power-up.
  • Calculate rotary axis factors: Specify geometry factor FGREF[A] = 57.296 for rotary axes when operating under G71 or G710 metric scaling.

Basic Concepts

Practical programming of metric dimensioning via G71 and G710 commands on Siemens controls provides applications engineers with high-precision control when executing programs written in millimeters. The preparatory commands establish the metric coordinate system, dictating how length dimensions are interpreted by the control. By utilizing the advanced G710 system, programmers can ensure that not only linear Cartesian positions are scaled, but also active feedrates (F-values in mm/min or mm/rev) and length-related system variables (such as tool length and radius offsets) are dynamically converted, eliminating manual recalculation errors. This metric integration is particularly useful in multi-axis turning and milling setups where precise tool paths must be maintained across bilingual systems.

Programmers and setup operators must maintain absolute vigilance regarding active scaling data, tool offsets, and reset parameters. Prior to initiating automatic cycles, the setup operator must physically position and secure the raw stock within the workpiece workholding. This involves clamping it in a machine vise jaw, mounting it on table clamps, or securing it in a lathe spindle chuck. If a coordinate scaling mismatch occurs, or if a metric-inch translation is miscalculated in zero offsets during setup, the tool indexing turret (or spindle head) will travel along a dangerously shifted trajectory. In these conditions, the tool nose or gantry can easily bypass soft safety limits and drive the cutting tool directly into physical workholding components, leading to a severe physical crash.

Command Structure

In native Siemens mode (G290), G71 and G710 are preparatory commands belonging to G-code Group 13. While standard G71 restricts its conversion strictly to linear geometry coordinates (X, Y, Z, polar radius RP, and arc center offsets I, J, K), G710 is an extended command. When G710 is programmed, it scales coordinates, active path feedrates (F-values), and length-related system variables (like active tool wear, length, and radius compensations) into metric units. This dual-tier structure prevents feedrate mismatch issues during bilingual compilation.

If switching to ISO Dialect mode (G291), the compiler interprets G21 for metric dimensioning. The G21 command belongs to Group 06 in the ISO system. It must be written at the beginning of a block and must be programmed in a separate block without movement commands to prevent parsing conflicts. This ensures compatibility with legacy programs while maintaining controller integrity.

Syntax

G71 X... Y... Z... ; Geometric metric coordinate scaling
G710 X... Y... Z... F... ; Dynamic metric scaling of coordinates and feedrates
G291 ; Switch interpreter to ISO Dialect Mode
G21 ; Select ISO metric command (must be written in separate block)

Parameters

ParameterDescriptionRange / Default
MD 10240 $MN_SCALING_SYSTEM_IS_METRICDetermines whether non-geometrical settings like feedrates (F-values) and work offsets are interpreted using the metric standard by default, even during active inch dimensioning.Boolean/numerical (system default)
MD 20150 $MC_GCODE_RESET_VALUESConfigures the default G-code reset state of Group 13 to G71 upon channel reset or NC system power-up.G-code (typically G71)
FGREFGeometry factor for rotary axes. Under G71/G710, the reference factor is calculated as FGREF[A] = 57.296 to maintain coordinate scaling.Real number (Reference factor: 57.296)
Arithmetic R-Parameters (R0 to R999)General user variables accepting real numerical values.±(0.0000001 to 99999999) with up to 8 decimal places

Brand Applications

Siemens

Siemens controls manage metric dimensioning through G71 and G710. The basic G71 command converts Cartesian coordinates and polar radii, but leaves tool offsets and feedrates in the default machine system unit. To convert both geometry coordinates and active feedrates (F-values) concurrently, G710 must be active. Under ISO Dialect Mode (activated via G291), G21 must be programmed at the start of a block and in a separate block without movement.

  • MD 10240 $MN_SCALING_SYSTEM_IS_METRIC: Defines if default system parameters are parsed using the metric system.
  • MD 10604 $MC_WALIM_GEOAX_CHANGE_MODE: Configures working area limitations during axis switchovers. Locked on compact 802D sl.
  • MD 20150 $MC_GCODE_RESET_VALUES: Configures default startup G-code to G71.

Warning: In bilingual programs, failure to switch explicitly to G290 or G291 can cause syntax errors or coordinate shifts. Ensure G21 is isolated in its own block when using G291.

Brand Comparison

Control Series / ModeCoordinate Display & InterfaceParameter MD 10604 ConfigMetric Command Set
SINUMERIK 840D slSupports widescreen format multi-touch screens to display active coordinates and G-group modal lists.Fully adjustable and user-configurable.Supports native G71 / G710 and ISO Dialect G21 (via G291).
SINUMERIK 802D slCompact display; widescreen format multi-touch coordinate screens are unsupported.Hard-locked system parameter; cannot be changed.Supports native G71 / G710 and ISO Dialect G21 (via G291).
Bilingual ISO Dialect (G291)Displays ISO G-code statuses on screen.Controlled by external ISO compiler parameters.Utilizes G21 modally (instead of native G71/G710), which must be written on a separate block at the start of a block.

Technical Analysis

Three programmatic and coordinate behaviors clearly distinguish Siemens from Fanuc and Mitsubishi controls during coordinate transformations and metric-inch scaling:

First, Siemens separates geometrical scaling from technological variable scaling via distinct G-code commands (G71 vs. G710). While Fanuc and Mitsubishi G-codes (G21 or G71) apply system-wide transitions that convert linear coordinates and feedrate scales concurrently, Siemens provides G71 for geometric coordinate scaling and G710 for dynamic scaling of coordinate velocities, feedrates, and length-related system variables concurrently. This dual-tier structure prevents feedrate mismatch issues during bilingual compilation.

Second, Siemens operates on a bilingual interpreter model (G290/G291) to manage metric transitions. While Fanuc and Mitsubishi controls interpret coordinate overrides natively within a single continuous program flow, Siemens requires the programmer to explicitly switch the compiler to ISO Dialect Mode via G291 to compile blocks containing legacy ISO-style G21 calls. Inside native Siemens mode (G290), G71 represents "Input system metric (lengths)" (Group 13), allowing standard metric cuts to be written in Siemens format, while allowing programmers to easily access native SINUMERIK parametric calculations and frames in the same part file.

Third, Siemens isolates program header dimension units from default machine systems. Through ShopMill and ShopTurn program headers, Siemens allows the "Dimension unit" (mm or inch) to scale only the positional data in the actual program, leaving tool offsets and feeds in the machine's default unit. Fanuc and Mitsubishi turning controls, conversely, apply system-wide modal transitions when G21 (or G71) is executed, forcing immediate conversion of tool offset and wear registers.

Program Examples

N10 G290 ; Switch interpreter to native Siemens mode
N20 G90 G17 G71 X100.0 Y150.0 Z5.0 F500.0 ; Establish absolute coordinates, XY plane, metric lengths, feedrate of 500 mm/min
N30 G91 G710 F100.0 ; Incremental mode, G710 scales feedrate to 100 mm/min dynamically, path distances in mm
N40 G291 ; Switch bilingual interpreter to ISO Dialect Mode
N50 G21 ; Select ISO metric command at the start of a block and in a separate block

Dry Run Execution

During a dry run (DRY active), the controller overrides the programmed feedrates of F500.0 mm/min in block N20 and F100.0 mm/min in block N30 with a predefined dry run velocity. Operators must verify that DRY is deactivated before cutting raw stock to prevent tool breakage and hard collisions with the spindle chuck or vise jaw. Single-block mode should be engaged to verify the toolpath trajectory slowly.

Error Analysis

BrandAlarm CodeTrigger ConditionOperator Symptom / Error MessageRoot Cause & Resolution
SiemensAlarm 14800Transitioning between coordinate systems or unit dimensioning without explicitly redefining feedrate F."Channel %1 Set %2 programmed path velocity is less than or equal to zero."Feedrate resolves to zero or is missing after unit scaling switch. Program a new F-value explicitly or use G710 to scale active feedrates.
SiemensAlarm 12080Programming G21 in ISO Dialect mode on a block with other travel commands."Syntax error."Violation of ISO concurrency rules. G21 must be programmed at the start of a block and isolated in its own separate block.
SiemensAlarm 61805Programmed coordinate contains both absolute (G90) and incremental (G91) values during cycle calls."Value programmed absolute and incremental."Mixed programming modes in a single block. Check program logic and separate absolute and incremental parameters.
SiemensAlarm 14060Commanding block skip values outside the permissible range."Impermissible skip level for differential block skip."Block skip level is not between 1 and 9. Modify skip level to fall within valid range.

Application Note

A catastrophic hard collision that shatters the cutting tool and damages the axis ball screws will occur if a coordinate scaling mismatch between G70 and G71 is introduced during setup. When zero offsets or tool offset data are miscalculated, the indexing turret (or spindle head) travels along a dangerously shifted path, bypassing soft safety limits. The resulting path deviation drives the tool nose directly into workpiece workholding components, such as table-mounted fixture clamps, a workpiece fixture vise jaw, or the rotating jaws of a spindle chuck. To prevent this, setup operators must manually verify zero offsets on the setup screen and perform a dry run using single-block mode with the spindle off, ensuring that the coordinate displays on the screen match the physical setup before machining the first part. Additionally, utilizing coordinate systems like g54-settable-zero-offset and g58-programmable-zero-offset must be cross-checked with the active dimensioning mode.

Related Command Network

  • G70: Deactivates the active metric dimensioning of G71 by switching the control to interpret Cartesian coordinates and polar radii in imperial inches.
  • G700: Switches the control to high-precision imperial dimensioning, scaling both geometry coordinates and technological parameters like path feedrates concurrently.
  • G290 / G291: Alternates the controller between native Siemens mode (G290), which accepts standard G71/G710 commands, and ISO Dialect mode (G291), which parses ISO G21 commands.
  • SUPA: Suppresses all programmable and settable zero offsets and active frames block-by-block, allowing safe tool retractions to machine coordinate zero as detailed in g53-suppress-current-frame.

Conclusion

Applying G71 and G710 commands correctly on Siemens controls ensures precision and consistency in metric machining. Operators should rely on G710 for programs that require coordinate feeds to scale alongside path geometries, and verify all machine data settings and coordinate displays prior to launching production.

FAQ

How does G71 differ from G710 on SINUMERIK controls?

Standard G71 only scales geometric dimensions (such as Cartesian coordinates and polar radii) into millimeters, leaving tool offsets and feedrates to be interpreted in the system's default machine unit (defined by MD 10240). By contrast, G710 dynamically scales both geometry coordinate lengths and technological variables like path feedrates concurrently. Programmers should use G710 when machining parts on systems where feedrates must scale automatically with the part program dimensions.

Why does programming G21 generate Alarm 12080 in ISO Dialect mode?

Alarm 12080 indicates a syntax error caused by writing G21 in the same block as coordinate movements or other G-codes. Siemens' external ISO compiler requires that G21 be programmed alone on its own line, at the very beginning of a program or transition. To resolve this, split the block and command G21 on a separate, dedicated line before executing any axis positioning moves.

Can ShopMill or ShopTurn program headers override default system units?

Yes, ShopMill and ShopTurn program headers isolate the dimension unit (mm or inch) so it scales only the coordinate positions defined within that specific part program. However, peripheral data such as tool wear tables, zero offsets, and feedrates will remain in the machine's basic scaling system defined by parameter MD 10240. Setup operators must verify the machine's basic configuration settings prior to running programs that contain dimension shifts.

Still not resolved?

Ask our AI assistant about this topic in natural language. Grounded in verified sources, no hallucinations.

Ask AI Assistant
Hakan Gündoğdu
Hakan Gündoğdu
  • 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