Resolving STEP 7 MicroWIN V4.0 SP8/SP9 Installation Stuck at 90% on Windows XP SP3 Virtual Machines
1. Problem Statement
STEP 7 MicroWIN is the legacy programming environment for the SIMATIC S7-200 family of micro-PLCs. Although Siemens formally retired the S7-200 in favor of the S7-200 SMART and the S7-1200 lines, a large installed base still requires MicroWIN V4.0 SP8 or SP9 for service, firmware updates, and migration of existing projects. Engineers maintaining older S7-200 CPUs (CPU 212, 214, 215, 216, 221, 222, 224, 224XP, 226) routinely need to keep a working MicroWIN environment available, frequently inside a Windows XP SP3 virtual machine for two reasons:
- Driver compatibility: The PC/PPI cable (USB or RS-232) drivers and the CP 5611 / CP 5512 MPI adapters shipped with MicroWIN V4.0 are signed and tested for Windows XP. Modern Windows releases often require manual driver signing, compatibility-mode flags, or replacement by NETLINK USB drivers.
-
Project archival: Long-lived S7-200 projects contain proprietary
.mwpproject files and TP177 / TD200 / TD400C text-display configurations that open reliably only on the original toolchain.
The failure mode is consistent and reproducible:
| Parameter | Observed Value |
|---|---|
| Installer version | STEP 7 MicroWIN V4.0 SP8 / SP9 (English and Chinese releases) |
| Host platform | VMware Workstation 12 Pro (also reported on 14, 15, 16, and ESXi 5.5/6.0/6.7) |
| Guest OS | Windows XP Professional SP3 (32-bit) |
| Stall point | ~90% of progress bar, "Installing device drivers…" phase |
| Error message | None (silent hang) |
| Log file | No %TEMP%\setup*.log entry indicating failure |
| Reproducibility | 100% on a freshly created VM, persists across multiple rebuilds |
2. Root Cause Analysis
When the MicroWIN installer reaches the device-driver stage, it spawns three subordinate Windows services whose executables are unpacked into %TEMP% and then registered as auto-start services. The drivers in question are part of the S7-Online interface and the S7 trace/logging subsystem that MicroWIN shares with STEP 7 V5.x:
| Process | Module / Role | Default Path |
|---|---|---|
S7TraceServiceX.exe |
S7-Online trace service; writes diagnostic traces to %WINDIR%\system32\S7TraceSrv.log
|
C:\WINDOWS\system32\ |
S7oiehsx.exe |
S7-Online IE HMI/OPC server hook; mediates the S7OLE / S7ONLINE interfaces |
C:\WINDOWS\system32\ |
s7epatsx.exe |
EPAT (Ethernet Protocol Adaptation) layer; binds raw Ethernet frames to the S7-Online stack via npf WinPcap-style driver |
C:\WINDOWS\system32\ |
Inside a VMware virtual NIC, the WinPcap/NPF Ethernet hook used by s7epatsx.exe is initialized against a virtual AMD PCnet or VMXnet3 adapter. The init call requests promiscuous-mode packet reception; on a physical NIC this call completes in tens of milliseconds. On a VMware Workstation NAT or bridged VMXnet3 adapter, the call enters a non-cancellable wait inside npf.sys (the WinPcap kernel driver shipped in MicroWIN's redistributable) when the underlying virtual switch has not yet bound a port with a learned MAC address. The installer process then blocks on WaitForSingleObject indefinitely, producing the 90% hang with no error dialog.
The root cause is therefore a WinPcap/NPF driver deadlock against the VMware virtual NIC, surfaced indirectly through the s7epatsx.exe and S7TraceServiceX.exe initialization paths. The installer has already registered the services and is waiting for the EPAT initialization IPC to return. Removing only the visible installer is not enough; the three background services must be terminated so the installer's "next-stage" install window can proceed.
3. Pre-Flight Checklist
Before applying the fix, capture the following so the result is reproducible and so the install can be cleaned up if it partially completed:
-
Confirm the VM topology: Record the VMware version, guest OS build (run
winver), vCPU count, RAM, and the virtual NIC type (PCnet-PCI II, PCnet-FAST III, VMXnet3, or E1000). The driver behavior above is most common on VMXnet3 and E1000 with NAT networking; bridged mode with PCnet-FAST III occasionally completes without intervention. - Take a snapshot: In VMware Workstation choose VM → Snapshot → Take Snapshot. If any step below leaves the registry in an inconsistent state, revert.
-
Clean prior partial installs: Open
regeditand delete the following keys if they exist:HKEY_LOCAL_MACHINE\SOFTWARE\Siemens\AUTSW\STEP7 MicroWinHKEY_CURRENT_USER\SOFTWARE\Siemens\AUTSW\STEP7 MicroWinHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\S7TraceServiceXHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\S7oiehsxHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\s7epatsxHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\npf
-
Remove residual drivers: In Control Panel → Add or Remove Programs, uninstall any leftover S7-Online, WinPcap, or MicroWIN entries. Manually delete the EXE files in
C:\WINDOWS\system32\if they survive. - Disable the Windows Firewall and any third-party AV during the install — MicroWIN's installer opens a Windows Installer service child that some AV engines will quarantine mid-write.
4. Resolution Procedure
The fix is performed while the installer is still running and stalled at 90%. Do not close the installer.
-
Right-click the Windows taskbar and select Task Manager (or press
Ctrl+Shift+Esc). Switch to the Processes tab. -
Locate the three offending processes:
S7TraceServiceX.exeS7oiehsx.exes7epatsx.exe
-
Right-click each process in turn and select End Process Tree. Do not touch the
Setup.exeorInstMSI.exe(the parent MicroWIN installer). Do not attempt to End Process Tree on a parent Microsoft Installer process. - Observe the installer window. Within a few seconds, a second setup dialog will appear (typically titled Setup is performing a requested operation or InstallShield), and the progress bar will jump from 90% to 100% and complete the install.
-
If the install still stalls after killing only the first two processes, repeat the procedure and additionally kill
s7epatsx.exe. This third process is the one most frequently implicated in VMware NPF deadlocks and must be removed in the majority of cases. - Click Finish when the installer reports successful completion and reboot the VM.
5. Verification
Confirm a clean, working install with the following checks before connecting to a real S7-200 CPU:
- Program launch: Open Start → Programs → SIMATIC → STEP 7 MicroWIN V4.0. The IDE should appear within 3 seconds. On a broken install you will see a hang on the splash screen or a missing-DLL error.
-
Communications path check: From the MicroWIN menu, choose Set PG/PC Interface. Verify the following access points are present and bound:
-
PC/PPI cable (PPI)→ bound to the USB or COM port -
CP5611 (MPI)— only if a CP 5611 MPI card is in use -
TCP/IP → S7ONLINE— for Ethernet-CP243-1/CP243-1 IT modules
-
-
Live CPU test: Connect a PC/PPI cable to a known-good S7-200 CPU 224XP and click the Communications toolbar button. The CPU type and firmware version should be read in < 5 s. A failure here usually indicates that
npf.sysis still missing; reinstall WinPcap 4.1.3 from the MicroWIN redistributable folder. -
Service persistence check: Run
services.mscand verify the three services installed and are set to Manual start (not disabled, not auto-start):S7TraceServiceX,S7oiehsx, ands7epatsx.npfshould be set to Manual and started by the S7-Online interface on demand. -
Project round-trip: Open an existing
.mwpfile from backup storage. Compile with PLC → Compile (Shift+F9). The build should complete without "Error 33: Out of memory" messages that indicate a corrupted MicroWIN install.
6. Reference VM Configuration
The following configuration is known to install MicroWIN V4.0 SP8/SP9 successfully after the process-kill workaround. Use it as a baseline when the issue recurs on different hosts:
| Parameter | Value |
|---|---|
| Hypervisor | VMware Workstation 12 Pro (build 3273464 or later) |
| Guest OS | Windows XP Professional SP3, 32-bit, English |
| Virtual RAM | 2048 MB (2 GB) |
| Virtual disk | 50 GB, IDE controller type, single file |
| Processors | 1 socket × 2 cores |
| Virtual NIC | VMXnet3 (preferred) or E1000; NAT networking |
| VMware Tools | Installed, version matching the Workstation build |
| Disk mode | Independent – Non-persistent (revert each session for a clean test bench) |
s7epatsx.exe requires these two settings to be allowed at the vSwitch or distributed port group level. Without them, the install will reproduce the 90% hang even with the process-kill workaround, because the deadlock will re-occur on every MicroWIN launch.7. Alternate Fix Paths
If the Task Manager workaround fails (rare, but reported when s7epatsx.exe respawns under a service host), try the following in order of preference:
-
Boot-time driver exclusion: From the Recovery Console, edit
C:\boot.iniand add/noguiboot /bootlog. Boot, then add the following registry value to disable NPF:HKLM\SYSTEM\CurrentControlSet\Services\npf Start = REG_DWORD 0x4 (disabled, but installable) -
Replace VMXnet3 with PCnet-FAST III: Power off the VM, edit
.vmxand changeethernet0.virtualDev = "vmxnet3"toethernet0.virtualDev = "vlance". The legacy PCnet driver does not implement promiscuous-mode the same way, and the NPF deadlock does not occur. After MicroWIN is installed, the NIC type can be reverted to VMXnet3 for normal use; NPF will re-initialize cleanly because the post-install state of the registry is consistent. - Install the V4.0 SP7 baseline first: Some legacy SP7 installers (still distributed on the Siemens China support portal at http://www.ad.siemens.com.cn/download/docMessage.aspx?Id=5102) do not ship the EPAT WinPcap layer. Install SP7, reboot, then upgrade to SP8 or SP9 in place. The intermediate state of the registry avoids the deadlock-triggering race condition.
-
Pre-install WinPcap 4.1.3 manually: Download the WinPcap 4.1.3 installer from the official WinPcap project page (https://www.winpcap.org/install/default.htm), run it to completion, and reboot. With
npf.sysalready registered, the MicroWIN installer skips the NPF install stage and the 90% stall does not occur.
8. Error Code / Behavior Matrix
| Symptom | Likely Process | Resolution |
|---|---|---|
| Stall at 90%, no error, installer visible | s7epatsx.exe |
End process tree in Task Manager |
| Stall at 90%, second installer dialog appears but freezes | S7TraceServiceX.exe |
End process tree first; second dialog completes |
| Stall at 90%, error "Setup requires WinPcap" on retry | Partial npf.sys registration |
Install WinPcap 4.1.3 manually, retry |
| Stall at "Registering S7-Online…" (≈70%) | S7oiehsx.exe |
End process tree; reboot; reinstall |
| Install completes but MicroWIN hangs on splash | Corrupted npf.sys in %WINDIR%\system32\drivers\
|
Delete file, install WinPcap fresh, reboot |
| Communications fail: "Cannot find PG/PC interface" | Access point not bound | Re-run Set PG/PC Interface wizard |
| Communications hang on connect; MicroWIN freezes | VM promiscuous mode disabled in vSwitch | Enable Forged Transmit + MAC Changes on port group |
9. Common Pitfalls
-
Closing the installer. Closing the installer at the 90% mark leaves a partial registry and a registered but never-started
s7epatsxservice. Re-running the installer will reproduce the hang with a different process set. Always clean per the checklist in §3 before retry. -
Killing the parent installer process. If you select the wrong row in Task Manager and end
setup.exe, the install is rolled back and the next launch of the installer will continue to fail until the registry is cleaned. -
Disabling the
npfservice permanently. If the NPF service is set to Disabled post-install, MicroWIN can compile and edit offline projects, but any online operation (download, upload, run/stop, status table) will fail with a misleading "Cable not connected" error. Keep it at Manual. - Snapshotting after the failed install. If the snapshot is taken while the EPAT service is in a half-registered state, every subsequent revert will reproduce the hang. Always revert, clean, and re-attempt from a known-good snapshot taken before the first install attempt.
-
Installing on Windows XP SP2. The MicroWIN SP8/SP9 redistributable requires XP SP3 for the kernel signing chain used by
npf.sys. On SP2, the install will fail much earlier in the MSI validation step. Update to SP3 or use the SP7 build.
10. Field-Commissioning Notes
For shop-floor engineers standing up a fresh S7-200 service laptop from a virtual template, the following sequence is reproducible and minimizes time-to-online:
- Build the VM from a known-good Windows XP SP3 template (sysprepped, VMware Tools installed, vCPUs = 2, RAM = 2 GB, NIC = VMXnet3).
- Apply Windows XP SP3 updates up to and including KB3033929 (April 2014 root-certificate update). Do not install the post-2019 SHA-2 patch chain — XP cannot service SHA-2-signed updates.
- Disable Windows Firewall and the Security Center alerts.
- Mount the MicroWIN V4.0 SP9 ISO. Run
Setup.exe. - At the 90% stall, open Task Manager, end
s7epatsx.exe,S7TraceServiceX.exe, andS7oiehsx.exein that order. - Click Finish, reboot, attach the PC/PPI cable, and run Communications → Set PG/PC Interface → Test.
- Once online, immediately back up the working VM as a clean image and lock it against further writes — use Independent – Non-persistent mode and snapshot after each programming session.
11. Summary
The 90% stall of STEP 7 MicroWIN V4.0 SP8/SP9 on Windows XP SP3 VMware VMs is a WinPcap/NPF deadlock inside s7epatsx.exe, surfaced through the S7-Online trace and OLE handler services. Killing the three processes S7TraceServiceX.exe, S7oiehsx.exe, and (in the majority of cases) s7epatsx.exe in Task Manager releases the wait and lets the installer complete. For repeatability, the fix should be paired with a clean pre-install (registry + driver cleanup) and a post-install verification of the npf service state and the Set PG/PC Interface bindings. In persistent cases, switch the virtual NIC to PCnet-FAST III, pre-install WinPcap 4.1.3 manually, or fall back to the SP7 baseline before upgrading in place.
12. Frequently Asked Questions
Which exact processes must be killed to unblock the MicroWIN installer at 90%?
Kill S7TraceServiceX.exe, S7oiehsx.exe, and (most commonly) s7epatsx.exe in Task Manager. Do not kill the parent MicroWIN setup process. The three services are the S7-Online trace service, the S7-Online OLE/IE handler, and the EPAT Ethernet-protocol adapter, respectively.
Why does the install succeed on a physical Windows XP SP3 PC but hang at 90% on a VMware VM?
The stall is caused by a deadlock between s7epatsx.exe and the WinPcap npf.sys driver on a VMware virtual NIC. The NPF driver requests promiscuous-mode packet reception; on a physical NIC this completes quickly, but on VMXnet3 / E1000 virtual adapters the call enters a non-cancellable wait, and the installer blocks indefinitely.
Will this fix work on VMware ESXi, VirtualBox, or Hyper-V?
The Task Manager kill works on all three hypervisors because the deadlock is in the guest OS driver stack, not in the hypervisor. However, on ESXi you may also need to enable Forged Transmit and MAC Address Changes on the port group; without them, the deadlock will re-occur on every MicroWIN launch even with the workaround applied at install time.
Can I install MicroWIN V4.0 SP8 or SP9 on Windows 7 64-bit instead of using a Windows XP VM?
Yes. The Siemens knowledge base article on MicroWIN SP9 explicitly covers Windows 7 64-bit compatibility (Siemens Industry Online Support). For Windows 10/11, MicroWIN can be run in compatibility mode for offline programming, but live PPI/MPI communications generally requires the XP VM because of the PC/PPI USB driver signing chain.
What if killing the three processes does not unblock the installer?
Pre-install WinPcap 4.1.3 manually from the WinPcap project page, reboot, and re-run the MicroWIN installer. If that still fails, change the virtual NIC from VMXnet3 to PCnet-FAST III (vlance) in the .vmx file before retrying, or install the older MicroWIN V4.0 SP7 baseline first and then upgrade to SP8/SP9 in place.
Is there a permanent registry change that prevents the 90% stall?
Yes — setting HKLM\SYSTEM\CurrentControlSet\Services\npf\Start = 3 (Manual) and pre-installing WinPcap 4.1.3 eliminates the deadlock because the installer will not attempt to re-register npf.sys over an already-present driver. After the MicroWIN install completes, do not set NPF to Disabled (value 4); MicroWIN needs it for online operations.