Problem Overview
A standard compile pass on a SIMATIC H-Station equipped with a CPU 414-4H (or CPU 417-4H) fails with the following diagnostics printed by the S7 code generator:
Compiling all charts as program SIMATIC H Station(1)\CPU 414-4 H\S7 Program(1) on 9/23/2023 2:39:10 AM
Generate block drivers: on
Generating SCL sources: off
Set sampling times from 9/23/2023 2:48:19 AM
Setting sampling times completed: 9/23/2023 2:48:20 AM.
W: The program or chart contains F blocks, however, the SIMATIC F System is not installed or installed incompletely.
End of code generator: 9/23/2023 2:50:48 AM
E: CAUTION: OB88: call for FC750 is missing !
E: CAUTION: OB1: call for FC0 is missing !
E: CAUTION: OB80: call for FC742 is missing !
The error signature contains three elements that must be interpreted together:
- W (Warning): The presence of safety-related blocks (F-blocks) in the chart, but the optional package S7 F Systems is either not installed, not licensed, or not registered in the SIMATIC Manager component list.
- E (Error): The code generator cannot resolve the safety-runtime block calls inside the error OBs (OB1, OB80, OB88, OB100, etc.). These calls are normally written automatically by the F-library when the program is compiled.
-
CFC/SFC origin: The compiled charts use the F-chart library whose auto-generated runtime blocks are stamped with author
ES_MAP. Deleting them manually removes the call skeleton that the F System re-injects on the next compile.
Affected Products and Versions
| Component | Identification | Notes |
|---|---|---|
| AS hardware | SIMATIC S7-400H, CPU 414-4H (6ES7414-4HM14-0AB0) or CPU 417-4H | F-capable CPU; F-program always required in H-systems when F-charts exist |
| Engineering tool | SIMATIC STEP 7 V5.5 + SPx + HFx (or STEP 7 Professional 2010 / 2017) | Edition that supports the S7 F Systems optional package |
| Optional package | S7 F Systems (order no. 6ES7 833-1CC00-0YX0 or current equivalent) | Provides F-chart type, F-block generation, F-runtime blocks FC0 / FC50 / FC173 / FC742 / FC750 |
| Optional package | S7 F Systems HMI (6ES7 833-1CD00-0YX0) – if F-OPs are configured | Required only for F-touchpanel / F-host coupling |
| CFC / SFC editor | CFC V9.0 + SPx (or compatible) | Generates the ES_MAP F-charts and the call to FC0/FC742/FC750 |
| OS used as reference | Microsoft Windows 7 Professional SP1 / Windows 10 LTSC 2019 | Matches the supported platform list of STEP 7 V5.5 / CFC V9.0 |
Root Cause Analysis
Three independent root causes can produce this warning/error combination. Diagnose them in the order listed.
1. The S7 F Systems optional package is not installed
The most common cause. STEP 7 V5.5 base installation does not include the F-chart type, the F-runtime block templates, or the safety signature routines. Without the optional package, the CFC compiler detects the F-charts in the program but cannot create the matching F-runtime blocks (FC0, FC742, FC750, …). The warning is emitted, the F-blocks are not generated, and every OB that should contain an F-call then reports call for FCxxx is missing.
2. The optional package is installed but not registered in the PC station
On some setups the installation succeeded but the SIMATIC Manager has not been informed of the new component (for example after restoring a Step7 image, or after a PC swap). Open the station and check whether the F-Configuration node exists in the component view.
3. F-runtime blocks were deleted from the S7 program
The CFC code generator uses the author stamp ES_MAP on every block it creates automatically, including the F-runtime FBs/FCs and the OB1 / OB80 / OB88 / OB100 stubs that wrap the F-calls. If a user deletes these blocks manually (or a project backup-restore process drops them), the next compile pass cannot find the call target and the missing-FC errors return. A full compile re-creates the ES_MAP blocks; a delta compile does not.
Prerequisites for Recovery
- Local administrator rights on the engineering station.
- A complete, time-stamped backup of the S7 project (archive as *.zip or *.s7p with sources).
- The original STEP 7 / S7 F Systems installation media or a download package from the Siemens Industry Online Support portal.
- For H-systems: physical access to both CPUs of the redundant pair and a documented switchover test plan, because the F-program must be downloaded to both racks in a single run.
Step-by-Step Resolution
Apply the steps in sequence. Skip the optional-package installation if S7 F Systems is already installed and licensed.
Step 1 – Verify that S7 F Systems is installed and licensed
- Start SIMATIC Manager > Help > About. The splash screen lists all installed optional packages.
- Confirm that S7 F Systems appears with a valid license key. If the entry shows a red exclamation mark, the license is missing – re-authorize with the Automation License Manager.
- Open the F-Configuration node of the S7 program. If the node is missing, the optional package is not registered with the project.
Step 2 – Install or repair S7 F Systems
- Insert the SIMATIC S7 F Systems DVD or run the downloaded
setup.exe. - Accept the license dialog, choose Install and follow the wizard. The installer registers the F-chart type, the F-CPU type, and the F-runtime block sources (F_SOURCE directory).
- Restart Windows when prompted. The setup may not complete if
setup.execrashes on Windows 7 SP1 (a known issue with mismatched Visual C++ runtimes). See the troubleshooting section below for the install-time APPCRASH workaround. - Re-launch SIMATIC Manager and confirm the optional package is listed in Help > About.
Step 3 – Re-register the F-configuration in the project
- Right-click the S7 program in the component view and select Object Properties.
- On the Safety Integrated tab enable the F-program and enter the F-monitoring time and the F-signature assignments.
- Press OK. SIMATIC Manager adds the F-Configuration subfolder containing the runtime block templates.
Step 4 – Delete residual ES_MAP blocks and force a full compile
- Back up the project once more.
- In the S7 Program folder, sort blocks by Author.
- Select every block whose author is
ES_MAP(this includes FC0, FC742, FC750 and several support DBs). - Delete the selection. Confirm the dialog – the F-blocks are recreated by the next full compile.
- Open the CFC/SFC editor, choose Charts > Compile > Charts as Program > Entire Program. Do not use a delta compile, the F-block scaffolding is only written on a full pass.
- Watch the output window. The warning SIMATIC F System is not installed or installed incompletely must disappear; the CAUTION: call for FCxxx is missing lines must also be gone.
Step 5 – Download the rebuilt F-program to the H-CPUs
- Connect the programming device to the plant bus of rack 0 (CPU 414-4H in slot 3).
- From the SIMATIC Manager open PLC > Download to Target System > CPU 414-4H (Rack 0). The H-system automatically fans the load out to the partner CPU.
- When the dialog asks for the F-password, enter the collective F-signature and the F-password defined in the F-configuration.
- Repeat the download for the standby CPU to ensure both halves hold an identical F-signature.
- Verify with PLC > Diagnostics/Settings > Module Information > Safety. Both F-signatures must be identical and valid.
Verification Checklist
| Check | Expected Result | Where to Verify |
|---|---|---|
| Compile log is free of F-related warnings | No SIMATIC F System is not installed warning | CFC output window |
| F-runtime blocks present | FC0, FC50, FC173, FC742, FC750, F-shared DBs visible with author ES_MAP
|
S7 Program > Blocks (sort by author) |
| OB1 contains the F-call | CALL FC 0 instruction visible in OB1 source | LAD/FBD/STL editor of OB1 |
| F-signature is consistent on both H-CPUs | Same F-signature, status OK | Module Information > Safety |
| OB80, OB88 calls inserted | CALL FC 742 / FC 750 inside the error OBs | OB80 and OB88 source view |
| CPU diagnostic buffer | No F-initialization error entries after restart | CPU > Diagnostic Buffer |
Cross-Reference: F-Runtime Blocks Referenced in the Errors
| Block | Purpose | OB Caller | Behaviour if Missing |
|---|---|---|---|
| FC0 | F-initialization and F-runtime coordinator; called from OB1 in cyclic mode | OB1 | CPU transitions to STOP with F-STOP |
| FC50 | F-warm-restart coordination (only present on F-H systems) | OB100 | Warm restart is rejected |
| FC173 | F-communication via S7 connections to F-CPUs | OB1 / OB35 | F-comm partner reports F-comm error |
| FC742 | F-error-OB handler (time-error OB80 wrapper) | OB80 | Time errors are not F-handled, CPU goes to STOP |
| FC750 | F-error-OB handler (process-skip OB88 wrapper) | OB88 | Process-skip errors are not F-handled |
The numeric ranges are part of the Siemens convention: F-runtime FBs/FCs used by the S7 F Systems library are assigned to the FC0, FC50, FC173 and FC700–FC799 ranges. A complete listing is provided in the S7 F/FH Systems – Configuring and Programming manual.
Setup.exe Crashes (APPCRASH) on Windows 7 SP1
A secondary failure mode appears during the setup.exe of SIMATIC STEP 7 Professional on Windows 7 Professional SP1. The Microsoft Q&A community has documented an APPCRASH entry for setup.exe with event name APPCRASH and a faulting module typically pointing to an old msvcp or ucrtbase DLL. The standard remediation steps are:
- Install the latest Windows 7 SP1 convenience rollup and all .NET Framework updates (3.5 SP1 and 4.x).
- Pre-install the Visual C++ 2005 SP1, 2008 SP1, 2010 SP1 and 2015–2022 redistributables before running
setup.exe. - Run the installer as administrator with compatibility mode Windows 7 only if the previous step does not resolve the crash.
- Disable antivirus and any software-policy agent during the install – they can intercept the F-library registration.
Troubleshooting Matrix
| Symptom | Likely Cause | Action |
|---|---|---|
| Only the SIMATIC F System warning appears, no missing-FC errors | Optional package not licensed | Re-authorize via Automation License Manager; recompile |
| Warning plus all three call for FCxxx is missing errors | ES_MAP blocks deleted, full compile not yet run | Delete remaining ES_MAP blocks and force a full compile |
| Warning plus a single call for FC50 is missing in OB100 | Warm-restart path is configured but F-warm-restart block is not regenerated | Set startup type to Warm restart in HW Config, full compile, reload |
| Warning plus setup.exe APPCRASH during install | Missing VC++ runtime on Windows 7 SP1 | Apply the VC++ redistributable sequence above and re-run setup |
| Warning disappears in the editor but reappears on every download | Target CPU is not F-capable (F-CPU bit not set in HW Config) | Replace the CPU with an F-variant, e.g. 6ES7 414-4HM14-0AB0, and rebuild HW Config |
| Compile is clean, F-signature mismatch on download | F-password or F-signature differs between engineering and CPU | Re-enter the F-password and accept the new signature on the CPU |
Safety and Operational Notes
- The F-program must be identical on both H-CPUs. A Link-up will be denied if the F-signatures differ.
- Never disable the F-program to bypass a missing optional package. The plant remains in a non-safety state and the diagnostic buffer logs an F-passivation on the next F-peripheral update.
- Keep the F-source directory (
F_SOURCE) under version control. Manually edited F-sources are reset to the original on the next full compile – that is intentional, do not fight the generator by editing the FCs directly. - When you upgrade STEP 7 or the S7 F Systems optional package, always start with a full re-install rather than an in-place update; the F-block library is keyed to the version of the F-configurator in the engineering tool.
Related Configuration Items
- HW Config: F-monitoring time, F-signature assignment, F-CPU type.
- NetPro: F-connection properties (active/passive F-connection with safety protocol version 2).
- CFC: F-chart run-time group, F-task assignment under OB35 (default 100 ms).
- SIMATIC Manager: F-collective signature and F-password stored in the project properties.
FAQ
What does the warning “SIMATIC F System is not installed or installed incompletely” mean?
It means the STEP 7 optional package S7 F Systems is missing, unlicensed, or not registered with the current S7 program. The chart contains F-blocks that the code generator cannot process, which is why the follow-up errors call for FC0, FC742, FC750 is missing appear.
Do I have to install S7 F Systems on every engineering station?
Yes. The optional package is required on every PC that edits, compiles or downloads the F-program. A read-only HMI station does not need it; an OS server with F-OPs needs S7 F Systems HMI instead.
Why does the error list mention FC0, FC50, FC742 and FC750?
Those are the standard F-runtime blocks the S7 F Systems library calls from OB1 (FC0), OB100 (FC50), OB80 (FC742) and OB88 (FC750). The code generator inserts the calls automatically; the diagnostics in this article mean the calls were not generated because the F-block library was not available.
Can a delta compile recover the F-blocks?
No. The F-block scaffolding (author ES_MAP) is rebuilt only on a full compile. Use Charts > Compile > Charts as Program > Entire Program after deleting the residual ES_MAP blocks.
The S7 F Systems setup crashes with APPCRASH on Windows 7 SP1 – what is the fix?
Pre-install the Visual C++ 2005 SP1 through 2015–2022 redistributables, apply the Windows 7 convenience rollup, run setup.exe as administrator and disable antivirus during the install. The same procedure also covers the S7 F Systems HMI installer.