Siemens · Technical Blog

How to Upload a Siemens PLC Program to TIA Portal

A practical walkthrough for pulling the program off a connected S7-1200 or S7-1500 CPU into TIA Portal — the right menu path for each situation, what comes back with or without symbols, and fixes for the errors you'll actually hit.

2,500+ engineers trained 4.9/5 Google rating 21+ years, Chinchwad, Pune Next batch: contact for dates
Quick answer

To upload a PLC program from a Siemens PLC into TIA Portal, connect your PG/PC to the CPU over Ethernet, then go to Online > "Upload device as new station (hardware and software)", select the CPU from the scanned devices, and click Upload. TIA Portal pulls the hardware configuration and program blocks straight from the CPU's memory — but the blocks only come back with readable tag names and comments if "Store project data on the CPU" was enabled the last time the program was downloaded.

  • There are three different upload paths in TIA Portal, and picking the wrong one wastes time or overwrites work
  • Uploaded blocks only carry symbolic names and comments if "Store project data on the CPU" was enabled at the last download
  • Most upload failures come down to three causes: wrong PG/PC interface, CPU access protection, or a missing hardware support package (HSP)

What 'Upload' Means in TIA Portal

Upload is the reverse of Download: instead of sending a program from your engineering PC to the PLC, you pull the compiled program blocks and hardware configuration directly out of a connected CPU's memory and rebuild them into a project on your PG/PC. You'd do this when the original TIA Portal project is lost, corrupted, was never handed over during commissioning, or when you're taking over maintenance of a machine someone else built.

It's easy to confuse Upload with two other operations in TIA Portal:

  • Download sends your project's program to the CPU — the opposite direction.
  • Archive / Retrieve is a full backup of your local project file (.zapXX), created on your PC without touching the PLC at all — see our TIA Portal backup guide for that side of the workflow.
  • Upload is the only one of the three that reads from a live, connected CPU.

Want to practice this on real hardware?

Live TIA Portal session with S7-1200 hardware, covering upload, download and archive — Pune classroom or online.

Book a Free Demo Class

Before You Begin: Requirements and Connection Setup

Check these four things before you attempt an upload — most upload failures trace back to one of them:

  • TIA Portal version: ideally the same version (or newer) than what was used for the last download. If the CPU firmware is newer than your installed TIA Portal supports, you'll see a version mismatch warning before the scan even completes.
  • PG/PC interface: set to the physical network adapter that's actually connected to the CPU, on the same subnet as the CPU's IP address.
  • CPU access protection: if the CPU has know-how protection or an access protection level set, you'll need the correct password before the upload can proceed — there's no way around this by design.
  • Physical connection: a direct Ethernet cable from PG/PC to the CPU's PROFINET port, or through the same switch/network segment the CPU sits on.

Three Ways to Upload — and When to Use Each

TIA Portal actually offers three different upload paths, and picking the right one saves you from redoing work:

MethodWhen to use itWhat you get
Upload device as new stationYou have no existing project at all for this machineA brand-new project with hardware config and program blocks
Upload from device (existing project open)You already have a rough or older project and want the current logicThe open project's blocks are refreshed from the CPU
"Upload changes" prompt during Go OnlineYou're online with a project and TIA detects live differencesA block-by-block comparison so you can sync just what changed

Step-by-Step: Uploading the Program

  1. Connect your PG/PC to the CPU via Ethernet, on the same subnet as the CPU's IP address.
  2. Open TIA Portal — no project needs to be open. Go to Online > Upload device as new station (hardware and software).
  3. In the "Extended download to device" style scan window, select PG/PC interface type (usually PN/IE) and the correct network adapter, then click Start search.
  4. Select the target CPU from the scan results by its IP or MAC address, and confirm.
  5. Click Upload. TIA Portal reads the rack configuration, modules, PLC tags, and program blocks straight from the CPU.
  6. If the CPU is access-protected, enter the password when prompted — without it, the upload stops here.
  7. Once the upload finishes, save the new project immediately with a clear, dated name.
  8. Compile the project and cross-check I/O addresses against the physical panel before making any changes.

What You Get Back, and Fixing Common Upload Errors

An upload only comes back with readable tag names and network comments if "Store project data on the CPU" was ticked in the Extended Download settings the last time this program was downloaded. If it wasn't, you'll get a program that runs correctly but reads like machine code — "Network 1," "Network 2," raw addresses like %DB1.DBX0.0 — with no way to recover the original names after the fact. HMI content is separate: Comfort Panels can carry a full project upload, but Basic Panels usually need their own backup taken directly on the panel via its Control Panel > Backup function.

Error / symptomLikely causeFix
"The specified device could not be reached"Wrong PG/PC interface or subnet mismatchSet the PG/PC interface to the correct adapter; check the CPU's IP and subnet mask against your PC's
Access/protection level prompt blocks the uploadCPU has know-how or access protection enabledEnter the correct password; without it, an upload of protected blocks isn't possible
Blocks upload with no tag names or comments"Store project data on the CPU" wasn't enabled at the last downloadNothing recovers the old names after the fact — enable the setting on your next download so future uploads are fully commented
"Module could not be identified" during scanMissing Hardware Support Package (HSP) for a module in the rackInstall the matching HSP for that module's order number, then retry the upload
Upload pulls a different CPU than expectedWrong device selected from the scan listRe-scan and match the exact order number and firmware version shown against your panel's nameplate

Step-by-Step Lab: Try It Yourself in TIA Portal

Hands-on
Before you start
  • TIA Portal V16 or later, with PLCSIM (or PLCSIM Advanced) installed.
  • An S7-1200 or S7-1500 CPU — either real hardware on Ethernet, or a PLCSIM instance for practice without hardware.
  • A small existing project with a couple of named tags and a comment or two, so you can see the difference upload makes.
  • Estimated time: 10 minutes.
1

Download a project with full data storage enabled

Open your small test project, select the CPU, and click Download to device. In the load preview, open Extended download to device settings and tick "Store project data on the CPU." Complete the download.

On screen: the Extended Download dialog with "Store project data on the CPU" visible and checked, just above the Load button.
Download completes and the CPU switches to RUN. Note down two or three of your tag names before continuing — you'll compare them after the upload.
2

Close the project and upload it back as a new station

Close the current project (don't delete it yet). Go to Online > Upload device as new station (hardware and software), set the PG/PC interface to match your connection, click Start search, select the CPU, and click Upload.

A new project opens showing your original tag names and comments — not generic labels. This confirms the upload correctly recovered a fully commented program.
3

Repeat the download without "Store project data on the CPU"

Go back to your original project, download again, but this time leave "Store project data on the CPU" unticked.

Download completes normally — the CPU runs exactly the same program either way, since this setting only affects what upload can recover later, not runtime behavior.
4

Upload again and compare the result

Close the project, then repeat Step 2's upload procedure once more.

This time the uploaded blocks show generic names — "Network 1," raw addresses like %DB1.DBX0.0 — instead of your original tag names. Seeing both outcomes side by side is the fastest way to understand why this one checkbox matters so much.
Checkpoint — how to know you did it right

If Step 2's upload showed your real tag names and Step 4's upload showed only generic labels, you've correctly demonstrated the single biggest factor in whether an upload is useful during an emergency: whether "Store project data on the CPU" was enabled at the time of the last download. Make it a standing habit on every download, not just this lab.

Frequently asked questions

Can I upload a PLC program without knowing which project it belongs to?

Yes. Use Online > "Upload device as new station" — TIA Portal doesn't need an existing project open, since it builds a fresh one directly from what it reads off the CPU.

Will the uploaded program include the HMI screens?

Only for Comfort Panels that support full project upload. Basic Panels typically don't retain a separate uploadable project on the CPU and need their own backup taken directly on the panel through Control Panel > Backup.

What if the CPU is password protected?

You'll need the correct access or know-how protection password before the upload can proceed. There is no supported way to bypass CPU protection during an upload.

Reviewed by Bhawesh Kumar Singh Industrial Automation Trainer and Industry 4.0 Consultant · Softwell Automation · 21+ years industry experience

Get the full syllabus + free demo class

Share your details — a Softwell training advisor will call you within 24 hours with batch dates, fees and hardware access options.

No spam. Used only to share course details for this enquiry.

Learn with practical industrial examples

Join live online, Pune classroom or corporate in-plant automation training.

Request Course Details
Verified learning pathway

Discuss This Technical Course

Explore practical curriculum, software, hardware and batch options for this technology.

Content reviewed: 14 July 2026

Siemens PLC & TIA Portal Learning Path

Continue with the related Siemens PLC tutorials in this practical learning series.

  1. SCL vs Ladder Logic
  2. Upload PLC Program
  3. TIA Selection Tool
  4. Analog Input Scaling
  5. PLC Counters
  6. PLC Timers
  7. Addressing & Data Types
  8. Hardware & PLC Tags
  9. OB, FB, FC & DB
☎ Call WhatsApp ✉ Email Enquire Now