1. Problem Summary
WinCC V15.1.0.0 raises the compiler warning "The Tahoma font does not support the following characters" when compiling HMI projects that target SIMATIC Basic panels (KTP400, KTP700, KTP1200, TP1500). The warning appears in the Inspector window under Compile > Warnings, and the corresponding entry links to the runtime settings of the panel where the unresolved glyphs were detected. The warning can be opened from the project tree via the green shortcut arrow beside the warning text, which navigates directly to the HMI device's language and font configuration.
The issue presents itself even when:
- Only one project language is configured in the HMI device.
- All project texts (alarms, text lists, screen labels) have been verified to fall inside printable ASCII (0x20–0x7E).
- The user has reimported corrected XLSX exports through Languages & Resources > Project texts > Edit > Import.
- Both the engineering tool (WinCC V15.1.0.0) and the panel device firmware have been refreshed to V15.1.0.0.
Despite all of the above checks, the warning remains. The compile result still produces a downloadable runtime image, but the project is flagged for review. End users commissioning the panel see unrendered boxes (tofu) on diagnostic screens, where the underlying characters cannot be drawn by the bundled Tahoma font.
2. Affected Versions and Panels
| Panel | Device Version | Tool Version | Warning? |
|---|---|---|---|
| KTP400 Basic | 15.1.0.0 | WinCC V15.1.0.0 | Confirmed |
| KTP700 Basic | 15.0.0.0 | WinCC V15.0.0.3 | No |
| KTP700 Basic | 15.0.0.0 | WinCC V15.1.0.0 | Yes |
| KTP700 Basic | 15.1.0.0 | WinCC V15.1.0.0 | Yes |
| KTP1200 Basic | 15.1.0.0 | WinCC V15.1.0.0 | Yes |
| TP1500 Basic | 12.0.0.0 | WinCC V15.1.0.0 | Yes |
| TP1500 Basic | 15.0.0.0 | WinCC V15.1.0.0 | Yes |
| KTP1200 Basic | 14.0.0.0 | WinCC V15.1.0.0 | Yes |
The downgrade of the panel device image from V15.1.0.0 to V14.0.0.0 does not eliminate the warning. Field confirmation shows that the warning is generated by the engineering tool's compiler, not by the device image, which explains why the device downgrade has no effect.
3. Root Cause Analysis
The PLC diagnostic object (Toolbox > Controls > Diagnostics > PLC diagnostic in the TIA Portal toolbox) inserts a screen element that, at runtime, renders system diagnostic events from the connected S7 controller. The display strings for these events are not authored by the user; they are part of the WinCC internal text catalog. Specific code points in this catalog—commonly used punctuation such as — (em dash, U+2014), … (ellipsis, U+2026), or ' (right single quotation mark, U+2019)—are not present in the Tahoma glyph table that ships with WinCC V15.1 Basic panel runtimes.
The Tahoma typeface bundled with WinCC V15.1 panel device images covers the following Unicode blocks:
- Basic Latin (U+0000–U+007F)
- Latin-1 Supplement (U+0080–U+00FF)
- Latin Extended-A (U+0100–U+017F)
- General Punctuation, partial (U+2000–U+206F subset)
- Currency Symbols, partial
Diagnostic system text strings include characters that fall into less-covered sub-ranges of General Punctuation, such as:
| Character | Unicode | Typical Use | Tahoma Coverage |
|---|---|---|---|
| — (em dash) | U+2014 | Diagnostic event descriptions | No |
| – (en dash) | U+2013 | Range separator | Limited |
| … (ellipsis) | U+2026 | Truncated messages | No |
| ' (right single quote) | U+2019 | Apostrophe replacement | No |
| " (right double quote) | U+201D | Quotation marks | No |
| • (bullet) | U+2022 | List bullets | Limited |
| ← ↑ → ↓ (arrows) | U+2190–U+2193 | Navigation icons in diagnostics | No |
| × (multiplication sign) | U+00D7 | Bit-pattern separators | Yes |
| ° (degree sign) | U+00B0 | Unit text in diagnostics | Yes |
Because the offending strings are embedded in WinCC's binary text catalog and not in the user's project, neither the Project texts > Export workflow nor any XLSX reimport can remove them. The warning is a genuine indication that at least one character from the panel's runtime font catalog is missing for the PLC diagnostic view.
4. Diagnostic Procedure
- Open the Inspector window. In TIA Portal, select View > Inspector. The warning will appear in the Compile > Warnings tab.
- Click the green shortcut arrow next to the warning. TIA Portal navigates to the panel's runtime settings where the offending font configuration is referenced.
- Check the project texts. Navigate to Languages & Resources > Project texts. Export all texts via Edit > Export project texts.
-
Inspect the XLSX file in a text-aware editor such as Notepad++ or Visual Studio Code. Apply the following regular expression search to flag any character outside printable ASCII:
Repeat the same regex over the entire project text set including alarm classes.[^\x00-\x7F] - Check the alarm text catalog. Repeat the export/inspection procedure for HMI alarms > Discrete alarms and HMI alarms > Analog alarms, as alarm texts are stored in a separate internal table.
- Enable the system diagnostic view on a test screen. Insert a fresh PLC diagnostic object on a new screen and compile. If the warning is reproduced on a minimal project that contains only the diagnostic object, the issue is confirmed as originating from that control.
-
Use a PowerShell scan script to identify any project file containing characters outside printable ASCII:
Get-ChildItem -Recurse -Include *.txt,*.csv,*.xlsx | ForEach-Object { $content = Get-Content $_ -Raw -Encoding UTF8 if ($content -match "[^\x00-\x7F]") { Write-Host "$($_.FullName) contains non-ASCII characters" } } - Document the panel device version via Online > Accessible nodes when the panel is online. The warning persists across device versions because the toolchain is the source of the warning, not the runtime.
5. Workarounds and Solutions
5.1 Font Replacement
The fastest mitigation is to change the runtime font for the affected panel from Tahoma to a font that contains the missing glyphs. Monaco is one option confirmed to resolve the warning; Verdana, Arial Unicode MS, and Segoe UI Symbol are also viable on panels that bundle them.
To change the runtime font:
- Open the panel device configuration in TIA Portal.
- Navigate to Runtime settings > Language & font.
- Under Default font, select Monaco (or another font with broader Unicode coverage).
- Recompile the project.
The compile warning will be eliminated as long as the replacement font contains all the code points used by the PLC diagnostic view. Confirm by checking that the Compile > Warnings tab is empty for the panel.
5.2 Removing the PLC Diagnostic Object
If the PLC diagnostic view is not required at runtime, removing the control from all screens and re-compiling eliminates the warning. Field confirmation shows that a project containing only the PLC diagnostic view reproduces the warning; removing the view alone clears it. This is the cleanest long-term mitigation for projects that do not use the controller diagnostics on the panel.
5.3 Downgrading the Toolchain
Rolling the engineering tool back to WinCC V15.0.0.3 (the last build that did not produce the warning) is a valid workaround when project timing pressures force an immediate commissioning. Note that:
- Tooling downgrade affects the entire TIA Portal installation; a parallel install is required to maintain V15.1 projects for other controllers.
- V15.0.0.3 does not support all S7-1500 CPU firmware versions added after its release.
- License keys for V15.0.0.3 must be retained or migrated back from the V15.1 license server.
5.4 Limiting the PLC Diagnostic to ASCII Text
For projects that require the PLC diagnostic view, configure the diagnostic buffer to display only messages that contain ASCII-only text. In the S7 controller program, restrict the use of punctuation in DiagStatusBits strings to the 7-bit ASCII set. This eliminates most—but not all—of the offending characters, because Siemens internal system messages still use non-ASCII punctuation.
5.5 Avoiding the Inverse Slash in WinCC Unified Targets
For projects migrating to WinCC Unified RT Unified, the special characters that are not supported in tag and text identifiers include:
| Character | Symbol | ASCII Hex |
|---|---|---|
| Pipe | | | 0x7C |
| Forward slash | / | 0x2F |
| Backslash | \ | 0x5C |
| Period | . | 0x2E |
| Comma | , | 0x2C |
These characters are not permitted in tag names, screen names, or text list identifiers in Unified RT projects. Using them produces compile errors that block the download. Treat them as reserved characters regardless of the runtime font.
5.6 Workaround Comparison
| Workaround | Risk | Effort | Effect on Layout | Permanent? |
|---|---|---|---|---|
| Replace Tahoma with Monaco | Low | 5 min | Minor reflow | Yes |
| Remove PLC diagnostic object | High (loss of feature) | 30 min | None | Yes |
| Downgrade to V15.0.0.3 | Medium (license/cpu FW) | 4+ hours | None | No (regression) |
| Restrict diagnostic to ASCII | Medium | 1–2 hours | None | Partial |
| Upgrade to TIA V17+ | Low | 8+ hours | None | Yes |
6. Diagnostic Flowchart
7. Windows Display Scaling Interaction
A secondary layout issue that often surfaces when more than one engineer programs a single WinCC Advanced Runtime target is Windows display scaling. The TIA Portal editor renders screen elements according to the active Windows DPI setting:
- 100% (96 DPI) — native
- 125% (120 DPI) — Microsoft default on many Windows 10 installations
- 150% (144 DPI) — common on 4K laptops
If engineer A works at 100% and engineer B works at 150%, the project files saved by each engineer embed different metric offsets for screen objects. When the project is loaded on a customer PC running the runtime at 125%, the resulting layout does not match either engineer's preview. Buttons overlap, text containers clip, and labels appear truncated.
To eliminate this source of variance:
- Standardize the Windows DPI on every engineering PC that touches the project.
- Open Settings > Display > Scale & layout.
- Set the scaling to a single value (commonly 100%) for the entire team.
- Disable per-monitor DPI awareness overrides that TIA Portal may set during its own installation.
- Verify the runtime on the target PC at the same scaling factor before signing off on layout.
8. Cross-Version Compatibility Matrix
| TIA Version | Released | Last Update | Tahoma Warning? | Notes |
|---|---|---|---|---|
| V13 SP1 | 2014 | Update 9 | No (early builds) | Initial TIA Basic panel support |
| V13 SP2 | 2015 | Update 5 | Conditional | Diagnostic view expansion |
| V14 SP1 | 2016 | Update 7 | Conditional | System text catalog expanded |
| V15 | 2017 | V15.0.0.3 | No | Last clean build |
| V15.1 | 2018 | V15.1.0.0 | Yes (with PLC diag) | Warning introduced |
| V16 | 2019 | V16.0.0.5 | Yes | Warning persists |
| V17 | 2021 | Update 4 | Reduced | System text catalog revised |
| V18 | 2022 | Update 2 | No | Tahoma glyphs extended |
| V19 | 2023 | Update 1 | No | Resolved |
| V20 | 2024 | V20.0.0.0 | No | Unified RT focus |
The warning peaks with V15.1 and V16, then is progressively reduced as Siemens expands the runtime font catalog with each major release. Projects targeting V17 or later can typically disable the workaround if the panel image is also upgraded.
9. Verification Procedure
- Save and close the project.
- From the project tree, right-click the panel device and select Compile > Software (rebuild all).
- Open the Inspector window and confirm the Compile > Warnings tab is empty for the Tahoma font warning.
- If the warning persists, repeat with the replacement font applied at the screen level (Tools > Font mapping).
- Download the rebuilt runtime to the panel and observe the PLC diagnostic screen. Confirm every diagnostic event shows fully rendered text without tofu boxes.
- From the engineering PC, connect Online > Accessible nodes to the panel and verify the panel firmware version matches the device version used during compile (e.g., 15.1.0.0).
- Trigger a controlled diagnostic event from the S7 program (e.g., a deliberate STOP-to-RUN transition) and confirm the event text renders correctly on the panel.
- Verify the existing Windows DPI setting on the customer PC matches the engineering PC DPI, or re-check all screens at the customer's DPI before sign-off.
10. Long-Term Recommendations
- When designing new HMI projects targeting Basic panels, prefer standard 7-bit ASCII punctuation (`,` `.` `:` `;`) in any user-authored text. Reserve Unicode punctuation for Comfort Panels and Unified RT panels, which bundle wider font support.
- Avoid coupling PLC diagnostic views to screens that are part of the customer's primary operator workflow. If the diagnostic view is required, isolate it to a maintenance screen accessed by a button combination or password.
- Maintain a toolchain audit log that records the exact TIA Portal version and update level used for each project. This simplifies rollback when a new tool version introduces regressions such as the V15.1 Tahoma warning.
- For multi-engineer teams, document the Windows DPI setting in the project README and enforce it through a Group Policy object (GPO) when the engineering workstations are domain-joined.
- Track the official Siemens Industry Online Support portal for TIA Portal update releases that expand the runtime font catalog. The WinCC Unified RT Unified permitted special characters reference and the related Microsoft support note on Tahoma font styles provide additional context for teams migrating from WinCC V15.1 to Unified.
11. Frequently Asked Questions
What does the Tahoma font warning actually block?
The warning does not block the download. The compile succeeds and the runtime is generated. The warning signals that at least one runtime text element contains a code point the bundled Tahoma font cannot draw. The visible result on the panel is unrendered tofu boxes or missing characters, particularly on the PLC diagnostic screen.
Does removing the PLC diagnostic object really eliminate the warning?
Yes. Field tests on minimal projects containing only the PLC diagnostic object reproduce the warning. Removing the object from all screens and recompiling clears the warning, which confirms that the diagnostic view's internal system text catalog is the source.
Can I downgrade the panel firmware to avoid the warning?
No. The warning is produced by the engineering tool's compiler (TIA Portal V15.1.0.0), not by the panel runtime. Downgrading the device image to V14.0.0.0 has no effect on the warning because the offending code points are baked into the WinCC catalog used by the compiler itself.
Which fonts are confirmed to resolve the warning?
Monaco is confirmed to resolve the warning on KTP and TP Basic panels. Verdana, Arial Unicode MS, and Segoe UI Symbol are also viable on panels that bundle them. Always verify the panel image includes the replacement font; otherwise the panel will substitute its default font and may re-introduce missing glyphs.
Are pipe, slash, backslash, dot, and comma allowed in WinCC Unified?
No. According to the official WinCC Unified RT documentation, the characters | / \ . and , are not supported in tag names, screen names, or text list identifiers in Unified RT projects. Using them produces a compile error that prevents the download and is unrelated to the Tahoma glyph coverage on Basic panels.