Resolving WinCC Comfort V13 Multiple-Bit Animation Display Issues
When configuring Display/Appearance animations on a Siemens TP1900 Comfort panel running WinCC Comfort V13 (TIA Portal V13), engineers frequently encounter a behavior where a status rectangle returns to its initial gray fill whenever more than one bit of the source tag is set simultaneously. This reference documents the underlying cause, three field-proven remediation paths, and the configuration steps required to restore correct multi-bit visualization without redesigning the entire HMI screen.
1. Problem Statement
A status word is bound to a 16-bit integer HMI tag where each bit carries an independent meaning:
| Bit | Meaning | Configured Appearance |
|---|---|---|
| 0 | Object in work | Solid green fill |
| 1 | Manual mode | Solid yellow fill |
| 2 | Error | Blinking red fill |
The engineer places a rectangle on the screen, opens Properties → Animations, adds a Display/Appearance animation of trigger type Multiple bits, and configures three table rows that map bits 0, 1, and 2 to the three colors above. When only one bit is set at runtime, the rectangle adopts the configured color. When any combination of two or three bits is set (e.g., manual mode + error), the rectangle snaps back to the design-time initial (gray) fill. There is no compiler warning, no runtime alarm, and the tag value remains unchanged in the diagnostics view.
2. Affected Versions and Components
| Component | Build / Catalog | Behavior |
|---|---|---|
| Engineering software | WinCC Comfort V13 (TIA Portal V13 base) | Exact-match lookup only; no bit-selection override |
| Engineering software | WinCC V13 SP1 UPD3 PRO | Adds the Bit selection for appearance runtime option |
| HMI runtime target | TP1900 Comfort (e.g., 6AV2 124-1UC02-0AX0) | Verified panel family; same logic applies to TP700 / TP900 / TP1200 / TP1500 Comfort |
| Runtime class | WinCC RT Advanced | Check-box lives in RT project settings of the HMI device |
| HMI tag type | Int, UInt, Word | Animation engine reads the raw bit pattern |
The TP1900 Comfort is a 19-inch widescreen panel from the Comfort family with WinCC RT Advanced as the runtime. The animation lookup engine is shared across all Comfort panels; only the display size and number of available tags differ.
3. Root Cause Analysis
The Multiple bits animation type is implemented as an exact-match state-table lookup. At runtime, the engine reads the current value of the source tag and scans the configured table rows from top to bottom, applying the appearance associated with the first row whose value equals the tag value. If no row matches exactly, the object falls back to its static design-time initial appearance—the gray fill configured at edit time. The table is therefore a state-table, not a priority encoder.
For a three-bit status word the reachable values are 0..7:
| Tag Value (dec) | Tag Value (bin) | Configured Row Match | Rendered Appearance |
|---|---|---|---|
| 0 | 0000 0000 | none | Gray (initial) |
| 1 | 0000 0001 | row 0 (bit 0) | Green |
| 2 | 0000 0010 | row 1 (bit 1) | Yellow |
| 3 | 0000 0011 | none | Gray (initial) |
| 4 | 0000 0100 | row 2 (bit 2) | Blinking red |
| 5 | 0000 0101 | none | Gray (initial) |
| 6 | 0000 0110 | none | Gray (initial) |
| 7 | 0000 0111 | none | Gray (initial) |
The runtime only finds an exact match in the three single-bit rows. Any multi-bit combination is "not defined" from the engine's perspective, so it renders the design-time initial state. This behavior is intentional, not a defect, and exists to preserve the deterministic lookup semantics introduced with the first TIA Portal generation. The general procedure to attach a Display/Appearance animation is documented in the official WinCC Advanced V13.0 SP1 help system (Siemens support entry ID 109091876).
4. Solution A — Enable Bit Selection for Appearance
WinCC V13 SP1 UPD3 PRO introduces a project-level runtime switch that replaces the exact-match lookup with a least-significant-bit (LSB) priority encoder. The runtime tooltip reads verbatim:
Specifies that bit selection is used for appearance analysis on this HMI device. If enabled, in each case the color and the flashing that has been configured for a set bit with the least significance is shown. If disabled, the color and the flashing that has been configured for a set bit only is shown. This setting is deactivated by default to maintain downward compatibility.
With the same three-row table described in section 1, enabling the option yields:
| Tag Value | LSB Set | Rendered Appearance |
|---|---|---|
| 1 (bit 0) | 0 | Green |
| 2 (bit 1) | 1 | Yellow |
| 4 (bit 2) | 2 | Blinking red |
| 3 (bits 0+1) | 0 | Green |
| 5 (bits 0+2) | 0 | Green |
| 7 (bits 0+1+2) | 0 | Green |
| 6 (bits 1+2) | 1 | Yellow |
4.1 Configuration Path
- In the TIA Portal project tree, select the HMI device (TP1900 Comfort).
- Open Runtime settings from the inspector window or right-click context menu.
- Navigate to the Screens category in the left pane.
- Tick the Bit selection for appearance checkbox.
- Recompile the HMI project (full, not incremental) so the new runtime flag is embedded in the image.
- Download to the panel and verify with a known multi-bit tag value (see section 8).
5. Solution B — Define Value Combinations Instead of Bits
If the bit priorities do not map to LSB-wins semantics, replace the Multiple bits animation with an animation that lists every reachable combination as an explicit row. For three independent bits you must enumerate 2³ = 8 rows; the maximum number of rows supported in a single animation table is 50, so up to a five-bit status word (32 rows) remains tractable inside a single table.
| Row | Value | Bit Pattern | Appearance | Meaning |
|---|---|---|---|---|
| 0 | 0 | ---- ---- | Gray (initial) | No state active |
| 1 | 1 | ---- ---1 | Green | In work |
| 2 | 2 | ---- --1- | Yellow | Manual |
| 3 | 3 | ---- --11 | Yellow with green outline | Manual while running |
| 4 | 4 | ---- -1-- | Blinking red | Error |
| 5 | 5 | ---- -1-1 | Blinking red + green outline | Error while running |
| 6 | 6 | ---- -11- | Blinking red + yellow outline | Error while manual |
| 7 | 7 | ---- -111 | Blinking red + amber outline | Error + manual + run |
This approach scales linearly with the bit count and remains fully deterministic. It is the recommended pattern when the application logic must reach every combination and every combination carries distinct meaning. The drawback is that any change in the bit semantics requires editing the table; row count growth can also reach the 50-row ceiling for six or more bits, forcing a switch to Solution C.
5.1 Configuration Path
- Select the rectangle, open Properties → Animations.
- Remove the existing Display/Appearance animation of type Multiple bits.
- Add a new Display/Appearance animation.
- Change the trigger type from Multiple bits to Value range (or Bit in some TIA Portal builds—check the inspector dropdown).
- Bind the same status-word HMI tag.
- Add a row for every combination listed in the table above and assign the appearance for each row.
- Compile, download, and verify per section 8.
6. Solution C — Layered Visibility Animation
When the operator must simultaneously see more than one state (for example, a permanent color for the operating mode plus a blinking overlay for faults), split the visualization into N stacked rectangles—one per logical state—and use the Visibility animation instead of Appearance. Each rectangle is bound to a single bit and rendered only when that bit is set. Z-order determines the visual priority: place the most critical state at the top of the layer stack so its blinking animation is not occluded.
6.1 Configuration Path
- Stack three identical rectangles at the same screen coordinates. In the WinCC Comfort layer palette, drag them so that the lowest-priority bit is at the bottom and the highest-priority bit is on top.
- Set the initial Visibility property of each rectangle to Hidden.
- For each rectangle, open Properties → Animations and add a Visibility animation.
- Select trigger type Bit and bind the appropriate bit (0, 1, or 2) of the status word.
- Configure the blink on the topmost rectangle by adding a separate Flashing property animation, or use the built-in Flashing property of the rectangle's background color.
The layered approach is the most flexible: it scales beyond the 50-row table limit, supports arbitrary overlays, and lets each state keep its own animation timing. The trade-off is increased screen-object count and a slightly larger RT memory footprint; on the TP1900 Comfort this rarely matters because the panel ships with ample RAM for hundreds of layered objects.
7. Choosing the Right Solution
| Criterion | A: Bit selection | B: Value combinations | C: Layered visibility |
|---|---|---|---|
| Minimum engineering build | WinCC V13 SP1 UPD3 PRO | WinCC Comfort V13 base | WinCC Comfort V13 base |
| Visible state with all bits set | Lowest-significant bit wins | Defined per row | All enabled layers visible |
| Scalability (bits) | Unlimited (priority-encoded) | Practical up to 5 bits (32 rows) | Unlimited (one rectangle per bit) |
| Configuration effort | Single checkbox | 2ⁿ rows for n bits | n rectangles, n animations |
| CPU / RT memory impact | Negligible | Negligible | Linear with layer count |
| Reversibility | Project setting only | Animation table edit | Object removal required |
| Recommended use | Priority-encoded alarms | Distinct combinational states | Overlapping overlays (fault + mode) |
| Migration risk to newer TIA Portal | Low | Low | None |
8. Tag Configuration Prerequisites
Before any animation will work reliably, the HMI tag must satisfy the following requirements:
-
Data type: Use
Int,UInt, orWordas the HMI tag data type. AvoidBool—WinCC will not interpret bit patterns on a single boolean. -
Length: The tag must be at least 16 bits wide to hold the standard status word. WinCC allows 8-bit, 16-bit, and 32-bit unsigned integers; 16-bit is the canonical choice for status words because it matches the S7
WORDPLC type. - Acquisition: Set acquisition mode to Cyclic continuous with a poll interval of 1 s for status words that change rarely; 500 ms for fast-changing alarms. Do not set acquisition to On demand for animations; WinCC only evaluates animations when the source tag updates.
- PLC connection: The HMI tag must be tied to a valid PLC tag or DB bit-pattern source. Tag consistency errors will silently disable the animation and the rectangle will remain on its initial fill.
9. Verification Procedure
- Compile the HMI project fully (not incremental) to force regeneration of the animation tables and runtime flags.
- Download to the TP1900 Comfort panel using either Ethernet (S7ONLINE access point) or USB/PROFINET.
- Open the WinCC Runtime Simulator via Tools → Start Runtime, or force values directly on the connected PLC with PLCSIM.
- Force the status word to each of the test values 0, 1, 2, 3, 4, 5, 6, 7 and confirm visually that each value produces the expected rectangle appearance.
- Open Project → Compiler output and confirm there are no warnings tagged with the animation reference.
- Power-cycle the panel and repeat the test to confirm the configuration survives a cold start.
- If the project uses Solution A, also verify that switching from a multi-bit value (e.g., 3) to a single-bit value (e.g., 1) updates the rectangle within one acquisition cycle.
10. Performance Considerations on TP1900 Comfort
The TP1900 Comfort runs WinCC RT Advanced on an ARM-class processor with limited CPU budget for the rendering thread. Practical limits derived from Siemens application notes and field deployments:
- Maximum animated objects per screen: approximately 50 simultaneous Display/Appearance or Visibility animations without visible flicker at the default 500 ms acquisition cycle. The exact limit depends on the panel's other load (trend views, alarm logs, scripts).
- Layered rectangles (Solution C): keep each layer count below 6 per logical area; more than 6 stacked transparent objects can cause visible redraw artifacts during fast tag changes.
- Blinking property: do not stack more than 3 blinking rectangles on the same screen; the WinCC RT Advanced blink scheduler uses a single timer per panel and excessive subscribers can desynchronize.
- Acquisition cycle: 1 s is sufficient for human-operated status words. Dropping to 250 ms or lower offers no perceptible benefit and increases CPU load by 4×.
11. Migration Notes from V13 to V16 / V17 / V20
- The Bit selection for appearance option remains disabled by default in V14, V15, V15.1, V16, V17, and V20 to preserve the V13 behavior. Existing projects therefore keep the same gray-on-multi-bit behavior unless the option is deliberately enabled.
- WinCC RT Professional (introduced as a runtime option in V18 and continued in V19/V20) replaces the appearance-animation concept with Property animations driven by tag value ranges. See the official TIA Portal V20 help topic Dynamization with property animations (RT Professional) at docs.tia.siemens.cloud for the migration mapping.
- Layered visibility animations (Solution C) survive the migration untouched because they use only primitive screen objects and basic Visibility animations.
- Tag data types and acquisition cycles are preserved across project upgrades; verify that the PLC connection name has not changed if the project is re-tied to a different CPU.
12. Troubleshooting Matrix
| Symptom | Likely Cause | Recommended Fix |
|---|---|---|
| Rectangle stays gray on single-bit tag value | Animation type set to Bit but no row for the active value | Add an explicit row, or switch the trigger type to Value range |
| Rectangle stays gray on multi-bit value | Exact-match table does not include that combination | Apply Solution A, B, or C |
| Wrong color shown on multi-bit value | Bit selection enabled but LSB is not the lowest-priority state | Reorder bits, disable the option, or switch to Solution B |
| Blink frequency wrong or absent | Flashing property not attached to the same row as the color | Add a separate Flashing property animation on the same rectangle |
| Animation disappears after compile | Tag length mismatch (INT vs. WORD) on the PLC side | Verify PLC tag is INT/UINT/WORD; a mismatch truncates the value and the animation never fires |
| Works in simulator, fails on panel | Runtime image on panel is older than the build that introduced the option | Update the panel image via ProSave, or stick to Solution B / C |
| Performance lag on TP1900 with many animations | Too many overlapping layered rectangles | Consolidate via Solution B; reduce layers to fewer than 6 per area |
| Tag value updates but color does not | Acquisition mode set to On demand | Switch the HMI tag acquisition mode to Cyclic continuous |
| Animation visible only on screen change | Animation tied to the wrong tag (HMI internal instead of PLC) | Re-bind the animation to the PLC-sourced HMI tag |
13. Official Documentation References
- WinCC Advanced V13.0 SP1 — Configuring a new animation (Siemens support entry ID 109091876): documents the inspector-window workflow to attach an animation to a screen object.
- TIA Portal V20 — Dynamization with property animations (RT Professional): docs.tia.siemens.cloud — the equivalent mechanism when migrating to WinCC RT Professional.
Why does my WinCC Comfort V13 multi-bit appearance animation show gray when multiple bits are set?
WinCC Comfort V13's "Multiple bits" animation uses exact-match lookup against the configured table. Any bit combination not listed as an explicit row falls back to the design-time initial (gray) appearance. This is intentional behavior, not a defect. Enable Bit selection for appearance in Runtime settings, switch to a value-range animation with all combinations listed, or layer visibility rectangles to resolve it.
Where is the "Bit selection for appearance" checkbox located in WinCC V13?
Open the HMI device in the TIA Portal project tree, right-click and select Runtime settings, then navigate to Screens. The checkbox appears at the top of the screen list. It was introduced in WinCC V13 SP1 UPD3 PRO and is deactivated by default for backward compatibility with earlier projects.
Does enabling Bit selection for appearance hide a critical alarm behind a lower-priority state?
Yes. With the option enabled, the least-significant set bit always wins. If bit 2 represents a critical error and bit 0 represents normal operation, the normal-operation bit being set will hide the error color. Use Solution B (value combinations) or Solution C (layered visibility) when the priority order does not match LSB order.
Can I mix Multiple bits and Value range animations on the same rectangle?
No. A given rectangle accepts only one Display/Appearance animation at a time. To combine behaviors, add a second animation of a different type (e.g., a Flashing property animation) or split the visualization across multiple stacked rectangles using Solution C.
What is the maximum number of rows in a WinCC Comfort animation table?
WinCC Comfort and WinCC Advanced allow up to 50 rows per appearance or value-range animation. With three independent bits requiring eight rows, you remain well within the limit; the practical ceiling for bit-only encoding is five bits (32 rows). Beyond five bits, switch to Solution C (layered visibility).
Will my V13 project keep working after I upgrade TIA Portal to V16 or V20?
Yes. The exact-match lookup behavior is preserved across V13, V14, V15, V15.1, V16, V17, and V20 to maintain backward compatibility. The "Bit selection for appearance" option also remains available but disabled by default, so your multi-bit animations will still show gray on undefined combinations unless you explicitly enable it.