Problem Overview
After a Windows 10 Home to Professional in-place upgrade on a workstation hosting a Siemens WinCC V8 (TIA Portal / SIMATIC WinCC) project, the WinCC Explorer runtime activation hangs at approximately 28% with the status text frozen on "Starting Alarm Logging...". The companion Windows service ccAlgrtserver (SIMATIC WinCC Alarm Logging Server) refuses to start or enters a continuous restart loop, and the WinCC RT icon in the system tray never reaches the green "running" state.
This symptom is a classic post-upgrade failure mode caused by:
- Retained registry keys from the previous Windows edition (Home SKU values that are not present or valid in Pro).
- SQL Server instance metadata (WinCC uses a local MS SQL Server for the alarm and tag archive databases) that was bound to a removed SKU identifier.
- Service account permissions that no longer resolve correctly after the SKU change.
- Pending Windows updates that were queued during the in-place upgrade but not finalized.
Affected Software and Versions
| Component | Version / SKU | Status on Win10 Home |
|---|---|---|
| SIMATIC WinCC V8 | V8.0 / V8.0 SP1 / V8.0 SP2 | Not officially released on Home SKU |
| SIMATIC WinCC V7 | V7.4 / V7.5 / V7.5 SP1 | Limited; check compatibility |
| Microsoft Windows 10 Home | 1909 / 2004 / 20H2 / 21H2 / 22H2 | Unsupported runtime platform |
| Microsoft Windows 10 Pro | 1909 and later | Supported |
| ccAlgrtserver service | Belongs to "SIMATIC WinCC AlarmLogging" | Fails to start after SKU change |
| Microsoft SQL Server | 2017 / 2019 (bundled with WinCC V8) | May not bind on upgraded OS |
Refer to the official release notes for the exact compatibility matrix:
- SIMATIC WinCC V8.0 - System Manual / Readme
- SIMATIC WinCC V8.0 - Operating WinCC
- Compatibility tool for automation and drives (TIA, WinCC, S7)
Root Cause Analysis
The "28% stuck on Alarm Logging" indicator is generated by the WinCC Computer startup sequence. The progress meter advances as each internal subsystem reports ready:
- Graphics Runtime (0-15%)
- Tag Management / Channel units (15-22%)
- Tag Logging initialization (22-26%)
- Alarm Logging initialization (26-30%) — common hang point
- Report Services and user archive (30-40%)
- Redundancy / scripts / final handshake (40-100%)
When the meter is frozen inside the Alarm Logging range, the ccAlgrtserver.exe process has either crashed, is waiting on a non-responsive SQL Server connection, or cannot bind to its configured TCP port (default 4900 for AlarmLogging control).
Why the SKU upgrade triggers the failure
An in-place Windows 10 Home → Pro upgrade preserves installed applications but rewrites significant portions of the registry hive, including:
-
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion—EditionIDchanges fromCoretoProfessional. - Group Policy branches that did not exist under Home are now instantiated, changing the default security context for services.
- Some bundled WinCC prerequisites (e.g. the Microsoft Visual C++ runtime, .NET Framework targeting packs) may be re-registered with wrong CLSIDs.
The WinCC internal service configuration reads the original Home-SKU path assumptions and fails the consistency check. The ccAlgrtserver log shows entries such as:
2024-05-12 10:14:33.872 ERROR ccAlgrtserver Database connection failed (WINCC_ALG_DB)
2024-05-12 10:14:33.872 ERROR ccAlgrtserver State: SQL Server not available / network error
2024-05-12 10:14:34.018 ERROR ccAlgrtserver Aborting startup. Exit code -1
Inspecting the failure with the Windows Event Viewer
- Open Event Viewer → Windows Logs → Application.
- Filter the source to CCAlgRtServer, CCSqlDrv, and MSSQLSERVER.
- Look for Event ID 257 (SQL Server cannot bind a named pipe) or Event ID 7024 (service terminated with a service-specific error).
- Open the
WinCC_Sql_<ComputerName>_<Timestamp>.logfile inC:\Program Files (x86)\Siemens\Automation\WinCC\Diagnose.
Solution: Clean Platform Approach (Recommended)
Siemens explicitly states that upgrading the Windows edition while WinCC is installed is not supported. The reliable fix is a clean installation of the supported Windows edition followed by a clean installation of WinCC V8. The previously created WinCC project file (.MCP) can be migrated forward.
Prerequisites
- Valid Windows 10 Professional or Enterprise license key.
- Original WinCC V8 installation media or Siemens Online Software Delivery (OSD) download.
- License keys (floating or single) for WinCC RT and, if applicable, the AlarmLogging and TagLogging options.
- Full project backup: copy the entire WinCC project folder (default:
C:\Program Files (x86)\Siemens\Automation\WinCC\WinCCProjects\<ProjectName>) to external media. - User archive and archive database exports (CSV / SQL backup) if you need historical data.
Step 1 - Back up the project
- Open WinCC Explorer on the broken system while it is still partially functional.
- Select Project → Backup → Create backup. This produces a compressed
.ziparchive that includes the.MCPfile, graphics, scripts, and database exports. - Additionally copy the folder
<ProjectName>\<ComputerName>\to external media. This directory contains the Computer properties, the channel configuration, and the local archive paths. - Export the Tag Logging and Alarm Logging archive configuration as XML using the WinCC Configuration Studio (Project menu → Export) so the segment size and time base can be re-imported later.
Step 2 - Clean Windows 10 Professional installation
- Back up all non-WinCC data from the system drive.
- Create a Windows 10 Pro USB installer using the Microsoft Media Creation Tool.
- Boot from the USB drive and select Custom install (do not choose "Keep personal files and apps" — WinCC must be installed on a freshly provisioned OS).
- Install Windows 10 Pro, apply all current Windows updates, and install manufacturer drivers.
- Disable Fast Startup (Control Panel → Power Options → Choose what the power buttons do → uncheck "Turn on fast startup"). Fast Startup interferes with service start order and is a frequent contributor to AlarmLogging hangs even on a clean install.
- Set the regional and language settings to match the original project (decimal separator, thousand separator, system locale) before installing WinCC.
Step 3 - Install WinCC V8 prerequisites
WinCC V8 setup will install the prerequisites automatically if the option "Install prerequisites" is selected. The major prerequisites are:
| Component | Required version | Notes |
|---|---|---|
| Microsoft .NET Framework | 4.7.2 / 4.8 | Required for Configuration Studio and RT |
| Microsoft Visual C++ Redistributable | 2015-2022 (x86 and x64) | Both architectures required |
| Microsoft SQL Server | 2017 (WinCC V8.0) / 2019 (V8.0 SP2) | Bundled with WinCC setup |
| Windows Message Queuing (MSMQ) | Enabled Windows feature | Required for distributed alarms |
| Internet Information Services (IIS) | Enabled Windows feature | Required for WinCC WebNavigator |
Step 4 - Install SIMATIC WinCC V8
- Insert the WinCC V8 DVD or mount the ISO.
- Right-click
Setup.exe→ Run as administrator. - Follow the dialog. On the Package Installation page, select at minimum:
- WinCC Runtime
- WinCC Configuration
- Alarm Logging
- Tag Logging
- SQL Server instance for WinCC
- Accept the SQL Server service account as Local System unless your plant policy requires a dedicated domain account. If a domain account is used, ensure the account has Log on as a service rights and is a member of the local SQLServerMSSQLUser$ groups.
- Complete the installation and do not restart the system immediately; finish all pending Windows updates first.
Step 5 - Restore the project
- Open WinCC Explorer and choose Project → Restore → Restore from backup.
- Point to the
.zipcreated in Step 1. - WinCC will re-link the project to the new computer, recreate the Alarm and Tag Logging databases in the fresh SQL instance, and re-attach the user archive.
- Re-apply your license using the Automation License Manager.
Step 6 - Repair the ccAlgrtserver service
- Open Services (
services.msc). - Locate SIMATIC WinCC AlarmLogging Server (display name) /
ccAlgrtserver(service name). - Confirm the Log On tab uses either the Local System account or the domain account configured during setup, and that the password is correct.
- Confirm the Dependencies tab lists SQL Server (WINCC) with a check mark. If it does not, the SQL Server instance failed to install; rerun the WinCC setup and select Modify → Repair.
- Set the Startup type to Automatic (Delayed Start). The 60-second delay prevents the AlarmLogging service from trying to start before the SQL Server has finished recovery.
- Start the service manually. Within a few seconds the Event Viewer should show a Started successfully entry.
Workaround: In-Place Repair (Without Clean OS Install)
If a clean OS install is not feasible in the short term (e.g. the operator station cannot be taken offline), the following repair sequence can be attempted. It addresses the most common post-upgrade symptoms without reinstalling Windows.
Step-by-step
- Open Control Panel → Programs and Features.
- Locate SIMATIC WinCC V8.0 (or appropriate version).
- Select it and click Change → Repair. This re-registers COM components, refreshes the WinCC SQL instance, and re-issues service credentials.
- When the repair completes, reboot.
- Verify the
ccAlgrtserverstarts cleanly.
If the repair fails or the runtime still hangs at 28%:
- Open SQL Server Configuration Manager → SQL Server Network Configuration → Protocols for WINCC.
- Enable Named Pipes and TCP/IP. Set the TCP/IP listen port to
1433for the default instance, or verify the dynamic port is not blocked by Windows Firewall. - In Computer Management → Local Users and Groups, confirm the group SQLServerMSSQLUser$<ComputerName>$WINCC exists. If it does not, the in-place upgrade stripped it; recreate the group and add the SYSTEM account plus the WinCC service account.
- Run
regeditas administrator. Verify the registry keyHKLM\SOFTWARE\Siemens\WinCC\SQL\<InstanceName>exists and points to the correct SQL Server instance name. If absent, repair of WinCC should re-create it. - Delete the contents of
C:\Program Files (x86)\Siemens\Automation\WinCC\Diagnose(logs only, not configuration) and try to start runtime again. The new log will contain a clean trace that can be sent to Siemens Technical Support if the issue persists.
Verification
- Open WinCC Explorer.
- Right-click the Computer → Properties. Confirm the Startup tab lists all four services (Graphics, AlarmLogging, TagLogging, Report Services) with Automatic startup type.
- Click the Activate button in the toolbar.
- Watch the progress meter. The bar must reach 100% within 60-90 seconds on a typical workstation. The system tray icon turns green.
- Trigger a test alarm by setting a tag to a defined alarm state in the tag simulator (WinCC Explorer → Tools → Tag Simulation).
- Open the Alarm Logging runtime window and confirm the test alarm appears with the correct timestamp, priority, and acknowledgement state.
- Check the Status of the WinCC Services dialog (right-click the system tray icon → Status) and confirm all services report OK.
- Open Task Manager → Details and confirm the following processes are running:
CCExplorer.exeCCAlgRtServer.exeCCTlgRtServer.exe-
sqlservr.exe(instance WINCC)
Advanced Diagnostics
If the runtime still fails after the repair and the verification steps, gather the following evidence before opening a Siemens support ticket:
| File or Tool | Location | Purpose |
|---|---|---|
| WinCC Diagnose logs | %ProgramFiles(x86)%\Siemens\Automation\WinCC\Diagnose\*.log |
WinCC internal trace |
| SQL Server ERRORLOG | C:\Program Files\Microsoft SQL Server\MSSQLxx.WINCC\MSSQL\Log\ERRORLOG |
Database engine issues |
| Windows Event Logs |
eventvwr.msc → Application / System |
Service and OS events |
| Apdiag Tool | Start → Siemens Automation → WinCC → Apdiag |
Readiness check |
| Authorizations Tool | WinCC Explorer → Tools → Authorizations | Verifies user/group membership |
Troubleshooting Matrix
| Symptom | Likely Cause | Fix |
|---|---|---|
| Stuck at 28% / AlarmLogging | SQL Server not started or service account mismatch | Start SQL Server (WINCC); verify service account |
| ccAlgrtserver: "Cannot connect to WINCC_ALG_DB" | Database not migrated after upgrade | Repair WinCC; manually re-attach DB from backup |
| ccAlgrtserver: "License missing for AlarmLogging" | License not reactivated | Run Automation License Manager, transfer license |
| Service starts then stops repeatedly (Event 7034) | COM component registration corrupted | Repair WinCC; run regsvr32 /i CCAlgRtServer.dll
|
| Hang at 22% / TagLogging | Same root cause, but for TagLogging segment | Repair WinCC; check archive path permissions |
| Hang at 40% / Report Services | Excel or Word COM issue | Repair Microsoft Office integration; reinstall Office |
| Hang at 90% / Final handshake | User archive or script issue | Disable startup scripts, identify offender |
Preventive Best Practices
- Always confirm the Windows edition on the WinCC DVD label or in the SIMATIC WinCC installation guidelines before commissioning.
- Create a system image (e.g. with Disk2vhd or a vendor tool) immediately after a successful WinCC installation. This image becomes the recovery baseline.
- Schedule Back up WinCC project as a scheduled task nightly, exporting to a network share.
- Never perform a Windows edition in-place upgrade on a machine that hosts WinCC. Always plan a clean OS install.
- Use the Apdiag tool as a pre-flight check after any OS patch or service pack installation.
Field-Proven Notes
Engineers who have resolved this issue in production report three recurring patterns:
- The 28% hang almost always points to AlarmLogging, but in 10-15% of cases it is actually a TagLogging symptom (the bar position is approximate). Always check both services.
- When the SQL Server instance name was changed (e.g. from
WINCCtoWINCC2) the ccAlgrtserver configuration stored in the project file still references the old name. The fix is to either rename the instance back, or to use the WinCC Installation Manager to repoint the project. - Virtual machines tend to mask this issue at first because VSS snapshots restore the registry hive intact. Once a re-IP, re-activation, or checkpoint consolidation happens, the latent corruption surfaces. Always provision WinCC on physical hardware or on dedicated VMs with no prior WinCC image.
Why does WinCC V8 runtime stop at 28% with "Starting Alarm Logging" after a Windows 10 Home to Pro upgrade?
The Windows edition change breaks the service account and SQL Server configuration that the AlarmLogging server (ccAlgrtserver) depends on. WinCC V8 is not released for Windows 10 Home, so the in-place upgrade exposes a previously latent platform mismatch. The 28% position is the AlarmLogging initialization step, where the service cannot bind to the SQL Server database.
Can I fix the 28% hang without reinstalling Windows?
Yes, in many cases a WinCC Repair install from the original media will re-register the COM components, recreate the SQL instance groups, and reset the service credentials. However, Siemens does not formally support keeping WinCC on a machine that has undergone a Windows edition upgrade, so the clean OS install is the recommended long-term solution.
Which Windows editions are officially supported for WinCC V8?
SIMATIC WinCC V8 supports Windows 10 Professional (1809 and later), Windows 10 Enterprise, Windows Server 2016, Windows Server 2019, and Windows Server 2022. Windows 10 Home is not on the supported list. Always verify the current compatibility matrix on the Siemens Industry Online Support portal before any platform change.
How do I confirm that the ccAlgrtserver service is the failure point?
Open services.msc, locate SIMATIC WinCC AlarmLogging Server, and attempt to start it. If it returns immediately with error 1053 or shows Event 7034 in the System log, it is the failure point. Also check C:\Program Files (x86)\Siemens\Automation\WinCC\Diagnose for AlarmLogging_<Computer>_*.log with ERROR entries that reference database connection failure.
Is there a way to migrate the project to a new PC without losing the historical alarm archive?
Yes. In WinCC Explorer, export the Alarm and Tag Logging configuration as XML, run Project → Backup, install WinCC on the new machine, then Project → Restore. The historical data can additionally be copied from the original ArchiveManager folder (default path: <Project>\ArchiveManager\AlarmLogging) and re-imported via the CCArchiveManager tool on the new system.