SINUMERIK 840D GUD File Activation: NCK Backup Procedure

David Krause12 min read
Motion ControlSiemensTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Problem Overview

On a SINUMERIK 840D controller equipped with an MMC100.2 Human Machine Interface (HMI), adding a new DEF line to a Global User Data (GUD) file appears to load successfully when viewed through the file manager, yet the new variable does not become available to part programs. Typical symptoms include:

  • Runtime alarm such as "_MANDREL_DIAM not defined" or any variable-not-defined class fault (NCK alarm 15360 family) raised the first time the new symbol is read.
  • The input field for the new parameter is absent from the operator entry screen that the part program generates for its INPUT prompts.
  • The GUD file modification timestamp updates on the passive file system, but the NCK behaves as if the file has never been parsed.
  • The Start-up operating area shows no Activate soft key, and the user manual's reference to an activation dialog leads nowhere.

This condition is reproducible whenever a GUD file is modified on systems with HMI Advanced (MMC100.2 / MMC103) running the SW 3.x / 4.x branch of SINUMERIK 840D software, including the SW 04.04.22 build that displays as "SW 4.4" on the controller backplane label.

Affected Systems and Versions

Controller HMI Platform Software Branch GUD Activation Mechanism
SINUMERIK 840D (classic) MMC100.2 / MMC103 SW 3.x NCK backup read-in required
SINUMERIK 840D (classic) MMC100.2 / MMC103 SW 4.x — 5.x Manufacturer password reveals Activate button; backup-and-read-in fallback still valid
SINUMERIK 840D sl HMI Advanced SW 6.x — 7.x Start-up operating area activation dialog
SINUMERIK 840D sl SINUMERIK Operate SW 4.5 SPx and later sl Direct activation under Start-up → Define user data

The backplane label and the on-screen diagnostics frequently disagree. The controller badge may read SW 4.4 while the Version screen (Diagnostics → Service Display → Version) reports the precise build 04.04.22. Always verify the on-screen version before applying the procedures in this article, because the build number drives the choice of activation flow. Refer to the build-specific SINUMERIK 840D Commissioning Manual on the Siemens Industry Online Support portal for the exact menu paths.

Root Cause Analysis

The NCK maintains an internal symbol table for every GUD variable declared across SGUD, MGUD, UGUD, and GUD4..GUD9. The table is sized once per NCK startup from the cumulative DEF entries of the GUD set that the NCK most recently accepted during a series-commissioning read-in. On HMI Advanced branches, overwriting the GUD file in the passive file system does not invoke the NCK reconfigure service, so the live symbol table never reflects the new DEF line.

The NCK data image is checksum-protected. Attempting to push a hand-edited NCK archive back into the controller through the file transfer surface causes a transmission fault derived from the CRC mismatch — the controller refuses to accept a binary data block whose integrity field was computed externally. Field-proven root-cause matrix for the symptom cluster:

Symptom Likely Root Cause
New GUD variable missing in operator screen NCK has not re-allocated symbol table since file edit
Part program alarm "variable not defined" Symbol not registered in NCK, despite file present on passive file system
Transmission fault when downloading edited NCK archive CRC mismatch — NCK archive checksum corrupted by external edit
Activate button absent from Start-up menu Manufacturer password not set, or older SW branch without button
File modified but timestamp unchanged in NCK view Passive file system write succeeded, NCK not refreshed
Edit inside programming section corrupted startup file Direct controller-side editor used outside the GUD editor workflow

Prerequisites and GUD File Selection

Before any GUD modification, the following must be in place:

  • Manufacturer-level access password configured on the controller. Without it the Start-up operating area hides the GUD activation button entirely.
  • Active access to Start-up → Series commissioning on the MMC100.2 keyboard or on a programming station connected via Ethernet to X127.
  • Storage medium (CompactFlash card or USB stick, depending on MMC100.2 generation) with capacity for two complete NCK series-commissioning archives.
  • External validator (Programming Station or text editor with SINUMERIK syntax set) to confirm the new DEF line is syntactically clean before it is written back to the controller.

Select the correct GUD file based on ownership. End-user shop-floor variables belong in UGUD or one of GUD4..GUD9. Never modify SGUD (Siemens-owned) or MGUD (machine-builder-owned) without explicit OEM authorization.

GUD File Owner Recommended Use
SGUD Siemens Do not modify
MGUD Machine builder (OEM) Do not modify without OEM sign-off
UGUD End user Global user variables (recommended)
GUD4 — GUD9 End user Reserved end-user variable groups

The GUD symbol capacity on the running NCK is bounded by machine data such as $MN_MM_NUM_GUD_NAMES_NCK and $MN_MM_NUM_GUD_NAMES_CHAN. Confirm headroom exists in those counters before declaring a new NCK-scope or CHAN-scope variable.

Step-by-Step NCK Backup Activation Procedure

The procedure exploits the fact that the NCK re-allocates GUD memory every time a complete series-commissioning archive is read back in. By saving the NCK state once before and once after the GUD modification, then reading the second archive in, the controller is forced to rebuild its symbol tables with the new DEF entries. The following sequence has been confirmed against SW 04.04.22 with MMC100.2.

  1. Power the controller and allow the NCK to reach the operational state. Confirm no part program is running and the channel is in Reset.
  2. On the MMC100.2, navigate to Start-up → Series commissioning → Create series start-up file.
  3. Select the active NCK as the data source and write the archive to the storage medium. Record the resulting file name (typically NCK_SERI.ARC or build-specific equivalent). Label this archive "Backup 1 — pre-modification". This is the rollback target if step 6 fails.
  4. Exit the archive menu and open the GUD editor at Start-up → Define user data. Identify the target GUD file (UGUD for end-user variables).
  5. Append the new DEF line, for example:
    DEF NCK INT _MANDREL_DIAM ; Mandrel diameter in micrometers
    Save the file inside the HMI editor and confirm the file modification timestamp updates on the passive file system.
  6. Return to Start-up → Series commissioning and create a second archive. Label this file "Backup 2 — post-modification". This archive embeds the updated GUD source inside its NCK data block.
  7. From the same menu, select Read-in series start-up file, browse to "Backup 2", and confirm the read-in.
  8. Accept the NCK restart prompt. The NCK drops to Startup, parses the new GUD source, re-allocates the global symbol table, and re-initializes the channels.
  9. Wait for the operator panel to display Ready. The startup log line shows the number of DEF entries parsed; cross-check against the modified file.
  10. Open the part program that references the variable and execute it in single-block mode. The variable-not-defined alarm must not raise.
Critical: Always archive the unmodified NCK state first. If the modified GUD syntax is rejected at read-in time, restore "Backup 1" to roll back to a known-good configuration. Never edit SGUD or MGUD; Siemens and the machine OEM own those files.

Activation Flow Diagram

NCK Operational Step 1: Save NCK Backup #1 (pre-modification) Step 2: Edit GUD file via HMI editor (add DEF) Step 3: Save NCK Backup #2 (post-modification) Step 4: Read-in Backup #2 to NCK Step 5: NCK Restart + Symbol Table Reallocation Verify New GUD variable online

Verification Procedures

After the NCK completes the read-in and re-initializes, validate that the new variable is fully online using the following checks:

  1. Operator entry screen check: Start the part program and reach the first input dialog. The new field must appear in the input list, accept the entered value, and transfer it to the part program.
  2. Symbol table inspection: On the MMC100.2, open Diagnostics → NC Variables and search for _MANDREL_DIAM. The variable must be present with a defined value.
  3. Direct read in MDI: Switch to MDI mode and run R10 = _MANDREL_DIAM. The instruction must execute without alarm 15360. Inspect R10 in the parameter display to confirm the read succeeded.
  4. Persistent check across power-cycle: Power the controller down and back up. The new GUD entry must remain after the NCK restart — this confirms the symbol is part of the activated set, not a transient overlay.
  5. Cross-reference check: Run the full grinding part program and verify the finish-OD validation logic executes without fallback. The mandrel diameter value must be readable from every subroutine that references it.

MMC100.2 vs HMI Advanced Considerations

The MMC100.2 platform predates the unified HMI Advanced activations dialog. Operators familiar with SINUMERIK Operate or HMI Advanced on 840D sl may expect a single-click Activate button at Start-up → Define user data. On MMC100.2 builds that button is conditional on the manufacturer password and on the SW branch. If the password has never been set, the Start-up operating area appears to have no activation entry at all and the only path forward is the backup-and-read-in cycle described above. The PG/laptop workflow using the SINUMERIK Programming Station is functionally identical; the HMI editor for GUD files is exposed through the same Start-up menu.

Aspect MMC100.2 HMI Advanced / SINUMERIK Operate
Activation button visibility Hidden unless manufacturer password set Visible at Start-up → Define user data
Backup-and-read-in fallback Required path when password unset Optional recovery path
GUD editor location Start-up → Define user data Start-up → Define user data
Direct file edit then read-back CRC mismatch → transmission fault CRC mismatch → transmission fault
Series-commissioning archive media CompactFlash / USB CompactFlash / USB / network share

Alternative Activation Methods

When the manufacturer password is set and the controller build exposes the activation dialog, the operator can skip the backup cycle entirely:

  1. Edit the GUD file in Start-up → Define user data.
  2. Press the soft key labelled Activate (or the equivalent confirmation dialog button) that appears once the file is staged for activation.
  3. Confirm the NCK restart when prompted. The NCK re-parses the GUD set and re-allocates the symbol table in place.

On SINUMERIK Operate (sl generation) the menu sequence is Start-up → Define user data → Activate, and the dialog provides a preview of the diff between the active GUD set and the staged file. Refer to the build-specific SINUMERIK Operate Programming Manual on the Siemens Industry Online Support portal for the precise soft-key map.

If the manufacturer password is unavailable and the backup-and-read-in path is not viable because of storage constraints, the last-resort recovery is a full NCK reset to defaults, after which the modified GUD file must be re-installed through the HMI editor followed by a fresh archive-and-read-in cycle. This is destructive and must be planned during a scheduled maintenance window.

A tertiary path used by integrators is to script the archive read-in from the Programming Station over the X127 Ethernet port using the SINUMERIK file-transfer protocol. The protocol itself wraps the same NCK reconfigure service as the manual backup cycle, so a scripted approach succeeds only if the controller accepts the archive — meaning the checksum chain must be intact. Do not bypass the HMI editor to hand-edit the archive.

GUD Lifecycle State Machine

Original GUD set save backup Backup 1 archived edit GUD Modified file staged save backup Backup 2 archived read-in to NCK → symbol table rebuilt with new DEF entries NCK restart — active set returns to updated state

Troubleshooting Matrix

Symptom Likely Cause Resolution
Operator screen missing new field NCK symbol table not refreshed Run the backup-and-read-in activation cycle
Alarm 15360 "variable not defined" Symbol absent from NCK memory Run the backup-and-read-in activation cycle
Transmission fault on archive download CRC mismatch from external edit Use the HMI editor; never edit NCK archives externally
Activate button not visible Manufacturer password unset Set the manufacturer password or use the backup-and-read-in fallback
Startup log shows fewer DEF entries than file File parsed partially or commented out Re-edit GUD file, verify syntax, repeat backup cycle
Variable vanishes after power-cycle NCK reverted to pre-modification backup Confirm Backup 2 was the one read in; redo the cycle
Edit inside programming section corrupted startup file Direct controller-side editor used incorrectly Restore from Backup 1, repeat with HMI editor
Sticker says SW 4.4 but screen says 04.04.22 Marketing vs build version mismatch Use the on-screen version for documentation and procedure selection
New GUD symbol accepted but value always zero Variable scope mismatch (CHAN vs NCK) Adjust DEF qualifier: DEF NCK vs DEF CHAN
MDI read returns 0 but operator screen shows value Channel-specific read in wrong channel Switch channel or use NCK-scope qualifier
NCK reset did not refresh GUD Reset does not trigger reconfigure on this branch Use the backup-and-read-in cycle instead of NCK reset

Data Integrity and Safety Notes

The NCK data image — including GUD files, machine data, setting data, tool data, and compensation tables — is checksum-protected. Direct binary edits to NCK archives invalidate the CRC and the controller will refuse the read-in. All GUD edits must therefore be performed through the HMI editor or through the Programming Station editor that respects the same checksum chain.

Mandatory safety practices before any GUD modification in production:

  1. Always capture Backup 1 before modifying any GUD file. The rollback target is the only path to a known-good state if the new DEF line is syntactically rejected at read-in.
  2. Never edit SGUD or MGUD. SGUD is owned by Siemens and contains NCK-internal symbols; MGUD is owned by the machine builder and may contain symbols referenced by PLC programs, cycles, or compensation logic. End-user variables belong in UGUD or one of GUD4..GUD9.
  3. Validate the new DEF line on a programming station or test controller before writing it to a production controller. Bad syntax can corrupt the GUD set at read-in and force a restore from Backup 1.

For production machines with active part programs referencing the new variable, schedule the activation during a planned production pause. The NCK restart triggered by the read-in momentarily drops all channels to Startup state and any in-cycle tool or workpiece reference must be re-established after the NCK returns to Ready.

Document every modification in the machine's GUD change log, including the operator entry that prompted the change, the file modified, the symbol name, the qualifier (NCK / CHAN / LOCAL), and the date / time of activation. This log becomes the audit trail referenced during subsequent commissioning or troubleshooting.

Frequently Asked Questions

Why does my modified GUD file load but the new variable stay undefined?

On MMC100.2 / SW 3.x and 4.x builds, the NCK allocates GUD memory only during a series-commissioning archive read-in, not during a passive file-system write. Run the backup-and-read-in cycle (Backup 1 → edit → Backup 2 → read in Backup 2) to force the NCK to re-parse the updated GUD set.

Where is the Activate button on the MMC100.2?

The Activate button appears inside Start-up → Define user data only when the manufacturer password has been set. Without that password, the only activation path is the backup-and-read-in cycle.

Can I edit an NCK archive on a PC and download it back?

No. The NCK archive contains a CRC field; external binary edits break the checksum and the controller returns a transmission fault. Always edit GUD files through the HMI editor.

Which GUD file should I add a shop-floor variable to?

Use UGUD for end-user global variables. Do not modify SGUD (Siemens) or MGUD (machine builder). GUD4..GUD9 are also reserved for end-user extensions.

Will the new GUD variable survive a power cycle?

Yes, provided the activation cycle completed and the post-modification archive was the one read in. Validate with a power-cycle test as part of the verification procedure.

Back to blog