Troubleshooting s7otbxsx.exe 50% CPU Hang on Step7 Ethernet
When SIMATIC Step7 V5.4 SP3 (or adjacent service packs) hangs the moment an online operation is initiated, and Task Manager shows s7otbxsx.exe consuming exactly 50.0 % of one CPU core, the entire S7-Online path collapses and the only reliable recovery is a full laptop reboot. This field-proven guide explains the architecture behind s7otbxsx.exe, the WinSock corruption mechanism that drives the single-core busy loop, the ISO-on-TCP / TCP port 102 traffic path, and the complete repair sequence for engineering stations running Step7 V5.4 SP3 through V5.6 on Windows 7, Windows 10, and Windows 11.
s7otbxsx.exe from Task Manager to "free" the CPU. Killing the process breaks the S7DOS service session and the SIMATIC Manager cannot re-establish the ISO-on-TCP connection to the PLC until the engineering laptop is rebooted. Use the diagnostic and repair steps below to eliminate the hang without touching Task Manager.1. Problem Overview and Symptoms
Engineers using Step7 V5.4 SP3 report the following reproducible pattern when communicating with S7-300, S7-400, and ET200 CPUs over Industrial Ethernet:
- Step7 SIMATIC Manager freezes the moment an Online operation is initiated (Download, Upload, Go Online, Commissioning, Monitor/Modify, or even a simple node ping in NetPro).
- Task Manager or Process Explorer shows
s7otbxsx.execonsuming exactly 50.0 % of CPU on a multi-core laptop, or ~100 % on a single-core machine. - The process holds a single core in a tight polling loop and never returns; CPU temperature rises, the fan ramps up, and the UI stops responding to input.
- Terminating
s7otbxsx.exevia Task Manager removes the CPU load but immediately breaks all future S7-Online attempts. SIMATIC Manager returns errors such as "Online: No connection to target station" or "Internal error (Step 7 Communication: Connection to partner broken)". - Only a hard restart of the engineering laptop restores S7-Online functionality.
- The same engineering station works perfectly over MPI/Profibus with a CP5512, and works correctly with PLCSIM. The failure is specific to the Ethernet ISO-on-TCP / TCP path.
This symptom set reproduces on both hard drives of the same laptop, across 32-bit and 64-bit Windows installations, and persists across fresh Step7 installs. The fault is not in the PLC program or in the Ethernet cable - it sits inside the Windows Sockets layer or the S7-Online service stack that s7otbxsx.exe depends on.
2. s7otbxsx.exe Process Architecture
s7otbxsx.exe is the S7 Online Transaction Block eXchange Server eXtension, a long-lived background process installed by the SIMATIC Step7 V5.x and PCS 7 engineering suites. It is the user-space component that brokers online block operations between the SIMATIC Manager / STEP 7 editor and the S7 communication stack.
2.1 Process Family
| Executable | Role | Trigger |
|---|---|---|
s7otbxsx.exe |
Transaction Block eXchange Server Extension - handles online read/write of blocks, diagnostic buffering, and PG functions over ISO-on-TCP / TCP | Starts when S7DOS service loads |
s7oiehsx.exe |
S7-Online Industrial Ethernet Hardnet Service - terminates the CP 1613 / CP 1623 hardnet driver stack | Started by S7DOS if a hardnet CP is configured |
s7oPNIfacex.exe |
S7-Online PROFINET Interface Extension - handles PROFINET IO commissioning and topology discovery | Started by S7DOS when PROFINET is used |
s7gtpdx.exe |
Global data transfer and routing engine | Started by S7DOS |
simaticmgr.exe |
SIMATIC Manager UI that talks to s7otbxsx.exe via local RPC | Started by user |
All of these processes are launched by the SIMATIC S7DOS Help Service (service name S7DOS, display name "SIMATIC S7DOS"). This is a Windows service installed by Step7 to keep the online interfaces ready even when the SIMATIC Manager is closed. When s7otbxsx.exe is killed externally, the S7DOS service does not respawn it - the engine stays in a degraded state until the service itself is restarted, which on most installations requires a full reboot (see Section 10).
2.2 Communication Stack
Ethernet-based S7-Online traffic flows through the following layered path:
- SIMATIC Manager issues an OP-code (read, write, start, stop, PG functions) over local RPC to
s7otbxsx.exe. -
s7otbxsx.exehands the request to the S7 communication library (S7ONLINE.DLL and the underlying S7-W32.DLL stack). - For the standard PC Ethernet adapter path, the library wraps the request in RFC 1006 (ISO Transport Service over TCP).
- RFC 1006 traffic is sent to TCP port 102 on the target CPU's IP address. The CPU listens on ISO-TSAP port 102 by default; rack/slot is encoded in the TSAP bytes (02.01 for slot 1, rack 0).
- For hardnet CP 1613 / CP 1623 cards,
s7oiehsx.exetakes over and uses Siemens' own ISO Industrial Ethernet protocol (no RFC 1006 wrap) for deterministic performance.
When the Windows TCP/IP stack or the WinSock catalog is corrupted, the synchronous send/receive at step 4 never returns. s7otbxsx.exe spins in a poll on a single Winsock I/O completion port handle, which is why the CPU pegs at 50 % on a dual-core laptop (one core fully consumed) and never makes progress.
3. Affected Step7 Versions
| Step7 Version | Typical Order Number | Status | Recommended Action |
|---|---|---|---|
| Step7 V5.4 SP3 | 6ES7810-4CC08-0YA5 | Original failure surface - 50 % s7otbxsx.exe loop reproducible | Update to SP5 minimum |
| Step7 V5.4 SP4 | 6ES7810-4CC08-0YA7 | Improved ISO stack handling, still affected by corrupted WinSock | Update to SP5 or V5.5 |
| Step7 V5.4 SP5 | 6ES7810-4CC08-0YA8 | Stable baseline for S7-300 / S7-400 engineering | Apply as floor version |
| Step7 V5.5 | 6ES7810-5CC10-0YA5 | Recommended for Windows 7 / 10 (32-bit) engineering stations | Use for new deployments |
| Step7 V5.6 | 6ES7810-5CC11-0YA5 | Supports Windows 10 (64-bit); same s7otbxsx.exe binary path | Use for new Win10 64-bit deployments |
| PCS 7 V8.x / V9.0 | 6ES7658-... (bundled) | Bundles Step7 V5.5 or V5.6, same S7DOS service | Apply latest PCS 7 hotfixes |
| TIA Portal V13+ | 6ES7822-1AA03-0YA5 (Step7 Basic V13) | Replaces s7otbxsx.exe with a different online stack; not affected by this bug | Use TIA Portal for new S7-1200/1500 projects |
s7otbxsx.exe binary itself is not the root cause in V5.4 SP3. The hang is a symptom of an underlying WinSock or NIC driver condition that the older S7-Online stack cannot recover from. Step7 V5.5 and later ship a slightly hardened stack with longer timeouts and better retry semantics, but the same fix procedure applies.4. Root Cause Analysis
Five root-cause categories account for 99 % of s7otbxsx.exe 50 % CPU hang cases observed in the field. Diagnose them in this order.
4.1 WinSock Catalog Corruption
The Windows Sockets (WinSock) LSP catalog can be corrupted by:
- Security software installations (Kaspersky, Symantec, McAfee, Bitdefender, ESET) that inject Layered Service Providers into the Winsock chain.
- VPN clients (Cisco AnyConnect, GlobalProtect, F5, FortiClient, Pulse Secure) that install or remove Winsock LSPs on connect / disconnect.
- Aggressive firewall products that install themselves as Winsock LSPs and then fail to uninstall cleanly.
- Windows cumulative updates that touch the Winsock catalog mid-session.
- Multi-homed laptops switching between Ethernet, WiFi, and cellular tethering.
When the catalog is corrupt, the TCP send issued by s7otbxsx.exe to port 102 of the target CPU never reaches the network. The S7-Online library polls a Winsock handle that will never signal completion, hence the 50 % single-core busy loop.
4.2 Network Interface Card Driver Issues
Common NIC driver problems:
- Outdated Realtek / Intel / Broadcom drivers on Windows 10 2004+ (the in-box inbox drivers can be 2-3 years old).
- Power-management features (Energy Efficient Ethernet, Green Ethernet) that put the PHY to sleep between packets.
- TCP Chimney Offload, RSS (Receive Side Scaling), or NetDMA features that the S7-Online stack does not understand.
- USB-Ethernet adapters that drop packets under load.
Disable Energy Efficient Ethernet and TCP Chimney Offload as part of the fix - both are documented in Intel and Microsoft driver notes as incompatible with RFC 1006 traffic on some adapters.
4.3 Firewall, Antivirus, and Endpoint Protection Interference
Windows Defender Firewall with default rules normally permits outbound TCP/102, but the following commonly break S7-Online:
- Third-party endpoint protection enforcing application whitelisting.
- Host-based intrusion prevention (HIPS) modules in Kaspersky, ESET, Trend Micro, Sophos.
- Application control / Software Restriction Policy (SRP) blocking unsigned executables in
%ProgramFiles%\Siemens\Automation\. - Group Policy that blocks Winsock LSP registration for non-Administrator users.
4.4 S7DOS Service Account and Permission Issues
S7DOS runs under the Local System account by default. Permission regressions occur when:
- Step7 is installed under a domain user and the per-user HKCU keys are missing under Local System.
- The
%ProgramData%\Siemens\Automation\S7DOSdirectory is restricted. - DCOM permissions on the S7-Online service are reset by Group Policy.
4.5 Multiple Network Interfaces and Routing
Laptops with simultaneous Ethernet, WiFi, VPN, and VMware / VirtualBox host-only adapters create ambiguous routing for the 192.168.x.x subnets typical of S7-300/400 plants. The default route may send the RFC 1006 packet out the wrong interface, where it silently dies.
5. Diagnostic Procedures
Run the following checks before applying any fix. They take less than five minutes and isolate the fault category.
5.1 Confirm s7otbxsx.exe Is the Spinning Process
Open Task Manager (Ctrl+Shift+Esc), Details tab. Sort by CPU. Confirm:
-
s7otbxsx.exeis using 49-51 % CPU on a multi-core machine or ~100 % on single-core. - The "Threads" column shows the process has spawned multiple worker threads, all but one idle.
- Right-click → Properties → Image Path confirms
C:\Program Files\Siemens\Automation\Simatic Manager\s7otbxsx.exe(or the equivalent on 64-bit).
If the high-CPU process is s7oiehsx.exe or s7oPNIfacex.exe instead, the fix path is the same but the offending driver is the hardnet CP driver, not the standard TCP stack.
5.2 Inspect the Winsock Catalog
Open an elevated Command Prompt (Run as Administrator) and execute:
netsh winsock show catalog > C:\temp\winsock_before.txt
Search the file for entries under "Siemens" or "S7Online". On a clean install, only the Microsoft baseline LSPs (MSAFD Tcpip [TCP/IP], MSAFD Tcpip [UDP/IP], RSVP TCP/IP, RSVP UDP) should be present. Any non-Microsoft LSP between those baseline entries is a suspect.
5.3 Verify TCP Port 102 Reachability
From the same elevated prompt:
telnet 192.168.0.1 102
Replace 192.168.0.1 with the target CPU IP. A black screen with a blinking cursor indicates the port is open and the S7-Online stack on the CPU is listening. A "Could not open connection" error means the laptop cannot route to the PLC, the PLC is in STOP with Ethernet disabled, or a firewall is in the path.
On Windows 10 / 11 where telnet is not installed by default, use PowerShell:
Test-NetConnection -ComputerName 192.168.0.1 -Port 102
The expected output is TcpTestSucceeded : True. If False, the hang is downstream of the laptop and Step7 cannot fix it - fix the network first.
5.4 Capture a Wireshark Trace on Port 102
Install Wireshark (free, https://www.wireshark.org), select the wired Ethernet adapter, and apply a display filter:
tcp.port == 102
Initiate a Go Online from SIMATIC Manager. A healthy exchange looks like:
- SYN from laptop to 192.168.0.1:102
- SYN-ACK from CPU
- ACK from laptop, followed by TPKT/COTP CR (Connection Request) from laptop
- COTP CC (Connection Confirm) from CPU
- S7 Communication setup PDUs, then the read/write operation PDUs
A failure that produces the 50 % CPU hang typically shows:
- SYN retransmits with no SYN-ACK (CPU is offline, wrong IP, or firewall drops packets).
- SYN-ACK received, but the TPKT/COTP CR is never sent (S7-Online stack is stuck before transmitting).
- TPKT/COTP CR sent, COTP CC never arrives, and
s7otbxsx.exeretransmits the CR in a tight loop until the bug timeout fires (this is the 50 % single-core consumption).
5.5 Check the S7DOS Service State
sc query S7DOS
sc qc S7DOS
Confirm STATE : 4 RUNNING and that the service is configured to start automatically. If the service is in STOP_PENDING after s7otbxsx.exe was killed, only a reboot will recover it.
5.6 Read the Windows Application Event Log
Open eventvwr.msc, navigate to Windows Logs → Application, and filter the source list to include:
- S7DOS
- Siemens
- WinSock
- Tcpip
Common event signatures before the hang:
| Event ID | Source | Meaning | Action |
|---|---|---|---|
| 1014 | WinSock | DNS or name resolution failure inside a Winsock operation | Reset Winsock (Section 6.1) |
| 4227 | Tcpip | TCP/IP connect attempt failed; could not bind socket | Reset TCP/IP (Section 6.2) |
| 1011 | WinSock | A non-recoverable error occurred on a Winsock connection | Disable LSP stack (Section 7.3) |
| 1000 / 1001 | Application Error | s7otbxsx.exe crashed or hung | Reinstall Step7 (Section 8) |
6. Solution Path A - Quick Fixes (Apply First)
These three commands fix the majority of s7otbxsx.exe 50 % CPU hang cases in the field. They take under two minutes, do not touch Step7, and do not require a Step7 reinstall.
6.1 Reset the Windows Sockets Catalog
Elevated Command Prompt:
netsh winsock reset
Output should end with Successfully reset the Winsock Catalog. You must restart the computer in order to complete the reset.
This rewrites the LSP catalog to the Windows baseline. Any third-party Winsock LSP (Kaspersky, Cisco AnyConnect, F5, FortiClient, ESET, etc.) that was the source of the corruption is removed. Any application that required that LSP (e.g., a corporate VPN client) will need to be reinstalled and reconfigured after the reboot.
ipconfig /all), VPN client settings, and any custom network routes. The reset wipes all Winsock LSPs and Windows Sockets configuration. If the laptop joins a domain with managed VPN, coordinate with IT before running.6.2 Reset the TCP/IP Stack
Same elevated prompt:
netsh int ip reset
netsh int ipv6 reset
This restores the default TCP/IP configuration. It removes custom MTU, TCP window scaling tweaks, and any static routes that an admin or a previous Step7 install may have added.
6.3 Flush DNS, Restart S7DOS, Reboot
ipconfig /flushdns
ipconfig /release
ipconfig /renew
net stop S7DOS
net start S7DOS
shutdown /r /t 0
The explicit net stop S7DOS / net start S7DOS sequence forces the S7DOS service to re-spawn s7otbxsx.exe with a clean handle table. If the service refuses to stop (STOP_PENDING), proceed to the reboot - the cleanup happens during shutdown.
After the laptop comes back up, retry the Go Online operation. If the hang does not return, the cause was Winsock or TCP/IP state corruption, and no further action is required. If the hang returns within minutes or hours, proceed to Solution Path B.
7. Solution Path B - Network and Driver Repair
7.1 Update the Network Adapter Driver
Open Device Manager, expand Network Adapters, identify the active Ethernet controller (Intel I219-V, Realtek RTL8111, Broadcom NetXtreme, etc.), right-click → Update driver → Search automatically for drivers. If Windows Update has no newer driver, download the latest stable driver directly from the NIC vendor's download center. Avoid the "latest beta" driver on a production engineering station; use the vendor's WHQL-signed stable release. Document the driver version installed before and after.
7.2 Disable Energy Efficient Ethernet (EEE) and Power Saving
Energy Efficient Ethernet (IEEE 802.3az) and similar PHY power-saving features can drop small packets to save energy. S7-Online operations send very small PDUs (often under 200 bytes); a sleeping PHY introduces latency that the S7 stack interprets as a half-open connection.
- Device Manager → Network Adapter → Properties → Power Management tab.
- Uncheck "Allow the computer to turn off this device to save power".
- Advanced tab: set "Energy Efficient Ethernet" to Disabled, "Green Ethernet" to Disabled, "Power Saving Mode" to Disabled, "Ultra Low Power Mode" to Disabled.
For Intel adapters the relevant property names are "Energy Efficient Ethernet" and "Energy Performance Optimization". For Realtek they are "Green Ethernet" and "Power Saving Mode".
7.3 Disable TCP Chimney Offload, RSS, and NetDMA
Open an elevated Command Prompt:
netsh int tcp set global chimney=disabled
netsh int tcp set global rss=disabled
netsh int tcp set global netdma=disabled
netsh int tcp set global autotuninglevel=disabled
These offload features can be beneficial for high-throughput traffic (file copies, video), but they interfere with the synchronous, low-latency exchange that s7otbxsx.exe expects from RFC 1006. Siemens' S7-Online documentation for V5.4 SP3 / SP4 references this configuration as a recommended baseline.
7.4 Disable Unused Network Interfaces
A multi-homed laptop (WiFi + Ethernet + VPN + VMware adapters) creates routing ambiguity. Disable everything that is not the active Ethernet link to the S7 plant:
- Open
ncpa.cpl. - Right-click each non-essential adapter → Disable.
- For VMware / VirtualBox host-only adapters, disable the corresponding service in
services.mscif not needed.
Set a static IP for the engineering NIC in the same subnet as the target CPU (for example, laptop 192.168.0.100 / 255.255.255.0, CPU 192.168.0.1) to remove DHCP variance from the equation.
8. Solution Path C - Step7 Repair and Service Re-registration
If Path A and Path B do not resolve the hang, the issue is local to the Step7 install. Repair in this order.
8.1 Apply the Latest Step7 Service Pack
Step7 V5.4 SP3 and SP4 contain known issues that were corrected in V5.4 SP5 and V5.5. Apply the update from the Siemens Industry Online Support portal. Search for "Step7 V5.4 SP5" or "Step7 V5.5" and download the appropriate service pack for your installed base. Stop the S7DOS service, run the service pack installer as administrator, and reboot.
On 64-bit Windows 10 / 11, use Step7 V5.6 (or V5.5 SP1+HF) which is the last 64-bit-aware release. V5.4 has limited 64-bit support and can introduce additional Winsock oddities on Windows 10 1903+.
8.2 Re-register the S7DOS Service
If updating is not an option, re-register the S7DOS service manually. Open an elevated Command Prompt in the Step7 install directory (default C:\Program Files\Siemens\Automation\Simatic Manager):
s7dosins.exe /uninstall
s7dosins.exe /install
net start S7DOS
s7dosins.exe is the S7DOS service installer shipped with Step7. The uninstall / install pair rebuilds the service registration and the LSASS security descriptor.
8.3 Repair the Step7 Installation
Control Panel → Programs and Features → SIMATIC Step7 → Change → Repair. This rewrites the Step7 binaries, including s7otbxsx.exe, but does not touch your S7 projects. Expect a 15-30 minute operation.
8.4 Clean Reinstallation (Last Resort)
If the hang persists after all the above, the Step7 install is too corrupted to be repaired.
- Capture the list of installed Step7 components:
reg query "HKLM\SOFTWARE\Siemens\Automation" /s > step7_reg_backup.txt. - Uninstall Step7 via Programs and Features. Reboot.
- Delete leftover directories:
%ProgramFiles%\Siemens\Automation,%ProgramData%\Siemens\Automation,%AppData%\Siemens. - Run the Microsoft Program Install and Uninstall Troubleshooter to remove residual MSI references if the uninstall fails.
- Reinstall Step7 V5.5 or V5.6 on a freshly patched Windows image. Apply the latest service pack.
- Install
S7 Block Privacy V1.0 SP4only if your site requires block encryption; the package is documented in the Siemens support attachment 109749362 ReadMe.
9. Firewall and Security Configuration
S7-Online over Ethernet requires outbound TCP/102, and on some configurations also UDP/161 (SNMP) and UDP/162 (SNMP traps) for S7 diagnostics. The default Windows Defender Firewall profile permits outbound TCP/102 only if the rule is enabled. Verify with:
netsh advfirewall firewall show rule name="S7 Communication" verbose
If no such rule exists, create it:
netsh advfirewall firewall add rule name="S7 Online TCP 102" dir=out action=allow protocol=TCP localport=102 remoteport=102 program="%ProgramFiles%\Siemens\Automation\Simatic Manager\s7otbxsx.exe"
netsh advfirewall firewall add rule name="S7 Online UDP 161" dir=out action=allow protocol=UDP localport=any remoteport=161 program="%ProgramFiles%\Siemens\Automation\Simatic Manager\s7otbxsx.exe"
netsh advfirewall firewall add rule name="S7 Online UDP 162" dir=out action=allow protocol=UDP localport=any remoteport=162 program="%ProgramFiles%\Siemens\Automation\Simatic Manager\s7otbxsx.exe"
For third-party endpoint protection:
- Whitelist the entire
%ProgramFiles%\Siemens\Automationdirectory tree. - Whitelist the S7DOS service binary and the Step7 installer.
- Whitelist outbound traffic to plant subnets on TCP/102, UDP/161, UDP/162.
10. Recovery Procedure After Unintended s7otbxsx.exe Termination
If s7otbxsx.exe was already killed from Task Manager, follow this exact sequence to recover without a full reboot.
- Close SIMATIC Manager and every Step7 tool (S7-PLCSIM, NetPro, SFC-Editor, HW-Config).
- Elevated Command Prompt:
net stop S7DOS. If the command returnsThe service is stopping.and never returns to the prompt within 60 seconds, the S7DOS service is hung - proceed to step 4. - If
net stop S7DOSsucceeded, immediately:net start S7DOS. Confirm the service is RUNNING withsc query S7DOS. - If
net start S7DOSreturnsSystem error 1058 has occurred. The service cannot be started, either because it is disabled or because it has no enabled devices associated with it., the service registration is corrupted. Runs7dosins.exe /installfrom the Step7 install directory, thennet start S7DOS. - If S7DOS still will not start, a reboot is the only supported recovery path. The boot sequence runs the S7DOS service in the correct order, which is why the field observation is "the laptop must be restarted".
- After recovery, run
netsh winsock resetand reboot to prevent the next hang from occurring.
s7otbxsx.exe registers Winsock I/O completion ports and a Windows job object. When it is terminated externally, the job object handle is leaked and the S7DOS service cannot re-create a new s7otbxsx.exe child process with a clean handle table. The leaked handle is only reclaimed at process exit, which for the S7DOS service means service stop, which typically requires a reboot.11. Verification Steps
After applying any fix from Path A, B, or C, run this verification sequence before declaring the issue resolved.
- Reboot the engineering laptop. Do not open Step7 yet.
- Open Task Manager. Confirm
s7otbxsx.exeis not running and consuming 0 % CPU. (s7otbxsx.exeis launched on demand by the S7DOS service when the SIMATIC Manager first opens an online session.) - Confirm
S7DOSservice is RUNNING:sc query S7DOS. - Open SIMATIC Manager, open the affected project, and select the S7 station.
- Right-click → "Target System → Accessible Nodes" (or "Online → Accessible Nodes").
- Set the PG/PC interface to "TCP/IP → [your network card]" via "Options → Set PG/PC Interface".
- Confirm the target CPU appears with its IP address, rack/slot, and module type.
- Right-click the CPU → "Go Online". The status bar should change to "Online" within 2-5 seconds.
- Open Task Manager in parallel and verify
s7otbxsx.exeCPU usage returns to 0-1 % after the online operation completes. - Leave the online session idle for 10 minutes. CPU should remain at 0 %. A return to 50 % indicates the underlying Winsock or driver issue is not fully resolved - re-apply Path A.
12. Prevention and Best Practices
| Best Practice | Why |
|---|---|
| Dedicated engineering laptop, no VPN client, no consumer antivirus | Eliminates Winsock LSP injection from non-essential software |
| Windows 10 LTSC 2019 or LTSC 2021 as engineering OS | Stable, no consumer feature updates that touch the Winsock catalog |
| Disable Windows Update driver auto-install for network adapters | Prevents Microsoft from overwriting vendor drivers with older in-box versions |
| Use wired Ethernet only; disable WiFi during online operations | Avoids roaming and power-saving events on the wireless interface |
| Run SIMATIC Manager as Administrator | Ensures S7DOS can be stopped / started and that s7otbxsx.exe has full DCOM rights |
Back up the Winsock catalog monthly: netsh winsock show catalog > winsock_backup_YYYYMMDD.txt
|
Allows diff comparison if a third-party install corrupts the catalog |
| Set NIC to 100 Mbps / Full Duplex (disable auto-negotiation) on the engineering port | Eliminates EEE and auto-negotiation-induced link flaps |
| Reserve a fixed plant IP for the engineering NIC via DHCP reservation | Removes IP lease variability from the equation |
| Document the active PG/PC interface assignment per project | Prevents misrouting of online PDUs when a different interface is selected |
| Migrate to TIA Portal V17+ for new S7-1200/1500 projects | Replaces s7otbxsx.exe entirely with the TIA online stack; bug does not apply |
13. Cross-Platform Notes
Engineers migrating from Step7 V5.x to TIA Portal will not encounter the s7otbxsx.exe issue because TIA Portal uses a different online stack (S7ONLINE inside the TIA Portal process, not a separate Windows service). However:
- TIA Portal V13-V16 can also hang the online stack on a corrupted WinSock catalog. The fix is the same:
netsh winsock reset, NIC driver update, EEE off. - S7-PLCSIM (the PLC simulator) uses a different path (loopback or named pipe) and is immune to the Winsock corruption, which is why the symptom does not reproduce with PLCSIM.
- CP 5512 (PCMCIA Profibus) and CP 5711 (USB Profibus) use a separate driver stack (SIMATIC PC adapter) and are also immune to the issue, which is why the symptom does not reproduce over Profibus.
14. Quick Reference Matrix
| Symptom | Likely Cause | First Action |
|---|---|---|
| 50 % CPU loop, fresh install, Ethernet only | Winsock LSP corruption |
netsh winsock reset, reboot |
| 50 % CPU loop after VPN client install | VPN LSP remains in catalog | Reinstall VPN client or remove its LSP |
| 50 % CPU loop after Windows Update | NIC driver replaced with in-box version | Reinstall vendor NIC driver |
| 50 % CPU loop only on WiFi | WiFi power management | Disable WiFi adapter power saving, use Ethernet |
| 50 % CPU loop persists after all fixes | Step7 install corruption | Step7 Repair or reinstall |
| "Connection to partner broken" immediately on Go Online | CPU is in STOP with Ethernet disabled, or wrong PLC IP | Verify CPU IP, ping, telnet to 102 |
| 50 % CPU loop only on a specific network | Plant switch port is blocking TCP/102 | Engage plant IT, check ACL on managed switch |
FAQ
What is s7otbxsx.exe and why does it take exactly 50% of CPU on Step7 Ethernet communication?
s7otbxsx.exe is the S7 Online Transaction Block eXchange Server eXtension, a background process launched by the S7DOS service to broker online block operations between SIMATIC Manager and S7-300/400/ET200 CPUs over ISO-on-TCP. The 50 % CPU value on a multi-core laptop indicates a single-threaded busy-wait loop on a Winsock I/O completion port that never signals. The process is polling for a TCP/102 response that will never arrive because the Winsock catalog is corrupted, the NIC driver is dropping packets, or the network path is broken. Step7 V5.4 SP3, SP4, and adjacent builds are most affected.
Can I terminate s7otbxsx.exe from Task Manager to free the CPU?
No. Terminating s7otbxsx.exe stops the CPU load, but the S7DOS service cannot respawn a new instance with a clean handle table until the laptop is rebooted. End the hang with the documented repair sequence (netsh winsock reset, NIC driver update, Step7 repair) instead. If you have already terminated the process, run net stop S7DOS && net start S7DOS from an elevated prompt; if the service refuses to restart, a full reboot is required.
Does the issue affect Step7 V5.5 and V5.6 the same way?
Yes, the symptom can reproduce on V5.5 and V5.6 if the underlying Winsock catalog or NIC driver is in the same broken state. V5.5 and V5.6 ship a slightly hardened S7-Online stack with longer timeouts and better retry semantics, which makes the hang less reproducible, but the fix procedure (netsh winsock reset, NIC driver update, EEE off) is identical. TIA Portal V13+ does not use s7otbxsx.exe and is not affected by this specific symptom.
Why does the issue not appear with PLCSIM or CP5512 Profibus?
PLCSIM communicates with the SIMATIC Manager over a Windows named pipe or loopback interface; it does not touch the Winsock catalog. The CP 5512 PCMCIA adapter and the CP 5711 USB adapter use a separate Siemens driver stack (SIMATIC PC Adapter) and do not go through the Windows TCP/IP path. Only the standard Ethernet TCP/IP path (and the hardnet CP 1613/CP 1623 path via s7oiehsx.exe) routes through Windows Sockets, which is why the symptom is specific to Ethernet.
Which Step7 service pack should I install to fix the s7otbxsx.exe 50% CPU hang?
Apply the latest available service pack for your installed base. For Step7 V5.4, move to V5.4 SP5 (6ES7810-4CC08-0YA8) as a minimum, ideally V5.5 (6ES7810-5CC10-0YA5) or V5.6 (6ES7810-5CC11-0YA5) on 64-bit Windows 10/11. The service pack improves the S7-Online stack but does not fix WinSock corruption or NIC driver bugs. Run netsh winsock reset and update the NIC driver as part of the same change window.