Overview
The Simatic S5-95U compact PLC exposes a Profibus DP master port on the bottom edge of the CPU module. The port is electrically and protocol-compatible with the EN 50170 / IEC 61158 Profibus DP standard, which means any DP-V0 slave that complies with that standard can, in principle, be operated downstream of it. In practice, however, the S5-95U's DP master firmware contains a hard limitation on the maximum length of a diagnostic telegram that the CPU is willing to accept from a slave. This limitation is the single most important selection criterion when replacing legacy WAGO 750-x remote I/O stations with newer Siemens ET 200 distributed I/O.
This reference covers the compatibility matrix for the S5-95U Profibus master against the ET 200S (IM 151-1), ET 200M (IM 153-1) and ET 200L product families. It also documents the 32-byte diagnostic ceiling, the role of the Max_Diag_Data_Len GSD parameter, the behaviour of COM PROFIBUS V5.x versus older releases, and the field-proven workarounds used to keep the CPU out of STOP when the I/O count is in the 90 DI / 90 DO range per machine.
S5-95U Profibus Master Specifications
The S5-95U DP master port implements DP-V0 only. Key parameters that govern slave selection:
| Parameter | Value | Notes |
|---|---|---|
| Profibus protocol | DP-V0 (EN 50170) | No DP-V1 / DP-V2 services |
| Baud rates supported | 9.6 kbaud to 1.5 Mbaud | Set by master, slave auto-detects |
| Max. number of slaves | 31 (segment), 124 with repeaters | Subject to address & diagnostic limits |
| Max. diagnostic bytes per slave | 32 | Hard limit; overrun -> CPU STOP |
| Max. I/O bytes per slave (typical) | 122 input / 122 output | Limited by slave, not master |
| Configuration tool | COM PROFIBUS V3.x to V5.1+SP2 | V5.x enforces the 32-byte check |
The relevant device manual is the "ET 200 Distributed I/O System with IM 308-C and S5-95U" manual, which lists the I/O modules, max stations and diagnostic conventions for the S5-95U master. The companion reference "S5/505 ET 200 Distributed I/O System" (Siemens support PDF 505-8206-2) provides the reaction table when the S5-95U transitions from STOP to RUN for the first time and contains the officially supported IM 151 / IM 153 / IM 308-C combinations.
The 32-Byte Diagnostic Data Constraint
Every Profibus DP slave has a maximum diagnostic message length declared in its GSD file under the keyword Max_Diag_Data_Len. For DP-V0 slaves this is the length of the standardized diagnostic buffer (6 standard bytes + extended diagnostic entries) that the slave can deliver during the cyclic parameterization / diagnosis handshake.
Behaviour summary by GSD value:
| Max_Diag_Data_Len in GSD | COM PROFIBUS V3.x / V4.x | COM PROFIBUS V5.x | Runtime risk on S5-95U |
|---|---|---|---|
| 0 (not declared) | Accepted | Accepted | None (slave has no extended diagnostics) |
| 1 - 32 | Accepted | Accepted | None |
| 33 - 242 | Accepted (no check) | Blocked with warning | High; CPU STOP on first extended diag |
The diagnostic buffer is built up by the slave firmware whenever an event occurs: wire break on an AI, overload on a DO, channel fault on a PM, hot-swap event on an active backplane, etc. The 32-byte cap is therefore not a static property of the device - it is a runtime event trigger. A slave that ships with Max_Diag_Data_Len = 8 can still emit a 64-byte diagnostic message in the field if a multi-channel fault is reported, which is why the GSD value is a worst-case declaration.
ET200S (IM 151-1) Compatibility
The ET 200S with interface module IM 151-1 (6ES7 151-1AA02-0AB0 and higher) is the most common modular Profibus slave. Its default GSD file declares Max_Diag_Data_Len in the 60 - 80 byte range because the ET 200S reports module-level diagnostics (channel status, hot-swap state, module missing, parameter errors) for every slot in the station.
Implications for the S5-95U:
- COM PROFIBUS V5.1+SP2 will refuse the IM 151-1 configuration for an AG95 master and emit a non-compatibility warning.
- COM PROFIBUS V3.3 / V4.0 will accept the configuration because the diagnostic-length check is absent.
- At runtime, the first channel fault on the ET 200S will produce an extended diagnostic telegram exceeding 32 bytes and force the S5-95U into STOP.
The exception noted in the field is the ET 200S with integrated CPU (IM 151-7 CPU or IM 151-8 PN/DP CPU), used as an intelligent slave. The COM PROFIBUS V5.x import does not flag the CPU variant as incompatible, because its GSD is registered as a "DPM-Slave" device whose diagnostic buffer is the host-CPU controlled. The CPU variant is, however, considerably more expensive and is normally reserved for true pre-processing architectures, not for a direct 1:1 replacement of a WAGO 750-x.
ET200M (IM 153-1) Compatibility
The ET 200M with IM 153-1 (6ES7 153-1AA02-0AB0 and higher, including the -2AB0 and -2BA20 follow-on modules) is widely deployed with S7-300 stations. Its GSD also declares a Max_Diag_Data_Len well above 32 bytes because the IM 153-1 reports diagnostic data for every S7-300 I/O module in the rack (SM 321 DI, SM 322 DO, SM 331 AI, SM 332 AO, and F-modules such as SM 326F).
Compatibility matrix for ET 200M on the AG95:
| IM 153-1 variant | Order number | Max_Diag_Data_Len | Compatible with S5-95U? |
|---|---|---|---|
| IM 153-1 (basic) | 6ES7 153-1AA02-0AB0 | ~96 | No (firmware limit) |
| IM 153-1 (with redundancy) | 6ES7 153-1AA03-0AB0 | ~128 | No (firmware limit) |
| IM 153-2 (FO) | 6ES7 153-2BA02-0AB0 | ~128 | No (firmware limit) |
| IM 153-2 (redundant) | 6ES7 153-2BA00-0AB0 | ~128 | No (firmware limit) |
Siemens' own FAQ "DP slaves on AG95 DP master" explicitly states that the IM 153-1 is supported, but field experience shows that this support is conditional on the station never producing a diagnostic message longer than 32 bytes - which is impossible to guarantee once more than 4-5 I/O modules are populated. For machines that are required to run 24/7, treat the IM 153-1 as not supported on the AG95.
ET200L and Lower-Complexity Alternatives
The ET 200L family is the most pragmatic 1:1 replacement for the WAGO 750-303 block I/O when the AG95 must remain as the master. The ET 200L is available in two forms:
| ET 200L model | Order number | I/O count | Max_Diag_Data_Len (typical) |
|---|---|---|---|
| ET 200L-SC | 6ES7 131-1GF00-0AB0 | 16 DI | 0 - 16 |
| ET 200L-SC | 6ES7 132-1GF00-0AB0 | 16 DO | 0 - 16 |
| ET 200L-SC (analog) | 6ES7 134/135-1GF00-0AB0 | 4 AI / 4 AO | ~24 |
| ET 200L-16DI / 16DO | 6ES7 131/132-1BH00-0XB0 | 16 DI / 16 DO | ~16 |
Because the ET 200L is a fixed block (no hot-swap, no module-level diagnostics, no firmware revisions), its Max_Diag_Data_Len stays below 32 bytes for the life of the device. For a 90 DI / 90 DO retrofit, six ET 200L-SC blocks (three 16DI, three 16DO) per WAGO station is a clean and supported topology.
Other low-diagnostic slaves that have been used successfully on the AG95:
- WAGO 750-303 / 750-304 (legacy,
Max_Diag_Data_Len = 64declared but historically tolerated). - Siemens DP/AS-i Link 20E (6GK1 415-2BA00) for AS-i I/O replacement.
- Third-party DP-V0 compact I/O from Phoenix Contact (Inline), Beckhoff (BK1x00) and Turck (BL20) - check each GSD individually.
GSD File Inspection Procedure
Before ordering any replacement I/O, inspect the GSD file for the slave candidate. The procedure takes less than a minute per candidate and is the only reliable pre-check because manufacturer datasheets rarely list Max_Diag_Data_Len.
- Download the GSD file (Siemens GSD library, WAGO GSD download, manufacturer support portal).
- Open the GSD in a plain text editor (Notepad, Notepad++, vi).
- Locate the keyword
Max_Diag_Data_Len(case-insensitive, located in the slave header section). - Read the integer value. Acceptable: 0 - 32. Reject: > 32.
- If the keyword is absent, the slave has no extended diagnostics and the configuration is safe.
Example GSD excerpt from a compliant slave:
; GSD file: siem8042.gsd (ET 200L-SC 16DI)
GSD_Revision = 1
Vendor_Name = "Siemens AG"
Model_Name = "ET 200L-SC 16DI"
Ident_Number = 0x8042
Max_Diag_Data_Len = 16 ; <= 32, safe for AG95
...
Example GSD excerpt from a non-compliant slave:
; GSD file: siem8011.gsd (ET 200S IM 151-1)
GSD_Revision = 1
Vendor_Name = "Siemens AG"
Model_Name = "ET 200S IM 151-1"
Ident_Number = 0x8011
Max_Diag_Data_Len = 64 ; > 32, NOT safe for AG95
...
Max_Diag_Data_Len from 64 to 32 will let COM PROFIBUS V5.x accept the configuration, but the slave firmware will still send a 64-byte telegram at runtime if a multi-channel fault occurs. The CPU will still go to STOP. Editing the GSD only bypasses the engineering tool check; it does not fix the runtime behaviour.COM PROFIBUS Version Behaviour
COM PROFIBUS is the standard Siemens engineering tool for Profibus networks with S5 and pre-Step7 controllers. The diagnostic-length check was introduced in version 5.0, and is present in V5.0, V5.1 and V5.1+SP2 (the last release supporting the AG95).
| COM PROFIBUS version | Diagnostic-length check | Behaviour on slave > 32 bytes |
|---|---|---|
| V3.0 - V3.3 | None | Accepts the slave, no warning |
| V4.0 | None | Accepts the slave, no warning |
| V5.0 | Enabled | Blocks configuration with non-compatibility warning |
| V5.1 | Enabled | Blocks configuration with non-compatibility warning |
| V5.1 + SP2 | Enabled | Blocks configuration with non-compatibility warning |
For a working AG95 - ET 200M / ET 200S configuration the only engineering tools that allow the import are COM PROFIBUS V3.x / V4.x. These are obsolete; the field-proven approach is to keep a copy of COM PROFIBUS V3.3 on a maintenance laptop for the duration of the migration phase. Do not "upgrade" the engineering laptop once a working configuration has been signed off, because the V5.x import will not reproduce it.
Migration Path to S7
The S5-95U is a Phase-out / spare-part product. Long-term migration to an S7-300 (CPU 315-2 DP, 6ES7 315-2AG10-0AB0) or S7-1500 (CPU 1511-1 PN, 6ES7 511-1AK00-0AB0) removes the 32-byte diagnostic limit entirely. The recommended sequence is:
-
Phase 1 (immediate, this article's scope): Replace failing WAGO 750-x stations with ET 200L-SC blocks or with the same WAGO 750-x hardware (verified on the GSD
Max_Diag_Data_Len). Keep the S5-95U as the master. Verify the new stations do not generate extended diagnostics during a one-week soak test. - Phase 2 (next planned downtime): Install the S7-300 station in parallel, run a Profibus cable back to the new IM 153-1, transfer the I/O map and the user program. The S5 program can be ported using the S5 to S7 converter in Step 7 (TIA Portal) or Step 7 V5.5.
- Phase 3 (decommission): Power down the S5-95U, remove the WAGO terminator, repurpose the freed cable as the new S7-300 Profibus segment.
Throughout phase 1 the only Profibus topology that is guaranteed not to STOP the AG95 is one composed of slaves with Max_Diag_Data_Len <= 32. The Phase 1 station list should be audited again before commissioning any new module revision, because vendors occasionally update the diagnostic length in a new firmware or GSD revision.
Risk Assessment and Workarounds
| Approach | Engineering effort | CPU STOP risk | Recommended? |
|---|---|---|---|
| Replace WAGO 750-x with WAGO 750-x (same hardware) | None (drop-in) | None (tolerated on AG95) | Yes, for fastest 24/7 fix |
| Replace WAGO 750-x with ET 200L-SC blocks | Rewire + new GSD | None | Yes, when spare WAGO 750-x is exhausted |
| Replace WAGO 750-x with ET 200S IM 151-1 (edited GSD) | Rewire + GSD hack | High (runtime diag still exceeds 32) | No, for 24/7 machines |
| Replace WAGO 750-x with ET 200M IM 153-1 (COM PROFIBUS V3.3) | Rewire + obsolete tool | High (similar to above) | No, for 24/7 machines |
| Replace WAGO 750-x with ET 200S + IM 151-7 CPU slave | Rewire + slave program | Low (GSD is DPM-Slave) | Yes, when CPU-based pre-processing is needed |
| Skip Phase 1, jump to S7-300 immediately | High (program conversion) | None (no AG95) | Yes, if downtime is available |
Verification Procedure After a Replacement
Once a new DP slave is installed and configured, perform the following verification before releasing the machine to production:
- Power up the AG95 cold and confirm the RUN LED stays solid (no blinking, no transition to STOP).
- Read the diagnostic buffer of the new slave from the Profibus master with COM PROFIBUS V5.x or STEP 7 - it must report only the standard 6-byte DP-V0 diagnostic, not the extended entries.
- Force a single channel fault on the new I/O (e.g. remove a wire from a DI terminal) and verify that the AG95 does NOT enter STOP. Reset the channel fault and confirm the diagnostic buffer is cleared.
- Force a multi-channel fault (e.g. break two DI wires simultaneously, then three) and repeat the STOP check.
- Cycle the AG95 to STOP and back to RUN with the new slave connected. Verify the S5-95U returns to RUN within 2 seconds (per the "Reaction to switching the S5-95U for the first time from STOP to RUN" table in the Siemens support PDF 505-8206-2).
- Soak test 72 h with the process running; the AG95 must remain in RUN the entire interval.
If the AG95 enters STOP at step 3, the slave's actual diagnostic length exceeds 32 bytes. Remove the slave and substitute a confirmed-compliant device (WAGO 750-x or ET 200L-SC).
FAQ
Can an ET 200S IM 151-1 be operated on an S5-95U Profibus master?
Not reliably. The IM 151-1 GSD declares Max_Diag_Data_Len in the 60-80 byte range. COM PROFIBUS V5.x blocks the configuration; older COM PROFIBUS accepts it, but the AG95 will enter STOP on the first extended diagnostic message. The IM 151-7 CPU variant is the supported ET 200S choice on the AG95.
Can an ET 200M IM 153-1 be operated on an S5-95U Profibus master?
Same constraint as the IM 151-1. Siemens' FAQ lists the IM 153-1 as supported, but only for small stations (<= 4 S7-300 modules) where the cumulative extended diagnostic stays under 32 bytes. For 90 DI / 90 DO stations, the IM 153-1 is not recommended on the AG95.
How do I check the Max_Diag_Data_Len of a slave before ordering it?
Open the slave's GSD file in a text editor and search for the keyword Max_Diag_Data_Len. A value of 0-32 is safe for the AG95; a value > 32 will cause a CPU STOP on extended diagnostics. Older COM PROFIBUS versions (V3.3) accept slaves > 32 bytes but do not fix the runtime behaviour.
Why does my WAGO 750-303 work on the AG95 even though Max_Diag_Data_Len = 64?
The WAGO 750-303 GSD declares 64 bytes but in practice the firmware rarely emits the full buffer. It is a tolerated exception. Editing the GSD to Max_Diag_Data_Len = 32 only bypasses the COM PROFIBUS V5.x warning; it does not change what the firmware sends at runtime.
What is the fastest path to replace a WAGO 750-x station on an S5-95U?
For a 24/7 machine: order the same WAGO 750-303 hardware (drop-in, zero CPU STOP risk) or ET 200L-SC fixed blocks (verified safe on the AG95). The full S7-300 migration with ET 200M is recommended for the next scheduled downtime.