Fixing TIA Portal V13 HMI Compile Error: Missing Graphic in TP700 Comfort Panel
When migrating or translating a TIA Portal V13 SP2 project containing a SIMATIC TP700 Comfort Panel, the HMI compile operation can fail with a "missing graphic" error, even though other HMI devices in the same project compile successfully. This is a project-graph integrity problem, not a TIA Portal installation problem, and it is one of the most common issues when a project is delivered without the complete set of referenced external resources. The following reference walks through the cause, the diagnostic path, three viable solutions, and the verification procedure that should be performed before the project is handed back to production.
1. Problem Description
A TIA Portal V13 SP2 engineering station receives a complete TIA project (
Observed behavior:
- The TP700 Comfort device reports a compile error of the form "Graphic 'Bilder1\X' could not be found" or "The graphic is not in the graphics list".
- The compile of the KTP400 Basic and KTP700 Basic HMIs in the same project completes without error.
- The graphics list in question (for example, Bilder1) is referenced by a screen but the referenced graphic object is absent from the project library.
- Inspection of Project navigation > HMI_1_Leinpumpe > Text and graphic lists > Graphic lists > Bilder1 reveals either an empty list, a list with one or more entries whose graphic column shows a red placeholder, or a list whose entries reference graphic files that do not exist on the local engineering file system.
The factory that created the project can compile the same project file successfully, because the original programmer's local Project library or Global library still contains the missing graphic. The receiving engineer's environment does not, because external resources are stored relative to the project path and are not embedded into the .ap13 project archive by default.
2. Root Cause Analysis
The WinCC Comfort / WinCC Advanced engineering component (the HMI side of TIA Portal V13 SP2) maintains a project-specific graphic pool and a separate graphic list structure. The graphic list Bilder1 is a text-bound symbolic table that maps an internal symbolic name (used by the runtime screens) to an actual graphic resource. When a screen object references a symbolic graphic name from Bilder1, the compiler must resolve that symbol to a file in the graphic pool at compile time.
Three root-cause conditions are typical in TIA Portal V13 SP2:
| Cause | Symptom in project tree | Why TP700 only |
|---|---|---|
| Referenced graphic file not delivered with the project | Graphic list entry exists, graphic column blank or red X | Only TP700 uses the screen that references Bilder1 |
| Graphic list entry references a file path that was valid on the original programmer's PC | Path like D:\Projekte\Bilder\pump.png visible in properties | Path is hardware- and user-specific, not portable |
| Library element was copied from a global library that was not exported | Empty graphic list, no entries | Library is referenced but the master library was not shared |
The reason that other basic HMIs in the same project compile cleanly is that those HMIs reference a different set of screens and graphic lists. In a typical TP700 Comfort project, the Comfort panel often uses full-graphic objects (logo, machine overview, animation frames) that the smaller KTP Basic panels do not. The compile error is therefore scoped to the TP700 only, which is a useful diagnostic signal: it tells you immediately that the missing resource is referenced by a TP700-only screen.
3. Prerequisites for the Fix
Before touching the project, capture the following so the fix is reversible:
- Make a full backup of the project folder. TIA Portal V13 SP2 stores a project as a folder (
Grafic.ap13 is actually a compressed archive; extract it to a working directory before editing). - Open the project on the engineering station and perform a full Compile > Software (rebuild all) on the HMI device. Capture the exact error code and the exact graphic name in the message log under Inspector window > Info > Compile.
- Note the full path of the TP700 HMI device in the project tree, for example Project > PLC_1 / HMI_1 [TP700 Comfort] / Screens / Main / ... and the graphic list path: Project > HMI_1 [TP700 Comfort] / Text and graphic lists / Graphic lists / Bilder1.
- Confirm that TIA Portal V13 SP2 Update 7 (or later) is installed. Some missing-graphic symptoms that look like resource issues are actually fixed by V13 SP2 cumulative updates.
- Identify whether the missing file name has a known extension. WinCC Comfort / Advanced supports .bmp, .png, .jpg / .jpeg, .gif, .tif, and its own .emf vector format. The compile error usually reports the bare name plus the source list, not the extension.
4. Diagnostic Procedure
Use the following sequence to pinpoint the missing resource before changing anything.
4.1 Read the compile output in full
Switch to the Inspector window > Info > Compile tab and re-run the compile. The diagnostic block typically reads:
Compile HMI_1 [TP700 Comfort] - Software (rebuild all)
Graphic 'Bilder1\Pumpe_Running' could not be found.
Reference: Screen 'Main.Pump_Icon', Property 'Graphic', Source: HMI_1 / Text and graphic lists / Graphic lists / Bilder1
Error: 1601 (hex 0x641) - Resource could not be resolved
Record the symbolic name (Pumpe_Running), the graphic list (Bilder1), the consuming screen (Main), and the object (Pump_Icon).
4.2 Inspect the graphic list
Navigate to Project tree > HMI_1 [TP700 Comfort] > Text and graphic lists > Graphic lists > Bilder1. The right pane shows a table with columns Name, Graphic, and Comment. A blank or red-X cell in the Graphic column is the missing entry. If the table is empty but the compile error still references Bilder1, the list exists as a structural placeholder only and the symbolic binding has been lost in transit.
4.3 Cross-reference the screen usage
Open the screen identified in step 4.1, select the object, and view Properties > Appearance > Graphic. The current value should match the symbolic name in Bilder1. If the symbolic name is shown but the graphic list is empty, the binding is dangling.
4.4 Check the local graphic pool
Open Project tree > HMI_1 [TP700 Comfort] > Graphics. The right pane enumerates every graphic file currently in the project. If the missing file is not listed, it was never copied to the engineering station.
5. Solution Paths
Three solutions are valid, and the choice depends on whether the graphic is actually used in production.
5.1 Path A - Recover the original graphic from the source programmer
This is the correct path for any graphic that the runtime will display.
- Contact the source programming house. Request the original graphic file(s) referenced by the Bilder1 list, exported as PNG with transparency preserved.
- Place the file(s) in a working folder on the engineering station, for example C:\TIA_Projects\Bilder\.
- In TIA Portal, right-click HMI_1 [TP700 Comfort] > Graphics and select Add graphic > From file. Browse to the recovered file. The graphic appears in the graphic pool.
- Open Text and graphic lists > Graphic lists > Bilder1. In the Graphic column of the row that previously had a red X, click the dropdown and select the recovered file. The cell turns green.
- Recompile the TP700. The error should clear.
5.2 Path B - Create a substitute graphic
Use this path if the original art is unavailable, the production line tolerates a placeholder, and the screen will run. A simple substitute is enough to satisfy the compiler.
- In the engineering station's file system, create a new PNG, for example a 200x200 px neutral grey box with the text Placeholder. Save it with the exact name reported in the compile error, e.g. Pumpe_Running.png.
- In TIA Portal, add the new file to HMI_1 [TP700 Comfort] > Graphics.
- Bind it to the missing entry in Bilder1 as in Path A step 4.
- Recompile.
5.3 Path C - Remove the unused reference
Use this path only if you are certain the graphic is not consumed by any screen, animation, or faceplate. Removing a binding that is actually in use will produce a different compile error at the screen level.
- Search the entire TP700 project for the symbolic name. Use Edit > Find and replace in the project tree, or open each screen and search for the name in Properties panes.
- If no consumer exists, open Text and graphic lists > Graphic lists > Bilder1, right-click the row, and select Delete row. If the list is empty after deletion and the list itself is unreferenced, right-click the Bilder1 node and select Delete.
- Recompile.
6. Why the Source Programmer Can Compile and You Cannot
The most common follow-up question is: "The factory that built the project compiles the same file fine. Why does mine fail?" The answer is that the .ap13 archive is a project-state file, not a self-contained bundle. It references graphics by path, not by embedded binary, unless the user explicitly checked the Include graphics in project archive option during the archive operation. If the source programmer archived the project with default options, the graphic files are referenced by their original absolute or relative path on the source machine. When the project is opened on a new machine where those paths do not exist, the graphic pool is partially or fully empty.
Best-practice project hand-off procedure:
- On the source station: Project > Archive > Archive with all referenced libraries and enable Include external graphic files.
- On the receiving station: open the archive via Project > Retrieve and verify Project tree > HMI > Graphics is populated before the first compile.
7. Verification
After applying any of the three solutions, perform the following checks before signing the project off:
- Clean compile: Project tree > HMI_1 [TP700 Comfort] > right-click > Compile > Software (rebuild all). The Info > Compile tab must show zero errors and zero warnings related to graphics.
- Cross-device compile: Compile every HMI and PLC in the project. A fix in Bilder1 should not break a different list on a different device.
- Runtime simulation: Start HMI_1 [TP700 Comfort] > Start runtime. The TIA Simulator launches the project locally. Verify that the previously failing screen renders, the icon is visible, and no popup is shown about missing resources.
- Reference integrity: Use Project tree > HMI_1 [TP700 Comfort] > right-click > Compile > Consistency check. This walks every symbolic binding in every list and every screen and reports any remaining dangling references.
- Project archive round-trip: Archive the fixed project on the engineering station, retrieve it on a second clean station, and recompile. This catches any fix that depends on a local absolute path.
8. Common Pitfalls and Edge Cases
8.1 V13 SP2 vs V14/V15/V16 hand-off. The graphic pool format changed between V13 SP2 and V14. If the source programmer exported from V14 or later, the receiving V13 SP2 station may not recognize the file format. The symptom is a graphic that appears in the pool but cannot be assigned. Either upgrade the receiving station to a matching version or ask the source to re-archive from V13 SP2.
8.2 WinCC Flexible 2008 to TIA Portal migration. Older SP1 / WinCC Flexible projects that were migrated into TIA Portal sometimes keep the legacy Bilder1 list structure but lose the underlying files during the migration. The fix is the same as Path A, but the source programmer may no longer have the art. In that case, use Path B with a substitute.
8.3 Multi-language projects. In multi-language TP700 projects, the Bilder1 list can carry per-language variants. Make sure the substitute graphic contains a transparent or neutral background that is acceptable in all configured runtime languages.
8.4 Faceplate reuse. If the missing graphic is consumed by a faceplate that is instantiated on many screens, fixing the list once resolves every instance. Do not fix at the screen level; always fix at the list level to keep the faceplate library portable.
8.5 Library versioning. If Bilder1 originates from a global library, the receiving station must have the same library version. Open Libraries > Global libraries, right-click the used library, and check the version. A mismatch can produce the same compile error because the library copy on the local station is older than the one in the project.
9. Prevention for Future Hand-offs
The cleanest long-term fix is to prevent the problem in the source programmer's hand-off process:
| Step | Action | Verification |
|---|---|---|
| 1 | Archive with Include external graphic files enabled | Inspect archive contents for PNG/BMP/JPG |
| 2 | Include global library version used by the project | List library name and version in the cover note |
| 3 | Run a Compile > Software (rebuild all) on a clean station before delivery | Zero errors and zero warnings in Info tab |
| 4 | Run a Consistency check on every HMI | No dangling symbolic references |
| 5 | Document the runtime version (WinCC Runtime Advanced or Comfort) and the TIA Portal version | Cover sheet lists both |
10. Frequently Asked Questions
Why does only the TP700 Comfort fail to compile and not the KTP Basic panels?
The TP700 Comfort uses full-graphic screens and animation frames that the smaller KTP400 Basic / KTP700 Basic panels do not. The missing graphic in the Bilder1 list is referenced exclusively by a TP700-only screen, so the compile error is scoped to that single device. The other HMIs compile cleanly because none of their screens consume the missing resource.
The original programmer can compile the same project. Why does my station fail?
TIA Portal V13 SP2 archives reference graphic files by path on the engineering station rather than embedding the binary by default. The original programmer still has the file on disk; your station does not. Ask the source to re-archive with Include external graphic files enabled, or supply the missing PNG/BMP/JPG directly so it can be added to HMI_1 > Graphics and bound to the empty entry in the Bilder1 list.
Can I just delete the empty Bilder1 graphic list to make the error go away?
Only if no screen, animation, or faceplate references it. Use Edit > Find and replace across the project to search for the symbolic name first. If any consumer still references the list, deleting it will produce a different error ("Reference to a non-existent graphic list") at the screen level and you will have moved the problem rather than solved it. When in doubt, create a substitute graphic and bind it to the empty row instead of deleting the row.
Is this a TIA Portal V13 SP2 bug?
No. The compiler is correctly reporting that a referenced resource cannot be resolved. The same condition in any language toolchain would be reported as a missing-symbol error. The fix is environmental: provide a graphic file at the slot the compiler expects, or remove the dangling reference, both of which are documented in the TIA Portal V13 SP2 help under WinCC Comfort / Advanced > Graphic lists.
Will upgrading to TIA Portal V15 / V16 / V17 fix this kind of error automatically?
Upgrading the engineering tool does not recover a graphic that was never delivered with the project. A newer TIA Portal version will still fail to compile if the graphic pool is empty, but it provides a more descriptive error message and an improved library hand-off workflow. Resolve the missing resource first, then consider a version upgrade for the next hand-off cycle to reduce the chance of recurrence.