Problem Description: Question Marks Next to I/O in HW Config
When a STEP 7 V5.5 project is opened in SIMATIC Manager, the rack view in HW Config shows a yellow question mark badge next to one or more I/O modules in slots 4 through 11 (S7-300) or in the distributed I/O stations (S7-400 / ET 200). The question mark is rendered as a small "?" icon overlaid on the module symbol. Despite the offline warning, the CPU returns no diagnostic buffer entries, no SF / BF LED is lit on the physical module, and an online upload from the PLC to the PG completes without errors. The issue is therefore a project-database mismatch and not a hardware fault.
This symptom is one of the most common inheritance problems in brownfield STEP 7 environments, especially on S7-300, S7-400, and ET 200S / ET 200M stations where the original engineering was performed on a different STEP 7 version than the one currently installed on the maintenance PG. The question mark indicates that the offline project database cannot resolve a module's MLFB (Machine-Readable Product Designation, Siemens order number) to a known type entry in the local hardware catalog.
Engineers who inherit such projects often delay modification work because the visual warning undermines confidence in the backup. The proper remediation is systematic: identify the unknown MLFB, verify it against the installed catalog, install the matching Hardware Support Package (HSP), or load a GSD/GSDML file for non-Siemens devices.
Root Cause Taxonomy
A question mark is rendered for one of three underlying reasons. Confirming the actual cause determines the correct fix.
| Cause | Indicator | Resolution Path |
|---|---|---|
| Missing Hardware Support Package (HSP) | Module MLFB is a valid Siemens part number, but newer than the catalog baseline shipped with STEP 7 | Install matching HSP from Siemens Online Support |
| STEP 7 version too old | Module exists in catalog only for STEP 7 V5.4+ but PG runs V5.3 or earlier | Upgrade STEP 7 to V5.5 SP5 or later within license |
| Third-party / non-Siemens module | MLFB prefix is not 6ES7 (e.g. VIPA 222-xxx, Phoenix Contact, Wago 750 series) | Install vendor GSD (PROFIBUS) or GSDML (PROFINET) file |
| Catalog corrupted or partially installed | Previously working modules now show question marks after a STEP 7 reinstall | Reinstall catalog from original media or HSP bundle |
The most overlooked cause in field service is the third-party case. Stations that mix Siemens CPUs with VIPA SLIO modules, Phoenix Contact Axioline, or Wago 750 I/O on PROFIBUS-DP or PROFINET will show a question mark for every DP/PN slave whose GSD/GSDML has not been imported into the project.
STEP 7 Version Compatibility Matrix
The HW Config catalog is built into STEP 7 at installation time and is extended incrementally by Service Packs (SP), Hot Fixes (HF), and Hardware Support Packages (HSP). A module released after the catalog baseline cannot be resolved until the matching HSP is installed.
| STEP 7 Version | Catalog Baseline (approx.) | HSP Path |
|---|---|---|
| V5.3 + SP3 | Pre-2006 modules | \Siemens\Automation\S7HWSupport\S7HSP |
| V5.4 + SP5 | 2007 modules | \S7HWSupport (32-bit) or (x86)\S7HWSupport |
| V5.5 + SP2 | 2010 modules | C:\Program Files\Siemens\Automation\S7HWSupport |
| V5.5 + SP5 (HF8) | 2014 modules | Same path; HSPs numbered 0293 onward |
STEP 7 V5.5 reached end of life as the final classic STEP 7 release in the TIA Portal era. The final shipped catalog covers most modules introduced before mid-2014. Any module with an MLFB released after this date requires an HSP. The HSP numbering convention is S7HSP<NNNN> and is independent of STEP 7 SP numbering.
MLFB Numbering and Catalog Mechanics
Siemens MLFBs follow the structure:
6ES7 <module-class>-<variant><revision><FW> <release>
Examples relevant to common S7-300 hardware:
-
6ES7 314-6CG03-0AB0- CPU 314C-2 PN/DP, firmware V3.3 -
6ES7 315-2EH14-0AB0- CPU 315-2 PN/DP, firmware V3.2 -
6ES7 321-1BH02-0AA0- SM 321, 16 DI, 24 V DC -
6ES7 322-1BH01-0AA0- SM 322, 16 DO, 24 V DC / 0.5 A -
6ES7 331-7KF02-0AB0- SM 331, 8 AI, 12-bit resolution -
6ES7 332-5HD01-0AB0- SM 332, 4 AO, 12-bit -
6ES7 153-1AA03-0XB0- IM 153-1 for ET 200M, PN interface
When HW Config reads a project file, it parses each module's MLFB and queries the local catalog database for a matching type record. If no record is found, the question mark glyph is rendered in lieu of the module image. The catalog is stored under:
%ProgramFiles%\Siemens\Automation\S7DATA\CATALOG\<STEP7_version>\catalog.mdb
The catalog is read-only at runtime. HSP installation appends entries to this MDB; it never overwrites. Removing an HSP via the standard installer is not supported; rollback requires catalog restoration from the original STEP 7 installation media.
Hardware Support Packages (HSP) - Detailed Procedure
Locating the Correct HSP
- Open the project in SIMATIC Manager and double-click the rack to enter HW Config.
- Right-click any question-mark module and select Object Properties > Order Number. Copy the MLFB exactly as printed on the module's front label.
- Navigate to the Siemens Online Support portal and use the entry search with the full MLFB string.
- Open the entry; the matching HSP is named in the Associated HSP field. Common HSPs for V5.5-era deployments:
-
HSP0293- S7-300 / ET 200M modules introduced 2013-2014 -
HSP0294- Additional F-I/O and F-CPU revisions -
HSP0296- Late-life ET 200S / ET 200pro modules -
HSP0301- Final consolidated HSP for STEP 7 V5.5 SP5
- Download the HSP executable (e.g.
S7HSP0293_0301.exe) to a local working folder. The file is signed by Siemens AG; verify the publisher certificate before execution.
Installing the HSP
- Close all running instances of SIMATIC Manager and HW Config.
- Run the HSP executable as Administrator. The installer unpacks the package and registers it with the STEP 7 catalog service.
- Confirm the target STEP 7 path matches the active installation (default
C:\Program Files\Siemens\Automation\S7HWSupport). - After install completes, restart SIMATIC Manager.
- Open the project; HW Config now resolves the MLFB and the question mark is replaced by the proper module image.
Verifying HSP Installation
After restart, open HW Config and select Options > Install HW Updates. The dialog lists every HSP registered with the local catalog along with its installation date and source path. The list must show the HSP just installed. If it does not appear, the installer was pointed at a non-default STEP 7 path; re-run with the correct target.
Third-Party Module Handling: VIPA and Other PROFIBUS/PROFINET Devices
VIPA SLIO modules (Yaskawa VIPA Controls after the 2014 acquisition) and similar third-party I/O appear in HW Config as DP or PN slaves, not as rack-mounted S7 modules. They are referenced by a vendor GSD file. Until the GSD is imported, every VIPA slave slot displays the question mark.
Importing a GSD File (PROFIBUS)
- Obtain the GSD file from the module vendor. For VIPA SLIO the file is named
VIPA_<series>.GSDand is available from the vendor product page. - In HW Config, select Options > Install GSD File.
- Browse to the
.GSDfile and click Install. STEP 7 copies the GSD and accompanying bitmap files to:
C:\Program Files\Siemens\Automation\S7DATA\GSD\<vendor>\
- Restart HW Config. The new device type appears in the hardware catalog under PROFIBUS DP > Additional Field Devices > <vendor>.
Importing a GSDML File (PROFINET)
PROFINET devices use GSDML (XML-based). The procedure is identical, except the source file has a .xml or .gsdml extension and the destination folder is:
C:\Program Files\Siemens\Automation\S7DATA\GSDML\<vendor>\
Identifying Third-Party vs Siemens Modules
The order-number prefix is a reliable indicator:
| Prefix | Manufacturer | Catalog Source |
|---|---|---|
| 6ES7 ... | Siemens AG | STEP 7 built-in catalog + HSP |
| 6GK7 ... | Siemens Network Components (CP/IO-Link) | STEP 7 built-in catalog + HSP |
| 222-1 ... | VIPA SLIO | Vendor GSD / GSDML |
| 750-xxx | Wago 750 Series | Vendor GSD / GSDML |
| AXL F ... | Phoenix Contact Axioline F | Vendor GSDML |
Always read the actual module label. A VIPA 222-1BH00 will be misread as a Siemens equivalent if only the model class ("16 DI") is matched.
STEP-by-Step Recovery Procedure
The following ordered procedure resolves the question-mark issue without compromising the running PLC configuration.
- Capture the existing online configuration. From SIMATIC Manager, go PLC > Upload Station to PG. Save the resulting project as a read-only archive. This snapshot is the only authoritative record of what the CPU believes is installed.
- Enumerate unknown MLFBs. In HW Config, click each question-mark module and record its order number, slot, and (if visible) firmware version. Build a list before proceeding.
- Cross-check against the physical modules. Walk to the cabinet and read each module's label. Verify the online upload matches the physical inventory. Discrepancies here usually explain mystery question marks: a module was replaced in the field but the offline backup was never updated.
- Classify each module. Mark each MLFB as Siemens (6ES7/6GK7/6AV etc.) or third-party (VIPA, Wago, Phoenix, etc.). Siemens modules go to the HSP path; third-party modules go to the GSD/GSDML path.
- Update the local catalog. Install the matching HSP for every Siemens MLFB newer than the STEP 7 baseline. Import the matching GSD / GSDML for every third-party module.
- Reload the project. Close and reopen SIMATIC Manager, then reopen the project. HW Config re-renders all modules; question marks should be gone.
- Compare online to offline. Go online with the CPU and use PLC > Compare Online / Offline. Any residual mismatch indicates either a catalog entry that is still wrong or a parameter that differs between the running CPU and the offline project.
- Document the catalog state. Save a screenshot of Options > Install HW Updates showing the installed HSPs. Attach this to the project archive so the next engineer inherits a verifiable catalog baseline.
Online vs Offline Diagnostic Reconciliation
The symptom "no diagnostic error online" is consistent with a successful upload from the CPU. STEP 7 uploads the actual module identification from the running rack, which uses firmware-resident type information, not the engineering catalog. The uploaded project may still show question marks offline because the local catalog has not been extended to recognize those modules.
To confirm a catalog-only issue (as opposed to a genuine hardware problem), check the CPU diagnostic buffer with PLC > Diagnostics/Settings > Diagnostic Buffer. Look for entry ID W#16##1311 / 0x1311 (module identification OK) and the absence of any W#16##39xx / SF module entries. If only identification entries are present, the rack is healthy and the catalog is the sole fault.
A typical diagnostic buffer for a healthy but catalog-unknown module reads:
Entry 1: Module inserted OB82, OB100 OK
Entry 2: Module identification OK rack 0 slot 4
Entry 3: No faults
If an SF or BF LED is lit, the question mark is symptomatic of a deeper issue (PROFINET name mismatch, PROFIBUS slave failure, missing terminating resistor) and the catalog update alone will not clear the LED.
Project Backup and Archive Best Practices
Inherited STEP 7 projects are typically delivered as ZIP archives of the project folder, not as .s7p archives. To create a re-openable backup that survives STEP 7 version differences:
- In SIMATIC Manager, select File > Archive. This generates a single
.zipcontaining the project database, sources, and the offline hardware configuration. - Archive the project both with and without the HW Config database ticked. The "without" archive is portable across STEP 7 versions but loses catalog resolution.
- Store the catalog-state screenshot from Options > Install HW Updates alongside the archive. This is the only way the next engineer knows what HSPs are required.
- For multi-station projects, include the station configuration tool output (if PROFINET) and the GSD/GSDML set used. These are not bundled in the STEP 7 archive.
Verification Checklist Before Editing
Before modifying the program of a project that previously showed question marks, complete this checklist:
| Step | Verification | Pass Criterion |
|---|---|---|
| 1 | HW Config renders all modules without question marks | Zero "?" icons in rack view |
| 2 | Online/offline compare | No "different" entries for hardware structure |
| 3 | CPU diagnostic buffer scan | No W#16##39xx entries; only identification events |
| 4 | Physical module MLFBs match offline | Slot-by-slot match against cabinet labels |
| 5 | Catalog screenshot archived with project | File present in \Project\Docs\
|
| 6 | Third-party GSD/GSDML set archived | Vendor files stored with project |
Only after every row passes should the project be opened for logic modifications. Editing a project with unresolved question marks risks an implicit catalog-driven reset at the next hardware download, which can rewrite parameters the running CPU was relying on.
Known Edge Cases
F-Modules (Fail-Safe)
F-modules (F-CPUs, F-I/O, F-CP) require the S7 Distributed Safety or S7 F/FH Systems option package in addition to the matching HSP. Without that option, even a current HSP will not register the F module in the catalog. Confirm both are installed before troubleshooting further.
HSP for ET 200S / ET 200pro IM Modules
ET 200S and ET 200pro IM 151 / IM 154 interface modules are released under separate HSP numbers from the standard S7-300 catalog. A question mark specifically on the IM module (slot 0 of the slave) is almost always a missing ET 200 HSP, not a missing I/O HSP.
CPU Firmware Version Mismatch
An HSP that supports the module family may still flag a specific firmware revision as unknown. For example, 6ES7 315-2EH14-0AB0 firmware V3.2 may resolve while firmware V3.3 requires a sub-version of the same HSP. Read the firmware level off the module's display or via PLC > Diagnostics/Settings > Module Information and request the precise HSP variant from Siemens support.
Frequently Asked Questions
Why does my STEP 7 V5.5 SP5 HF8 still show question marks after installing the latest HSP?
Either the HSP does not cover the specific module firmware revision present in the rack, or the module is third-party (VIPA, Wago, Phoenix Contact) and requires a vendor GSD/GSDML file imported via Options > Install GSD File. Verify the actual MLFB on the physical module label and re-check whether the prefix is 6ES7 or a vendor code.
Will downloading the corrected project to the CPU break the running process?
Yes, if any slot configuration changed during catalog resolution. The catalog update alone does not download, but the next PLC > Download will rewrite module parameters. Take an online upload first, compare offline against online, and download only after confirming identical hardware structure.
How do I tell if a module is Siemens or VIPA without opening the cabinet?
Read the MLFB on the module faceplate. Siemens S7 modules start with 6ES7 (digital/analog I/O), 6GK7 (communication), 6AV7 (HMI), or 6ES7 6xx (F-modules). VIPA SLIO modules carry an order number starting with 222- or 2xx- and include the VIPA logo on the front label. When in doubt, the Siemens support entry search will resolve either prefix.
Where can I download the HSP for a Siemens module newer than my STEP 7 catalog?
Search the Siemens Online Support portal using the full MLFB. The matching entry lists the associated HSP file (e.g. HSP0293) under Associated Components. Download and run the executable with Administrator rights; STEP 7 V5.5 SP5 supports HSPs up to the final consolidated package HSP0301.
Does the question mark indicate a real hardware fault or only a catalog gap?
Almost always a catalog gap. A healthy CPU with the question-marked module reports W#16##1311 module identification events and no SF/BF entries in the diagnostic buffer. If SF or BF LEDs are lit or the diagnostic buffer contains W#16##39xx entries, treat it as a hardware or wiring fault and resolve that first before chasing the catalog.