Problem Overview: PLCSIM V14 Refuses S7-1200 Firmware Below V4.0
SIMATIC S7-PLCSIM V14, bundled with TIA Portal V14 (released 2016), rejects simulation sessions that target S7-1200 CPU firmware revisions below V4.0. The PLCSIM internal CPU image in V14 was rebuilt against the V4.x instruction set, optimized DB layout, and updated system data block structure. When the project tree still references an S7-1200 CPU with firmware V1.0, V2.0, V2.2, or V3.0, PLCSIM V14 either refuses to start, reports an Incompatible CPU firmware version message, or fails to load the user program. Engineers maintaining legacy machines, retrofitting older S7-1200 lines, or replicating long-running service projects frequently hit this wall.
The constraint is a binary coupling inside PLCSIM's firmware dispatcher table. Older S7-1200 firmware revisions predate the OPC UA server block, the new PID_Compact, and motion control extensions shipped in V4.0. Siemens did not backport the legacy firmware profiles into PLCSIM V14 because doing so would have doubled maintenance of an already-discontinued code base. Three field-proven workarounds address the limitation without rewriting the user program.
Firmware Constraints and Compatibility Matrix
The compatibility envelope for PLCSIM V14 follows TIA Portal V14's device catalog exactly. The simulator cannot simulate firmware that the host TIA Portal version cannot configure.
| S7-1200 Firmware | TIA Portal Min Version | PLCSIM V14 Compatible? | PLCSIM V13 SP1 Compatible? |
|---|---|---|---|
| V1.0 | V11 | No | Yes |
| V2.0 | V11 SP2 | No | Yes |
| V2.2 | V12 SP1 | No | Yes |
| V3.0 | V13 | No | Yes |
| V4.0 | V13 SP1 Update 4 | Yes | Yes |
| V4.1 | V13 SP1 Update 9 / V14 | Yes | Yes |
| V4.2 | V14 SP1 Update 4 | Yes | No |
| V4.3+ | V14 SP1 Update 6+ | Yes | No |
The table covers the CPU 1211C, 1212C, 1214C, 1215C, and 1217C families and their F-variant safety siblings. The cutoff is strict: PLCSIM V14 contains only the V4.x and later CPU emulation models. The minimum PLCSIM install that still carries legacy firmware emulation is V13 SP1 (TIA Portal V13 SP1).
Root Cause: Why PLCSIM V14 Drops V1-V3 Firmware
The simulation engine maintains CPU image binaries per firmware revision. Each firmware major (V1, V2, V3, V4) introduces changes to the system data block (SDB) layout, organization block (OB) priority handling, and the binary interface between the user program and the firmware kernel. PLCSIM V14 ships only with the V4 firmware image. The compiler that ships with TIA Portal V14 generates code with the V4 calling convention and V4 system block ABI. A V3 project compiled by an older TIA Portal would produce V3-compatible code, but PLCSIM V14 cannot load it because no V3 firmware image exists in the simulator DLL set.
Additional factors reinforce the cutoff:
- PROFINET IO controller subsystem: The V4.x PROFINET stack added IRT (Isochronous Real-Time) handling not present in V3.x. The simulator's PROFINET emulator was rebuilt against V4 IRT only.
- Motion control objects: The TO_SpeedAxis, TO_PositionAxis, and TO_SynchronizationAxis technology objects introduced in V4.0 require V4 firmware image support.
- PID_Compact FB: The V4 PID_Compact replaces the older PID_3Step and Cont_S libraries. The new FB has internal instance DB layout incompatible with V3.
- Web server certificate store: V4 introduced TLS-capable web server with certificate manager. Legacy web pages do not map cleanly to the V4 web server image.
Siemens Engineering documented the strategy in the TIA Portal V14 release notes: simulation coverage tracks the current active firmware generation only. Legacy firmware emulation lives in the corresponding PLCSIM release that matched the firmware's shipping window.
Workaround 1: Temporary Firmware Upgrade in the TIA Portal Project
This is the cleanest field approach when you must simulate within TIA Portal V14. The procedure modifies only the offline project tree. The physical PLC connected later receives no change. Engineers can keep the production firmware on the real hardware while simulating the project at V4.x locally.
Step-by-Step Procedure
- Open the project in TIA Portal V14 (or V14 SP1) with the device tree showing the original S7-1200 CPU at its native firmware (e.g., V3.0).
- Right-click the CPU in the Project Tree (Devices & Networks > PLC_1 > CPU module) and select Change Device > Change Device/Firmware.
- In the Change Device dialog, select the same CPU order number (MLFB) and change only the firmware version to V4.1 or higher. Use V4.1 as the safest target because V4.1 retains most V3.x program structures and avoids motion control library changes introduced in V4.2.
- Confirm the change. TIA Portal recompiles the user program against the V4 firmware image and regenerates the system data blocks.
- Open Online > Simulation > Start (or press the Start Simulation button in the toolbar). PLCSIM V14 launches the V4.1 CPU image and loads the recompiled program.
- Perform all simulation work in this V4.1 profile. Do not add V4.x-only function blocks (TO_Axis, PID_Compact V2, OPC_UA blocks) that did not exist in the original V3 program.
- When simulation is complete, right-click the CPU again and Change Device back to the original firmware version. TIA Portal restores the V3.x system data blocks.
- Compile and download to the physical PLC, which still runs its native firmware.
Workaround 2: Downgrade PLCSIM to V13 SP1
If the project must remain strictly on its original firmware revision throughout simulation, install TIA Portal V13 SP1 with PLCSIM V13 SP1 in a separate virtual machine or side-by-side Windows user profile. V13 SP1 simulates V1.0 through V4.1 firmware without modification.
- Verify Windows license allows a second TIA Portal install. Each major TIA Portal version requires its own license key.
- Install TIA Portal V13 SP1 Update 9 or later into a separate folder. Update 9 adds V4.1 firmware simulation.
- Open the original project in V13 SP1, recompile, and run PLCSIM V13 SP1 directly.
- Re-export any HMI tags or motion configuration as needed. HMI panels do not always open cleanly across TIA Portal major versions.
This approach is heavier than Workaround 1 but produces a faithful simulation identical to the field PLC's behavior. Recommended for FAT (Factory Acceptance Test) work where bit-for-bit fidelity matters.
Workaround 3: Real PLC on the Bench as Simulator
For engineers who need full I/O, web server, SMTP, and PROFINET device simulation, the highest-fidelity approach is a real S7-1200 CPU powered on the workbench. This was the standard approach before PLCSIM existed and remains the most accurate option. The bench PLC connects to engineering Ethernet, accepts the project download, runs the real firmware, exposes the real web server at the IP address, and exchanges PROFINET frames with simulated IO devices via tools such as SIMIT or a real decentralized IO rack.
Cost is the obvious drawback, but a decommissioned CPU 1212C or 1214C from a panel swap covers most simulation needs. The bench PLC should be reset to factory defaults, given a fixed project IP (e.g., 192.168.0.10), and isolated from the production network by a dedicated engineering switch port.
Configuration: Setting Up PLCSIM V14 for the Workaround
Before First Simulation Run
- Launch TIA Portal V14 SP1 with the project open.
- Confirm the PLCSIM instance is set to TCP/IP (default) rather than PLCSIM Virtual Ethernet. From the menu: Online > Simulation > Settings.
- Verify the PC network adapter used by PLCSIM is reachable. The default PLCSIM IP is 192.168.0.1 with subnet 255.255.255.0. If a corporate VPN forces a conflicting route, the PLCSIM-to-TIA handshake will fail silently.
- Disable Windows Firewall private profile on the PLCSIM adapter, or add firewall rules allowing UDP 4410 and TCP 102 (S7 communication ports).
Starting a Simulation Session
- Select the CPU in the project tree.
- Click Start Simulation in the toolbar (lightning-bolt icon). PLCSIM launches the runtime.
- The PLCSIM compact view opens. Use the project tree in TIA Portal to download the program (Online > Download to device). The download target appears as PLCSIM S7-1200/S7-1500.
- Switch the CPU to RUN. The status indicator turns green.
- Open a watch table or force table to drive inputs and observe outputs.
Verification Procedures
Confirm the simulation is healthy before trusting test results.
| Check | Method | Pass Criterion |
|---|---|---|
| CPU state | PLCSIM status indicator | Green RUN, no SF or BF LED |
| Scan time | Online & Diagnostics > Cycle time | Within 10 percent of expected nominal |
| Program execution | Watch table on key tags | Outputs toggle per logic on forcing inputs |
| System clock | Read %MW10 system time word |
Increments at 1 Hz |
| Retentive bits | Force M100.0, cycle PLCSIM power | Bit retains after restart |
| Web server | Browse to PLCSIM IP at port 80 | V4 web pages load |
| PROFINET IO | Online & Diagnostics > PROFINET devices | Configured devices show "OK" status |
If any check fails, stop the simulation, recompile the project, and verify the firmware version displayed in the PLCSIM compact view matches the project's configured firmware.
Common Pitfalls and Limitations
Engineers hitting this compatibility boundary typically encounter the same handful of traps. The table maps symptom to cause to remediation.
| Symptom | Likely Cause | Fix |
|---|---|---|
| PLCSIM V14 will not start with CPU V3.0 project | V3 firmware not in V14 simulation image | Apply Workaround 1 (firmware upgrade) or Workaround 2 (V13 SP1) |
| Download to PLCSIM fails with "Firmware version of inserted module does not match" | Project firmware vs. PLCSIM image mismatch | Match firmware version between project and PLCSIM target |
| Compile errors after switching firmware back to V3 | V4-only blocks added during simulation session | Revert block additions; remove TO_Axis, PID_Compact V2, OPC_UA references |
| Web server returns 404 in PLCSIM | V4 web page layout differs from V3 | Disable web server simulation, use watch table for diagnostics |
| Motion control TO will not load in PLCSIM | TO requires hardware-dependent timing | PLCSIM supports TOs but not actual axis motion; verify logic only |
| PROFINET device shows "Not accessible" in PLCSIM | IRT topology not modeled in PLCSIM | Switch device to non-IRT or use SIMIT for PROFINET simulation |
| PLCSIM V14 service pack missing Update 10 | Update 10 not applied | Apply Update 10 via TIA Administrator or install full V14 SP1 from entry 109745153 |
Best Practices for Legacy S7-1200 Simulation
- Keep a separate simulation project. Maintain a copy of each legacy V3.x project for simulation only, with the firmware upgraded to V4.1 in that copy. Never mix simulation firmware and production firmware in the same project file.
- Document the firmware swap. Add a comment block in the CPU properties describing the simulation-only firmware bump. Future engineers will otherwise wonder why the offline firmware differs from the connected hardware.
- Avoid V4.x-only features during simulation. Stick to OB1, OB35 (if cyclic), standard timers/counters, and the legacy PID blocks. Avoid TO_Axis, PID_Compact V2, and OPC_UA server blocks when simulating against a V3 baseline.
- Use SIMIT for PROFINET device simulation. PLCSIM V14 does not faithfully simulate PROFINET IRT. For machine-level digital twin work, SIMIT coupled with PLCSIM delivers more accurate distributed I/O behavior.
- Track the TIA Portal version against the firmware generation. A simple rule prevents the trap: TIA Portal major version N corresponds to S7-1200 firmware V(N-10).0 to V(N-9).4. V14 covers V4.x only; V13 SP1 covers V3.x and V4.0/V4.1; V12 SP1 covers V2.x.
- Archive the project before firmware changes. The Change Device operation modifies system data blocks irreversibly in the offline project until manually reverted. A pre-change archive prevents a corrupt state if the engineer is interrupted.
- Validate scan time in PLCSIM against the real PLC. PLCSIM executes user code with negligible task system overhead. Scan time in simulation is usually 1 to 5 ms faster than on the real hardware. Add a safety margin to any time-critical logic tested in PLCSIM.
Decision Tree: Selecting the Right Workaround
- Does the simulation need bit-for-bit fidelity to the real PLC's firmware behavior?
- Yes → Use a real PLC on the bench (Workaround 3) or downgrade to PLCSIM V13 SP1 (Workaround 2).
- No → Continue.
- Is the host engineering PC licensed for TIA Portal V13 SP1 or earlier?
- Yes → Workaround 2 is the lowest-risk option.
- No → Continue.
- Does the existing TIA Portal V14 project tree contain only blocks, FBs, and instructions present in V4.x?
- Yes → Workaround 1 (firmware upgrade) is the fastest path.
- No → Re-code V3-only instructions to V4-compatible equivalents, or apply Workaround 2.
- Does the project contain PROFINET IRT or synchronized motion control?
- Yes → Use SIMIT plus PLCSIM, or use a real PLC. PLCSIM alone does not faithfully simulate IRT timing.
- No → Workaround 1 is sufficient.
Frequently Asked Questions
Why does PLCSIM V14 refuse to simulate an S7-1200 with firmware V3.0?
PLCSIM V14 ships only the V4.x and later CPU emulation images. The V1, V2, and V3 firmware binaries were not backported into the V14 simulator engine. To simulate a V3.x project under PLCSIM V14, either upgrade the project's firmware profile to V4.1 (no real PLC change), install PLCSIM V13 SP1, or use a physical S7-1200 CPU on the bench.
Can I permanently upgrade an S7-1200 from V3 to V4 firmware in TIA Portal V14?
Yes, but the firmware flash writes to the physical CPU's MMC or internal flash, not just the project. Use the online "Online & Diagnostics > Firmware Update" function with the correct V4.x firmware file for your CPU's MLFB order number. The update is non-reversible without the matching V3 firmware file. For simulation-only purposes, change the firmware in the offline project tree without downloading to the real CPU.
Does Workaround 1 (firmware upgrade in project) affect the real PLC?
No, provided you only modify the offline project tree and download to PLCSIM. The physical PLC keeps its native firmware. After simulation, revert the offline project's firmware to the original revision before downloading to the real hardware. Avoid modifying the user program during the V4.x simulation session.
Which PLCSIM version simulates S7-1200 V4.2 and V4.3 firmware?
PLCSIM V14 SP1 Update 4 introduces V4.2 firmware simulation. Update 6 adds V4.3. Update 10 (current at the time of writing) bundles the latest maintenance for V14 SP1 and is downloadable from Siemens Support entry 109745153. The base V14 image without SP1 simulates V4.0 and V4.1 only.
Can PLCSIM V14 simulate PROFINET IRT devices accurately?
No. PLCSIM V14 emulates the S7-1200 PROFINET controller but does not reproduce IRT (Isochronous Real-Time) cycle timing, port synchronization, or cut-through switching. For PROFINET IRT simulation, use SIMIT in combination with PLCSIM, or perform FAT on the real hardware with the actual distributed I/O.