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.
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.
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:
- During steady state, process pictures update normally on all OS clients.
- Operator triggers or maintenance forces a CPU 0 ↔ CPU 1 switchover (button on CPU, STOP/RUN, fiber-optic test, or actual hardware fault).
- The active CPU becomes standby; the standby becomes master.
- The OS clients immediately display a blank process picture with no live values and no update.
- After approximately 5–6 minutes, the OS clients resume updates using the new active path.
- 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.
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 |
5. NetPro Configuration: Building the S7H Connection
5.1 AS side (HW Config)
- Open the AS station in HW Config (SIMATIC Manager → AS project → HW Config).
- Confirm the rack contains two CPUs (slots 3 and 4 for S7-400H) and that both racks have a
CP 443-1in identical slot positions. - Double-click CP443-1 #1 → properties → set IP address
192.168.0.10, subnet mask255.255.255.0, no router. - Open CP443-1 #1 → Properties → Operating Mode and check "Activate CPU redundancy". Repeat for CP443-1 #2 with IP
192.168.0.11. - In the AS station, set the H parameters: H-CPU pair, sync module port, monitoring time (default 2.0 s is acceptable).
- Save and translate HW Config.
5.2 OS server side (HW Config)
- Insert a SIMATIC PC station with a CP1613 / IE PCIe module.
- Assign the CP1613 an IP address on the same plant-bus subnet as the CP443-1 pair, e.g.
192.168.0.20, subnet mask255.255.255.0. - 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.20on subnet192.168.1.0/24.
5.3 Creating the S7H connection
- In NetPro, select the OS server's CP1613 plant-bus interface.
- Right-click → Insert New Connection.
- Partner: the AS station. Connection type: S7 connection, fault-tolerant (German: "S7-Verbindung, fehlertolerant").
- Local end: OS server CP1613.
- 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. - Connection ID is auto-assigned; note the ID for diagnostic use (e.g.
S7H_conn_1 = ID 0x0010). - Save and compile (NetPro → Save and Compile). This produces
SDBentries for the OS server. - Download to AS (HW Config) and download SDBs to the OS PC (Station → Download → to PC station).
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)
- Open WinCC Explorer on the OS server PC.
- Right-click Computer → Properties → tab Startup.
- Confirm WinCC Runtime launches; the OS server project name must match the WinCC project on the server.
- On each OS client: WinCC Explorer → Computer → Properties → tab Server. Add the OS server's host name (e.g.
OSSRV01) as preferred server. - Verify that the OS client's picture tree references the server's tags, not local tags.
6.2 Redundant OS server pair
- In WinCC Explorer → Computer → Properties → Redundancy, enable Activate redundancy on both servers.
- Set the redundancy partner (e.g.
OSSRV02forOSSRV01and vice versa). - Set Synchronization cycle to 10 s (default) for fast tag updates, or 30 s if CPU load is constrained.
- Set Update time for tag status "bad" to a value lower than the client timeout — 5 s recommended.
- 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 |
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)
- Install the SIMATIC NET driver (bundled with PCS 7). The CP1613 module is identified as "CP 1613" under Windows Device Manager.
- Open SIMATIC NET Configuration → PC Station.
- 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. - 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
- 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.
- 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).
- Enable LLDP on the switches; PCS 7 V8+ relies on LLDP for diagnostics.
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
- Open NetPro on the ES. Print or export the current plant-bus connections.
- 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.
- On the OS server, open WinCC Explorer → Computer → Properties → Redundancy. Confirm the redundancy state and partner.
- 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
- In NetPro, right-click the plant-bus connection → Properties → Connection Type.
- 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.
- Compile NetPro (button Save and Compile) and check the diagnostic output for errors.
8.3 Download the new configuration
- HW Config → PLC → Download to push the new SDBs to the H-CPU pair. Both CPUs receive the same SDBs.
- On the OS server PC, open the Station Configuration Editor and confirm PC Station name matches NetPro.
- Use Station → Download → PC Station to send the new SDBs to the OS PC's CP1613.
- 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
- On each OS client, run
simatic_net_diag.exe(Start → SIMATIC → SIMATIC NET → Diagnostics). - Confirm both CP1613 are listed as Active in the fault-tolerance group.
- 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:
- Warm standby: Both CPUs are in RUN and H-synchronized. OS server shows green. All OS clients show green.
- Triggered switchover: Operator presses the CPU switchover button on CPU 0 (front panel — the MAST and RES LEDs toggle). Document the time.
- Plant-bus detection: OS server logs "H-system: CPU redundancy loss" system message; cleared within 5 s.
- 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.
- Loss-of-CPU test: Pull power on CPU 0. Same recovery target. CPU 1 takes over.
- 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.
- 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.10and CP443-1 #2 on192.168.0.11with the OS server on192.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.