Resolving PCS7 V9.0 'Generate Module Driver' CH_AI Library Error

David Krause10 min read
Process ControlSiemensTroubleshooting
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

Resolving PCS7 V9.0 'Generate Module Driver' CH_AI Library Error

When a legacy SIMATIC PCS 7 multiproject (originally compiled with PCS 7 V7.x driver blocks) is opened on a freshly installed PCS 7 V9.0 engineering station, the chart compile step frequently aborts with "Generate module driver" in the progress log and a dialog stating "Necessary files are missing for block CH_AI. Please note that you have to install exactly the same version of the library as the one this block was imported from." This article documents the root cause, the library architecture behind it, and the field-proven procedure to clear the error without having to migrate the program to the Advanced Process Library (APL).

Scope: The fix applies to any pre-APL PCS 7 project (typically V6.x, V7.0, V7.1, V8.0 with the old non-APL library) that is being edited or maintained on a PCS 7 V9.0 / V9.0 SPx engineering station. CH_AI is the driver block used as an example, but the same procedure resolves all PRIBDRVR-type channel driver blocks (CH_AI, CH_AO, CH_DI, CH_DO, CH_CNT, CH_PID, etc.).

1. Problem Description

The reported symptom chain is reproducible on any V9.0 station that does not have the legacy PCS 7 V7.1 library stack installed:

  1. Engineer retrieves a customer PCS 7 V7.1 multiproject onto a brand-new V9.0 station.
  2. Project opens, CFC/SFC editors, OS pictures and the simulation all work as expected.
  3. Engineer modifies any chart and triggers Chart → Compile → Charts as Program (or Scope → Compile).
  4. The compiler progress dialog displays "Generate module driver" and then halts.
  5. Compass log or the Module Driver tab inside the compile result reports:
    Necessary files are missing for block CH_AI. Please note that you have to install exactly the same version of the library as the one this block was imported from.
  6. The chart is not regenerated; @CH_AI driver charts are missing or empty, which causes AS-OS download inconsistencies downstream.

The same error appears in the catalog whenever the project contains any of the legacy driver blocks from the pre-APL family: CH_AI, CH_AO, CH_DI, CH_DO, CH_CNT, CH_MS, CH_UDT, MOT_SPEED, VALVE_ANA, PID_FM, etc.

2. Root Cause Analysis

The PCS 7 driver generator (the "@chart" wizard that lives inside the CFC compiler) requires additional metadata about every driver block it must instantiate:

  • The driver block's interface signature (IN/OUT/STAT declarations) — this is stored in the project, in the S7 program / block container.
  • Wizard metadata — the rules that tell the driver generator how to wire the channel to the user-placed driver block, which I/O signals to connect, and which faceplate to bind. This metadata is not stored in the project. It is added to the engineering station by the library setup.

PCS 7 V9.0 Setup, by default, installs only the APL (Advanced Process Library) — the post-V8.0 architecture where the library is split into a Basic Library (basis blocks) and an Advanced Process Library (driver, control and faceplate blocks). The legacy "Library Vx.y" that shipped with PCS 7 V6/V7 is no longer part of V9.0 media. When the driver wizard encounters a CH_AI in the project, it cannot find the corresponding wizard description and aborts with the "missing files" error.

Why simulation still works: S7-PLCSIM only needs the compiled block code, not the wizard metadata. The error only surfaces during the compile / download path that invokes the driver generator. That is why a project can simulate cleanly on V9.0 and still fail to compile.

3. Library Architecture — Pre-APL vs APL

Understanding the library split is essential to choosing the correct installer and avoiding version mismatches later.

Project Era Library Installed on ES Channel Driver Family Wizard Source
PCS 7 V6.x / V7.0 / V7.1 (pre-APL) Library V7.1 SP3 — monolithic, non-APL CH_AI, CH_AO, CH_DI, CH_DO, CH_CNT, CH_MS, MOT_SP, VALVE_ANA, PID_FM, ... Bundled with the V7.1 library setup
PCS 7 V8.0 (transition) Library V7.1 SP3 Upd4 still required if a pre-APL project is being edited Same legacy blocks, same FBs Same wizard metadata
PCS 7 V8.1 / V8.2 / V9.0 (APL) Basis Library (basic blocks) + APL (Advanced Process Library) Pcs7AnIn, Pcs7AnOu, Pcs7DiIn, Pcs7DiOu, Pcs7Cnt, MotSpdL, VlvAnL, PIDConL, ... Provided by APL setup
Mixed project (legacy + APL blocks) Both stacks must be present Both families coexist Both wizard bundles required

The non-APL library has no "Basis Library" counterpart. Before the APL architecture (V8.0) there was a single Library V7.1 SPx that contained both the basic blocks and the driver/control/faceplate blocks. Only the APL era introduced the split.

4. Affected Versions & Compatibility

  • Engineering station: PCS 7 V9.0, V9.0 SP1, V9.0 SP2, V9.0 SP3, V9.0 SP4 and later V9.0.x updates (the issue is reproducible on every V9.0 update because none of them re-includes the legacy V7.1 library stack).
  • Project origin: PCS 7 V6.0, V6.1, V7.0, V7.1, V7.1 SP1, V7.1 SP2, V7.1 SP3, V7.1 SP4, V8.0 — all use the same non-APL "Library V7.1" blocks.
  • Block family: All CH_* driver blocks plus their associated technological blocks (MOT_SP, VALVE_ANA, PID_FM, ...).
  • OS components: Projects with WinCC faceplates from the V7.1 era additionally require the Library Faceplates V7.1 SP3 Upd1 on the OS engineering side, otherwise OS compile will fail with the same "missing files" class of error.
Symptom signature: The error string is the same regardless of which legacy block triggers it. Always inspect the Module Driver tab in the compile result; the block name in the message (CH_AI in this article, but it can be any channel or technological block) tells you which family is missing.

5. Solution — Install the Legacy Library Stack

The complete fix has three installation steps. All three are required when the project contains pre-APL technological blocks with faceplates. If the project only contains CH_* driver blocks, the first two steps are sufficient.

5.1 Step 1 — Install Library V7.1 SP3 Upd4 (driver + control blocks)

  1. Close SIMATIC Manager / PCS 7 Engineering on the engineering station.
  2. Open the Siemens Industry Online Support entry 109757344 — "PCS 7 Library V7.1 SP3 Upd4" and download the package.
  3. Unpack the ZIP and run setup.exe as administrator.
  4. Follow the installer; the package deploys the legacy Library V7.1 blocks plus the driver wizard metadata into the PCS 7 catalog.
  5. Restart the engineering station when the installer prompts to do so.

5.2 Step 2 — Install Library Faceplates V7.1 SP3 Upd1 (OS faceplates)

Required only if the project contains pre-APL technological blocks (motors, valves, PID controllers) that own a faceplate.

  1. Navigate to the V8.2 Update page of the Siemens support portal. The faceplates package is no longer linked from the V9.0 update pages, but it is still hosted under the V8.2 entry. Search the support portal for "PCS 7 Library Faceplates V7.1 SP3 Upd1".
  2. Download and run the setup. The faceplates are deployed into the WinCC picture catalog.
  3. Restart SIMATIC Manager so the new picture objects become available.

5.3 Step 3 — Reopen and re-verify the project

  1. Re-open the multiproject in PCS 7 V9.0.
  2. Right-click the AS → Compile → Charts as Program.
  3. Confirm that the "Generate module driver" step completes without aborting.
  4. Open the Module Driver tab of the compile result — it should be empty (no missing-file entries).

6. Locating the Installer on a PCS 7 Media DVD

If the support portal is not reachable (off-site plant, locked-down ES), the legacy stack may still be present on the original PCS 7 V8.x media DVD or on the V9.0 DVD under Additional Tools:

  • Mount the PCS 7 DVD and browse the root directory.
  • Open the Additional_Tools folder.
  • Look for PCS7_Library_V71_SP3_Upd4.exe (or similar).
  • Look for PCS7_Library_Faceplates_V71_SP3_Upd1.exe.
A fresh V9.0 DVD will only ship the Basis Library V9.0 and the APL. It will not contain the V7.1 stack. If neither the DVD nor the support portal is available, request the package from the local Siemens representative or open a support request (SR) with the order number of the original PCS 7 V7.1 license.

7. Verification Procedure

After installing the legacy library, perform the following checklist:

# Check Expected Result Pass / Fail
1 Open the S7 program → Blocks container CH_AI, CH_AO, CH_DI, CH_DO, ... FBs visible, version < 7.1.x
2 CFC → right-click a chart → Compile → Charts as Program Progress dialog shows "Generate module driver" with OK status
3 Open the compile result → Module Driver tab Empty / no missing-file warnings
4 AS → Download to the S7-400 station Successful download of all blocks including @CH_* driver charts
5 WinCC Explorer → open a picture containing a faceplate Faceplate symbol loads, no "unknown picture object" errors
6 OS → Compile OS OS compiles, alarm/messaging tags resolve

8. Troubleshooting Matrix

Symptom Likely Cause Fix
"Necessary files are missing for block CH_AI" on V9.0 station Library V7.1 SP3 Upd4 not installed Install Library V7.1 SP3 Upd4 from SIOS entry 109757344
Driver error gone, but OS compile reports "Picture object X unknown" Library Faceplates V7.1 SP3 Upd1 not installed Install the faceplate library from the V8.2 update page
Library installed, but error reappears after a Windows update Setup was run as standard user, registry keys missing Re-run setup.exe as administrator; repair-install the package
Error message still mentions an older version (e.g. V7.0) Project still references the original V7.0 block family Update the project's master data library to V7.1 SP3; re-import the FBs
Compile aborts on MOT_SP / VALVE_ANA blocks only Technological blocks need faceplates; wizard partially loaded Install both Library V7.1 SP3 Upd4 and Faceplates V7.1 SP3 Upd1
Different error after install: "Block F version conflict" Multiple library versions side-by-side in the project Use SFC/IMAP → Block consistency check; align all blocks to the same library version
Engineer cannot re-create the @CH_AI driver chart on a new AS Wizard metadata path is missing under SIEMENS\Automation\PCS7\Library Repair-install Library V7.1 SP3 Upd4; verify Siemens\Automation\PCS7\Library\V7.1 folder exists

9. Why the Project Cannot Be Self-Contained

Engineers frequently ask why Siemens did not bundle the wizard metadata into the project itself. The architectural reasons are documented in the PCS 7 engineering manual and worth restating for the field:

  • Catalog size: The wizard metadata for every driver and technological block would inflate the project archive by hundreds of megabytes.
  • Version coupling: A library fix (e.g. addressing a connection bug) must be deployable to the engineering station without re-opening the project.
  • Multi-ES consistency: Multiple engineers on the same multiproject must have the identical library stack; installing it once per ES (and not per project) guarantees that.

For all these reasons, the Library V7.1 is an engineering-station-level dependency, not a project-level artifact. It must be installed on every ES that opens the project, including contractor laptops and FAT rigs.

10. Best Practices for Mixed-Vintage PCS 7 Fleets

  1. Maintain a documented Library Reference Sheet per project, listing the exact library versions used (e.g. Library V7.1 SP3 Upd4 + Faceplates V7.1 SP3 Upd1).
  2. Build a standardized ES image (Windows + PCS 7 + required legacy libraries) and image new ES laptops from it instead of installing libraries piecemeal.
  3. Run SIMATIC Manager → Options → PCS 7 → Library Readme after every library install to confirm version and date.
  4. When migrating to APL, follow the Siemens Library Migration Guide; do not run a mixed project on a V9.0 station without first reconciling the driver block versions in IMAP.
  5. Keep a copy of the legacy installers in a project-archive folder so the dependency can be re-satisfied years later when the original DVD is no longer readable.
Safety implication: Compilation failures on the driver wizard can mask downstream @CH_* chart issues that surface only at AS-OS download. Always confirm that the Module Driver tab is empty before issuing an AS download in a running plant. A half-regenerated driver chart will load, but channel diagnostics and the OS will silently misbehave.

11. Frequently Asked Questions

Why does the CH_AI error appear on PCS 7 V9.0 even though my project is from V7.1 and simulates correctly?

The simulation path (S7-PLCSIM) only needs the compiled FB code, but the "Generate module driver" step invokes the driver wizard, which needs library metadata that is no longer installed by default on V9.0. Install Library V7.1 SP3 Upd4 from SIOS 109757344 to resolve it.

Do I need Library Faceplates V7.1 SP3 Upd1 in addition to Library V7.1 SP3 Upd4?

Only if the project contains pre-APL technological blocks (MOT_SP, VALVE_ANA, PID_FM, ...) that own faceplates. Pure driver-block projects (CH_AI, CH_DI, etc.) only need Library V7.1 SP3 Upd4.

The V7.1 library is not on the V9.0 media DVD. Where can I download it?

The driver library is hosted on the Siemens support portal under entry 109757344. The faceplates package is linked from the V8.2 update page because it is no longer listed on the V9.0 update pages.

Can I just migrate the CH_AI blocks to the APL equivalents and remove the legacy library?

Yes, but it requires a controlled migration using IMAP and a PCS 7 Library Migration Guide. For long-running brownfield projects that are not actively being modernized, installing Library V7.1 SP3 Upd4 is the faster and lower-risk path.

Is this error covered by a Siemens support contract?

Yes — open a support request referencing the legacy library stack (PCS 7 Library V7.1 SP3 Upd4, entry 109757344) and attach the Module Driver tab of the compile result. Siemens support can provide the exact installer for the project's license scope.

Back to blog