Problem Summary
When launching S7-PLCSIM V15.1 Update 1 from TIA Portal V15.1 Update 4 with an S7-1500 CPU selected, the Compact view of the simulator opens, loads the project, but displays the header Unconfigured PLC [SIM-1500] with no IPv4 address visible on the X1 PROFINET port panel. By contrast, simulating an S7-1200 CPU on the same workstation populates the X1 IP field immediately after project load.
Secondary symptoms reported on the affected configuration:
- The dialog Extended download to devices does not always open when PLCSIM starts; only the Compact view appears.
- Intermittent error dialog
PLCSIM project could not be startedappears on certain firmware versions of the simulated 1500 CPU. - Clicking the Go online button after closing the Compact view opens the device search dialog, but the Start Search operation finds no reachable target.
- Behavior is independent of the simulated 1500 CPU type (CPU 1511, CPU 1515, CPU 1518, ET 200SP CPU, etc.) and independent of the firmware version selected (V2.5 through V2.9).
The mismatch is purely an S7-1500-family issue within the S7-1500 simulator instance. The S7-1200 simulation path on the same TIA Portal/PLCSIM install functions normally, which rules out host OS, .NET runtime, and TIA Portal licensing faults.
Environment & Affected Versions
| Component | Version | Notes |
|---|---|---|
| TIA Portal | V15.1 Update 4 | STEP 7 Professional, WinCC Professional combo installation |
| S7-PLCSIM | V15.1 Update 1 | Installed as PLCSIM add-on, not bundled |
| Host OS | Windows 10 (64-bit) | Physical or VM host |
| Guest OS | Windows 7 Ultimate (64-bit) | Running inside VMware Workstation |
| VMware adapter | Bridged or NAT (Siemens recommendation) | Promiscuous mode "Allow All" |
| Allocated cores | 3 vCPU | Sufficient for TIA + PLCSIM |
| Allocated RAM | 18 GB | Sufficient for TIA + PLCSIM |
| Simulated S7-1500 CPUs | CPU 1511-1 PN, 1515-2 PN, 1518-4 PN/PN, ET 200SP CPU 1510SP-1 PN | Firmware V2.5 to V2.9 tested |
| Reference PLCSIM instance | S7-1200 CPU 1214C DC/DC/DC | Firmware V4.4 - works normally |
Refer to the official SIMATIC S7-PLCSIM V15.1 manual (entry ID 109755202) for the complete feature matrix and supported CPU list. The 1500/1200 behavioral split is documented in section 4.3 of that manual under Start of the S7-PLCSIM.
Root Cause Analysis
S7-PLCSIM V15.1 simulates the PROFINET interface of an S7-1500 as a virtual network adapter inside the PLCSIM runtime. Unlike the S7-1200 instance — which auto-assigns a default IP (typically 192.168.0.1) to its X1 port the moment the simulated CPU is created — the S7-1500 instance remains in an unconfigured state until TIA Portal completes a full project download. The Compact view header is therefore by design Unconfigured PLC [SIM-1500], and the X1 IP field is intentionally blank until the project hardware configuration is written to the simulator.
The reason Extended download to devices does not appear automatically when the project is small or has been compiled in a previous session is a state caching bug in TIA Portal V15.1 Update 4's PLCSIM launcher (PLCSIMLauncher.dll). The launcher omits the auto-redirect when the active session is resumed from a cached compiler snapshot. TIA Portal V16 and later re-implemented the launcher to always force the download dialog on PLCSIM start.
The PLCSIM project could not be started dialog appears when:
- Another PLCSIM V15.x instance already holds a license token on TCP port 49152 (Siemens PLCSIM internal socket).
- The Windows Firewall blocks
S7-PLCSIM.exefrom binding to 0.0.0.0:49152. - Antivirus software intercepts the PLCSIM process tree and tears down child instances.
- VMware virtual network adapter is set to Host-only and the Microsoft Loopback Adapter is missing or disabled.
For Kepware connectivity specifically, the KEPServerEX Siemens S7 TCP/IP driver attempts reconnect after every drop with a default retry interval of 1 s. When PLCSIM rejects the very first session before TIA Portal has finished downloading the hardware configuration, the driver accumulates connection-denied errors faster than PLCSIM's internal bring-up completes (typically 4-7 s on V15.1). Symptoms appear identical to an IP-address issue because the driver reports Device is not responding against a target whose socket is bound but whose PLC firmware has not yet accepted PUT/GET.
Diagnostic Steps
Run the following checks in order before applying the fix. Each step isolates one of the four root causes above.
-
Verify PLCSIM license token. Open TIA Portal > Options > License Manager and confirm an active PLCSIM V15.1 license. Close any TIA Portal or PLCSIM window before re-launching. A stranded process holding the token shows up as
S7-PLCSIM.exein Task Manager with PID under the TIA Portal parent — kill it. - Confirm the simulated PN interface exists. In PLCSIM Compact view, click Project tree > PLC_1 > PROFINET interface [X1]. The MAC address must be present even if the IPv4 field is empty. If the MAC is also blank, the project has not been compiled — return to TIA Portal and run Compile > Hardware (rebuild all).
-
Check Windows Firewall inbound rules. Run in an elevated command prompt:
netsh advfirewall firewall show rule name="S7-PLCSIM"
If the rule is missing, recreate it:
netsh advfirewall firewall add rule name="S7-PLCSIM" dir=in action=allow program="C:\Program Files\Siemens\Automation\PLCSIM\V15.1\bin\S7-PLCSIM.exe" enable=yes - Check VMware virtual NIC. In VMware Workstation, edit the VM settings > Network Adapter > ensure the connection is either Bridged (Replicate physical network connection state) or NAT. Set Promiscuous Mode = Allow All under Advanced. Bridged mode is required if PLCSIM must talk to a real PROFINET device on the host LAN.
- Confirm the Microsoft KM-TEST Loopback Adapter is installed and enabled when running on bridged networking without a physical uplink. Open Device Manager > Show hidden devices > Network Adapters. If absent, install via hdwwiz.exe > Install the hardware that I manually select > Network adapters > Microsoft > Microsoft KM-TEST Loopback Adapter.
-
Inspect PLCSIM startup log. Enable verbose logging by setting the environment variable
S7PLCSIM_TRACE=0xFFFFbefore launching TIA Portal. The trace file is written to%LOCALAPPDATA%\Siemens\PLCSIM\plcsim.log. Look forE0x021A(port bind failure) andE0x021F(license token denied).
Solution: Force the Download to Populate the IP
The correct workflow for S7-1500 simulation is to manually drive the download after PLCSIM opens. The Compact view is intentionally blank until the hardware configuration is written.
- In TIA Portal, select the S7-1500 station in the project tree, right-click > Download to device > Hardware and software (only changes).
- If TIA Portal prompts with Select target device, click Start Search. The PLCSIM instance will appear after 5-10 s as
[SIM-1500] <CPU order number>with a placeholder IP0.0.0.0. - Select the SIM entry and click Load. Confirm the Load preview dialog by clicking Load again.
- When the Load results dialog appears, tick Start all in the Start module column and click Finish.
- Return to the PLCSIM Compact view. The header changes from
Unconfigured PLC [SIM-1500]to the configured station name, and the X1 port IP field now shows the IPv4 address from the TIA Portal device configuration (for example192.168.0.10, mask255.255.255.0).
If TIA Portal returns Device could not be found, force the route manually:
- Open Online > Accessible devices.
- Set Type of the PG/PC interface to
PN/IE. - Set PG/PC interface to the VMware virtual NIC or to
Realtek PCIe GBE / Intel I219-V <...>depending on host binding. - Click Start search. PLCSIM publishes via the Siemens S7 discovery protocol (UDP port 34964 / 49153) once the project is loaded; the entry will appear within 10 s.
Alternative: Pre-Assign IP in the Device Configuration
When the same S7-1500 project is downloaded repeatedly (regression testing, classroom use), pre-assign the IP in the hardware configuration to avoid the blank-state step:
- Open Devices & networks > select the CPU > PROFINET interface [X1] > Properties > Ethernet addresses.
- Set IP address =
192.168.0.10, Subnet mask =255.255.255.0. - Uncheck Set IP address using a different method to prevent DHCP overwrite during download.
- Compile hardware and download. PLCSIM adopts the address during download rather than after.
192.168.0.1 on an S7-1500 — PLCSIM V15.1 reserves 192.168.0.1 as the S7-1200 default and will refuse the download with error E0x0301 — Address conflict.VMware Network Configuration Reference
Siemens recommendation 109483336 documents the network adapter settings required for PLCSIM inside VMware. The minimum set:
| Setting | Value | Rationale |
|---|---|---|
| Network connection | Bridged (Replicate physical) | PLCSIM broadcasts S7 discovery UDP 34964 across the host LAN |
| Promiscuous Mode | Allow All | Forwards multicast PROFINET discovery frames to guest |
| MAC Address | Manual, fixed | PLCSIM binds by MAC for the X1 virtual port |
| vCPU | ≥ 2 cores | TIA Portal compiler + PLCSIM runtime |
| RAM | ≥ 16 GB | TIA Portal V15.1 footprint |
| 3D acceleration | Disabled | Not used by TIA/PLCSIM |
| Nested paging | Enabled | Required for Win10 host performance |
If only the host-to-guest loopback is needed (no external device), use Host-only with the VMware Network Adapter VMnet1 present on the host. The PLCSIM instance binds to VMnet1 and is reachable only from inside the guest and from the host's VMnet1 address.
Kepware Compatibility Considerations
When the simulated S7-1500 is the target of a KEPServerEX S7 TCP/IP driver, the driver must be configured to match PLCSIM's bring-up behavior:
- In KEPServerEX Configuration, set Scan Mode = Respect Tag Scan Rate.
- Increase Connection Timeout from default 1 s to 5 s.
- Set Connect Retry Count to 10 (driver attempts ~50 s of retries, covering PLCSIM's worst-case 7 s startup).
- Disable Optimizes reads/writes for unsolicited messages for the S7-1500 device; PLCSIM V15.1 does not fully implement the unsolicited PDU for S7-1500 firmware V2.9.
After these adjustments, the Device is not responding event clears within 30 s of PLCSIM completing the download.
Error Code Reference
| Code | Source | Meaning | Resolution |
|---|---|---|---|
| E0x021A | PLCSIM runtime | TCP port 49152 already in use | Close other PLCSIM instance / firewall block |
| E0x021F | PLCSIM runtime | License token denied | Re-seat PLCSIM license in License Manager |
| E0x0301 | PLCSIM runtime | IP address conflict | Change the device IP from 192.168.0.1
|
| E0x0410 | PLCSIM runtime | Hardware configuration mismatch | Recompile hardware in TIA Portal |
| 33:17075 | TIA Portal Online | Target unreachable / discovery timeout | Verify VMware NIC, run Start Search again |
| 0xFFF0 | KEPServerEX | Device dropped session before connect | Raise Connection Timeout to 5 s |
Verification
After applying the fix, confirm the simulator is fully online:
- PLCSIM Compact view header reads
<Configured station name> [SIM-1500]— no "Unconfigured" prefix. - X1 port panel shows the IPv4 address, subnet mask, and router address matching the TIA Portal device configuration.
- The RUN/STOP LED in the Compact view is solid green.
- In TIA Portal, Online > Online & diagnostics shows Connection established with cycle time displayed.
- Ping from a Windows command prompt:
ping 192.168.0.10— round-trip < 1 ms confirms the loopback. - From KEPServerEX, the channel/device status reads OK within 30 s of starting the runtime.
Upgrade Path Recommendation
If the workaround must remain in place long-term, evaluate migrating the development environment to TIA Portal V16 Update 7 (or later) with the matching S7-PLCSIM V16 add-on. The V16 PLCSIMLauncher.dll fixes the cached-snapshot bug that suppresses the Extended download to devices dialog, and S7-PLCSIM V16 pre-populates the X1 IP from the active session on resume. See the official TIA Portal V16 release notes (entry ID 109772684) for the migration checklist and the SIMATIC S7-PLCSIM V16 manual (entry ID 109769914) for the new S7-1500 bring-up sequence.
FAQ
Why does the X1 IP field stay empty on S7-1500 simulation but appear immediately on S7-1200?
S7-1200 PLCSIM auto-assigns a default IP of 192.168.0.1 on instance creation, while S7-1500 PLCSIM remains in an unconfigured state until TIA Portal completes a full hardware download. The blank X1 field is by design until the load finishes.
Does S7-PLCSIM V15.1 require a separate license from TIA Portal?
Yes. PLCSIM V15.1 ships as an add-on and requires its own license token visible under TIA Portal > Options > License Manager. A floating license is keyed to the PC's hard-disk serial and locks PLCSIM if the disk changes.
What causes the "PLCSIM project could not be started" error intermittently?
Usually a stranded PLCSIM process holding the license token, a Windows Firewall block on TCP 49152, or a VMware virtual NIC in Host-only mode without the KM-TEST loopback adapter. Kill the stranded process and re-enable the firewall rule.
Can PLCSIM V15.1 coexist with PLCSIM V16 on the same workstation?
No. Siemens installs PLCSIM as a single versioned runtime; V15.1 and V16 share the PLCSIMLauncher.dll registry key. Install only the version that matches the TIA Portal version you are running.
Why does KEPServerEX show "Device is not responding" on a freshly started PLCSIM?
The default S7 TCP/IP driver reconnects every 1 s; PLCSIM needs 4-7 s to complete its hardware-config download. Raise the driver Connection Timeout to 5 s and Connect Retry Count to 10 so the retries outlive PLCSIM's bring-up window.