Fixing ProTool to WinCC Flexible 2008 Migration InternalServerError and Utah MigrationService Failure
When importing a legacy ProTool configuration into Siemens WinCC Flexible 2008 Advanced, engineers routinely encounter two paired runtime exceptions during the consistency check phase:
InternalServerError - ProtoolMigrationControllerAn error occurred during configuration checking - Siemens.Simatic.Hmi.Utah.Migration.MigrationService
These errors are not caused by firewalls, proxy servers, or blocked network ports. They originate inside the local WinCC Flexible migration WCF service and are almost always triggered by missing Siemens runtime components, corrupted ProTool artifacts, or insufficient Windows privileges. This reference walks through the root cause, the pre-migration checklist, the stepwise resolution, and the alternate TIA Portal V11 migration path that engineers frequently require when SIMOTION or SINAMICS dependencies are present.
1. ProTool / WinCC Flexible / TIA Portal Migration Topology
Siemens has published three generations of HMI configuration tools. Each generation introduces a distinct project file format and a forward-only migration path:
| Generation | Tool | Project Extension | Panel Targets | Migration Forward To |
|---|---|---|---|---|
| 3rd | ProTool/Pro V6.0 + SP2/SP3 | *.pdb / *.arj (compressed) | OP3, OP5, OP7, OP15, OP17, OP25, OP27, OP35, OP37, OP170 series | WinCC Flexible 2004/2005/2007/2008 |
| 4th | WinCC Flexible 2004, 2005, 2007, 2008 (SP1/SP2/SP3), 2008 Advanced | *.hmi | TP170, TP177, TP277, TP377, MP177, MP277, MP377, Mobile Panel 170/177/277 | TIA Portal V11 / V12 / V13 / V13 SP1 |
| 5th | TIA Portal WinCC (V11 – V18), WinCC Unified (V17+) | *.ap* project archive | Comfort Panels, Unified Comfort Panels, WinCC Runtime Advanced/Professional | Forward only via TIA Portal upgrade |
.pdb file is preserved, but the resulting .hmi file cannot be saved back to ProTool format. Always archive the original ProTool source and the panel image before migrating.2. Root Cause Analysis of the Two Errors
2.1 InternalServerError - ProtoolMigrationController
ProtoolMigrationController is the WCF controller class that orchestrates loading the legacy ProTool database. An InternalServerError is the WCF equivalent of HTTP 500 - the controller accepted the call but threw an unhandled exception while parsing the source project. Typical triggers:
- Missing or unregistered
Siemens.Simatic.Hmi.Utah.Migration.dllassemblies - Broken COM+ component registration for
ProToolRTlegacy interfaces - Corrupted or partially extracted
.arjcompressed project - ProTool project created on a different regional locale (decimal/thousand separator mismatch)
2.2 Siemens.Simatic.Hmi.Utah.Migration.MigrationService configuration check
The "Utah" namespace is the internal Siemens code-name for the migration framework that ships inside WinCC Flexible 2008 Advanced. MigrationService runs the post-load consistency check. When it raises a configuration-checking error, it is reporting that a referenced component (a SIMOTION CPU, a SINAMICS drive, an OPC channel, or a third-party ActiveX control) cannot be resolved against the installed software catalog.
The most common unresolved components in legacy ProTool projects are:
| Referenced Component | Required Add-on | Catalog Number |
|---|---|---|
| SIMOTION CPU (D4xx, P350, T-CPU) | SIMOTION SCOUT (matching firmware) | 6AU1810-1BA30-1xA0 (V4.x) |
| SINAMICS S/G drive | Drive ES Basic / SIMATIC | 6SW1700-5JA00-5AA0 (Drive ES Basic V5.x) |
| SIMODRIVE 611U / 611 digital | Drive ES SIMATIC | 6SW1700-6JA00-1AA0 |
| ProTool/Pro RT ActiveX controls | WinCC Flexible Advanced option | 6AV6613-1GA01-1xA0 |
| OPC DA 2.05a channel | SIMATIC NET OPC server | 6GK1704-1xWxx-3AA0 |
3. Pre-Migration Checklist
Before invoking the "Open ProTool project" command, verify each of the following. Any one of these is enough to trigger the InternalServerError.
-
User account: Launch WinCC Flexible with "Run as Administrator." The WCF services write to
%LOCALAPPDATA%\Siemens\WinCCFlexibleand to%TEMP%; standard user tokens fail the first write attempt and the fault surfaces as a 500. -
.NET Framework: Install
.NET Framework 3.5 SP1and.NET Framework 4.0(Client Profile is sufficient). WinCC Flexible 2008 uses WCF overnet.tcpand requires both runtimes. -
Visual C++ Redistributables: Install
vcredist_x86 2005 SP1,2008 SP1, and2010. The migration host loads mixed-mode C++/CLI assemblies. -
Windows Imaging Component (WIC): Required for
*.bmppanel graphics from OP17/OP27 projects. On Windows Server 2008 R2, install theServer-Core-EAIME-IMErole. -
TEMP folder: Confirm
%TEMP%is writable and has at least 500 MB free. The migration unpacks compressed.arjproject archives into the temporary directory before parsing. -
Antivirus / EDR: Exclude
%ProgramFiles%\Siemens\Automationand the project folder. Real-time scanning of.pdbfiles causes intermittent parsing failures that look like migration faults. - Source project hygiene: Open the project in ProTool/Pro V6.0 SP3 and run File → Save As to a fresh directory. Remove any orphan screens, undefined tags, or broken cross-references first.
-
Regional settings: Set Windows regional format to English (United States) before the migration if the source project used comma decimal separators. A locale mismatch raises the consistency error in
MigrationServiceeven when no project data is corrupt.
4. Step-by-Step Resolution Procedure
- Open Event Viewer (
eventvwr.msc) and clear the Application log. This is the fastest way to capture the underlyingStackTracefrom the WCF fault. - Right-click the WinCC Flexible 2008 Advanced shortcut and choose Run as administrator. Do not change compatibility mode - WinCC Flexible 2008 expects native Windows XP/2003+ API behavior, and the Windows 7/8/10 compatibility shim has been observed to break WCF port sharing.
- From the WinCC Flexible menu, choose Project → Open → ProTool project and select the
.pdbfile. - If the ProTool project is delivered as an
.arjarchive, extract it first with the original ARJ utility. The 7-Zip ARJ codec is known to corrupt binary tag databases during extraction. - The migration wizard runs the consistency check. If the
ProtoolMigrationControllererror reappears, click Details → Copy to clipboard and inspect theInnerException. - Apply the most likely fix from the table below based on the
InnerExceptiontype, then retry the import:
| InnerException type | Likely cause | Fix |
|---|---|---|
FileNotFoundException referencing Siemens.Simatic.Hmi.Utah.Migration.dll
|
WinCC Flexible Advanced install damaged | Repair install via Control Panel → Programs |
COMException 0x80040154 |
ProTool/Pro RT COM class not registered | Reinstall ProTool/Pro runtime or run regsvr32 PtRT.ocx
|
TypeLoadException mentioning SIMOTION or SCOUT
|
Missing SIMOTION SCOUT | Install SIMOTION SCOUT matching CPU firmware |
TypeLoadException mentioning SINAMICS or DriveES
|
Missing Drive ES | Install Drive ES Basic or Drive ES SIMATIC |
UnauthorizedAccessException on %TEMP%
|
UAC / folder permission | Reset ACL on user profile TEMP and run elevated |
DecoderReplacementFallback or ArgumentException on locale |
Decimal separator mismatch | Switch regional format to English (US), retry |
EndOfStreamException on .pdb
|
Corrupt archive | Re-export .pdb from ProTool/Pro and retry |
- If the consistency check now passes, the project opens as
uncompiled.hmi. Compile once with Project → Compiler → All. A clean compile confirms the migration succeeded at the runtime boundary. - Save the migrated project to a fresh directory and back up both the original
.pdband the new.hmi.
5. SIMOTION and Drive ES Package Requirements
ProTool projects that integrate motion or drive screens almost always reach the migration service with assembly references that WinCC Flexible cannot resolve without the corresponding engineering package.
5.1 SIMOTION SCOUT
SIMOTION SCOUT is the engineering tool for the SIMOTION motion controller family (D410, D425, D435, D445, D455, P350, T-CPU). When a ProTool project contains tags or screens bound to a SIMOTION CPU, the WinCC Flexible migration service must resolve the SIMOTION symbol library to validate tag addresses. Without SCOUT installed, the consistency check throws a TypeLoadException on the SCOUT assemblies, which the migration service surfaces as the generic configuration-checking error.
Match the SCOUT version to the SIMOTION firmware:
| SIMOTION Firmware | SIMOTION SCOUT Version |
|---|---|
| V4.0 / V4.1 | SCOUT V4.2 + SP1 |
| V4.2 | SCOUT V4.3 + SP1 |
| V5.0 / V5.1 | SCOUT V5.2 + SP1 |
| V5.2 / V5.3 | SCOUT V5.4 + SP1 |
5.2 Drive ES
Drive ES is the engineering suite for SINAMICS, SIMOVERT MASTERDRIVES, SIMODRIVE 611, and SINUMERIK. The ProTool/Pro toolbox screens for these drives ("Drive ES Block Library") embed COM objects that Drive ES registers. If the ProTool project references a SINAMICS S120 or SIMODRIVE 611U tag, the migration service must resolve the Drive ES GSD/EDS or symbol files. Without Drive ES, the consistency check fails inside the migration service.
| Drive Family | Required Drive ES Variant |
|---|---|
| SINAMICS G110/G120/G130/G150 | Drive ES Basic |
| SINAMICS S110/S120/S150 | Drive ES SIMATIC |
| SIMOVERT MASTERDRIVES MC/VC | Drive ES SIMATIC (legacy) |
| SIMODRIVE 611U / 611 digital | Drive ES SIMATIC (legacy) |
| SINUMERIK 840D sl / ONE | Drive ES SINUMERIK |
5.3 Why the TIA Portal V11 Path Reports the Same Gap
When the engineer attempts the TIA Portal V11 migration route, the migration tool enumerates the project against the TIA catalog. SIMOTION CPUs are not in the V11 catalog (SIMOTION SCOUT integration landed in TIA Portal V13 SP1 with SCOUT V5.2). The TIA Portal reports the missing package explicitly, while the WinCC Flexible 2008 path reports the same condition as a generic InternalServerError. Both errors are evidence of the same underlying gap.
6. Alternate Migration Path: TIA Portal V11 / V13 SP1
If the WinCC Flexible 2008 path remains unstable, use the two-step TIA Portal migration route:
- Complete the ProTool to WinCC Flexible 2008 conversion following the procedure in Section 4, ignoring the consistency warning if it persists. Save the project as
.hmi. - Install TIA Portal V13 SP1 or later (V13 SP1 is the first version that supports SIMOTION in the catalog and that imports WinCC Flexible Advanced projects).
- Open TIA Portal and choose Project → Migrate project → WinCC Flexible project. Select the
.hmifile. - For SIMOTION CPUs, also install SIMOTION SCOUT V5.2+ in the TIA Portal environment. TIA Portal V13 SP1 with SCOUT V5.2 will accept SIMOTION D4xx CPUs in the catalog.
- For SINAMICS drives, also install SINAMICS Startdrive V13 SP1 (bundled with TIA Portal) or STARTER V5.x to satisfy the catalog reference.
- Run the TIA Portal migration; the tool reports package gaps by name, which is easier to remediate than the WinCC Flexible 2008 Utah service 500.
7. Verification Procedure
After the migration completes, validate the result with the following checks before commissioning the panel.
- Compile clean: Project → Compiler → All in WinCC Flexible 2008. Zero errors and zero warnings confirm the consistency check is satisfied.
-
Tag table parity: Export the original ProTool tag list (File → Export → Tags → CSV) and the new
.hmitag list (Project → Tags → Export). Diff the two CSVs - the row count, PLC address, and data type must match. Watch forSTRING[xx]length changes introduced by the migration service. - Alarm text round-trip: Open the Alarm Logging editor. Confirm that no alarm text shows the placeholder "@@TextMissing@@". This placeholder indicates the migration service could not resolve a localized text resource.
- Screen cross-reference: Open the cross-reference list (Tools → Cross-reference) and verify that no tag is reported as "not used" if the original ProTool used it. The migration can lose tag-screen bindings when the source contains tags that ProTool considered "auxiliary."
- Runtime simulation: Use Project → Compiler → Start Runtime Simulation. Walk through every screen and confirm the layout matches the OP17/OP27 physical pixel grid. WinCC Flexible does not always preserve the OP17 320x240 aspect ratio on TP177 320x240 if the source used overlapping objects.
- Transfer to panel: Connect the panel via Ethernet (TP177/MP277) or MPI/Profibus (older OP170/OP270). Perform a controlled transfer with Transfer → Settings set to Remote. The transfer must complete without prompting for a delta compile.
8. Troubleshooting Matrix
| Symptom | First-Look Cause | Resolution |
|---|---|---|
| InternalServerError immediately on file open | Corrupt .pdb or .arj
|
Re-export from ProTool; re-extract with original ARJ |
| InternalServerError after 5-10 seconds | WCF service cannot start | Repair .NET 3.5 SP1 and 4.0; check Net.Tcp Port Sharing Service is running |
| MigrationService configuration error mentioning SIMOTION | Missing SCOUT | Install matching SCOUT version |
| MigrationService configuration error mentioning SINAMICS | Missing Drive ES | Install Drive ES Basic or SIMATIC variant |
| MigrationService error on tag area pointers | WinCC Flexible tag area pointer name change | Re-enter area pointer manually; see WinCC Flexible Advanced help, topic "Area pointers" |
Migration succeeds but compile fails on OP17 specific controls |
OP17 controls removed in WinCC Flexible 2008 SP2 | Replace with standard controls; redesign affected screens |
| OPC channel missing after migration | WinCC Flexible uses OPC channel not present in 2008 | Reconfigure channel under Connections → OPC |
| TIA Portal reports "Missing package SIMOTION" | SCOUT not installed in TIA environment | Install SCOUT V5.2+ in TIA V13 SP1+ |
| TIA Portal reports "Missing package Drive ES" | STARTER / Startdrive not installed | Install SINAMICS Startdrive for the panel target firmware |
9. Field-Proven Caveats
- Compression artifacts. ProTool projects older than 2001 were frequently archived with ARJ 2.50, which uses 16-bit CRC fields. The current ARJ 3.10 tool reads them, but Windows Defender sometimes quarantines the file mid-extraction. Add the project directory to the Defender exclusion list before extraction.
-
Long path support. The WinCC Flexible 2008 migration host is built against .NET 3.5 SP1, which does not enable long path support by default. Keep the project path under 200 characters and the file name under 80 characters. The
PathTooLongExceptionsurfaces as aMigrationServiceconfiguration check error, which is misleading. -
Domain joined laptops. Group policy can block WCF self-hosted services. If the migration works on a local account but fails on a domain account, ask IT to whitelist the executable
%ProgramFiles%\Siemens\Automation\WinCC_flexible\WinCC_flexible.exein AppLocker. - Remote desktop services. The migration host is single-instance. Running the import inside an RDP session to a server that another engineer is also using on console will fail the WCF handshake. Run on a dedicated workstation or a dedicated RDP session.
- Project scaling to TP177. OP17 (320x240) and OP27 (320x240) projects migrate to TP177 (320x240) cleanly, but OP37 (640x480) projects sometimes lose object pixel-perfect positioning due to a WinCC Flexible 2008 scaling engine regression. Verify layout in the runtime simulator before transferring to hardware.
- License borrowing. WinCC Flexible 2008 Advanced uses the Siemens license server. If the license server is unreachable, the migration will still run (the importer is licensed by the ProTool source license), but the compile step will fail. Plan for license availability before commissioning.
-
Windows 11 compatibility. WinCC Flexible 2008 SP3 runs on Windows 10 21H2 with the
Siemens.Simatic.Hmi.Utah.Migrationassemblies. Windows 11 22H2 changes the WCF default port range, which can re-trigger the InternalServerError. Apply WinCC Flexible 2008 SP3 Update 6 or migrate to TIA Portal V17 before deploying to Windows 11.
10. When to Escalate vs. When to Migrate Forward
If the original panel is a modern Comfort or Unified Comfort panel target, the cost of a WinCC Flexible 2008 dual-step (ProTool → WinCC Flexible → TIA Portal) is rarely justified. The TIA Portal V18 Migration Tooling supports direct import of WinCC Flexible .hmi files generated by WinCC Flexible 2008 SP3 Update 6. If the production environment is end-of-life and the customer accepts a panel swap, move directly to TIA Portal V18 with a Comfort Panel (TP700 / TP900 / TP1200) and use the migration tool to lift the screens.
If the panel is a TP177, MP277, or Mobile Panel 277, retain the WinCC Flexible 2008 step - these are the last native targets. TIA Portal V14+ does not generate runtime for these panels.
What does the ProTool to WinCC Flexible 2008 InternalServerError ProtoolMigrationController error actually mean?
The ProtoolMigrationController is the WCF service that loads the legacy ProTool .pdb database. An InternalServerError (WCF HTTP 500) indicates the service threw an unhandled exception while parsing the source - typically a missing Siemens assembly (SIMOTION SCOUT, Drive ES), a corrupted .pdb or .arj archive, a TEMP folder permission issue, or a regional format mismatch. It is a local service fault, not a network or firewall problem.
Do I need SIMOTION SCOUT and Drive ES to migrate a ProTool project with motion or drive screens?
Yes. If the ProTool project references a SIMOTION CPU (D4xx, P350, T-CPU) the SIMOTION SCOUT version matching the CPU firmware must be installed, otherwise the migration consistency check fails. If the project references a SINAMICS, SIMOVERT, or SIMODRIVE drive, Drive ES Basic or Drive ES SIMATIC matching the drive family must be installed. STEP 7 Professional and WinCC Flexible 2008 Advanced do not include these packages.
Why does TIA Portal V11 also report a missing package (SIMOTION) for the same project?
TIA Portal V11 does not include the SIMOTION catalog - SIMOTION SCOUT integration landed in TIA Portal V13 SP1 with SCOUT V5.2. The TIA Portal migration tool reports the missing package by name, while the WinCC Flexible 2008 path reports the same condition as a generic migration fault. Both errors point to the same gap: SIMOTION SCOUT is not installed in the engineering environment.
Which WinCC Flexible version is the last to support the "Open ProTool project" command?
WinCC Flexible 2008 SP3 is the last generally available version with the ProTool importer, and SP3 Update 6 is the most stable for the migration. WinCC Flexible 2008 SP4 Advanced also retains the importer in some regional releases. TIA Portal V14+ removes the WinCC Flexible importer entirely, so the WinCC Flexible step is mandatory for any TP177, MP277, or Mobile Panel 277 target.
What is the minimum .NET and Windows configuration for a clean ProTool to WinCC Flexible 2008 migration?
Install .NET Framework 3.5 SP1 and .NET Framework 4.0 (Client Profile is sufficient), the Visual C++ 2005 SP1, 2008 SP1, and 2010 x86 redistributables, the Windows Imaging Component, and run the engineering environment under a local administrator account with the regional format set to English (United States). Apply WinCC Flexible 2008 SP3 Update 6 if the host is Windows 10 21H2 or later, and exclude the project folder from real-time antivirus scanning.
How do I verify the migrated WinCC Flexible project is bit-equivalent to the original ProTool project?
Export the original ProTool tag list and alarm list to CSV, then export the migrated .hmi tag list and alarm list, and diff the two. The tag row count, PLC address, and data type must match. Open the cross-reference list and confirm no tag is reported as "not used" if ProTool used it. Finally run the WinCC Flexible runtime simulator and walk every screen to confirm the layout matches the OP17 / OP27 / OP37 pixel grid before transferring to hardware.