Problem Statement: Uploading a TIA Portal V15.0 Project Without V15.0 Software
When an S7-1200 or S7-1500 PLC was last programmed with TIA Portal V15.0 and the matching installation media is no longer available, engineers face a hard compatibility wall: the device-to-project upload requires a TIA Portal version that supports the exact CPU firmware that resides in the PLC. The error generated by V15.1, V16, V17, or later when targeting a V15.0-only firmware image is the generic message:
An error occurred during upload
Clicking the embedded help link resolves to the same generic error topic and offers no actionable remediation. This article documents the four field-proven recovery paths, the underlying version-compatibility matrix that drives the failure, and the verification steps that confirm a clean extraction.
Root Cause: TIA Portal Version Compatibility Matrix
Siemens enforces two independent compatibility checks when you attempt Upload from device (device → PC):
- CPU firmware support: The TIA Portal installation on the engineering station must include support packages for every firmware version present on the target CPU's hardware catalog. Each TIA Portal major release adds support for new firmware revisions but drops support for very old ones as catalog data is retired.
- Project generation version: The offline project must be created in a TIA Portal version compatible with the editor binary. A project originally generated in V15.0 carries internal version stamps (CBE version, schema version, library references) that V15.1 can read in many cases, but certain firmware families are only recognized by the exact release that introduced them.
Affected Products and Firmware Ranges
| CPU Family | Firmware Branch Requiring V15.0 | First Supported In | Subsequently Supported Via HSP |
|---|---|---|---|
| S7-1500 (CPU 1511, 1513, 1515, 1516, 1517, 1518) | FW V2.5 and earlier minor revisions | TIA Portal V15 Update 1 | V15.1, V16, V17, V18, V19 |
| S7-1200 (CPU 1211, 1212, 1214, 1215, 1217) | FW V4.2 and earlier | TIA Portal V14 SP1 / V15 | V15.1, V16, V17 |
| ET 200SP CPU 1510SP / 1512SP | FW V2.5 family | TIA Portal V15 | V15.1+ with matching HSP |
| S7-1500 Software Controller (CPU 1505SP, 1507S) | FW V2.0 / V2.1 | TIA Portal V15 | V15.1+ with HSP |
| CPU 1518-4 PN/DP ODK | FW V2.5 | TIA Portal V15 | V15.1+ with HSP |
| CPU 1516-3 PN/DP (6ES7516-3AN02-0AB0) | FW V2.5.x | TIA Portal V15 | V15.1+ with HSP |
CPU firmware branches are not interchangeable: a project compiled against FW V2.5 produces machine code containing instructions only recognized by the V15.0 editor's compiler. A V15.1 upload succeeds at the connection layer but fails during block reconstruction, which is what surfaces as the generic upload error.
Diagnostic: Identifying the PLC Configuration Version
Before selecting a recovery path, capture the exact firmware and project version from the live CPU. Three methods are available without installing TIA Portal at all:
- Online → Accessible nodes in any TIA Portal version: With any TIA Portal that can establish an S7 connection, browse to Online → Accessible nodes. The CPU's Online & Diagnostics view exposes Module Information → Firmware with the exact V.x.y.z build number.
- Web server of the CPU: S7-1500 and S7-1200 CPUs expose a built-in web server. With the web server activated and a known IP address, navigate to Module Information → Identification in the browser. The firmware string is shown alongside the article number (e.g., 6ES7516-3AN02-0AB0 / V2.5.0).
- CPU display: All S7-1500 and S7-1200 CPUs with a front display can navigate to Settings → Module Information → Firmware Version.
- PRONETA or PROFINET DCP tool: The free Siemens PRONETA utility performs passive PROFINET discovery and lists every node with article number, firmware, and IP without needing TIA Portal.
Record the article number (6ES7 ...-...-....), firmware version, and the slot configuration. This data drives the choice of HSP and the target TIA Portal version for the recovery.
Solution 1: Blank Project with "Unspecified" CPU Upload
This is the fastest path when the matching TIA Portal version is already installed on a different workstation or can be installed. The technique exploits the upload wizard's ability to specify the CPU type from the live device rather than from a pre-configured offline device.
Prerequisites
- TIA Portal V15.0 (full installation or repair installation)
- Network reachability to the target CPU (same subnet, PROFINET cable, or routed connection)
- CPU in Run or Stop with PG/PC access enabled (Protection & Security → Connection mechanisms → Permit access with PUT/GET from remote partner or equivalent)
- PG/PC interface set to the correct TCP/IP adapter (S7ONLINE access point → TCP/IP)
Procedure
- Launch TIA Portal V15.0 and select Create new project. Name the project and choose the project storage path on a local drive (avoid network drives during upload).
- In the project tree, expand Devices & networks. Do not add a device. The project must remain empty at the device level so that the upload wizard can populate it.
- From the menu bar select Online → Upload from device (Software).
- In the "Upload from device" dialog, select the PG/PC interface (e.g., Intel(R) Ethernet Connection ... S7ONLINE).
- Click Start search. TIA Portal broadcasts PROFINET DCP and lists all reachable S7 nodes with their article numbers, firmware versions, and MAC addresses.
- Select the target CPU and confirm. The wizard inspects the CPU, downloads the system data blocks, program blocks, and technology objects, then reconstructs an offline project containing the matching device (with the correct article number and firmware).
- Save the project immediately as Project_V15.0_source in a versioned folder structure.
This procedure matches the workflow documented in the official Siemens FAQ "How do you perform an upload from an S7-1500 / S7-1200 to the TIA Portal?". Use that article as the authoritative reference; the steps above mirror the official method with additional diagnostic notes.
Solution 2: Acquire TIA Portal V15.0 Installation Media
When V15.0 is not installed anywhere on site, three acquisition paths exist, in order of preference:
- Local Siemens distributor (preferred): Authorized Siemens sales partners maintain a license and media library. Request a temporary loan of the V15.0 installation DVD or downloaded package through your Siemens account representative. The package remains Siemens property under a media loan agreement and is returned after the recovery is complete.
- Siemens Industry Online Support service request: Open a ticket through Siemens Industry Online Support and reference the discontinued product notice for TIA Portal V15.0. Siemens historically releases discontinued installation media through the "Service Request" workflow when accompanied by a valid service contract or one-time media purchase.
- Service contract upgrade: For organizations without a current contract, Siemens offers the legacy media under a 36-month service plan. The plan includes all major TIA Portal releases issued during the contract window plus the discontinued V15.0 set. This is the most expensive path but provides auditability and license purity.
Once V15.0 is installed, proceed with the Solution 1 procedure above.
Solution 3: Upload from Identical Reference PLC
For machines with multiple identical controllers in the same facility, a peer PLC can serve as the recovery source. The success of this path depends on whether the two CPUs share the exact same firmware revision and whether their program blocks are byte-equivalent.
Procedure
- Identify a peer PLC running the identical firmware version and machine configuration. Confirm the article number and firmware with the diagnostic steps above.
- Connect to the peer PLC with the highest TIA Portal version available on site (V15.1 minimum, V16 or later preferred).
- Perform Upload from device into a fresh, empty project. Because the peer CPU is supported by the modern editor, the upload succeeds and produces a complete offline project.
- Save the project as Project_PeerPLC_V15plus.tiap.
- Open a duplicate of the project (Project → Save as), naming it Project_TargetPLC_V16.tiap. Connect to the target PLC. If the connection establishes and the wizard can read the device, proceed to step 6. If the connection fails, the firmware of the target is newer than the project can describe; downgrade by upgrading the CPU firmware first (Solution 4) and retry.
- Use Online → Compare offline/online to inspect every block. Differences are typically reported in the compiler-generated metadata (timestamps, path IDs) rather than in executable logic. Double-click each difference, review the side-by-side comparison, and accept the online view if the source-code panels are identical.
- If the online/offline compare reports no semantic differences, the project is safe to use as the recovered baseline.
Solution 4: Firmware Upgrade as Recovery Path
When the matching TIA Portal installation is genuinely unobtainable and no peer PLC is available, upgrading the CPU firmware to a revision supported by a current TIA Portal release is a viable workaround. The upgrade does not alter the user program stored on the CPU; it replaces only the firmware layer beneath it. The user program remains intact and the controller resumes operation with the existing logic once the new firmware is online.
Procedure
- Verify the current firmware via web server or display (e.g., V2.5.0).
- Identify a newer firmware revision available on the Siemens support portal for the exact article number. Firmware files are released as
*.updpackages through Siemens Industry Online Support under the entry type "Firmware Update". - Download the matching firmware file and store it on the engineering station.
- In TIA Portal V16 or later (V15.1 may also work if the firmware revision is supported), navigate to Online → Accessible nodes, select the target CPU, then Online & Diagnostics → Firmware update.
- Browse to the
.updfile and execute the update. The CPU performs a controlled restart; ensure the machine is in a safe state before initiating. - After the firmware update, the CPU is online with its original program blocks but is now recognized by the modern TIA Portal editor.
- Perform Upload from device using the modern TIA Portal. The upload succeeds and recovers the full project in the current version.
Online/Offline Compare and Verification
After any upload, the recovered project must be compared against the live CPU to confirm block-for-block parity. The comparison covers user blocks (OB, FB, FC, DB), system blocks (SDB), and the device configuration.
| Comparison Target | Expected Result | Tool Path |
|---|---|---|
| User program blocks (OB / FB / FC / DB) | Identical logic; possible timestamp drift only | Project tree → right-click PLC → Compare offline/online |
| System data blocks (SDB) | Identical hardware configuration | Devices & networks → Online → Compare |
| Technology objects (TO) | Identical configuration data | Technology objects → right-click → Compare |
| PLC tags / constants | Identical names, data types, values | PLC tags table → right-click → Compare |
| Watch tables / force tables | Identical structure | Watch & force tables → Compare |
If the comparison reports no semantic differences but surfaces timestamp or path-ID mismatches only, the recovery is successful. If the compare reports structural differences (e.g., different block numbers, different interfaces), the upload captured a corrupted or partial image; repeat the upload or escalate to Siemens support with the CPU serial number and diagnostic trace.
Common Upload Errors and Their Causes
| Error Message | Probable Cause | Remediation |
|---|---|---|
| An error occurred during upload | Firmware not supported by installed TIA Portal version | Install matching TIA Portal, use peer PLC, or upgrade CPU firmware |
| The device could not be reached | Network configuration mismatch or firewall blocking UDP 34964 | Verify IP, subnet, PG/PC interface assignment, firewall rules |
| The online configuration differs from the offline configuration | CPU has been re-parameterized without project update | Use Online → Compare and resolve intentional differences |
| You do not have sufficient rights to perform the upload | CPU protection level set higher than password configured in TIA Portal | Enter correct password in PLC properties or match offline protection to online |
| Block type not recognized by this version | Project was generated in newer TIA Portal than installed | Upgrade TIA Portal or downgrade the project through export/import |
S7-1500 vs S7-1200 Upload Differences
The upload procedure is identical for both families, but a few platform-specific nuances matter for recovery work:
- Web server default state: S7-1500 CPUs ship with the web server enabled by default; S7-1200 CPUs require the web server to be activated in the device configuration before browser-based diagnostics can reach the firmware string.
- Memory card presence: S7-1500 always uses a SIMATIC memory card; the user program lives on the card. Removing the card during a recovery preserves the project for direct file-level inspection. S7-1200 stores the program in internal load memory and does not support card-based extraction.
- Display navigation depth: S7-1500 front displays expose firmware under Settings → Module Information → Firmware; S7-1200 displays expose the same data under Settings → Module Information.
- PUT/GET access: Both families require explicit enablement of PUT/GET or PG routing for engineering access when the protection level is set above "No protection". S7-1500 additionally honors the Access level setting per connection type.
Prevention: Project Backup Strategy
The scenario above is entirely preventable with disciplined project archival. The following baseline is recommended for any Siemens controller fleet:
-
Project-as-installed baseline: After every controller commissioning, archive a complete project ZIP (File → Archive) into a versioned repository. Include the TIA Portal version in the file name (e.g.,
MachineA_TIAV15.0_FWV2.5.zip). - Online backup at handover: Before a maintenance window, perform Upload from device and save the result alongside the offline archive. Online backups capture any field edits that diverged from the engineered baseline.
- Media retention policy: Retain the original TIA Portal installation media (DVD or ISO) for the operational life of the controller, plus an additional 5 years. Storage in a controlled-access media library eliminates the recovery cost described above.
- License inventory: Maintain an ALM key inventory listing every TIA Portal license, its bound computer or server, and its expiration date. License expiration of a once-active V15 key does not invalidate an installed V15.0 image; it only prevents a new installation from re-using that key.
-
CPU-side project storage: For S7-1500 controllers with a SIMATIC memory card, periodically back up the card's
S7_JOBfolder using a card reader. This provides a controller-side copy of the project even when the engineering station is unavailable.
Comparison of Recovery Methods
| Method | Prerequisites | Success Rate | Time Required | Risk |
|---|---|---|---|---|
| Blank project upload with V15.0 | V15.0 install + network access | High | 15-30 min | Low (read-only) |
| Peer PLC upload | Identical peer CPU + modern TIA | High if peers are identical | 30-60 min | Low (read-only) |
| Firmware upgrade + modern upload | Firmware file + modern TIA | High | 20-40 min | Medium (CPU restart) |
| Service contract / media loan | Siemens engagement | High once media is obtained | 1-5 business days | Low (administrative) |
FAQ
Why does TIA Portal V15.1 reject the upload from a V15.0-only CPU firmware?
Each TIA Portal release includes a hardware catalog snapshot. If the CPU firmware revision is not present in that snapshot, V15.1 cannot construct an offline representation of the device and aborts the upload with "An error occurred during upload". Installing the matching Hardware Support Package (HSP) for the older firmware revision into V15.1 may resolve the issue, but Siemens only publishes HSPs for actively supported firmware branches. V15.0-only firmware falls outside the supported set, so V15.1 cannot be coerced into reading the device.
Is it possible to downgrade TIA Portal to V15.0 after installing V16 or later?
No. TIA Portal is a forward-only installation in the sense that the editor, compiler, and hardware catalog are replaced in place. Installing V15.0 after V16 has been installed requires a complete uninstallation of the newer version, including all HSPs, support packages, and option packages. License keys remain valid across versions when managed through the Automation License Manager and can be re-bound to a fresh installation.
Can Siemens supply the V15.0 installation media without a service contract?
Siemens Industry Online Support offers V15.0 media through a service contract. A 36-month contract is the typical entry point and includes all major TIA Portal releases plus the discontinued V15.0 set. Authorized Siemens distributors can also provide a temporary media loan for short-duration recovery work. There is no free or trial distribution channel for discontinued TIA Portal versions.
Will a firmware update erase the user program in the CPU?
No. A firmware update via TIA Portal only replaces the firmware image stored in the CPU's flash area. The user program, retentive data, and configuration are stored in a separate partition and are preserved across the restart. Confirm the firmware update option "Preserve user program" is enabled if it is presented; this is the default for S7-1500 and S7-1200 firmware updates originating from TIA Portal.
How can I read the firmware version of an S7-1500 CPU without TIA Portal?
Use the CPU's web server or the front display. Enable the web server in the CPU's protection configuration, assign an IP address via the display or a DCP tool, then browse to the module information page. Alternatively, navigate the front display to Settings → Module Information → Firmware Version to read the V.x.y.z string directly. S7-1500 firmware is also reported by any PROFINET DCP tool (e.g., the Siemens PRONETA utility) during network discovery.