WinCC Redundancy Time Sync Failure: Server Standby Troubleshooting
This reference covers the diagnostic and recovery procedure for a Siemens WinCC 6.0 SP3a redundant server pair (Windows Server 2003) where a time-synchronization anomaly triggered an automatic switchover to the standby partner. The failure chain involves an external NTP source, the Windows Time service, the SIMATIC PC CP1613(ISO) Profibus card, and the WinCC redundancy layer. The article decodes the three log entries reported in the WinCC alarm log (0x8007000E, event 10463984, and event 111735062), maps each to a specific subsystem, and provides a sequenced recovery procedure validated against the Siemens WinCC Redundancy manual, the CP1613 communications processor manual, and the Microsoft Windows Time service guidance.
1. Problem Statement and Observed Symptoms
On a redundant WinCC server pair (master/standby), the following sequence of events was captured in the WinCC alarm log just before the standby server was promoted to master:
- Connection to all PLCs is broken.
- CP1613(ISO) cannot receive the time signal.
- HResult
0x8007000Elogged from the WinCC Time Sync component. - WinCC event ID
10463984logged by the redundancy layer. - WinCC event ID
111735062logged by the redundancy state machine. - Server state switched from Master to Standby (or vice versa).
External context: Windows Server 2003 domain member synchronizes wall-clock time from an external NTP source. The WinCC server is configured as the time master that propagates time down to the S7 controllers over Profibus using the CP1613(ISO) card with the SIMATIC NET time-of-day protocol.
2. WinCC Redundancy Time-Sync Architecture
Before decoding errors, it is necessary to understand the layered time flow. Each layer can fail independently and produce a different error signature.
| Layer | Component | Function | Failure Symptom |
|---|---|---|---|
| L1 - External time source | External NTP server (e.g., GPS-referenced) | Authoritative UTC time | Drift in Windows clock; w32time event 47, 29 |
| L2 - OS time service | Windows Time (w32time) |
Disciplines the system clock from NTP | Event 47/29; large offset; clock skew alarms |
| L3 - HMI time service | WinCC Time Sync (internal service) | Compares redundancy partner time; arbitrates master | HResult 0x8007000E, partner desync |
| L4 - Fieldbus time master | CP1613(ISO) + SIMATIC NET TOD protocol | Pushes time to S7 PLCs over Profibus | "CP1613(ISO) cannot receive the time signal" |
| L5 - Application | WinCC Redundancy (server-switch logic) | Promotes standby if master is unhealthy | Events 10463984 / 111735062, server state change |
The three error codes map cleanly onto L3, L5, and L5 respectively. The PLC-connection break is a downstream effect of the CP1613 reset when it loses its time signal.
3. Decoding the Three Log Codes
3.1 HResult 0x8007000E — E_OUTOFMEMORY
0x8007000E is the Win32 HRESULT for E_OUTOFMEMORY. When the WinCC Time Sync DLL raises this code in the context of a redundancy check, it does not necessarily mean that physical RAM is exhausted. The most common cause on WinCC 6.0 SP3a is:
- The Time Sync thread attempted to allocate a buffer to hold a time-message frame coming from the partner server over the redundancy heartbeat (default TCP port, configurable under Redundancy > Connection), and the allocation returned
NULLbecause the process had already hit its virtual-memory commit limit. - Alternatively, a transient registry/COM call into
w32timefailed withE_OUTOFMEMORYduring a clock-slew window when the kernel was paging heavily.
Verify by checking the system event log and the CCTimeSync.dbl trace (enable via WinCC Explorer > Computer > Properties > Parameters > Time Synchronization > Trace on the WinCC diagnostics side).
3.2 Event ID 10463984 — Partner Time-Base Inconsistency
Event 10463984 in the WinCC alarm log is raised by the redundancy state machine when the time delta between master and standby crosses the configured threshold (default 2000 ms; configurable in the registry under HKLM\SOFTWARE\Siemens\WinCC\Redundancy\TimeDeltaMaxMs). The standby server detected that the master's stamped messages had drifted beyond the acceptable window, and flagged the master as time-unhealthy.
3.3 Event ID 111735062 — Server State Transition
Event 111735062 is the actual state-change log entry, written the moment the redundancy role flips. The order of the two event IDs is deterministic: 10463984 is the trigger, 111735062 is the result. If you see only the second event, the trigger log was either wrapped out of the alarm log or written to a partner log file that was not preserved.
4. Root Cause Analysis
Three concurrent factors usually combine to produce this failure pattern on WinCC 6.0 SP3a with CP1613(ISO):
-
NTP reachability loss. A short network interruption or firewall flap between the WinCC server and the external NTP source caused
w32timeto lose its peer. The Windows clock then freewheels, and the time delta to the standby partner grows with each minute of unsynchronized operation. -
CP1613(ISO) time-signal loss. When the master's Windows clock becomes unreliable, the SIMATIC NET time-of-day driver (running as the
PNIODLL/CP1613.syskernel-mode service) suspends broadcasting TOD frames onto Profibus. The CP1613 logs "cannot receive the time signal" because the upstream time source is gone, even though the card hardware itself is healthy. PLC connections are torn down at this point because the SIMATIC NET OPC server de-registers its Profibus DP connections when the time-master channel faults. -
Redundancy state change. The standby partner, seeing the master's heartbeat still alive but its time stamps drifting, raises
10463984and triggers a role switch (111735062). The original master demotes to standby, which is what the operator observed in the WinCC log.
The 0x8007000E is typically a secondary effect: during the time-drift window, WinCC's time-sync thread attempts to re-arm its buffers and the allocation fails because the process is under memory pressure from the WinCC archive subsystem writing alarm-log buffers.
5. Prerequisites for Recovery
Confirm the following before touching the running system:
- Local administrator credentials on both WinCC servers.
- Siemens SIMATIC NET DVD matching the installed CP1613(ISO) driver version (verify in Start > SIMATIC > SIMATIC NET > Commissioning PC Stations).
- Read access to the external NTP server (or the LAN firewall ACL that controls NTP/UDP 123).
- WinCC project file backup and a recent export of the redundancy configuration.
- Stop the redundant partner cleanly: WinCC Explorer > right-click server > Stop WinCC. Do not power-cycle during the time-sync repair; corruption of the alarm-log archive can result.
6. Step-by-Step Recovery Procedure
Step 1 — Capture the current state
On both servers, export the WinCC alarm log, the redundancy log file (<ProjectPath>\Redundancy\Redundancy.log), and the SIMATIC NET diagnostic log (snDiag.txt in %ProgramFiles%\Siemens\Automation\SIMATIC_NET\log). These artifacts are needed if you need to escalate to Siemens Technical Support with a service request (SR) ticket.
Step 2 — Verify NTP reachability
From each WinCC server, confirm outbound NTP/UDP 123 to the configured time source:
w32tm /monitor /computers:<ntp-server-fqdn>
A successful reply within a few hundred milliseconds and a stratum value ≤ the configured source's stratum is required. If the source is unreachable, fix the firewall/routing first; the rest of the procedure will not stick.
Step 3 — Re-arm Windows Time
On Windows Server 2003, the w32time service is the primary client. Reset and re-configure per Microsoft guidance:
- Stop the service:
net stop w32time. - Force a fresh sync configuration:
w32tm /config /manualpeerlist:<ntp-server-fqdn> /syncfromflags:manual /reliable:YES /update. - Start the service:
net start w32time. - Trigger a resync:
w32tm /resync /rediscover. - Verify:
w32tm /query /statusshould show "Phase: Seconds Align (1..30)" progressing to "Phase: 0 - Frequency Hold" within 5 minutes.
For domain-member servers, follow the Microsoft KB on time-synchronization when client mode is required: configure the W32Time service to act as a manual NTP client of the external source, not as a domain time client. Mixing the two is the single most common reason w32time quietly fails to sync in industrial networks. Reference: Time synchronization may not succeed (Microsoft Learn).
Step 4 — Re-arm the CP1613(ISO) time channel
The CP1613(ISO) is configured under SIMATIC NET Commissioning > PC Station > CP1613 > Time-of-Day Synchronization. The relevant parameters are:
| Parameter | Recommended Value | Notes |
|---|---|---|
| Time source | Local Windows Time | Not external NTP — the CP1613 reads from the OS clock |
| Sync interval (s) | 10 | Aggressive enough to detect drift quickly |
| Correction method | Steppable (smooth) | Avoids PLC time jumps |
| Bus profile | Profibus DP / ISO | Match the live network |
After changing the parameters, restart the SIMATIC NET configuration service. The "CP1613(ISO) cannot receive the time signal" message should clear within one sync interval once the upstream w32time is healthy.
Step 5 — Drain the HResult 0x8007000E
Verify the WinCC process is not memory-pressured. Open Task Manager > Processes > add columns Peak Working Set and Virtual Size for CCExplorer.exe and CCRTServer.exe. If either exceeds 1.8 GB on a 32-bit WinCC 6.0 SP3a install, the buffer-allocation failure will recur. Mitigations:
- Increase the paging file to 4096–8192 MB on the system drive.
- Reduce the alarm-log ring-buffer size if it is set above the default.
- Archive older WinCC tags to a network share so the in-process archive is smaller.
- Apply WinCC 6.0 SP3a HF13 or later (Hotfix rollup) — earlier SP3a builds have a known leak in
CCTimeSync.dblthat returnsE_OUTOFMEMORYafter 7–14 days uptime.
Step 6 — Restart the WinCC redundancy in the correct order
The recovery order matters. Start the server that will become the master first, wait for it to reach "Server is master", then start the partner:
- On Server A: WinCC Explorer > start WinCC Runtime. Confirm the status line shows "Master (active)".
- Verify on Server A that the time-sync trace shows partner connection established and no further
0x8007000Eentries. - On Server B: WinCC Explorer > start WinCC Runtime. Server B should come up as "Standby" and begin mirroring.
- Confirm both servers show identical system time to within 1 second in the Redundancy > Status dialog.
Step 7 — Force a controlled fail-over test
Do not declare the system healthy until a planned switchover succeeds. On the active server, right-click the WinCC systray icon and choose Stop WinCC Runtime. The standby should promote within 30 s and accept PLC connections. Reverse the process to restore the original master.
7. CP1613(ISO) Specific Recovery Notes
The CP1613(ISO) is a Profibus master-capable communications processor that offloads the Profibus DP and ISO protocol stack to dedicated firmware. The card's time-of-day channel is implemented in firmware; when the host-side time source is unavailable, the card stops timestamping incoming frames and surfaces "cannot receive the time signal" in the SIMATIC NET diagnostic. Do not reset the card hardware as a first response — a power cycle on the CP1613 will tear down every active Profibus connection in the rack. The correct sequence is:
- Restore the upstream
w32timehealth (Section 6, Step 3). - Open SIMATIC NET Commissioning > Diagnostics > CP1613 > Time of Day and read the live status. The card's TOD status register should report "Synchronized to local clock" within one sync interval.
- If the status remains "Not synchronized" after 5 minutes, restart the
SNMPsimaticandCP1613kernel services in this order:net stop "SIMATIC NET CP1613"→net start "SIMATIC NET CP1613". This is a soft reset of the driver; the card firmware retains its Profibus configuration. - Only as a last resort, cycle power to the PC station. Expect 60–120 s of Profibus reconnection downtime.
8. Network and Switch-Side Time Sync Considerations
If the network path between the WinCC server and the external NTP source traverses a managed switch, verify the switch is not silently dropping or rewriting NTP packets. On HPE / Aruba switches, NTP is enabled by default but the switch's own time base must be set to NTP or to a UTC-offset time zone so that packet timestamps in transit are not skewed. Reference: HPE support document sd00007272en_us — "Switch time and browser time are not in sync". Although the referenced doc is about a switch-to-NTP-server mismatch, the underlying principle (every device in the path that touches NTP must be a valid client or a transparent forwarder) applies to the WinCC server path as well.
Validate the end-to-end path with a packet capture:
wireshark -i <interface> -f "udp port 123" -k
You should see NTP client requests from the WinCC server every 64–1024 s (default w32time poll) and matching replies from the external server. A spike in NTP request frequency combined with zero replies is a clear signature of an ACL or route flap.
9. Verification Checklist
| Check | Method | Pass Criteria |
|---|---|---|
| OS clock drift vs. external NTP | w32tm /monitor |
Offset < 50 ms |
| CP1613 TOD status | SIMATIC NET Diagnostics > CP1613 > Time of Day | "Synchronized to local clock" |
| PLC time stamps | STEP 7 > PLC > Time-of-Day Clock | Delta vs. WinCC < 1 s |
| WinCC redundancy state | WinCC systray > Redundancy > Status | One master, one standby, partner time delta < 2000 ms |
| Alarm log | WinCC Alarm Control > filter > 10463984 / 111735062 | No new entries for 24 h |
| Memory headroom | Task Manager > CCExplorer / CCRTServer | Virtual Size < 1.6 GB |
10. Preventive Best Practices
-
Use a second NTP source. Configure two external NTP servers in the
w32tm /manualpeerlistso a single source outage does not freewheel the clock. - Apply the WinCC 6.0 SP3a latest HF. Several time-sync and memory-leak fixes shipped in the SP3a hotfix rollup. Track the hotfix level on both servers; mismatched patch levels on a redundant pair is an unsupported configuration.
-
Restrict the WinCC server's time source to the external NTP pair, not the DC. Forcing
w32timeinto manual-peer mode prevents the domain hierarchy from overriding the industrial time source. - Monitor the redundancy time-delta alarm centrally. Forward WinCC events 10463984 and 111735062 to the plant SIEM so the next drift event is visible before the partner switches.
- Document the fail-over time budget. A typical WinCC 6.0 SP3a pair takes 20–45 s to switch; if the PLCs have a watchdog shorter than that, expect PLC-connection loss on every redundancy event. Add 30 s of margin in the PLC OB1 cycle or in the Profibus watchdog setting.
- Test the fail-over on a planned maintenance window at least quarterly. The loss of a CP1613 TOD channel often surfaces only when the partner actually has to take over.
11. Troubleshooting Matrix
| Symptom | Most Likely Cause | First Action |
|---|---|---|
| CP1613(ISO) "cannot receive the time signal" | Upstream w32time not synchronized |
Run w32tm /query /status; fix NTP first |
0x8007000E from WinCC Time Sync |
Memory pressure in CCTimeSync.dbl
|
Check working set, paging file; apply latest HF |
| Event 10463984 (partner time-drift) | Master clock freewheeling > 2 s | Restore NTP; verify w32tm /monitor
|
| Event 111735062 (server state change) | Redundancy switchover triggered by 10463984 | Confirm new master health, then investigate root cause |
| PLC connections broken | CP1613 TOD channel or Profibus DP reset | Verify CP1613 diagnostics; expect auto-reconnect |
| Fail-over test fails, no master elected | Both servers reporting time drift | Stop both, fix NTP, restart in master-then-standby order |
12. Frequently Asked Questions
What does WinCC error code 0x8007000E mean in a time-synchronization context?
0x8007000E is the Win32 HRESULT E_OUTOFMEMORY. In a WinCC Time Sync context it indicates that the time-sync thread failed to allocate an internal buffer, usually because the process is near its virtual-memory commit limit or because the CCTimeSync.dbl module is leaking memory. Check the working set of CCExplorer.exe and apply the latest WinCC 6.0 SP3a hotfix.
Are WinCC event IDs 10463984 and 111735062 documented officially?
They are internal WinCC alarm-log entries, not part of the public WinCC Information System HTML help. In practice, 10463984 is raised when the partner time delta exceeds the configured threshold (default 2000 ms), and 111735062 is the state-change event that follows. They should always be treated as a pair: drift first, switch second.
Why does the CP1613(ISO) report "cannot receive the time signal" even though the card is healthy?
The CP1613 firmware does not have its own RTC; it timestamps frames using the host Windows clock via SIMATIC NET. If Windows Time (w32time) is not synchronized to the configured NTP source, the CP1613 suspends broadcasting TOD frames and surfaces the message. Fix the upstream NTP first; the card does not need a reset.
Can I run a redundant WinCC 6.0 SP3a pair with mismatched hotfix levels?
No. Siemens explicitly does not support mixed hotfix levels on a redundant pair. Both servers must be on the same SP and HF level. After applying a hotfix, test a planned fail-over in a maintenance window.
How long should a planned WinCC redundancy fail-over take?
On WinCC 6.0 SP3a with CP1613(ISO), a clean fail-over typically completes in 20 to 45 seconds. PLC connections re-establish over Profibus DP within another 30 to 60 seconds. If your PLC OB1 watchdog is shorter than 90 seconds, expect transient PLC-STOP events during every fail-over; lengthen the watchdog or the Profibus bus timeout accordingly.