SINUMERIK 840D SL TCU Archive Loading: Fixing PLC.arc Upload Failures
When a SINUMERIK 840D sl control equipped with a TCU (Thin Client Unit) and an OP010 operator panel loses all data after a power-off of only a few days, the typical field reaction is to push the original backup .arc file back through the standard commissioning routine. The NCK archive loads, the HMI archive loads, and the PLC portion either stalls, returns a read error, or appears to start a transfer and then crashes the commissioning dialog. This article documents the diagnostic path for that exact symptom, the role of the PLC mode selector on the NCU, the file-system topology of a TCU-based control, and the file-integrity checks that must be done before a restore is attempted.
1. Confirm What You Have on the Machine
840D hardware is shipped in two generations that are not binary compatible at the system-software level. Confirming the generation before any restore is the first step; the wrong assumption here is what causes many of the "PLC won't load" symptoms that look like corrupt archives but are actually generation mismatches.
1.1 Powerline vs Solutionline
| Property | 840D powerline (pl) | 840D solutionline (sl) |
|---|---|---|
| NCU family | NCU 561 / 571 / 572 / 573 | NCU 710 / 720 / 730 (with NCK software 4.x) |
| HMI platform | HMI Advanced on MMC 100.2 / MMC 103 / PCU 50 | Sinumerik Operate on PCU 50.5 / TCU + OP010/OP010C/OP015 |
| Archive system | MMC file system, single *.arc flat file per subsystem |
Active/passive file system on CF card; *.arc per subsystem and combined commissioning archive |
| Service menu entry | Password dialog in HMI | Commissioning / Startup menu, HMI password |
The splash line under the Siemens logo at power-up reads either 840D sl or 840D pl. In the case the source thread describes, the splash reads 840d sl, which fixes the target as a solutionline control. A powerline archive pushed into a solutionline control — or vice versa — will cause the PLC load step to reject the archive even if the NCK step appears to accept it.
1.2 Identify the HMI Hardware
For solutionline, identify which operator components are actually fitted. The label on the back of the HMI case states the part number. The user case identifies an OP010 plus a TCU:
- OP010 – 10.4" TFT operator panel, no computing, no storage.
- TCU – Thin Client Unit. Boots via network from the PCU/NCU, has no rotating mass storage, and stores its user data on the host.
That combination is the classic "headless" configuration used when the machine builder wants the operator panel to be remote-mounted from the NCU. Consequence: there is no local hard disk to interrogate, so the question "where is the PLC.arc coming from?" has to be answered before any restore is attempted.
2. Archive File Topology on a Solutionline Control
Solutionline archives follow a strict convention. A single commissioning archive (*.arc) is in fact a structured container holding a known set of components. When loaded manually, the components can also be supplied as individual subsystem files.
2.1 Standard Archive Subsystems
| Archive file | Contents | Mandatory for boot? |
|---|---|---|
NC.ARC |
NCK machine data, setting data, tool data, R parameters, compensations, work offsets, NC programs | Yes (NCK needs defaults at minimum) |
PLC.ARC |
PLC317 program (S7-compatible), PLC retentive data, PLC I/O symbol table | Yes (machine I/O will not respond without) |
HMI.ARC |
Sinumerik Operate configuration, screens, channels, custom screens, alarm texts | No (boots with default) |
DRIVE.ARC |
Sinumerik drive (S120) parameter image when archived from CF card | No |
CFG.ARC |
Configuration files (channel config, axis config) – often embedded in NC.ARC | No (subset of NC) |
2.2 Active vs Passive File System
On the NCU CF card, the file system is split:
- Active – the system files currently being executed (read-only at runtime).
- Passive – the side that the commissioning tool writes to during a backup or restore.
A Series Commissioning writes a copy of the active files to the passive side, then on the next boot the system toggles the active/passive pointers and boots from the newly written side. This is the normal, safe update path. A Direct Commissioning writes to the active side in place and is the path that produces the highest failure rate when the archive itself is suspect.
3. Symptom Classification
The reported symptom is: NC.arc loads, HMI.arc loads, PLC does not load. Categorize the failure mode before touching anything.
3.1 Failure Modes During PLC Load
| Observed behavior | Most likely root cause | First action |
|---|---|---|
| Dialog stays on "Reading PLC archive…" indefinitely, no progress bar, no error | PLC mode selector not in STOP (position 2); PLC is RUN-Read and will not accept a new program | Move the NCU mode selector to position 2, re-trigger PLC load |
| Progress bar advances, then a pop-up "Error reading PLC archive: 0x80xxxxxx" appears | Archive file is corrupt (CRC, truncation) or wrong generation (pl vs sl) | Generate new archive from OEM, verify file size against known good |
| Progress bar advances, PLC restarts itself into cyclic error (SF / BF on the PLC317) | Archive is intact but references a hardware option (SINAMICS DO, MCP, handheld terminal) that is not present | Cross-check PLC project against actual I/O wiring, install missing option modules |
| TCU loses connection to NCU mid-load ("Connection to NCU lost") | Archive source is on a USB stick that the TCU has unmounted, or network is dropping | Re-seat USB, disable power saving on the TCU USB port, use CF card reader on the NCU directly |
| PLC load completes but every power-on reverts to same empty state | Active/passive toggle did not occur — boot from the side that was just written | Series commissioning, then explicit reboot, then verify version in HMI |
3.2 The NC.arc / HMI.arc / PLC.arc Stagger Is a Clue
The fact that NC.arc and HMI.arc both load is meaningful. It tells you:
- The CF card is healthy enough to accept subsystem writes.
- The commissioning tool can read the archive container and find the per-subsystem entries.
- The transfer channel (USB / network / CF) is stable during the read.
That eliminates the CF card and the transfer medium as suspects and localizes the failure to either the PLC subsystem entry inside the archive or to the PLC317 runtime state. Most "PLC won't load" cases on a 840D sl with TCU are one of those two — not the storage medium.
4. Pre-Load Verification
Before you start another restore attempt, do the following checks. Skipping them is what causes repeat failures and second attempts that look "slower" than the first — the system is already in a bad state and you are observing the delay of repeated retries.
4.1 Verify the Source Archive
- Check the file size of
*.arcagainst the last known good from the OEM. A PLC.arc portion of a typical grinding machine with a full S7 project is usually 1–8 MB; if the archive is < 200 KB it is almost certainly a partial save. - Open the archive with a tool that can list its contents without extracting. Sinumerik archives are sequential files; the subsystem headers are at fixed offsets. The header bytes
NC,PL,HM,DR,CFare the subsystem tags. - Compute an MD5 or SHA-1 of the archive and compare with the OEM's known-good hash if one is available.
- Confirm the file was produced by the same generation of HMI (sl vs pl). The version stamp in the HMI file inside the archive records the Operate version; an HMI Operate V4.x archive will not load on a V2.x system and will silently drop subsystems it cannot match.
4.2 Verify the Buffer Battery
On the NCU 7x0 the buffer battery is a single 3.6 V lithium cell (typically a ½ AA, 1.2 Ah). It backs the SRAM that holds NCK and PLC retentive data. A control that has been off for three days should still retain data with a healthy battery; a control that has been on for years with a depleted battery will not.
| Symptom | Interpretation |
|---|---|
| No NCK alarms at boot, only "PLC stop / no project" | Battery OK, PLC project lost or never loaded |
| NCK reports 8080 "Memory loss" or 8081 "Battery alarm" | Battery exhausted; SRAM cleared; load a current archive |
| Both NCK and PLC report memory loss, random axis positions on first move | Full SRAM clear; absolute encoder offsets need re-referencing (e.g. via $AA_IM[x] with known reference marks) |
4.3 Verify the NCU Mode Selector Position
The mode selector is the small rotary switch on the front of the NCU. The four positions are:
| Position | Function | PLC impact |
|---|---|---|
| 0 | RUN (PLC is executing the user program) | PLC accepts a re-load only if it remains in RUN; new blocks are loaded "on the fly" but a full archive restore will be refused |
| 1 | RUN-P (startup / programming) | PLC accepts a stop/start and a re-load; archive restore will fail if the PLC has a SF (system fault) |
| 2 | STOP (PLC is held in stop, scan frozen) | Correct position for archive restore; PLC scan is stopped, OB1 not running, blocks can be re-written |
| 3 | MRES (master reset) | PLC performs a memory reset, clears all blocks; loading an archive into MRES can collide with the reset |
5. Step-by-Step Recovery Procedure
The procedure assumes a solutionline control (TCU + OP010) with the HMI Operate commissioning menu available.
5.1 Stage the Archive Correctly
- Place the archive file on a USB stick formatted FAT32. Use a 4–32 GB stick; avoid sticks >64 GB without explicit support.
- Plug the stick into one of the USB ports on the NCU itself, not on the TCU. The TCU is a thin client and routes USB through the network to the host; on some firmware versions the routed USB is read-only for commissioning purposes.
- If you must use a TCU USB, use a port that is wired to a powered hub, not the TCU's front-panel port which can be power-managed and drop the device mid-write.
5.2 Open the Commissioning Menu
- At the HMI, navigate to Start-up → Commissioning. The default password is
SUNRISE(Siemens OEM) orCUSTOMER(machine builder-set). On a 840D sl the password is on the HMI side, not the NCK side. - Confirm the splash line in the lower right of the menu says
sl. If it sayspl, stop — the archive you are about to load is for the wrong generation.
5.3 Load NC.arc, HMI.arc, PLC.arc Separately
- Select Series commissioning, not Direct commissioning. Series commissioning writes to the passive file system and toggles on the next boot, which is recoverable if the write is interrupted; direct commissioning writes to the active side and is not recoverable.
- Load
NC.ARCfirst. Wait for the "NCK reset" prompt and acknowledge. - Load
HMI.ARC. The HMI will restart. - Set the NCU mode selector to position 2 (STOP) before loading PLC. This is the single most common reason for the symptom in the source: the PLC is left in RUN and refuses the archive.
- Load
PLC.ARC. The progress bar should advance fully and end with "PLC restart — RUN". - Return the mode selector to position 0 (RUN). Confirm the SF / BF LEDs on the PLC317 are off.
5.4 If PLC Load Still Fails
- Read the error code. The dialog shows a Siemens error code, typically in the form
0x80xxxxxxor a 5-digit decimal. The first 3 hex digits are the diagnostic class:-
0x8002xxxx— archive format / read error. The file is corrupt or unreadable. -
0x8003xxxx— PLC runtime refused. The PLC is in the wrong state or has an unrecoverable fault. -
0x8004xxxx— block inconsistency. The PLC project references a module or option that is not present. -
0x8005xxxx— password / access level. The PLC has a project password and is rejecting the re-load.
-
- Cross-check the error code against the SINUMERIK 840D sl diagnostics manual. Match the code in the Diagnostics Manual section on commissioning errors.
- Try a Reset PLC from the commissioning menu (mode selector in 3, hold for ~3 seconds, back to 2), then re-attempt the load.
- As a last resort, the OEM must re-generate a known-good
PLC.ARCfrom their engineering source. A PLC that has been corrupted by a half-load cannot be salvaged by re-trying the same archive.
6. The 3-Day Data Loss Anomaly
The original operator noted that the data was lost after only three days of power-off. This is consistent with a discharged or absent buffer battery and is not a bug in the restore procedure — the data was already gone before the load attempt started. The current state of the NCK and PLC is whatever the bootloader loads by default, which on a 840D sl is a near-empty configuration.
On a healthy 840D sl the buffer battery holds SRAM for years with the control off. A 3-day loss indicates:
- The battery is dead (replace the cell on the NCU).
- The battery connector is loose (reseat it; the connector is on the NCU backplane).
- The CF card has been replaced and the new card was not initialized with a current archive (CF card swap without commissioning leaves the new card blank).
7. Hardware-Level Diagnostics on the NCU
If the PLC load keeps failing after the procedure above, escalate to a hardware-level check.
7.1 LED Pattern on the NCU 7x0
| LED | State | Meaning |
|---|---|---|
| SF (red, PLC) | Off | PLC has no system fault |
| SF (red, PLC) | On, solid | PLC has a system fault — usually a missing block or a configuration mismatch |
| SF (red, PLC) | Blinking | PLC is in STOP because of a configured error OB, or a watchdog has fired |
| BF (red, Profibus/Profinet) | On | Bus fault; PLC is in STOP because OB82/OB86 has not been loaded, or the bus is physically broken |
| RUN (green, PLC) | Off | PLC is not executing — the mode selector is in STOP, or a SF is holding the PLC down |
| RUN (green, PLC) | On, solid | PLC is in RUN and executing OB1 |
| RUN (green, PLC) | Blinking | PLC is in startup (RUN-P, OB100) |
| STOP (yellow, PLC) | On | PLC is held in STOP — mode selector at 2, or an error OB has stopped the scan |
7.2 Seven-Segment Display on the NCU
The NCU 7x0 has a 7-segment display that shows a status code during boot and a number when running:
| Code | Meaning |
|---|---|
| 6 (steady) | NCK in normal operation |
| 1, 2, 3 (running) | Boot phases — first time only, or after a CF swap |
| 0 with LED pattern | Boot failed, see NCK alarm log |
| E, F | Firmware or hardware fault; see SINUMERIK 840D sl Diagnostics Manual |
8. Common Mistakes on TCU-Based Controls
These are the field mistakes that show up on a TCU-based 840D sl specifically and not on the older powerline controls. Each one will reproduce the symptom in the source.
- Looking for a hard disk on the TCU. The TCU is a thin client. There is no internal hard disk; the local mass storage is on the NCU CF card or on the PCU 50.5. If the user is searching for a backup drive, they must search on the NCU/PCU side, not the TCU side.
- Using the TCU's front USB for the archive. The TCU's front-panel USB port is power-managed and on some firmware versions is read-only for commissioning. Use the NCU's USB ports.
- Loading a powerline archive into a solutionline control. The PLC subsystem header is generation-specific. The commissioning tool may accept the NCK and HMI entries and then fail on the PLC entry, which is exactly the observed stagger.
- Not setting the mode selector to STOP for the PLC step. The PLC in RUN will not accept a full archive reload; the dialog stalls.
- Using direct commissioning instead of series commissioning. A direct commissioning that fails partway through leaves the active file system in an inconsistent state; series commissioning leaves the active side intact and writes only to passive.
9. Verification
After a successful PLC load, verify that the restore is complete and persistent.
- Mode selector at 0. PLC RUN LED on solid, SF off, BF off.
- Trigger an NCK reset and confirm the PLC state survives: Commissioning → NCK reset. If the PLC was loaded only to the active side and not the passive side, it will revert to the empty state on this reset.
- Read the PLC diagnostic buffer from the HMI: Commissioning → PLC → Diagnostic buffer. The buffer should be clear of "block not found" and "I/O access error" entries.
- Read the version stamp: Commissioning → Version. Cross-check against the OEM's documentation. A blank version indicates the active/passive toggle did not occur and the restore is not yet persistent.
- Re-archive: Commissioning → Series commissioning → Create archive. The new archive will be the authoritative copy. Compare its size with the source you just loaded; an order-of-magnitude difference indicates the load was partial.
10. Prevention and Long-Term Reliability
For a grinding machine that is part of a small fleet with mixed 840D pl and 840D sl controls, the longer-term issues are labeling and procedure. Two practical steps reduce the chance of a recurrence.
- Label every CF card and every archive with the machine serial, the NCU part number, the HMI part number, the HMI Operate version, and the date. A sticker on the CF card slot cover keeps the version visible at the machine.
- Schedule a buffer-battery test annually on every 840D sl in the fleet. A 1-second continuity check on the cell with the NCU powered off is sufficient; replace at < 2.8 V open-circuit.
- Store the master archive on a network share that the TCU can reach, not on a local USB stick that is shared between operators.
11. Reference Documentation
For further reading on the procedures and the diagnostic codes referenced in this article:
- Siemens Industry Online Support — SINUMERIK 840D sl entry point
- SINUMERIK 840D sl Operator Components Manual (TCU, OP010, OP015)
- SINUMERIK 840D sl Commissioning Manual (NCK / HMI / PLC)
- SINUMERIK 840D sl Diagnostics Manual
- SINUMERIK 840D sl PLC Programming Manual
Why does NC.arc load but PLC.arc fail on a 840D sl with TCU?
The PLC317 runtime on the NCU must be in STOP (mode selector position 2) to accept a full archive reload. If the selector is left at 0, 1, or 3, the PLC refuses the archive while the NCK and HMI subsystems accept their files normally. The stagger is a diagnostic, not a file-system problem.
What is the correct mode selector position for a PLC archive restore?
Position 2 (STOP). Move the selector from its current position to 2, load PLC.ARC, wait for the "PLC restart — RUN" prompt, then return the selector to 0 (RUN) for normal operation.
How do I confirm an 840D is solutionline vs powerline before loading an archive?
Watch the splash line under the Siemens logo at power-up. It reads 840D sl or 840D pl. Also read the HMI splash: solutionline uses Sinumerik Operate, powerline uses HMI Advanced. Mixing the two archive families is the second most common reason for a PLC load failure after a wrong mode selector position.
Where is the PLC.arc file stored on a TCU-based 840D sl?
On the NCU's CF card (active or passive side) or on a USB stick plugged into the NCU's USB port. The TCU itself has no local storage; it is a thin client. Do not search the TCU for a backup drive.
Why was all data lost after only three days of power-off on a 840D sl?
The buffer battery on the NCU is exhausted. A healthy cell holds SRAM for years. A 3-day loss indicates a depleted or disconnected battery, or a CF card that was swapped and not re-initialized. Replace the cell and re-archive from a known-good state after the restore is complete.