Resolving Module Driver Not Found Errors When Migrating PCS 7 from V7.0 to V7.1
When migrating a SIMATIC PCS 7 project from V7.0 to V7.1, the CFC compiler error 'Module driver not found' occurs because the project's Master Data Library or chart folder contains obsolete driver blocks from V7.0 that cannot interface with the V7.1 Hardware Catalog. To resolve this, copy the updated driver blocks (FBs and FCs) from the installed 'PCS 7 Basis Library V7.1' into your project's Master Data Library, execute 'Options > Update Block Types...' in SIMATIC Manager to update all chart instances, and recompile the charts with 'Generate module drivers' enabled.
Table of Contents
- Executive Summary
- Architecture and Fundamental Mechanics
- Step-by-Step Implementation Procedure
- Verification
- Limitations and Operational Precautions
- Engineer FAQ
- Technical References
- Related Articles
- Related Tags
Executive Summary
Upgrading legacy DCS installations from SIMATIC PCS 7 V7.0 to V7.1 is a common maintenance milestone to extend plant lifecycle and enable newer operating system compatibility. After retrieving an archived V7.0 project in PCS 7 V7.1, engineers frequently attempt an immediate compilation of the CFC charts, only to encounter fatal aborts: Module driver not found (or errors indicating that driver blocks for specific I/O modules, CPs, or racks cannot be resolved).
This failure is caused by an architectural mismatch between the newly installed Step 7 V5.4 SP5 / PCS 7 V7.1 Hardware Catalog and the obsolete PCS 7 Basis Library blocks residing within the migrated project database. The PCS 7 Driver Generator requires matching driver block versions to automatically synthesize the @CFC diagnostic network. This guide details the driver generation mechanics and outlines the official Siemens procedure to update block types and migrate libraries without errors.
Architecture and Fundamental Mechanics
The PCS 7 Driver Generator is an automated engineering tool integrated into the CFC compiler (s7cptopp.exe). Its primary function is abstracting raw physical I/O hardware into standardized technological signals:
-
Hardware Inspection: During compilation with 'Generate module drivers' selected, the compiler parses the project's Hardware Configuration. For every analog input (SM 331), digital module (SM 321), communication processor (CP 443-1), and interface rack (ET 200M IM 153-2), the compiler identifies the module type, firmware version, and diagnostic capabilities.
-
Driver Block Synthesis: The compiler automatically creates hidden system charts named
@CFC_*and instantiates diagnostic blocks (MOD_D1,MOD_HA,RACK_410, etc.) and channel drivers (CH_AI,CH_DI). -
The Migration Conflict: In PCS 7 V7.1, the hardware catalog introduces newer module revisions and updated diagnostic structures. When the compiler attempts to instantiate driver blocks, it queries the project's
Chartsfolder and Master Data Library (MDL). If the project still contains V7.0 driver blocks:
- The block interfaces (FB/FC inputs and outputs) do not match the parameters demanded by the V7.1 Driver Generator.
- Certain newly required driver blocks (or updated helper FCs) are entirely absent from the offline block folder.
- The compiler halts with the errorModule driver not foundand aborts code generation to prevent compiling an incomplete or unsafe diagnostic structure.
Step-by-Step Implementation Procedure
Follow these steps to update module drivers and successfully compile charts when migrating from PCS 7 V7.0 to V7.1:
-
Open the PCS 7 Basis Library V7.1:
- In SIMATIC Manager, select 'File > Open...'.
- Switch to the 'Libraries' tab.
- Select 'PCS 7 Basis Library V7.1' and click 'OK'.
- In the library tree, navigate to theBlocksfolder. -
Update the Project Master Data Library:
- Open your plant multiproject in SIMATIC Manager.
- In the Component View, expand your project's Master Data Library (MDL) >Blocksfolder.
- Select all blocks (FBs and FCs) in thePCS 7 Basis Library V7.1Blocks folder (Ctrl+A).
- Copy and paste them into the Master Data LibraryBlocksfolder, confirming overwrite of all older block versions. -
Execute Update Block Types Across All Charts:
- In SIMATIC Manager, select the Master Data LibraryBlocksfolder.
- Select 'Options > Charts > Update Block Types...' from the main menu.
- In the 'Update Block Types' wizard, select your target S7 Program / Charts folder.
- Click 'Next'. The wizard compares block signatures and identifies all updated driver blocks (CH_DI,CH_AI,MOD_D1,MOD_HA, etc.).
- Confirm the update. The wizard iterates through every CFC chart, cleanly updating block headers and preserving existing parameter connections. -
Clean Up Obsolete System Charts:
- In SIMATIC Manager Component View, expand the S7 ProgramChartsfolder.
- Locate and delete any obsolete system-generated charts beginning with@CFC(e.g.,@CFC_AS,@CFC_RXT).
- (Deleting@CFCcharts forces the V7.1 Driver Generator to reconstruct the entire diagnostic network from a clean baseline). -
Recompile Hardware Configuration and Charts:
- Open HW Config for each AS station, execute 'Station > Save and Compile', and ensure zero errors.
- Return to SIMATIC Manager, select theChartsfolder, and select 'PLC > Compile > Charts as Program...'.
- Select 'Entire program' and ensure 'Generate module drivers' is checked.
- Click 'OK'. The V7.1 compiler successfully synthesizes the new driver charts and completes compilation without errors.
Verification
- In the CFC compilation log window, confirm that compilation completes with:
0 Errors, 0 Warnings(or benign informational notices). - Open the newly generated
@CFCcharts in the CFC Editor: confirm that diagnostic blocks (MOD_D1, etc.) reflect Basis Library V7.1 block versions. - Open any technological chart containing a channel driver (e.g.,
CH_AI): verify that input interconnections to physical I/O addresses (PIW) and output connections to technological blocks remain intact. - Perform an AS download in RUN mode (if supported by Configuration in Run / CiR) or during a planned maintenance outage, and confirm that all I/O racks report healthy green status.
Limitations and Operational Precautions
Upgrading block types across major versions can introduce interface changes that require an AS STOP if download in RUN is not supported by the controller architecture. Always create a full multiproject backup (File > Archive...) prior to executing 'Update Block Types'. Verify operating system compatibility and software licenses for PCS 7 V7.1 with an authorized Siemens distributor or the Siemens Industry Mall.
Engineer FAQ
Why does 'Compile Charts as Program' fail with 'Module driver not found'?
The V7.1 compiler detects hardware modules in HW Config that require updated V7.1 Basis Library driver blocks, which are missing from the project's offline block folder.
What is the difference between PCS 7 Basis Library and Standard Library?
The PCS 7 Basis Library contains hardware diagnostic and channel driver blocks (MOD_*, CH_*). The Standard Library / APL contains process control and technological blocks (MotL, PIDConL).
Can I delete the @CFC charts safely before compiling?
Yes. Charts prefixed with @ are automatically generated by the Driver Generator. Deleting them ensures obsolete driver blocks from V7.0 are completely removed before recompiling.
Will 'Update Block Types' overwrite my custom parameter values?
No. The 'Update Block Types' wizard updates block type definitions while preserving all instance-specific parameter values and chart interconnections.
Is PCS 7 V7.1 compatible with 64-bit Windows 10?
No. PCS 7 V7.1 is a legacy release designed for Windows XP Professional SP3 and Windows Server 2003 SP2 (32-bit). Running it on Windows 10 is unsupported.
Technical References
- Process Control System PCS 7 Software Update with Utilization of New Functions (PCS 7 V6.x or Higher to V7.1)
- SIMATIC Process Control System PCS 7 Basis Library (V7.1) Manual
- Siemens Industry Online Support FAQ 39980937 - Updating Block Types in PCS 7
Related Articles
- Upgrading Block Types and Module Drivers During SIMATIC PCS 7 Version Migrations
- Migrating CEMAT from V7.0 to V8.1 in SIMATIC PCS 7 - Upgrade Paths and Migration Procedures
- Architectural Differences and Functional Enhancements When Migrating from PCS 7 V8.2 to V9.0 and V9.1
Related Tags
- PCS 7 V7.1
- Migration
- Module Driver
- Driver Generator
- Basis Library
- Update Block Types