Upload S7-1500 Program to TIA Portal: Version Mismatch Fix

David Krause15 min read
SiemensTIA PortalTutorial / How-to
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: Incomplete Upload from S7-1500 with ET 200S

When attempting to upload a project from a SIMATIC S7-1500 CPU to TIA Portal, the most common failure mode for first-time users is a partial online view: TIA Portal detects the CPU, exposes the program blocks in read-only mode (often shown with compile errors and red markers), but the Devices & Networks editor shows nothing except the S7-1500 itself. Remote I/O stations such as ET 200S, ET 200MP, ET 200SP, ET 200AL, or ET 200eco PN are missing from the topology even though they are physically present and the machine is running.

This symptom is almost always caused by one of three root causes, listed in order of frequency:

  1. TIA Portal project version does not match the runtime version on the CPU (for example, V16 on the engineering station vs. V15.1 project that was downloaded to the CPU).
  2. The ET 200S is configured as distributed I/O (not as an ET 200S CPU) and the device configuration was not transferred with the project tree when only the head CPU was uploaded.
  3. Know-how protection, F-CPU signature mismatch, or locked CPU that requires a specific upload path (software unit / card upload / decompilation procedure).

The remainder of this article documents the exact procedure to obtain a complete, editable, compilable TIA Portal project from a running S7-1500, including the ET 200S remote I/O topology.

Safety first: Always verify the machine is in a safe state, obtain a maintenance permit, and confirm no writes are pending. The Upload device as new station function is read-only at the PLC side, but downstream actions such as Go online & compare can block the CPU if F-signatures differ.

Root Cause 1 — TIA Portal Version Mismatch

The S7-1500 stores project metadata in a format that is forward-compatible only: a TIA Portal version equal to or newer than the version that wrote the project can read it, but a TIA Portal version older than the original project version will refuse the upload or display the program with parse errors.

You can confirm the mismatch without uploading the project:

  1. Open the existing TIA Portal installation.
  2. Select Help → Installed Software and note the TIA Portal version (for example, V16 Update 7).
  3. Go online with the CPU. In the project tree, expand the CPU → double-click Online & Diagnostics.
  4. The Diagnostic buffer and the Online & Diagnostics home screen will display the project version under which the program was last downloaded, e.g. V15.1 + SP1.

If the engineering station is V16 and the CPU holds a V15.1 project, only two paths recover a complete project:

  • Option A (recommended): Install the matching TIA Portal version side by side or in a virtual machine.
  • Option B: Open the CPU in the newer version, accept the upgrade prompt, recompile, and re-download. This is destructive to the original V15.1 source and should only be used when no V15.1 license is available.

Prerequisites for Uploading from an S7-1500

Requirement Specification
Engineering software STEP 7 Basic / Professional in TIA Portal, version ≥ the version used to download the project
Online connection PROFINET (TCP/IP) or PROFIBUS via CP/CM, accessible from the PG/PC interface
PG/PC interface S7ONLINE access point pointing to the correct network adapter (e.g. Intel(R) Ethernet Connection I219-V.TCPIP.1)
CPU access level At least Read access for the connected user; Full access is required to download changes back
CPU operating state RUN or STOP — upload does not require STOP, but F-CPU signature checks may force STOP
Memory card Optional SIMATIC Memory Card (SMC) for card-based project recovery if CPU is in a fault state
Project name on card If the project was stored to the SMC with Project to memory card, the archive filename is typically S7_JOB.S7S or FWU-format

Step-by-Step: Upload S7-1500 Program (Hardware and Software)

Use this procedure to obtain a complete, editable offline copy of the program and device configuration currently in the CPU.

  1. Set the PG/PC interface. In the Windows Control Panel, open Set PG/PC Interface. Select S7ONLINE (STEP 7) → the network adapter connected to the S7-1500's PROFINET port. Confirm with OK.
  2. Open TIA Portal in the project view. Create a new empty project (or use an existing one).
  3. From the menu bar choose Online → Upload device as new station (hardware and software).
  4. In the dialog Upload device as new station, select:
    • PG/PC interface = the PROFINET adapter
    • Connection to interface/subnet = the subnet used by the CPU (or All reachable nodes if the topology is unknown)
  5. Click Start search. TIA Portal broadcasts DCP and lists every S7-1500 / ET 200 station it can see, with IP address, MAC address, device type, and firmware version.
  6. Select the target CPU row and click Upload.
  7. TIA Portal retrieves the hardware configuration, the program blocks, the HMI tags, the PLC tags, the technology objects, the recipes, the data logs, and (for V15.1 and newer) the software unit assignment. A new station appears under Devices & Networks.
  8. When the upload completes, choose Project → Save As to commit the new project to disk.
If the project tree still shows only the S7-1500 and not the ET 200S, the upload is incomplete. Continue with the next section.

Restoring the ET 200S Remote I/O Topology

ET 200S stations (and any other PROFINET / PROFIBUS distributed I/O) are part of the device configuration, not part of the program. They are stored inside the S7-1500's system data and are uploaded automatically with the procedure above — but only if the engineering software version matches the CPU's project version.

If after upload the ET 200S is still missing, perform the following diagnostic and recovery steps:

  1. Open Devices & Networks (third icon from the top of the project tree).
  2. Verify the PROFINET subnet contains only the S7-1500. If so, the version mismatch is the cause. Install the matching TIA Portal version (see section below) and repeat the upload.
  3. If the ET 200S appears as a grayed-out placeholder with a yellow triangle, the device catalog entry is missing. Install the matching HSP (Hardware Support Package) for the ET 200S firmware revision. The HSP is delivered via Options → Support Packages in TIA Portal, with the offline HSP image downloaded from the Siemens Industry Online Support portal.
  4. If the ET 200S still does not appear, fall back to Online → Accessible nodes. Right-click the discovered ET 200S, choose Upload station to PG/PC, and merge it into the project.

What is stored where on the S7-1500

Object Location in CPU Uploaded by Upload device as new station?
Program blocks (OB, FB, FC, DB, UDT) Load memory (work memory mirror + SIMATIC Memory Card) Yes
PLC tags / tag tables Load memory, project section Yes
Watch / force tables Online only, not stored on CPU No
Device configuration (S7-1500 + ET 200) System data block in load memory Yes (only with matching TIA version)
Software units (V15.1+) Per-unit load memory areas Yes, but unit assignment preserved only with matching V15.1+ TIA
F-signature, F-block compilation CPU-internal safety data Yes, but compiling offline will change the signature
Trace recordings CPU-internal, not stored offline No (export from Online & Diagnostics → Trace)

Installing Matching TIA Portal Versions Side by Side

Siemens officially supports the installation of multiple major TIA Portal versions on the same Windows host. The supported combinations are documented in the TIA Portal installation manual under Parallel installation of TIA Portal products. The maximum number of parallel TIA versions depends on the released matrix and is typically three (e.g. V15.1, V16, V17). WinCC Runtime is the exception — only one WinCC Runtime version can be installed per machine; switching requires uninstallation of the previous runtime.

  1. Confirm the current TIA Portal version: Help → Installed Software in the running TIA Portal.
  2. Download the required TIA Portal version (for example, V15.1) from the Siemens support entry SIMATIC STEP 7 and WinCC V15.1 trial download (Entry ID 109761045).
  3. Run the installer with administrator privileges. Choose Custom installation and disable WinCC Runtime if a different WinCC version is already installed.
  4. Reboot. Start the new TIA Portal version and verify Help → Installed Software shows both versions.
  5. Open the uploaded project; if it was created in the older version, TIA Portal asks whether to upgrade the project — choose No if the original must remain intact, and create a copy for upgrades.

For engineering workstations that need to host four or more TIA Portal versions or mix STEP 7 with non-Siemens tools, a Type 2 hypervisor (VMware Workstation Pro, VirtualBox) is more reliable. Allocate at least 8 GB RAM, 100 GB disk, and 4 vCPU per guest. Enable virtualize Intel VT-x / AMD-V in the host BIOS, otherwise the SIMATIC automation license manager will reject the license key.

F-CPU (Fail-Safe) Upload Prerequisites

Uploading an S7-1500F / F-CPU project requires additional steps because the safety signature stored in the CPU must match the safety program on the engineering station. The prerequisites documented by Siemens are:

  1. The F-CPU must contain a consistent F-program with a valid collective F-signature; an interrupted compile leaves the F-program in an inconsistent state that cannot be uploaded cleanly.
  2. The TIA Portal version on the engineering station must be the same major version that produced the F-program, or a newer one that is F-backward-compatible (always check the compatibility list in the SIMATIC S7-1500 F-CPU manual).
  3. For password-protected F-blocks, the know-how protection password from the original project must be available, otherwise the F-block can be uploaded but its source cannot be decompiled to STL/FBD/LAD — only its compiled machine code is recovered.
  4. The user logged in to the CPU must have Full access (including F-access). The default Full access (no password) setting on a brand-new CPU is not sufficient for F-program upload if an F-password has been assigned.
  5. After upload, the offline F-collective signature will be regenerated. To restore the original F-signature, the F-program must be re-compiled offline and the original F-runtime group license must be re-assigned before any safety-relevant download.

Background: Tip: preconditions to upload a S7-1500 F fail safety projects.

Uploading from a Locked or Password-Protected CPU

A CPU that is locked at the operating-mode selector (mode switch in RUN-LOCK or password-locked) does not prevent a hardware-and-software upload. The procedure is identical to the one in the step-by-step section above; the CPU's RUN state is preserved, the F-signature is read, and the project is mirrored offline.

However, two restrictions apply:

  • If a CPU access password (configured under CPU properties → Protection & Security → Access levels) is set, the upload prompt will request the password. Without it, TIA Portal can still read diagnostic data and the program blocks, but the offline project is marked Read-only / unknown for the protected sections.

For locked CPUs that refuse any online connection, the only recovery path is the Upload from memory card procedure:

  1. Power down the CPU and remove the SIMATIC Memory Card.
  2. Insert the card into a card reader on the engineering station.
  3. In TIA Portal: Project → Retrieve and select the card's SIMATIC.S7S project file (or Card image → .S7-img for card images created with SIMATIC Automation Tool).
  4. Save the project and re-insert the card into the CPU if a download back to the same CPU is required.

Background: Upload complete program from a locked 1500 CPU.

Software Units (S7-1500 with V15.1 and Newer)

From TIA Portal V15.1 onward, an S7-1500 program can be partitioned into software units. Each unit is downloaded, updated, and licensed independently. When uploading, TIA Portal preserves the unit structure only when the engineering version matches the CPU project version.

The complete upload procedure is documented in the TIA Portal online help at Loading software units from a memory card (S7-1500) — TIA Portal V20 documentation. The key operations are:

  1. Online → Upload device as new station (hardware and software) — uploads all units as a single project.
  2. Project tree → CPU → Software units → right-click → Upload unit to PG/PC — uploads a single unit without affecting other units.
  3. Project tree → CPU → Software units → right-click → Compare with offline unit — diff between the CPU-resident unit and the offline copy.

Verification Checklist

Run the following checks after the upload to confirm the project is complete, compilable, and matches the running system:

  1. Project compiles offline. Right-click the CPU → Compile → Hardware and software (rebuild all). Resolve every error before the next step.
  2. Online/offline comparison is consistent. Right-click the CPU → Compare → Online/offline comparison. The result must show no differences in blocks, tags, or device configuration.
  3. Topology matches. Open Devices & Networks; confirm the S7-1500, every ET 200S / ET 200SP / ET 200MP station, and the PROFINET / PROFIBUS subnet are present. Slot assignments must match the real rack.
  4. F-signature check (F-CPU only). Open Safety → F-runtime groups; record the collective F-signature from online and from offline. If they differ, the offline project cannot be downloaded without a deliberate safety re-validation.
  5. Block consistency. In the project tree, expand Program blocks; verify the timestamp of every block matches the last compile, not the upload time.
  6. Project save and archive. Use Project → Archive (.zap) and store the archive in the plant documentation system.

Troubleshooting Matrix

Symptom Likely cause Remediation
CPU detected, but upload produces a project with red compile errors only TIA Portal version older than the project on the CPU Install the matching TIA Portal version (see installation section)
CPU and ET 200S detected in Accessible nodes, upload produces only the CPU Version mismatch corrupted the system data interpretation Repeat upload from the matching TIA version; or use Upload station to PG/PC on the ET 200S and merge
ET 200S shows a yellow triangle and "Device description not found" Missing HSP for the firmware revision Install the matching HSP via Options → Support Packages
Upload dialog reports "You do not have the required authorization" CPU access level set to No access or Read access with a password Adjust the CPU's protection level or supply the access password
F-CPU upload succeeds but Compile → Safety program fails with signature error F-password missing or F-block source not present Recover the F-block source from project backup or vendor archive; otherwise rebuild the F-program from the safety requirement specification
Program uploaded, but every block is Know-how protected and shows no source Know-how protection was active when the project was downloaded Only the field report can decompile. The compiled code can be monitored online but not edited
CPU not found in Accessible nodes Wrong PG/PC interface, wrong subnet, or DCP blocked by a managed switch Verify the PG/PC interface, ping the CPU's IP, enable LLDP/DCP on the switch port, check for VLAN segmentation
Upload aborts with "Online connection could not be established" CPU is in a fault state, a partner connection is active, or another online session holds the connection Resolve the CPU fault, close other TIA Portal / HMI online sessions, retry
ET 200S is visible in Wireshark / topology scan but not in TIA Portal Device name on the ET 200S does not match the project Re-assign the PROFINET device name via Online → Accessible nodes → Assign PROFINET device name

Field-Proven Caveats

  • Compile errors after upload are not always real: the S7-1500 stores the program in compiled form. After a version-upgrade upload, TIA Portal may report unresolved references to symbols it cannot reconstruct. Inspect each error individually — many resolve themselves after a clean recompile.
  • The first upload takes the longest: a full S7-1500F program with ET 200S, ET 200SP, drives, and HMI can produce a project of 40–120 MB. Allow 5–25 minutes depending on link speed and CPU load.
  • Do not edit the project and download during the upload: the load memory on the S7-1500 is read in chunks; concurrent writes can corrupt the project file. Wait for the Upload completed status before doing anything online.
  • Always archive before upgrading: use Project → Archive to create a versioned .zap file before any Upgrade project action; the upgrade is non-reversible inside TIA Portal.

Why does TIA Portal find the S7-1500 but show only the CPU without ET 200S?

The most common reason is a TIA Portal version mismatch. The S7-1500 stores its complete device configuration, including the ET 200S PROFINET station, in system data. If the engineering version is older than the project on the CPU, TIA Portal can read the program blocks but cannot decode the device configuration, so the ET 200S is dropped. Install the matching TIA Portal version (or a newer one) and repeat Online → Upload device as new station (hardware and software).

Can I install TIA Portal V15.1 and V16 on the same PC at the same time?

Yes. Siemens supports parallel installation of up to three major TIA Portal versions. The exception is WinCC Runtime, of which only one version can be installed per Windows host. For more than three versions, use a virtual machine with at least 8 GB RAM, 100 GB disk, and VT-x/AMD-V enabled in the BIOS.

Does uploading the program stop the S7-1500 CPU?

No. Upload device as new station (hardware and software) is a read-only operation on the PLC side. The CPU stays in RUN. Only a subsequent Download to device would force a STOP/RUN transition or an F-runtime group restart on an F-CPU.

How do I upload a password-protected S7-1500 program?

What is the difference between Upload device as new station and Upload station to PG/PC?

Upload device as new station (hardware and software) creates a brand-new TIA Portal project containing the CPU, all distributed I/O, the program, the tags, and the topology. Upload station to PG/PC (right-click on a station in Accessible nodes) uploads only that single station as a standalone project — useful for recovering an individual ET 200S but not for full machine documentation.

Can I recover a project from a SIMATIC Memory Card if the CPU is in a fault state?

Yes. Power down the CPU, remove the SMC, insert it into a card reader on the engineering station, and use Project → Retrieve in TIA Portal to open the SIMATIC.S7S file. Card images created with SIMATIC Automation Tool (.S7-img) can be opened directly as well.

Back to blog