1. Problem Overview
Engineers developing reusable WinCC Advanced faceplates inside TIA Portal V15.1 occasionally encounter a non-recoverable internal compiler error of the form:
Internal ERROR (detail: Failed to get hashed properties - object type: VIEW_IN)
The error appears in the information pane of the TIA Portal editor when a faceplate container instance is opened, copied, dragged, compiled, or referenced by a screen. The portal suppresses its normal Go-to and cross-reference navigation while the error is active, which makes locating the offending object significantly more difficult than with standard compiler diagnostics.
The fault is generated by the WinCC Advanced HMI engineering component (HmiEs / HmiRTm process) and surfaces during view-element hash resolution for the VIEW_IN internal object class. VIEW_IN is the container-class type that represents an instance of a faceplate embedded in a process screen; it is distinct from VIEW_T, which represents the faceplate type definition itself.
Siemens has catalogued variations of this fault in their support request system under the keywords "Failed to get hashed properties" and "VIEW_IN". The fault is reproducible on projects that contain faceplates with non-default style assignments, complex interface tag bindings, or faceplate instances that have been copied between projects in earlier TIA Portal versions (V13 SP2 / V14 / V15) and then opened in V15.1.
2. Affected Versions and Components
| Component | Version | Status |
|---|---|---|
| STEP 7 / TIA Portal | V15.1 (Update 1 through Update 9) | Confirmed affected |
| STEP 7 / TIA Portal | V15.0 | Anecdotal, rare |
| STEP 7 / TIA Portal | V14 SP1 | Not reproducible after fix-forward |
| WinCC Advanced | V15.1 | Primary reproducer |
| WinCC Comfort / Professional | V15.1 | Same internal hash engine; same fix applies |
| SIMATIC WinCC Runtime Advanced | V15.1.x | Not affected at runtime (compile-time only) |
*.fwx runtime file. Panels that compiled before the corruption occurred continue to run unaffected; only the engineering station is blocked.3. Technical Root Cause Analysis
WinCC Advanced stores faceplate metadata in two parallel data structures inside the TIA Portal project:
- The hierarchical model tree visible in the project navigator (XRef + XML serialized under
\System\HMI\<device>\Faceplates). - An internal hash table maintained by the HMI engineering service that maps every
VIEW_INinstance to a deterministic hash of its properties (interface tag list, style assignment, event wiring, animation bindings, version string).
The internal hash table is re-built on project open, on every "Compile > Software (rebuild all)", and on every save that touches a faceplate. The error Failed to get hashed properties indicates that one of the following is true:
- A
VIEW_INobject exists in the project tree but its property blob is missing from the hash index (orphaned instance reference). - Two
VIEW_INinstances share a hash key (collision) after a bulk copy/duplicate operation. - The faceplate's style/design override on a single instance points to a style that has been renamed or deleted in the global style table.
- The
IM(Internal Management) folder of the project has accumulated a corrupted cache entry from a previous TIA Portal version (most commonly V14 → V15.1 migration).
All four causes resolve to the same observable symptom: when the editor asks the hash index for the properties of a given VIEW_IN object, the lookup returns null or throws a KeyNotFoundException in the HMI engineering service, and the editor surfaces the generic "Internal ERROR" wrapper.
4. Pre-Diagnostic: Capture Project State
Before applying any of the solutions below, capture the current state of the project so the change can be reversed if it makes things worse.
- Close TIA Portal completely (all instances).
- Open the project folder in Windows Explorer. The path is typically
C:\Users\<user>\Documents\Automation\<ProjectName>\. - Copy the entire project folder to a safe location. Exclude the
.<ProjectName>.logfile from the copy because it can grow to several hundred megabytes for large projects. - Open the backup in a second location and verify it opens cleanly in a read-only TIA Portal session if possible. This is your recovery point.
5. Solution A — Reset the IM Folder and Rebuild
The IM folder is the TIA Portal Internal Management cache. It holds compiled-internal artifacts and version-specific metadata that are regenerated on the next open. Deleting or renaming the IM folder forces the engineering service to rebuild all hash indices from the canonical XML source files. This is the highest-success-rate fix and resolves the error in approximately 60% of reported cases.
Procedure
- Close TIA Portal V15.1 completely, including any background
S7WBX/Siemens.Automation.Portal.exeprocesses in Task Manager. - Open the project folder in Windows Explorer.
- Locate the
IMfolder at the root of the project directory (sibling ofSystem,UserFiles, and the project.ap15_1file). - Rename
IMtoIM_backup_<YYYYMMDD>. Do not delete it until the fix is confirmed. - Reopen the project in TIA Portal V15.1. The portal will rebuild the
IMfolder automatically on open; this may take 1-5 minutes for a large project. - Wait for the rebuild to complete (the status bar will show "Loading project" then "Ready").
- Right-click the HMI device and select Compile > Software (rebuild all). Do not use "Compile (incremental)"; a full rebuild is required.
- Watch the Compile output pane for the "Failed to get hashed properties" message.
Verification
If the compile completes without re-emitting the VIEW_IN error, the fix is successful. The IM_backup_* folder can be deleted after a successful compile and one HMI download cycle.
IM folder while TIA Portal is still running. The portal keeps file handles on a subset of IM sub-files, and deletion on Windows will either fail or leave the project in an unopenable state. Always close the portal first.6. Solution B — Audit Faceplate Style/Design Assignments
If Solution A does not resolve the error, the most common remaining cause is a faceplate instance with a style/design override that no longer maps to a valid style in the global style table. This frequently happens when:
- A project-wide style was renamed in the global Styles & Designs editor.
- A faceplate was copy-pasted from another project that had different global style names.
- A style was deleted from Project tree > Common data > Styles & Designs after instances already referenced it.
Procedure
- Open the project in TIA Portal V15.1.
- Open the faceplate type (not an instance) for the faceplate you suspect. Start with the most recently edited faceplate.
- Select the faceplate root container.
- Open the Properties > Properties > Styles & Designs inspector pane.
- Verify the Style and Design dropdowns both show a value that exists in the global project Styles & Designs library. If either dropdown is empty, blank, or shows a name that is not present in the global library, the binding is broken.
- Open each instance of the faceplate in the screens where the error has been reported. Repeat the property check on the instance level — instance overrides take precedence over the type.
- For every broken binding, uncheck the Use style / Use design checkbox (so the property reverts to the type default), or pick a valid style from the dropdown.
- Save the project. Run Compile > Software (rebuild all) on the HMI device.
Verification
Open the screens that previously triggered the error. The "Go-to" cross-reference navigation should now be enabled. Open a faceplate instance and confirm that the Properties > Styles & Designs pane shows valid, non-blank entries.
7. Solution C — Faceplate Version Mismatch Recovery
Faceplate type versions are tracked in the project XML as FBVersion / TypeVersion attributes. If a faceplate type was modified outside of the change-tracking workflow (e.g., edited directly in the XML by a third-party tool, or migrated with a partial version mismatch), the version attribute can drift between the type definition and the instance references, producing the same hash lookup failure.
Procedure
- Close the portal.
- Make a fresh backup of the project.
- Open the project in TIA Portal V15.1.
- Right-click the HMI device and select Compile > Software (rebuild all). This forces a full regeneration of all type/instance hash pairs.
- If the error persists, navigate to the faceplate type, make a no-op change (e.g., add a space in a tooltip), save, and recompile. This bumps the faceplate version and forces all instance hashes to be re-evaluated.
- Revert the no-op change, save, and recompile again to confirm the version-bump mechanism is clean.
8. Solution D — Interface Tag Binding Audit
Less commonly, the VIEW_IN hash fails because the faceplate interface has a tag binding that references a PLC tag or HMI tag that has been renamed, deleted, or has a type-mismatch (e.g., a Bool bound to an Int tag after a PLC tag-type change). The hash includes a digest of every interface tag binding, so an inconsistency breaks the lookup.
Procedure
- Open the HMI tag editor (HMI tags in the project tree).
- Sort by the Last used column to surface recently renamed or broken tags.
- Cross-reference the tag names in the faceplate instances. Use the Cross-reference tool (Ctrl+Shift+F) filtered to the HMI device.
- For each faceplate instance that triggers the error, open the instance and walk the Properties > Interface pane. Tag bindings that show a red dot or a "?" suffix are broken.
- Rebind the broken tags to valid HMI or PLC tags, save, and recompile.
9. Nuclear Option — Re-import the HMI Station
If the four solutions above do not clear the error, the project database corruption is deeper than a cache reset. The corrective action is to re-import the HMI station into a fresh project.
- Create a new empty TIA Portal V15.1 project.
- Right-click the project and select Devices & networks > Insert new device > SIMATIC HMI. Pick the same HMI panel type as the original.
- From the original project, export the HMI station: right-click the HMI device, Export > HMI station as library (TIA Portal V15.1 format). This produces a
.tialfile containing all screens, faceplates, tags, alarms, scripts, and recipes. - In the new project, right-click the HMI device and Import > HMI station from library. Select the
.tialfile. - Re-establish the HMI-to-PLC connection in Devices & networks.
- Compile the HMI station in the new project.
10. When to Escalate to Siemens Support
If the error persists after applying all four solutions, the project contains a corruption that the standard engineering tools cannot self-heal. Escalate to Siemens Industry Online Support with the following evidence package:
- The TIA Portal version, including the exact update level (e.g., V15.1 Update 7).
- The HMI panel part number (e.g., 6AV2 124-1MC01-0AX0 for a TP1200 Comfort).
- The exact error text from the information pane, including the timestamp and the screen/faceplate name where it was triggered.
- The TIA Portal diagnostic files:
%LOCALAPPDATA%\Siemens\AutomationPortal\V15.1\Log(ZIP the entire folder, not just the latest file). - A sanitized copy of the project with all PLC and HMI tag values replaced by placeholder strings.
A new Siemens Support Request (SR) can be opened at Siemens Support Request portal. Reference the support entry ID in any follow-up communication.
11. Prevention Best Practices
- Version-pin your TIA Portal install: Stay on a single V15.1 update level for the life of a project. Mixing V15.1 Update 3 with Update 7 in a multi-engineer team is a common source of hash corruption.
- Avoid style/library renames late in the project: Global style renames in the last 25% of project development break every faceplate instance hash. Establish the style library in the design phase and freeze it.
- Use faceplate type versioning deliberately: Increment the faceplate version comment on every committed change. A faceplate without a version comment is a faceplate that cannot be debugged by the next engineer.
-
Take a project archive at every major milestone: Use TIA Portal Project > Archive (not Windows copy) to create a consistent snapshot. ZIP archives include the
IMfolder and can be re-opened cleanly. - Run rebuild-all weekly: A periodic Compile > Software (rebuild all) on the HMI station re-baselines all hash indices and surfaces corruption early.
-
Avoid copy-paste of faceplate instances between unrelated projects: Copy-paste between projects with different style libraries is the single most common trigger of the
VIEW_INhash error.
12. Related Errors and How They Differ
| Error Text | Object Type | Typical Cause | First-Line Fix |
|---|---|---|---|
| Failed to get hashed properties | VIEW_IN | Instance-side hash corruption | IM folder reset |
| Failed to get hashed properties | VIEW_T | Type-definition hash corruption | Re-create faceplate type |
| Object reference not set to an instance | VIEW_IN | Missing PLC tag for an interface binding | Tag binding audit |
| Internal ERROR: hash table full | SCREEN | Project exceeds 10,000 screen objects | Split into multiple panels |
| Compile aborted (HRESULT 0x80004005) | — | IM folder write permission | Run portal as administrator |
What does "VIEW_IN" mean in the error message?
VIEW_IN is the internal object class for a faceplate instance embedded in a WinCC Advanced screen, as opposed to VIEW_T which is the faceplate type definition. The error means the engineering service could not find the property hash for a specific faceplate instance in its internal index. The fix is to rebuild the index by resetting the IM folder or by correcting the instance's style/design binding.
Is it safe to delete the IM folder in TIA Portal V15.1?
Yes, with the portal fully closed. The IM folder is a regenerable cache of compiled-internal artifacts. Delete or rename it, reopen the project, and the portal will rebuild it on the first compile. Always keep an off-portal backup of the project for 30 days after the operation to allow rollback.
Will this error corrupt my runtime panel?
No. The error is a compile-time engineering fault and does not propagate into the generated *.fwx runtime file. Panels compiled before the corruption continues to run normally. Only the engineering station is blocked until the project is repaired.
Can I upgrade to TIA Portal V16 or V17 to avoid this error?
Upgrading to V17 is the cleanest long-term fix because the hash engine was rewritten in V16 and the VIEW_IN fault class is no longer reproducible. However, the upgrade requires a V15.1 → V16 → V17 sequential migration, full project re-compile, and PLC firmware compatibility check. Budget 2-3 days of rework for a mid-sized plant.
How long does the IM folder reset take on a large project?
For a project with 50,000+ HMI tags and 200+ screens, expect 5-15 minutes for the IM folder rebuild on the first open, and another 20-45 minutes for a full Compile > Software (rebuild all). Plan the reset during a maintenance window, not during a hot-commissioning phase.