Resolving PCS 7 S7-400H CPU Switchover Detection on OS Clients

David Krause18 min read
SCADA ConfigurationSiemensTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Resolving PCS 7 S7-400H CPU Switchover Detection on OS Clients

When a redundant S7-400H automation station performs a CPU master/reserve switchover, operator stations (OS clients) connected through the terminal bus can lose the process picture for several minutes before recovering. The root cause is almost always a missing or incorrectly configured S7 Fault-Tolerant Connection (S7H) between the OS server and the AS pair, combined with terminal-bus components that are not configured to handle the H-system failover path. This reference walks through the diagnosis, NetPro configuration, WinCC redundancy settings, and acceptance test required to bring failover recovery down to the expected sub-30-second window.

Scope: This article covers PCS 7 V7.0 SP1 through V9.0 with S7-400H CPUs (CPU 412-3H, CPU 414-4H, CPU 416-3H, CPU 417-4H) and the CP1613 / CP1623 terminal-bus adapters. It assumes the S7-400H pair itself is healthy (sync module OK, fiber-optic link intact) and that WinCC is the runtime environment.

1. Architecture Context: Plant Bus vs. Terminal Bus

In a PCS 7 plant, three physical Ethernet networks usually coexist, and confusing them is the single largest source of failover-detection failures on operator stations.

Network Purpose Typical Components Connection Type
Plant bus AS ↔ OS server (data acquisition) CP443-1 in AS, CP1613/OSM in OS server S7 Fault-Tolerant (S7H)
Terminal bus OS server ↔ OS clients (visualization) CP1613 / CP1623 / IE PCIe cards in OS clients and servers, OSM/ESM switches TCP/IP (WinCC), optional S7H for OS-to-OS redundancy
Terminal bus (redundant) Same as above with two parallel paths and teaming Two CP1613 per client, SCALANCE XR/redundant ring, NIC teaming driver TCP/IP with NIC teaming / X-Ring
Field bus I/O level (PROFIBUS/PROFINET) IM/CP, distributed I/O DP / PN

The CPU switchover is detected on the plant bus, where two CP443-1 modules — one in each H-CPU — share a logical MAC/IP and present the AS to the OS server through an S7 fault-tolerant connection. The OS server's job is to detect the CPU change and inform the connected OS clients over the terminal bus. If the plant-bus side does not run an S7H connection, the OS server never registers the redundancy loss and the clients fall into the 5–6 minute timeout window observed in the field.

PCS 7 V7.0 SP1 H-System Topology AS 400H CPU 0 CPU 1 CP443-1 #1 CP443-1 #2 OS Server (WinCC) CP1613 / IE PCIe S7H connection (S7H_conn_1) OS Client CP1613 / IE PCIe Plant bus (S7H) Terminal bus (TCP) Legend Plant bus — S7 Fault-Tolerant (S7H) required Terminal bus — TCP/IP via NIC teaming Active CP443-1 / CP1613 CPU switchover propagates: AS → OS server (S7H) → OS clients (terminal bus)

2. Problem Description

The failure mode reported on installed PCS 7 systems with three redundant OS clients, two redundant terminal-adapter cards per client, and one Engineering Station with two CP1613 cards presents as follows:

  1. During steady state, process pictures update normally on all OS clients.
  2. Operator triggers or maintenance forces a CPU 0 ↔ CPU 1 switchover (button on CPU, STOP/RUN, fiber-optic test, or actual hardware fault).
  3. The active CPU becomes standby; the standby becomes master.
  4. The OS clients immediately display a blank process picture with no live values and no update.
  5. After approximately 5–6 minutes, the OS clients resume updates using the new active path.
  6. The OS server, by contrast, logs only a brief "H-system: CPU redundancy loss" system message and recovers in < 30 s.

The five-to-six-minute window is the default OS-client retry interval when the server's redundancy state cannot be reconciled — this is not a sign of slow recovery but a sign that the OS server never communicated the failover to the clients.

Symptom correlation: If the OS server also loses the picture for 5–6 minutes, the fault lies on the plant bus (no S7H connection). If only the OS clients freeze while the server keeps updating, the fault lies on the terminal bus or in the OS-server redundancy settings.

3. Root Cause Analysis

Five conditions must be satisfied simultaneously to obtain sub-30-second failover detection across the entire OS client fleet. Any missing item reproduces the symptom above.

# Required condition What breaks if missing
C1 Two physical CP443-1 modules in the AS, one in each H-CPU rack, on the same plant-bus subnet AS cannot present a fault-tolerant pair — failover is a hard CPU reboot, recovery measured in minutes
C2 Plant-bus connection declared as S7H (S7 fault-tolerant) in NetPro, with both CP443-1 as partner endpoints OS server uses an ordinary S7 connection; failover is detected only after S7 connection timeout (~ 5 min)
C3 S7H connection assigned to the OS server's CP1613, not to a virtual PLC slot Connection exists in configuration but is not downloaded to the runtime
C4 OS-server redundancy enabled in WinCC (Redundancy > Server, with redundant partner server defined) OR single-server with single-client setup correctly tagged Clients fall back to TCP/IP poll of an undefined master; 5 min timeout
C5 Each OS client uses the OS server's logical host name or virtual IP for WinCC connections, not the raw IP of a single NIC A single broken NIC on the client removes the OS-server path; failover cannot rely on alternate routes

The most frequent root cause in the field is condition C2: an ordinary S7 connection is created in NetPro instead of an S7 connection — fault-tolerant. S7 connections do not participate in H-system failover detection. The OS server therefore waits for the TCP keep-alive to expire before treating the path as broken, and only then attempts to reconnect — hence the 5–6 minute blackout.

4. Required Hardware, Firmware, and Software

Item Catalog number / Version Notes
S7-400H CPU 6ES7 412-3H, 414-4H, 416-3H, 417-4H Firmware ≥ V5.3 for new S7H features
CP443-1 (AS side) 6GK7 443-1EX11-0XE0 (with redundancy license) or 6GK7 443-1GX11-0XE0 (Gigabit) One per H-CPU, identical article number; configured as CP 443-1 PN/Industrial Ethernet in HW Config
CP1613 (OS side, legacy) 6GK1 161-3AA01 10/100 Mbit PCI; supports ISO + TCP/IP; works with S7H
CP1623 / IE PCIe / iPCIE 6GK1 162-3AA00 or iPCIE variant Recommended replacement for CP1613; current PCS 7 catalog
Plant-bus switch SCALANCE XC/XR/XB with redundancy manager or unmanaged for line topology X-200/XR-300 used in PCS 7 reference architecture
Terminal-bus switch SCALANCE X-200/XR-400 or unmanaged for small systems OSM = Optical Switch Module, ESM = Electrical
SIMATIC PCS 7 V7.0 SP1 minimum, V8.x or V9.x recommended WinCC runtime included
STEP 7 / SIMATIC Manager V5.5 SPx to match PCS 7 version NetPro ships here
SIMATIC S7H driver / SOFTNET-S7H Bundled with PCS 7 Required for S7 fault-tolerant connection on the OS PC
Reference the official SIMATIC S7-400H fault-tolerant system manual and the CP1613 manual for environmental and firmware compatibility matrices. The PCS 7 V7.0 SP1 architecture document (PCS 7 Process Control System; Architecture) lists the maximum number of CP443-1 modules and supported configurations.

5. NetPro Configuration: Building the S7H Connection

5.1 AS side (HW Config)

  1. Open the AS station in HW Config (SIMATIC Manager → AS project → HW Config).
  2. Confirm the rack contains two CPUs (slots 3 and 4 for S7-400H) and that both racks have a CP 443-1 in identical slot positions.
  3. Double-click CP443-1 #1 → properties → set IP address 192.168.0.10, subnet mask 255.255.255.0, no router.
  4. Open CP443-1 #1 → Properties → Operating Mode and check "Activate CPU redundancy". Repeat for CP443-1 #2 with IP 192.168.0.11.
  5. In the AS station, set the H parameters: H-CPU pair, sync module port, monitoring time (default 2.0 s is acceptable).
  6. Save and translate HW Config.

5.2 OS server side (HW Config)

  1. Insert a SIMATIC PC station with a CP1613 / IE PCIe module.
  2. Assign the CP1613 an IP address on the same plant-bus subnet as the CP443-1 pair, e.g. 192.168.0.20, subnet mask 255.255.255.0.
  3. If the OS server uses the same PC for both plant and terminal bus (single-PC OS server), insert a second CP1613 for the terminal bus and assign a terminal-bus IP, e.g. 192.168.1.20 on subnet 192.168.1.0/24.

5.3 Creating the S7H connection

  1. In NetPro, select the OS server's CP1613 plant-bus interface.
  2. Right-click → Insert New Connection.
  3. Partner: the AS station. Connection type: S7 connection, fault-tolerant (German: "S7-Verbindung, fehlertolerant").
  4. Local end: OS server CP1613.
  5. Partner end: enter both CP443-1 modules by clicking "Add" once for each; NetPro stores the S7H partner pair CP443-1#1 / CP443-1#2.
  6. Connection ID is auto-assigned; note the ID for diagnostic use (e.g. S7H_conn_1 = ID 0x0010).
  7. Save and compile (NetPro → Save and Compile). This produces SDB entries for the OS server.
  8. Download to AS (HW Config) and download SDBs to the OS PC (Station → Download → to PC station).
NetPro S7H Connection — Local/Partner Pair OS Server PC Station CP1613 192.168.0.20 S7 connection, fault-tolerant Local: CP1613 / ID 0x0010 Partner: CP443-1 #1 + #2 AS 400H Station CP443-1 #1 — 192.168.0.10 (CPU 0) CP443-1 #2 — 192.168.0.11 (CPU 1) H-system pair, sync via fiber-optic pair Active path Standby path
Configuration trap: NetPro offers S7 connection and S7 connection, fault-tolerant as two separate types. Only the second option generates a partner-pair endpoint. Switching later requires deleting and re-creating the connection; editing in place does not change the connection class.

6. WinCC Server Redundancy Configuration

The S7H connection on the plant bus gives the OS server a fast CPU-switchover signal. The OS server must then inform the OS clients. In a single-server (non-redundant-server) topology, WinCC already handles this internally through its Server-Client subscription channel, but only if the OS server's WinCC redundancy option is correctly configured.

6.1 Single OS server (no redundant server)

  1. Open WinCC Explorer on the OS server PC.
  2. Right-click ComputerProperties → tab Startup.
  3. Confirm WinCC Runtime launches; the OS server project name must match the WinCC project on the server.
  4. On each OS client: WinCC ExplorerComputerProperties → tab Server. Add the OS server's host name (e.g. OSSRV01) as preferred server.
  5. Verify that the OS client's picture tree references the server's tags, not local tags.

6.2 Redundant OS server pair

  1. In WinCC Explorer → Computer → Properties → Redundancy, enable Activate redundancy on both servers.
  2. Set the redundancy partner (e.g. OSSRV02 for OSSRV01 and vice versa).
  3. Set Synchronization cycle to 10 s (default) for fast tag updates, or 30 s if CPU load is constrained.
  4. Set Update time for tag status "bad" to a value lower than the client timeout — 5 s recommended.
  5. Verify that the OS clients have BOTH servers listed in Computer → Properties → Server, in the order preferred server first.
Parameter Recommended Effect on failover
Update time for tag status "bad" 5 s Client drops the master server within 5 s of redundancy loss
Server synchronization cycle 10 s Archive and alarm synchronization granularity
Maximum connection path disruption time 30 s Hard timeout before the OS client declares the server dead
CP443-1 keep-alive interval 30 s (default) S7H redundancy detection < 1 s, keep-alive is for the underlying TCP path
H-system monitoring time 2.0 s (default) CPU switchover time
Rule of thumb: The slowest parameter in the stack dictates the worst-case blackout. If Update time for tag status "bad" is left at the default 30 s, the OS clients will freeze for ~ 30 s after a CPU switchover even with a perfect S7H configuration.

7. Terminal Bus Configuration with Two CP1613 per Client

With three OS clients, each equipped with two CP1613 cards, and one ES with two CP1613 cards (CP1613 cards in total = 8), the terminal bus must support NIC teaming or a redundant ring. The hardware alone is not enough — the driver layer must bind both cards.

7.1 Driver configuration (Windows / SIMATIC NET)

  1. Install the SIMATIC NET driver (bundled with PCS 7). The CP1613 module is identified as "CP 1613" under Windows Device Manager.
  2. Open SIMATIC NET Configuration → PC Station.
  3. For each CP1613, configure the same logical station name (e.g. OSCLT01) but different physical IPs, OR configure NIC teaming with one virtual IP and two physical MACs.
  4. Recommended approach: assign the same IP address to both CP1613 adapters (allowed only if the active path is selected via MAC failover, not ARP) and use the SIMATIC NET Fault Tolerance driver to manage primary/backup roles.

7.2 Switch configuration

  1. If using a redundant ring (SCALANCE XR-400 with HRP manager), place all 8 CP1613 in the ring and assign one switch as ring manager.
  2. If using line topology, ensure each CP1613 has its own switch port and the switches are interconnected via single trunk (no ring, no redundancy manager).
  3. Enable LLDP on the switches; PCS 7 V8+ relies on LLDP for diagnostics.
Common error: Two CP1613 cards installed but only one IP assigned to the OS client's Windows TCP/IP stack. The second card is visible in Device Manager but carries no traffic. Teaming is disabled and a single cable failure removes the client from the network. Always verify ipconfig /all shows the binding to the team, not to a single adapter.

8. Step-by-Step Resolution Procedure

Apply the following procedure to convert a PCS 7 OS client fleet from blank-screen-on-failover behavior to sub-30-second recovery.

8.1 Inventory the current configuration

  1. Open NetPro on the ES. Print or export the current plant-bus connections.
  2. For each AS-OS pair, identify whether the connection type is S7 or S7 fault-tolerant. If any are S7 (not fault-tolerant), this is the primary root cause.
  3. On the OS server, open WinCC Explorer → Computer → Properties → Redundancy. Confirm the redundancy state and partner.
  4. On each OS client, verify OSSRV01 (and the redundant partner, if any) is listed in Computer → Properties → Server.

8.2 Upgrade the connection to S7 fault-tolerant

  1. In NetPro, right-click the plant-bus connection → Properties → Connection Type.
  2. If S7 fault-tolerant is not selected, delete the connection and re-insert it as fault-tolerant. Adding the partner endpoint requires both CP443-1 modules — confirm both appear in the partner list.
  3. Compile NetPro (button Save and Compile) and check the diagnostic output for errors.

8.3 Download the new configuration

  1. HW Config → PLC → Download to push the new SDBs to the H-CPU pair. Both CPUs receive the same SDBs.
  2. On the OS server PC, open the Station Configuration Editor and confirm PC Station name matches NetPro.
  3. Use Station → Download → PC Station to send the new SDBs to the OS PC's CP1613.
  4. Restart the WinCC Runtime on the OS server.

8.4 Tune the WinCC redundancy parameters

Edit WinCC-Project\Computer\OSSRV01\WinCC_Server.cfg or use the GUI to set:


[Redundancy]
Activate=1
RedundancyPartner=OSSRV02
SyncCycle=10
TagStatusBad_UpdateTime=5
MaxPathDisruptionTime=30

8.5 Validate NIC teaming on OS clients

  1. On each OS client, run simatic_net_diag.exe (Start → SIMATIC → SIMATIC NET → Diagnostics).
  2. Confirm both CP1613 are listed as Active in the fault-tolerance group.
  3. Pull cable on CP1613 #1 and verify the OS client continues to update within 5 s.

9. Verification and Acceptance Test

A formal failover acceptance test must demonstrate the following on the live plant:

  1. Warm standby: Both CPUs are in RUN and H-synchronized. OS server shows green. All OS clients show green.
  2. Triggered switchover: Operator presses the CPU switchover button on CPU 0 (front panel — the MAST and RES LEDs toggle). Document the time.
  3. Plant-bus detection: OS server logs "H-system: CPU redundancy loss" system message; cleared within 5 s.
  4. OS client recovery: All OS clients display values again within 5–15 s, ideally < 10 s. Blank-screen time must be < 30 s to meet the acceptance criterion.
  5. Loss-of-CPU test: Pull power on CPU 0. Same recovery target. CPU 1 takes over.
  6. CP443-1 failure: Unplug network cable on CP443-1 #1. CPU 1 takes over the plant bus. OS server recovers within 5 s; OS clients within 30 s.
  7. Cable break on terminal bus: Pull cable on OS client A's CP1613 #1. The client continues to update via CP1613 #2 within 5 s.
Test case Expected plant-bus recovery Expected OS client recovery Pass criterion
CPU button switchover < 5 s < 15 s No blank screen > 30 s
CPU 0 power loss < 5 s < 30 s Archive integrity preserved
CP443-1 #1 cable break < 5 s < 30 s No operator intervention
OS client NIC1 cable break N/A < 5 s Picture tree fully functional
OS server NIC1 cable break N/A < 30 s Clients switch to redundant server if present

10. Diagnostic Tools and System Messages

Tool Where What it tells you
WinCC — Control Center → Status of Server/Client OS client Which server the client is connected to and last update time
WinCC — Tag Management → right-click → Diagnosis OS server Connection status, quality code (0x80 = good, 0x00 = bad)
SIMATIC NET — S7 Diagnostic ES / OS PC Detailed connection state, error counters, retry count
NetPro — right-click connection → Status ES Compiled / downloaded, partner reachability
CP443-1 Web interface (if firmware supports) Browser at CP443-1 IP Port statistics, error counters, partner list
H-CPU diagnostic buffer SIMATIC Manager → PLC → Module Information → Diagnostic Buffer H-state changes, sync errors, STOP causes

10.1 Key system messages on the OS server

  • 0x1590 / "H-system: CPU redundancy loss" — Normal during switchover; expected to appear and clear.
  • 0x0001 / "Connection failed" — Plant-bus connection broken; S7H partner unreachable.
  • 0x8001 / "Redundancy partner not reachable" — OS server cannot contact redundant OS server.
  • 0x000E / "Partner not found" — The CP443-1 partner IP is misconfigured or on a different subnet.

11. Common Pitfalls and Field-Proven Caveats

  • Pitfall 1 — WinCC V7 redundancy license: The WinCC Redundancy option requires a separate license key. Without it, the redundancy block in Computer → Properties → Redundancy appears but is disabled at runtime. Clients do not switch over even though the configuration looks correct.
  • Pitfall 2 — Subnet mismatch: CP443-1 #1 on 192.168.0.10 and CP443-1 #2 on 192.168.0.11 with the OS server on 192.168.1.20. The OS server must reach both subnets; if the routing is not configured, only one CP443-1 is reachable and failover is asymmetric.
  • Pitfall 3 — CP1613 firmware: Firmware < V2.5 on CP1613 does not support S7H with H-system redundancy monitoring; symptom is intermittent detection. Upgrade firmware through SIMATIC Manager → PLC → Update Firmware.
  • Pitfall 4 — PC station name mismatch: The Windows hostname of the OS server must match the PC Station name in NetPro. Mismatched names cause the Station Configuration Editor to display "not associated" and SDBs are not loaded.
  • Pitfall 5 — OS client running WinCC as primary project: An OS client configured with its own project (i.e. its own tags) instead of a WinCC client that subscribes to the OS server will display a frozen picture on CPU switchover because it has no plant-bus connection at all.
  • Pitfall 6 — Time sync drift: If the OS server's clock drifts more than 2 seconds from the H-CPU pair, the system message ordering can be corrupted and the client triggers an archive resync storm. Configure NTP from a plant-wide time source.

12. Frequently Asked Questions

Why do my PCS 7 OS clients go blank for exactly 5–6 minutes after a CPU switchover?

The plant-bus connection is most likely configured as a plain S7 connection instead of an S7 fault-tolerant (S7H) connection. The OS server waits for the S7 connection keep-alive (~ 5 minutes) to expire before treating the AS as unreachable. Re-create the connection in NetPro as "S7 connection, fault-tolerant" with both CP443-1 modules as partner endpoints, then redownload SDBs to the AS and the OS PC.

Do I need two CP443-1 modules in an S7-400H for CPU redundancy to work?

Yes. S7-400H redundancy requires two CP443-1 modules — one in each H-CPU rack — on the same plant-bus subnet. The two CP443-1 modules present the AS as a single logical endpoint with fault-tolerant MAC and IP behavior. A single CP443-1 produces a non-redundant plant-bus path and any CPU switchover is detected only as a hard network disconnect.

My OS server recovers in 5 seconds but OS clients still see a blank screen. What is wrong?

The OS server is correctly detecting CPU redundancy loss via S7H, but the OS clients are not informed. Check three items: (1) the WinCC Redundancy option must be licensed and enabled on the OS server; (2) Update time for tag status "bad" in WinCC must be reduced from the 30 s default to 5 s; (3) each OS client must list the OS server's hostname (not raw IP) in Computer → Properties → Server, and NIC teaming must be active on the terminal bus.

Can I use a single Ethernet NIC on the OS client instead of two CP1613 cards?

Yes for non-critical HMIs, but it removes the terminal-bus redundancy. A single NIC failure causes the OS client to lose its visualization entirely. PCS 7 reference architectures for class-1 systems use two CP1613 per OS client. If you choose single NIC, verify that the OS client can reach the OS server through a redundant ring (SCALANCE HRP) so that a single switch port or cable failure does not isolate the client.

Which WinCC parameter most affects OS-client failover time?

Update time for tag status "bad" (German: Aktualisierungszeit für Tagstatus "schlecht") controls how long the OS client waits before considering the OS server unreachable. Default is 30 s. Setting it to 5 s reduces the worst-case OS-client blackout from 30 s to 5 s, on top of the S7H failover time of typically < 1 s on the plant bus.

How do I verify the S7 fault-tolerant connection is active in NetPro?

Open NetPro on the ES, right-click the plant-bus connection from the OS server to the AS, and select Properties. The connection type must read "S7 connection, fault-tolerant". Then right-click the same connection and select Status. The status must show "compiled" and "downloaded to both partner modules". If the status reads only one CP443-1, the partner pair is incomplete and failover detection will be asymmetrical.

Back to blog