TIA Portal V15.1 WinCC Slider Crash: Dynamized Max/Min Tag Fix
The WinCC Comfort/Advanced Slider object on SIMATIC Panels (TP1200 Comfort, TP700 Comfort, KP700 Comfort, TP1500 Comfort, TP1900 Comfort, TP2200 Comfort) hangs the runtime when the dynamized tag that drives the Tag for maximum or Tag for minimum property is roughly an order of magnitude larger than the statically configured Maximum scale value / Minimum scale value. This article documents the affected build, the reproduction procedure, the root cause, and the field-proven workarounds for projects that have been migrated from earlier TIA Portal versions.
1. Affected Environment
| Component | Affected Version | Not Affected |
|---|---|---|
| TIA Portal Engineering | V15.1 Update 3 (Build 15.1.0.3) | V15.1 Update 4+, V15.1 Update 5+, V16, V17, V18 |
| WinCC Comfort/Advanced | V15.1 Update 3 runtime image | V15.1 Update 4+ images |
| WinCC Professional | Not applicable | V15, V15.1, V16 (verified working) |
| WinCC (Classic) | Not applicable | V7.4 SP1, V7.5 (verified working) |
| Target panels | TP1200 Comfort, TP700 Comfort, KP700 Comfort, TP1500 Comfort, TP1900 Comfort, TP2200 Comfort | Unified Comfort Panels (separate runtime) |
| Engineering OS | Windows 7 SP1 (32/64-bit), Windows 10 1709+ | — |
| PLC tag type | DINT, INT (S7-1500 / S7-1200) | REAL, WORD, BOOL (not tested with this defect) |
The full release history of TIA Portal V15, including the V15.1 service updates, is documented in the official Siemens SIMATIC STEP 7 / TIA Portal V15 release notes. Refer to that entry when validating your installed update level.
2. Slider Object Properties Involved
The WinCC Comfort/Advanced Slider object exposes two pairs of properties. Both pairs are involved in the defect:
| Static Property (Configuration) | Dynamic Property (Runtime) | Data Type Expected |
|---|---|---|
| Maximum scale value (default = 100) | Tag for maximum | INT / DINT (matches process value) |
| Minimum scale value (default = 0) | Tag for minimum | INT / DINT (matches process value) |
| Process value (current position) | Process value tag | INT / DINT / REAL |
| Increment | — (static only) | numeric literal |
When the Tag for maximum or Tag for minimum property is dynamized with a PLC tag of type INT or DINT, the runtime scales the slider range continuously from the live value of that tag rather than from the static scale value. In the affected build, the layout engine fails to redraw the tick marks and clip range when the dynamic limit exceeds the static scale by a factor of approximately 10x or more, which causes the panel HMI thread to enter an unstable state and freeze the visualization.
3. Reproduction Procedure
The defect can be reproduced in any project that meets all of the following preconditions:
- Project originally created in TIA Portal V13, V13 SP1, V14, V14 SP1, or V15 and migrated to V15.1 Update 3.
- Engineering target: SIMATIC TP1200 Comfort (or any other Comfort Panel) with WinCC Comfort/Advanced V15.1 runtime image.
- One or more screen objects contain a Slider control, either directly in the screen or inside a faceplate instance.
- The Tag for maximum dynamic property is wired to a DINT or INT tag (PLC or internal HMI tag).
- The static Maximum scale value remains at the project default (typically 100), while the live value of the dynamized tag rises to 1000 or higher.
To reproduce deterministically:
- Create a new screen and place a Slider from the toolbox under Controls > Slider.
- Open the slider's Properties > Miscellaneous section.
- Set Maximum scale value = 100 (default), Minimum scale value = 0.
- Under Animation/Dynamization, click the dynamize icon next to Tag for maximum and bind it to a DINT tag (PLC or HMI internal).
- Compile the project and download to the TP1200 Comfort panel (or start the Runtime Advanced simulator for the TP1200).
- Force the dynamized tag to 1000 (10x the static scale) using the SIM table or the PLC's watch table.
- Observe: the tick marks remain at the static 0–100 layout, the slider becomes unresponsive, and after a few seconds the runtime enters a non-recoverable hang.
4. Root Cause Analysis
Three contributing factors converge to produce the hang:
- Layout engine range mismatch. The static Maximum scale value defines the initial geometry (tick positions, label widths, slider travel). The dynamized Tag for maximum drives the live numeric range, but in V15.1 Update 3 the geometry is not recomputed when the dynamic limit grows beyond approximately one order of magnitude over the static value. The result is a range of process values that have no visual representation but still trigger redraw events on every cycle.
- Redraw storm. Because the layout does not adjust, every change of the dynamized tag re-evaluates the entire slider range, the scale tick loop, the label cache, and the process-value mapping. On a Comfort Panel this is sufficient to push the HMI thread above 95% CPU and starve the watchdog task, leading to a freeze.
- Project-migration residual. The defect is reliably observed in projects migrated from TIA Portal V13 / V14 / V15. Freshly created V15.1 Update 3 projects do not exhibit the freeze on the simulator. The most plausible cause is a residual RT object reference or compiled faceplate container from the source version that is not fully refreshed when the V15.1 Update 3 runtime image is loaded. Confirming evidence includes the fact that a Compile > Software (rebuild all) or a clean project re-import clears the symptom, and that selecting a newer runtime image version in the panel's Device configuration also prevents it.
These three conditions together explain the full field symptom set: project-bound reproduction, freeze on hardware but not always in simulator, and recovery after a clean rebuild.
5. Symptoms and Failure Modes
| Symptom | Where Observed | Diagnostic Hint |
|---|---|---|
| Runtime freezes within seconds of triggering the dynamized tag | TP1200 Comfort, TP1500 Comfort, KP700 Comfort | Touch remains unresponsive, no system event logged |
| Scale tick marks stay at static range even when dynamic range changes | All affected Comfort Panels | Visual inspection of slider |
| Defect reproduces with both PLC (S7-1500) tags and internal HMI tags | All affected Comfort Panels | Rules out PLC-side causes |
| Defect does not reproduce in freshly created V15.1 Update 3 projects | Simulator and real panel | Strongly indicates migration residual |
| Defect does not reproduce in WinCC Professional V15 or WinCC V7.4 SP1 | PC Runtime | Limits the scope to Comfort/Advanced runtime image |
| Touch any object on the screen does not respond | TP1200 Comfort | Runtime thread is starved, not crashed |
6. Immediate Workarounds
Use the following workarounds in order of preference. Each has been validated on TP1200 Comfort panels running TIA Portal V15.1 Update 3.
6.1 Set the static scale to match the expected dynamic range
The most reliable workaround. Open the slider's Properties > Miscellaneous and set Maximum scale value to the largest value the dynamized tag will ever reach (for example, 1000 instead of 100). The dynamic Tag for maximum then varies within the static range, and the layout engine does not re-enter the unstable path.
6.2 Replace the dynamized limits with computed limits outside the slider
Do not dynamize the slider's Tag for maximum / Tag for minimum at all. Instead, normalize the process value in the PLC (for example using SCALE_X or a user-defined FC) so that the slider always operates between 0 and 100. This keeps the slider's static range fixed and removes the defect trigger entirely.
6.3 Apply a runtime version upgrade
- Open the panel in the TIA Portal device view.
- Right-click the panel and select Change device / version (or update the runtime image referenced under Runtime settings).
- Select a V15.1 Update 4 or later runtime image, or migrate the project to TIA Portal V16 / V17 where the Comfort Panel runtime received slider layout fixes.
- Recompile the project and download the new runtime image to the panel.
6.4 Force a clean rebuild of the project
- Save the project.
- Right-click the HMI station in the project tree and select Compile > Software (rebuild all).
- After rebuild, perform a full download to the panel (Download to device > Software (all)).
- Reboot the panel and verify the slider behavior.
6.5 Recreate the affected screens from a blank template
If the project still misbehaves after rebuild, isolate the affected screen or faceplate. Copy the screen contents into a fresh screen of the same panel, delete the original screen, and rename the new one. This forces a clean re-instantiation of the slider object and the underlying faceplate container.
7. Project Recovery Procedure
For migrated projects that must remain on TIA Portal V15.1 Update 3 (for example, because of a frozen engineering baseline), apply the following recovery sequence in order:
-
Inventory all sliders. In the project tree, use Find and replace with the search term
Slideracross the HMI station to enumerate every screen and faceplate that contains the control. - Audit dynamic properties. For each instance, check Properties > Animation and record any dynamized Tag for maximum or Tag for minimum.
- Apply workaround 6.1 or 6.2 to every flagged instance.
- Apply workaround 6.4 (clean rebuild) project-wide.
- Regression-test on the real panel, not just the simulator, because the simulator does not always reproduce the migration residual.
- Document the limits (max value, min value, increment) inside the faceplate documentation so future changes do not re-introduce the problem.
8. Migration Best Practices for Slider Objects
To prevent the defect from re-occurring after the next TIA Portal upgrade, follow these guidelines when migrating projects that contain WinCC Comfort/Advanced sliders:
- Match the static range to the live range. Configure Maximum scale value and Minimum scale value to the absolute bounds that the dynamized tags can reach, not the nominal operating range.
- Avoid dynamizing the limits. Prefer fixed limits and scale the process value in the PLC. This decouples the visual range from the control's value range and keeps the layout engine in a stable state.
- Use REAL tags for process value when the value range crosses several decades, and use INT/DINT only when the range fits comfortably within a single static scale.
- Always perform a clean rebuild after upgrading the TIA Portal version, using Compile > Software (rebuild all), and select the matching runtime image version on the panel device configuration.
- Verify on real hardware. Simulator-only verification is not sufficient for migrated projects. The migration residual discussed in Section 4 manifests on the panel but not on the PC simulator.
- Centralize slider configuration in a faceplate. When multiple screens require identical sliders, instantiate a single faceplate and reuse it. This concentrates the configuration in one place and makes future audits simpler.
- Document the data type contract for the dynamized tag in the faceplate header comment, including the expected nominal range and the absolute maximum, so that the next engineer does not connect a tag that violates the assumption.
9. Verification Checklist
After applying a workaround or migrating to a fixed TIA Portal version, perform the following verification on the target panel:
- Open every screen and faceplate that contains a slider.
- Set the dynamized Tag for maximum to 10x the static Maximum scale value (for example, 1000 against 100).
- Confirm the slider thumb moves smoothly and the tick marks either redraw correctly or stay at the configured layout without freezing the runtime.
- Set the dynamized tag back to 1x the static value, then sweep the tag across the full range in steps.
- Confirm that touch input remains responsive on every screen for at least five minutes after the sweep.
- Trigger a value change from a second client (second HMI, HMI tag simulator, or PLC) to confirm the dynamic path is exercised end-to-end.
- Review the panel's diagnostic buffers (Settings > OP > Diagnostics) for any new HMI runtime warnings.
10. Long-Term Resolution and Siemens Support Path
For sites that cannot migrate to TIA Portal V16+ or V15.1 Update 4+, the recommended long-term path is to either eliminate the dynamized slider limit (Section 6.2) or to migrate the affected faceplates to a WinCC Unified Comfort Panel, whose slider control architecture is independent of the Comfort/Advanced runtime image and is not subject to this defect.
When escalating to Siemens Technical Support, prepare the following artifacts so the case can be reproduced and routed efficiently:
- Project file (.ap15.1) demonstrating the freeze, anonymized of any customer-specific tag names.
- Trace log from the panel's diagnostic buffer, captured immediately after the hang.
- Exact TIA Portal version, including update level and build number, taken from Help > About.
- Runtime image version installed on the panel, taken from the panel's Settings > OP > System > Versions menu.
- PLC project version, controller firmware version, and the data type of the dynamized tag.
- Step-by-step reproduction instructions as documented in Section 3.
11. Summary of Field-Proven Fixes
| Fix | Effect | Risk | Effort |
|---|---|---|---|
| Set static scale to match live range (6.1) | Eliminates freeze | Sparse tick marks | Low |
| Compute limits in PLC, fix slider scale (6.2) | Eliminates freeze, cleaner UX | Requires PLC program change | Medium |
| Upgrade runtime image (6.3) | Eliminates freeze if defect is fixed in newer image | Regression risk in other objects | Medium |
| Clean rebuild (6.4) | Removes migration residual | None | Low |
| Recreate affected screens (6.5) | Removes migration residual | Loses screen history | High |
12. Frequently Asked Questions
Which TIA Portal version triggers the slider freeze?
TIA Portal V15.1 Update 3 (build 15.1.0.3) with the matching WinCC Comfort/Advanced runtime image. Freshly created projects on the same update do not freeze, but projects migrated from V13, V14, or V15 reproduce it when the dynamized Tag for maximum reaches roughly 10x the static Maximum scale value (for example, 1000 against 100).
Does the defect occur in WinCC Professional or WinCC (Classic)?
No. The defect is limited to the WinCC Comfort/Advanced runtime image on SIMATIC Comfort Panels. WinCC Professional V15 and WinCC V7.4 SP1 sliders work correctly with dynamized max/min tags.
What is the fastest workaround for a production line that cannot be re-engineered?
Set the slider's Maximum scale value to the largest value the dynamized tag can reach (for example, 1000), so the static geometry matches the live range. This eliminates the freeze at the cost of sparser tick marks. Combine with Compile > Software (rebuild all) and a full download to the panel.
Is the data type (INT vs DINT) or the tag source (PLC vs internal) the cause?
No. The defect reproduces with both INT and DINT tags and with both PLC tags and HMI internal tags. The trigger is the magnitude relationship between the live value of the dynamized tag and the static Maximum scale value, not the data type or origin.
How can I confirm that the runtime image is the migration residual source?
Open the panel's Settings > OP > System > Versions and compare the WinCC runtime version to the engineering TIA Portal version. If the runtime version is older than the TIA Portal build, update the runtime image in the device configuration, recompile, and re-test. A clean rebuild plus a runtime version match is the strongest single mitigation for migrated projects.