Resolving KTP700 Recipe Corruption Error in TIA Portal V13

David Krause11 min read
SiemensTIA PortalTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Problem Overview

The runtime alarm "Recipes are corrupt or do not match your configuration data" appears on Siemens SIMATIC Basic Panels (KTP400, KTP700, KTP900, KTP1200) and Comfort Panels (TP700, TP900, TP1200, TP1500, TP1900, TP2200) when the recipe data record stored on the HMI's internal flash or on an external storage medium (USB stick, SD card) no longer matches the recipe definition compiled into the panel project. On KTP700 Basic Panels programmed with TIA Portal V13 (WinCC Basic V13) and connected to an S7-1200 CPU (firmware V4.x), the fault is most often triggered after a recipe write is interrupted by power-down, after a project download without the Overwrite all option, or after a partial project migration that changes tag lengths, array bounds, or recipe element offsets.

The fault is non-fatal to the PLC scan but blocks the HMI recipe view and recipe transfer functions. Operators see a frozen screen, the alarm line in the bottom status bar reads Recipes are corrupt or do not match your configuration data, and the panel refuses to load or save records until the recipe data set is reconciled with the engineering project.

Affected Components and Versions

Component Catalog Number Firmware / Version Symptom
KTP700 Basic, 7" TFT, PN 6AV2 123-2GA03-0AX0 Up to FW V13.0.x Runtime recipe alarm after warm restart
KTP700 Basic DP 6AV2 123-2GB03-0AX0 Up to FW V13.0.x Recipe records unreadable
KTP900 Basic 6AV2 123-2JC03-0AX0 FW V13 / V14 Corrupt record on recipe view
KTP1200 Basic 6AV2 123-2MA03-0AX0 FW V13 / V14 Records fail integrity check
TP700 Comfort 6AV2 124-1GC01-0AX0 WinCC Comfort V13 SP1+ Same alarm, different storage path
CPU 1211C / 1212C / 1214C / 1215C / 1217C 6ES7 21x-1xxxxx-0XB0 FW V4.0 to V4.4 Tag length mismatch propagates to panel
CPU 1212C DC/DC/DC 6ES7 212-1AE40-0XB0 FW V4.2 Default PLC tag size differs from V13 project
TIA Portal 6ES7 822-1AA03-0YA5 (V13) V13, V13 SP1, V13 SP2 Recipe element offset calculation bug
TIA Portal 6ES7 822-1AA04-0YA5 (V14) V14, V14 SP1 Migration retains old recipe header
TIA Portal 6ES7 822-1AA05-0YA5 (V15) V15, V15.1 Re-compile clears stale records
Important: KTP Basic Panels store recipe records in \Flash\Recipes\ internally; KTP/TP Comfort Panels store in \Storage Card SD\Recipes\ by default or \USB Storage\Recipes\ when configured. The two paths are not interchangeable. Confirm panel class before applying any of the procedures below.

Root Cause Analysis

The alarm text is generated by the WinCC Runtime recipe manager when the CRC-16 stored in the recipe header on the panel does not match the CRC-16 calculated from the current recipe element definition in the loaded project. Five distinct root causes have been observed on KTP700 + S7-1200 + TIA Portal V13 systems:

  1. Power loss or stop mode during recipe write. The panel writes the recipe header first, then the data elements. If the 24 V supply collapses or the panel is switched off between header commit and payload write, the file on flash memory retains a stale header. On next boot, the integrity check fails.
  2. Project download without Overwrite all. When the engineering station performs a partial download (only the HMI software, not the recipe DB), the panel keeps its existing recipe file but receives a new project binary. The two are out of sync and the runtime declares them corrupt.
  3. Tag-length mismatch between PLC DB and recipe element. If a PLC tag linked to a recipe element is resized (for example DIntLReal, or String[10]String[20]), the panel's compiled recipe offsets no longer match the S7-1200 DB layout. The recipe manager refuses to load the record.
  4. Project migration without recipe recompilation. Upgrading a V13 project to V14 or V15 using the TIA Portal migration tool without selecting Recompile all recipe entries preserves the old recipe element metadata. New compile produces new offsets; runtime detects mismatch.
  5. Firmware/HMI image version skew. A V13 SP1 project downloaded into a panel whose firmware was flashed to a V14 or V15 image retains a recipe layout from the older compiler while the runtime now expects the newer one. Siemens documents this in entry ID 109749634.

Diagnostic Procedure

Before applying any fix, determine which root cause applies. Follow the steps in order and stop at the first matching result.

  1. Capture the panel diagnostics buffer. On the KTP700, open Control Panel > Diagnostics > Diagnostics Buffer. Note any entries containing RECIPE, CHECKSUM, or IO fault. Cross-reference timestamps with the operator log.
  2. Check PLC tag references in the recipe definition. In TIA Portal, open HMI > Recipes > [recipe name] > Elements. Right-click each element and select Go to > Used tag. Confirm the tag points to a DB element of the correct length and type. Any BOOL tagged as WORD, or any WString instead of String, is a mismatch.
  3. Inspect the panel file system via ProSave. Use Siemens ProSave (bundled with TIA Portal) or the panel's Control Panel > Backup/Restore to export the recipe folder. Compare the binary file size against the size recorded in the project under HMI > Recipes > [recipe] > Properties > Record length.
  4. Read the panel event log via WinCC Tag Logging / Alarm Viewer. Trigger a recipe save from the runtime; the AlarmViewer text will report the specific recipe name and record index that failed. Typical entry: Recipe "BatchParams", record 7: Data does not match configuration.
  5. Verify the panel image version. In Control Panel > System > About, record Image Version and HMI RT Version. Match against the TIA Portal installation: C:\Program Files\Siemens\Automation\Portal V13\HmiRtm\Versions.txt.

Recipe Storage Architecture

Understanding where the panel stores recipe data is essential to a permanent fix. The following table summarises the canonical paths used by TIA Portal V13 / V14 / V15.

Panel Class Default Recipe Path File Format Max Records
KTP Basic (KTP400/700/900/1200) \Flash\Recipes\ Binary (.dat) + index (.idx) 100 per recipe, 256 elements
TP Comfort (TP700/900/1200/1500/1900/2200) \Storage Card SD\Recipes\ Binary (.dat) + index (.idx) 500 per recipe, 1000 elements
TP Comfort (alternative) \USB Storage\Recipes\ Binary (.dat) + index (.idx) Same as SD path
WinCC Runtime Advanced (PC-based) C:\ProgramData\Siemens\WinCCAdvanced\Recipes\ CSV or binary Defined in project

Each recipe record consists of a 32-byte header (recipe name, record name, CRC-16, timestamp, length) followed by the serialized element payload. The header CRC covers both the recipe name string and the payload bytes. Any modification to element order, type, or length invalidates the stored CRC.

Solution A: HMI Overwrite Download (Temporary)

The forum workaround of Download to device > Overwrite all is a valid short-term recovery but does not address the underlying cause. Apply it as follows:

  1. Open the TIA Portal V13 project containing the panel and PLC stations.
  2. Select the KTP700 in the project tree.
  3. Right-click and choose Download to device > Software (all).
  4. In the download dialog, tick Overwrite all.
  5. Click Continue and enter the panel transfer password if prompted.
  6. Wait for the panel to restart; the runtime will rebuild the recipe index from the new project and existing records will either be accepted (if structure matches) or marked invalid and discarded.

This solves the immediate symptom but the alarm typically returns within days if root cause is not addressed.

Solution B: Permanent Fix — Align Recipe Elements to PLC DB

  1. Open the S7-1200 PLC station in TIA Portal and locate the DB used as recipe source.
  2. For each recipe element, verify:
    • PLC DB element length equals recipe element length.
    • PLC DB element type is supported by the HMI recipe manager (BOOL, INT, DINT, REAL, STRING, WSTRING, ARRAY of these).
    • No POINTER, ANY, VARIANT, or UDT references exist inside the recipe element list.
  3. If any element is mismatched, modify the DB first, then update the recipe element accordingly, then compile the HMI software (not just "Save and compile all").
  4. Recompute the recipe record length. Right-click the recipe > Properties > Record length. The displayed byte count must equal the sum of all element byte lengths.
  5. Delete the existing recipe records on the panel: open Control Panel > Recipes, select each record, choose Delete. Confirm the panel no longer reports the corruption alarm after a warm restart.
  6. Perform a clean Overwrite all download from TIA Portal.

Solution C: Migrate to TIA Portal V14 / V15

Migrating the project to a newer TIA Portal version resolves the recipe-element-offset bug fixed in WinCC Comfort/Advanced V14 SP1 (entry 109751391).

  1. Open the V13 project in TIA Portal V14 (or V15) and accept the migration prompts.
  2. Open Project > Compile > Software (rebuild all). Do not skip the recipe rebuild.
  3. In HMI > Recipes > [recipe], right-click each recipe and choose Recompile recipe.
  4. Compare record lengths before and after migration. A delta of zero confirms structural integrity.
  5. If record length changes, manually re-export production recipes from the HMI as CSV (if Comfort Panel) or binary (if Basic Panel), then re-import after the new download completes.
  6. Download the migrated project to the panel with Overwrite all enabled.
Migration caveat: KTP700 Basic panels with catalog suffix -0AX0 ship with image V13.0.x and cannot be upgraded beyond WinCC Basic V14 SP1 without a firmware update using ProSave. Refer to firmware entry 109751605 for supported image/firmware combinations.

Solution D: Power-Failure Hardening

If root cause is interrupted writes during recipe save, configure the panel to use a buffered storage medium and enable UPS-backed 24 V supply.

  1. Switch the recipe storage path to a USB stick rated for industrial use (Siemens 6AV2 181-1LA00-0AA0 or equivalent). USB provides greater write-cycle endurance than internal flash.
  2. In TIA Portal: HMI > Runtime settings > Recipes > Storage location set to USB storage.
  3. Enable Save recipe records synchronously on the recipe view. This forces a complete commit before acknowledging success to the operator.
  4. Add a UPS (e.g., SITOP UPS1600 6EP4134-3AB00) on the 24 V supply feeding the panel so the panel has at least 5 seconds of ride-through to finalize a write in progress.

Verification

After applying any of the four solutions, run the following verification sequence to confirm the fault is resolved:

  1. Cycle power to the panel (24 V off for at least 10 seconds).
  2. Wait for the boot screen to clear and the project to load. Confirm no recipe alarm appears within 60 seconds of runtime start.
  3. From the recipe view, create a new record with name VERIFY_TEST, set non-default values, save, and read back. Confirm the read values match the written values.
  4. Restart the panel a second time and repeat step 3. The record must survive a power cycle.
  5. Force a PLC tag change (e.g., toggle a BOOL recipe element from the PLC watch table), refresh the recipe view, and confirm the runtime reports the new value.
  6. Run the panel for 72 hours under normal production load. If the alarm does not recur, mark the fault closed in the maintenance log.

Troubleshooting Matrix

Symptom Likely Cause First Action
Alarm appears once after first download Pre-existing records from previous project Overwrite all download
Alarm recurs after power loss during recipe save Corrupted record header Delete record on panel, resave from PLC
Alarm appears after PLC DB edit Tag length / type mismatch Align DB and recipe element
Alarm appears after TIA Portal version change Recipe header not recompiled Recompile recipes, re-download
Alarm appears after ProSave firmware flash Image version mismatch Match image to TIA Portal version
Alarm only on a specific record (others OK) Single record CRC error Delete that record, recreate
Alarm immediately on every boot Flash corruption Format internal flash via Control Panel, reload

Preventive Measures

  • Lock the TIA Portal project version used in production. Avoid ad-hoc upgrades of V13 projects without a regression test plan that includes recipe cycle testing.
  • Standardize the recipe element list in a project template. All new recipes must inherit from the template DB structure.
  • Always perform Overwrite all downloads during commissioning and after firmware updates.
  • Schedule a quarterly recipe backup via ProSave. Archive the Recipes folder for each panel along with the project archive.
  • Implement a UPS on the panel supply to prevent recipe header corruption from AC mains events.
  • Train operators to wait for the recipe-write confirmation before toggling the panel off. Add a flashing status indicator next to the recipe view to make write-in-progress obvious.

Related Siemens Documentation

Why does the KTP700 show "Recipes are corrupt or do not match your configuration data" after a normal power cycle?

The alarm indicates the CRC-16 in the stored recipe header no longer matches the recipe element layout compiled into the current project binary. Most commonly this is caused by a prior interrupted recipe save (power loss during write) or by a partial project download that did not overwrite the recipe data folder.

Can I recover the corrupt recipe data records without re-entering them?

Yes, if the PLC still holds the original values in the source DB. Export the recipe folder via ProSave before clearing the panel, perform an Overwrite all download, then transfer the records back to the PLC using the recipe view's Read record from PLC function. Records with corrupted headers cannot be repaired; they must be re-created.

Is upgrading the TIA Portal project from V13 to V14 or V15 guaranteed to fix the fault?

Not guaranteed. The migration resolves the recipe-element-offset calculation bug introduced in V13 SP0 but only if the recipe definitions are recompiled after migration. If you skip the recompile step, the new runtime still detects a CRC mismatch against the stored records.

How many recipe records can the KTP700 Basic store?

KTP Basic panels (KTP400 / KTP700 / KTP900 / KTP1200) support up to 100 records per recipe and up to 256 elements per record, stored on internal flash at \Flash\Recipes\. Comfort panels allow up to 500 records and 1000 elements on the SD card path.

Will a KTP700 Basic panel firmware update delete my recipe records?

A firmware (image) update performed via ProSave with the Reset to factory settings option clears the entire flash including the recipe folder. Without the reset option, recipes are preserved but may be flagged as corrupt if the new image version expects a different recipe header layout. Always export a recipe backup before flashing a new image.

Back to blog