Overview
Extracting an S7-1200 user program from a SIMATIC Memory Card (SMC) is a routine recovery and migration task in TIA Portal. Unlike S7-300/400 controllers, the S7-1200 stores its loadable project on internal flash and uses the plug-in card as an optional transfer medium, external load memory, firmware-update medium, or program card. Because the S7-1200 only writes the project to the SMC when the card is configured as a Program card (transfer card behavior is firmware-version dependent), reading it back is not the same as reading an S7-1500 load memory.
This reference covers two proven methods: the Card Reader / USB memory upload in TIA Portal (drag-and-drop from the offline card to the project tree) and the Online upload from the CPU (used when the card is no longer inserted or contains only a firmware image). It documents the exact TIA Portal version compatibility, tag-handling rules, and the firmware limits that cause copy operations to silently drop tag tables.
SIMATIC Memory Card Hardware
The S7-1200 accepts the SIMATIC Memory Card in the SD-card form factor with the Siemens-specific card profile. Siemens offers pre-formatted cards; third-party SD/SDHC cards up to 32 GB can be formatted by the CPU and used, but the Siemens SMC is recommended for warranty and lifecycle reasons.
| Catalog Number | Capacity | Typical Use |
|---|---|---|
| 6ES7954-8LF02-0AA0 | 4 MB | Firmware update, small program transfer |
| 6ES7954-8LE03-0AA0 | 12 MB | Program card for CPU 1211C/1212C |
| 6ES7954-8LL02-0AA0 | 24 MB | Program card for CPU 1214C/1215C |
| 6ES7954-8LP02-0AA0 | 256 MB | Program card, large projects, firmware logs |
| 6ES7954-8LT02-0AA0 | 2 GB | Program card, large recipes, data logging |
| 6ES7954-8LW02-0AA0 | 32 GB | Maximum supported, data-logging heavy |
Cards are formatted as FAT16/FAT32 with a Siemens-proprietary directory layout. The S7-1200 writes a S7_JOB directory containing SIMATIC.S7S and FWUPDATE.S7S file stubs; the actual project data sits under SIMATIC.S7S\<CPU_ORDER_NUMBER> as encrypted blocks. Direct block extraction by card reader without TIA Portal is not supported.
Prerequisites
- TIA Portal installation on the engineering workstation. The version used to read the card must be able to compile the original firmware. Refer to the compatibility matrix below.
- Card reader or USB card adapter recognized by Windows. TIA Portal v20 exposes the reader through the Card Reader / USB memory entry in the Project menu.
- Project license / authorization matching the optional packages referenced by the original project (S7-1200 Motion, PID Compact, OPC UA, etc.). Without a license, blocks will load but protected functions report 0xE1 / 0xE2 protection errors at runtime.
- Source project documentation: original TIA Portal version, CPU order number, firmware version, and the protection level of any know-how-protected blocks.
-
Write access to the target TIA project folder and the local
%TEMP%\Siemens\TIA Portalcache.
TIA Portal Version Compatibility Matrix
Reading a project from the card performs a software-side upload-to-PG against the offline card image. The set of recoverable objects is identical to the online upload set for the equivalent CPU firmware. TIA Portal does not auto-downgrade projects: a project compiled on TIA V16 cannot be opened in V11 even if the card is readable.
| Original TIA Version | Minimum Reader Version | Upload Support (CPU 12xx) | Notes |
|---|---|---|---|
| V11 / V11 SP1 | V11 (matched) | Partial – no complete upload | Block upload only; HW config and tags dropped |
| V12 / V12 SP1 | V12 | Partial | Tags not preserved in early service packs |
| V13 / V13 SP1 / SP2 | V13 SP1 | Complete (limited) | Use the matching SP for full fidelity |
| V14 / V14 SP1 | V14 SP1 | Complete | Firmware 4.x S7-1200 fully supported |
| V15 / V15.1 | V15.1 | Complete | Firmware 4.2 / 4.3 |
| V16 | V16 (any Update) | Complete | Firmware 4.4 / 4.5 S7-1200 |
| V17 | V17 | Complete | Firmware 4.5 / 4.6 S7-1200 |
| V18 | V18 | Complete | Adds OPC UA server-block upload |
| V19 | V19 | Complete | Firmware 4.7 S7-1200 |
| V20 | V20 | Complete | Current shipping; supports all S7-1200 G2 CPU 12xx firmware |
Accessing the Memory Card in TIA Portal
Per the TIA Portal V20 documentation on accessing memory cards, the card reader is exposed as a project node:
- Insert the SMC into a Windows-recognized card reader.
- In the TIA Portal Project menu, choose Card Reader / USB memory > Card Reader / Show USB memory.
- The card appears in the project tree under Card Reader / USB memory. Expand it to view the SIMATIC.S7S directory and the embedded device.
- Right-click the device and select Upload to PG (or drag-and-drop, see next section).
If the card is not detected, verify the reader is USB mass-storage class, that Windows has assigned a drive letter, and that the SMC is not write-protected. TIA Portal does not show cards in NTFS or exFAT formats — the S7-1200 always re-formats inserted cards to FAT16/FAT32, so an unreadable card usually indicates physical wear or an unsupported capacity.
Drag-and-Drop Upload Procedure
The most reliable method for a single-CPU card is the drag-and-drop operation from the card node to the project node. TIA Portal executes an Upload station to PG with the offline card as the source, which is functionally identical to a CPU online upload.
- Open the target TIA Portal project (or create a new one with the same CPU order number if reusing the workspace).
- Make the Card Reader / USB memory node visible (see previous section).
- Select the CPU icon under the card node, then drag the device entry onto the project name in the project tree. Dropping on a folder only copies individual blocks; dropping on the project name performs a station upload.
- TIA Portal prompts for the target device and CPU order number. Confirm.
- Wait for the upload to complete. Progress is shown in the Details pane; the typical duration for a 2 MB project is 5–15 seconds.
- Save the project. TIA Portal strips runtime-only artifacts (data-log CSVs, recipe files) and retains the offline project DB.
SIMATIC.S7S container file. TIA Portal cannot parse this as a project source. Drag-and-drop is intercepted by TIA's automation interface and triggers the proper Upload station to PG dialog, which decrypts the project into editable form.Tag and Block Preservation Rules
The original question — “copy works but not the tags” — stems from the upload rules in older TIA Portal versions. The following matrix summarizes what is recovered from the card image.
| Object | Recovered from SMC? | Recovered via online upload? | Conditions |
|---|---|---|---|
| OBs, FBs, FCs (non-protected) | Yes | Yes | Always when compilation is possible |
| Global DBs (instance + data) | Yes | Yes (snapshot of actual values) | Offline: compile-time defaults; online: last-actual values |
| PLC tag table | Conditional | Conditional | V12 SP1 and later preserve tags on complete upload; V11 returns an empty tag table |
| User-defined data types (UDTs) | Yes | Yes | Required to recompile tag tables |
| Technology objects (PID, Motion, TO_CommandTable) | Yes | Yes | Optional package must be licensed in target install |
| Hardware configuration (devices & networks) | Yes | Yes (compact only) | Online upload returns detected topology, not the original topology |
| Know-how-protected blocks (S7-1200) | Metadata only | Metadata only | Source protected; blocks compile to stub without password |
| Recipe / data-log files on card | No (binary, not project) | N/A | Use PLC HMI's web server or export function |
| HMI tags and screens (WinCC on the same card) | Yes (WinCC RT files) | No | Drag-and-drop is the only path |
For projects on TIA V12 SP1 or later, the tag table is uploaded as a complete .xml blob referenced from the device. If the upload returns an empty tag table, open the block container, mark Maintain tag table on upload in Options > Settings > PLC programming > General, and re-run the drag-and-drop.
Online CPU Upload Alternative
When the SMC has been lost, damaged, or formatted by the CPU, the project can still be recovered by going online. The CPU retains the loadable project in internal flash regardless of card presence.
- Connect the engineering PG to the CPU's PROFINET port. The default IP of a factory-fresh S7-1200 is
192.168.0.1; the PG must be on the same subnet. - Open the project (matching CPU order number and firmware).
- Select the CPU and click Go online in the toolbar.
- From the Online menu, choose Upload to PG (TIA V14+) or Upload station to PG (V13).
- Confirm the device comparison — TIA will offer Upload to PG only when online and offline are in sync. If they differ, deselect changes that should remain online before confirming.
The online upload returns the last compiled project with the live data-block values. It is the recommended path when the SMC contains only a firmware image (FWUPDATE.S7S).
File-System View of the Card
For diagnostics, the raw card layout is:
\SIMATIC.S7S
\<CPU_ORDER>\ e.g. 6ES7214-1AE40-0XB0
LOGS\ diagnostic buffer dumps (binary)
DATA\ data-log and recipe CSVs (FAT32 cluster chain)
FWUPDATE.S7S firmware image for next power-up
S7_JOB\ job markers (CLEAR, RESET, FORMAT)
None of these files are directly editable. They are decoded only by TIA Portal during a station upload. Do not edit the card on another OS while it is mounted in Windows — TIA Portal validates the signature on insert and will refuse to read a card whose MBR or boot sector has been altered.
Firmware Compatibility Notes
The S7-1200 firmware version on the card determines which TIA Portal versions can read it. Cross-reading a higher-firmware card on an older TIA is blocked; cross-reading a lower-firmware card on a newer TIA is permitted but the project is read-only until a recompile is performed.
| CPU Firmware | Minimum TIA Version | Card Behavior |
|---|---|---|
| V1.0 – V2.2 | V11 | Original behavior; card is optional |
| V3.0 | V12 | Introduced enhanced card diagnostics |
| V4.0 – V4.1 | V13 | Program card concept introduced |
| V4.2 – V4.3 | V15 / V15.1 | Mandatory for several motion-control objects |
| V4.4 – V4.5 | V16 | OPC UA server block support |
| V4.6 | V17 / V18 | Secure Communication blocks |
| V4.7 | V19 / V20 | S7-1200 G2 (CPU 12xx G2) features |
Troubleshooting Matrix
| Symptom | Likely Root Cause | Resolution |
|---|---|---|
| Card not visible in TIA project tree | Reader not enumerated, or card formatted as exFAT | Re-insert, check Windows Disk Management; format via CPU if unreadable |
| Drag-and-drop disabled (greyed out) | TIA Portal version predates card upload feature for the detected CPU | Upgrade TIA to V13 SP1 or later, or read on a workstation with the matching version |
| Upload completes but tag table is empty | Source was TIA V11, or “Maintain tag table” is disabled | Enable Maintain tag table in TIA options and re-upload; otherwise obtain original archive |
| Compile error 0xE1 after upload | Missing optional package license | Install the license (PID, Motion, OPC UA) or remove the affected blocks |
| Compile error 0xE2 / 0xE3 after upload | Firmware version mismatch | Update firmware via the original card or via TIA Online & diagnostics > Firmware update |
| Know-how-protected blocks are empty | CPU serial number binding | Recover the source from the original project archive; the card upload cannot defeat the protection |
| “Project cannot be opened with this version of TIA Portal” | Source TIA newer than reader TIA | Upgrade TIA Portal; do not attempt to install side-by-side on the same Windows user profile |
| Drag-and-drop onto a folder copies only blocks | Wrong drop target | Drop directly on the project name (top-level entry) to perform station upload |
Verification
After the upload, validate the recovered project in three steps before reusing it in production.
- Compile the project in TIA Portal. The build should complete with 0 warnings. Warnings about missing HW (e.g., an unused SM module) are tolerated; errors are not.
- Cross-check the tag table: open PLC tags > Default tag table and confirm the row count matches the expected number of process tags. Use Find and replace to scan for a known unique tag name from the original project.
- Online compare with the physical CPU: go online with the live CPU and run Device & networks > Compare. The result should be Identical for online & offline. If blocks differ only in comments, the upload is complete.
For plants subject to validation (FDA 21 CFR Part 11, GAMP 5), capture a checksum of the recovered project file and attach the TIA Portal version, CPU order number, and firmware version to the change-control record.
Field-Proven Tips
- Always keep the original card write-protected after recovery — the plastic slider on industrial SD cards is the only line of defense against accidental in-CPU format.
- Use TIA Portal's Project > Archive immediately after recovery. Archives are version-stamped and self-documenting.
- If the engineering workstation does not have a built-in SD reader, an industrial USB card reader with a captive cable (e.g., Siemens 6ES7648-2CF10-0AA0) is more reliable than consumer-grade dongles in panel environments.
- When the original TIA Portal version is unknown, the card's last modified timestamp on
SIMATIC.S7S\<CPU>\PROJECTapproximates the build date; cross-reference with Siemens release notes to narrow the TIA version. - For repeated recoveries, script the process: TIA Portal exposes an Openness API that can perform station uploads from a card reader with the
UploadToPcmethod on theIStationinterface.
Can I copy the S7-1200 project from a memory card using Windows copy/paste?
No. The card stores the project in the encrypted SIMATIC.S7S container, which Windows can copy as a file but TIA Portal cannot interpret. Use TIA's drag-and-drop from the Card Reader / USB memory node onto the project name in the project tree, or perform an Upload to PG from the menu.
Why are the PLC tags missing after the card upload?
The most common cause is a TIA Portal version older than V12 SP1, which does not preserve tag tables on a complete station upload. The fix is to enable Maintain tag table on upload in Options > Settings > PLC programming > General and re-upload, or to read the card on the TIA version that originally compiled the project.
Which TIA Portal version do I need to read a V11 project from an S7-1200 card?
TIA Portal V11 with the matching service pack is the only version that produces a usable V11-fidelity upload. TIA V16 and later can read the card as a partial upload (blocks only) but cannot reconstruct the V11 tag schema. For full recovery, install V11 in a side-by-side configuration or in a virtual machine.
Does the S7-1200 need a memory card to operate?
No. The S7-1200 stores its program in internal flash; the SMC is optional. It is used for firmware updates, program transfer, and as external load memory. If the SMC is not inserted, the program remains in the CPU and can still be uploaded online.
How do I recover the project if the memory card is lost?
Connect the engineering PG to the CPU's PROFINET port, go online, and use Online > Upload to PG (TIA V14+) or Upload station to PG (V13). The CPU retains the project in internal flash and returns the last compiled program with live data-block values.
Are know-how-protected blocks recoverable from the card?
Only as metadata. S7-1200 know-how protection binds to the CPU's serial number, so the uploaded blocks compile to a stub unless the original CPU's password is provided. Recover the source from the original TIA Portal archive when available.