Enabling ET 200M IM 153-2BA02 Module Change During Operation Feature
The Siemens ET 200M distributed I/O system, when populated with the IM 153-2 interface module (order number 6ES7 153-2BA02-0XB0), supports a "Module change during operation" (hot swap) feature that allows individual signal modules (SMs) to be removed and reinserted under PROFIBUS control without halting the entire station. This feature is mandatory for redundant IM 153-2 deployments where two IMs operate as a matched pair across two active bus modules, and where field devices must be serviceable while the process continues running. When this feature is not correctly enabled through the PROFIBUS parameter assignment frame, modules are accepted into the backplane bus, the diagnostic flag clears, but the output channel data remains frozen at the last valid value—producing a silent failure mode that is more dangerous than a hard fault, because the PLC HMI shows no alarm while physical outputs never re-energize.
This article documents the root cause of the failure mode observed on third-party PROFIBUS masters, the precise parameter byte assignments required to activate module change during operation, and the verification steps that confirm correct commissioning.
Problem Statement: Hot Swap Reinsertion Failure on Redundant IM 153-2 Pairs
The failure scenario is reproducible on any ET 200M station fitted with redundant IM 153-2BA02 modules configured via the Siemens si04801e.gse GSD file (GSD Revision = 5, file Revision = "v1.5", date 02.07.12) running against a non-Siemens PROFIBUS master such as the Hilscher CIF 104P-PB Combi Master.
Observable Symptom Sequence
- An output module (for example 6ES7 322-1BL00 digital output) is withdrawn from a powered, active ET 200M rack while the process is running.
- The PROFIBUS master receives an "ID diagnostic" message identifying the slot number and a "Device diagnostic" message reporting the module as Removed followed by is Missing.
- Both redundant IM 153-2 modules display their SF (red) LED for the duration of the absence—this is expected and indicates the fault is being reported to the master.
- The user reinserts the same module into the same slot.
- The ID diagnostic clears. The device diagnostic flag clears. The SF LEDs extinguish. No "Inserted" diagnostic is generated.
- The physical outputs on the reinserted module do not re-activate. The module appears electrically present but logically inactive.
- A manual switchover is forced by removing the PROFIBUS cable from the active IM 153-2. The watchdog expires and the standby IM takes over. After this switchover, the same module's outputs do re-energize—confirming the IM pair and bus modules are healthy, but the parameter frame on the previously active IM did not properly service the module insertion event.
- Removing the same module a second time after the switchover produces no diagnostic alarm at all. The system has lost its ability to detect the removal on this IM.
System Architecture and Affected Components
Reference Hardware Stack
The issue has been reproduced on the following component set, which is representative of a redundant ET 200M station with mixed signal modules:
| Component | Order Number (MLFB) | Function |
|---|---|---|
| IM 153-2 (redundant pair) | 6ES7 153-2BA02-0XB0 | PROFIBUS-DP slave interface, supports redundancy and hot swap |
| Active Bus Module (BM PS/IM) | 6ES7 195-7HA00-0XA0 | Carries PROFIBUS and 24 V supply between modules |
| Active Bus Module (BM 2x40) | 6ES7 195-7HB00-0XA0 | Carries backplane signals across slots |
| Digital Input SM | 6ES7 321-1BH02-0AA0 | DI 16 × 24 V, 4 of these fitted |
| Analog Input SM | 6ES7 331-7NF10-0AB0 | AI 8 × 0/4–20 mA, 3 of these fitted |
| Digital Output SM | 6ES7 322-1BL00-0AA0 | DO 32 × 24 V/0.5 A, 2 of these fitted |
| Digital Output SM (high-speed) | 6ES7 322-1HF10-0AA0 | DO 8 × 24 V/2 A relay, 1 of these fitted |
The configuration supports up to 12 modules per station when active bus modules are used (the older passive BM 6ES7 195-1GA00-0XA0 supports only 8 slots). Per the ET 200M Operating Instructions, when the "Module change during operation" function is enabled, the IM 153 sets the corresponding status bit for all configured modules after a successful insertion.
Affected GSD/GSE Files
| GSD/GSE File | Revision | Date | Hot Swap Behavior |
|---|---|---|---|
| si04801e.gse | 2 | Earlier release | Hot swap functions correctly (verified on 8-module station) |
| si04801e.gse | 5 (v1.5) | 02.07.12 | 10-module station exhibits reinsertion failure described in this article |
Diagnostic Behavior: Symptom Matrix
| Event | ID Diagnostic? | Device Diagnostic? | SF LED | Output Reactivates? |
|---|---|---|---|---|
| Module removed (correct settings) | Yes (slot ID) | Yes ("Removed", "is Missing") | Red ON both IMs | N/A |
| Module reinserted (correct settings) | Clears | "Inserted" message generated | Extinguishes | Yes (process data resumes) |
| Module reinserted (faulty settings) | Clears | Clears, no "Inserted" message | Extinguishes | No (outputs remain 0) |
| Module removed second time after switchover | No | No | Stays off | N/A |
The combination of LEDs extinguishing + no Inserted diagnostic + outputs frozen off is the fingerprint of the missing module-interrupt acknowledge path described below.
Root Cause: Parameter Frame Configuration Defect
The IM 153-2 generates a "Module Inserted" diagnostic as a module interrupt. To deliver this interrupt to the PROFIBUS master, two parameter bits must be set in the slave parameter assignment frame:
- Byte 8, bit 7 — "Enable Module Interrupt" (Module Interrupt Enable): This bit tells the IM that the master will service (acknowledge) module interrupts. If this bit is set, the IM expects an interrupt acknowledge from the master; if the master does not service the interrupt, the IM keeps the slot logically unavailable.
- Byte 8, bit 0 — "Actual Configuration ≠ Preset Configuration": This bit arms the IM to report deviations from the configured module list, which is the precondition for the module change diagnostic to propagate.
When both bits are set but the master is a third-party controller that does not implement the DPV1 interrupt acknowledge handshake, the IM treats the unacknowledged interrupt as a pending error. The "Inserted" event is not finalized, the slot is left in a non-communicating state, and the output channels remain parked. Subsequent removals on the same IM are no longer detected because the IM has already lost its slot synchronization.
Setting only bit 8.0 (Actual Configuration mismatch) without bit 8.7 (Module Interrupt Enable) defeats the interrupt path, which is why the symptom appears to "resolve" when bit 8.7 is cleared—the IM no longer expects an interrupt acknowledge, so it resumes normal cyclic data exchange as soon as the slot is repopulated.
ET 200M PROFIBUS Parameter Frame Structure
The parameter assignment frame is sent from the DP master to the IM 153-2 in the parameterization phase (PROFIBUS state machine transitions from Wait_Prm to Prm_Ok). The structure for the ET 200M with IM 153-2 follows:
| Byte | Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |
|---|---|---|---|---|---|---|---|---|
| 7 | DPV1 (7.7) (reserved in some revisions) | Fail-Safe (7.6) | Reserved | Module diagnostics | ||||
| 8 | Enable Module Interrupt (8.7) | Channel-related diag (8.6) | Reserved | Submodule status (8.1) | Identifier-related diag / Actual Config ≠ Preset (8.0) | |||
| 9 | Reserved / Format identifier (some revisions) | |||||||
Default Byte Settings
The default parameter string shipped in si04801e.gse is:
Ext_User_Prm_Data_Const(0) = 0x80, 0x00, 0x08
This decodes as:
- Byte 7 =
0x80: Bit 7 set (legacy DPV1 reservation) - Byte 8 =
0x00: No module interrupt, no identifier-related diagnostics enabled - Byte 9 =
0x08: Reserved / format identifier
Naïve Modification That Fails
Setting the string to:
Ext_User_Prm_Data_Const(0) = 0x80, 0xE1, 0x08
would activate bit 8.0 (0x01), bit 8.1 (0x02), bit 8.5 (0x20), bit 8.6 (0x40) and bit 8.7 (0x80) — i.e., 0xE1 = 0x80 | 0x40 | 0x20 | 0x01. Bit 8.7 is set, which causes the IM to expect a DPV1 interrupt acknowledge from the master. With a third-party master that does not implement the acknowledge, the slot freezes — exactly the symptom observed.
The Solution: Correct Bit Settings in Parameter Bytes 7–9
For third-party PROFIBUS masters that do not implement the DPV1 interrupt ACK path, the parameter string that correctly enables hot swap is:
Ext_User_Prm_Data_Const(0) = 0xC0, 0x01, 0x08
Bit-by-bit decode:
| Byte | Hex Value | Bits Set | Meaning |
|---|---|---|---|
| 7 | 0xC0 | 7.7, 7.6 | DPV1 services available + Fail-Safe cleared (no F-module support required) |
| 8 | 0x01 | 8.0 only | Actual Configuration ≠ Preset Configuration enabled; Module Interrupt (8.7) deliberately cleared |
| 9 | 0x08 | — | Reserved / format identifier |
This combination produces the documented behavior in the ET 200M Operating Instructions: the IM 153 sets the "Module Inserted" status bit for all configured modules when a slot is repopulated, and the IM does not block on an unacknowledged interrupt.
Field experience across the redundant IM 153-2 deployments tested indicates that the value 0xC0, 0x01, 0x08 also implicitly activates the redundancy behavior of the IM pair, which is why it has been observed that no separate H-Parameter Assignment Frame is required to bring up a redundant IM 153-2 pair against a third-party master using this exact parameter string.
GSD File Modifications for Custom Parameter Sets
Editing Ext_User_Prm_Data_Const in the GSD/GSE file is technically supported but introduces lifecycle and maintenance problems. The GSD/GSE file is shared between engineering, runtime, and configuration management tools, and a non-standard file is often silently overwritten by vendor tools (Siemens STEP 7 HW Config, TIA Portal, third-party configuration suites such as SyCon or Hilscher SYCON.net). The recommended approach is to:
- Modify the parameter set at the master configuration layer, not in the GSD file.
- If the master's stack does not expose user parameters, modify the
Ext_User_Prm_Data_Refentries in the GSD file so that only the bits you intend to expose are available in the engineering UI. For example, the reference indices shown below restrict user selection to bits 8.0, 8.1, and 8.6:
;
; "Identifier-related diagnostics, bit 0"
Ext_User_Prm_Data_Ref(8) = 511
; "Submodule status, bit 1"
Ext_User_Prm_Data_Ref(8) = 512
; "Channel-related diagnostics, bit 6"
Ext_User_Prm_Data_Ref(8) = 513
The bit mask stored under these reference indices (511, 512, 513) determines which combinations the engineering tool offers. If bit 8.7 is not exposed at index 514, the user cannot set it from the UI and cannot fall into the silent failure mode described in this article.
H-Parameter Assignment Frame for Redundancy
For deployments using an S7-400H or S7-300 with software redundancy, the IM 153-2 redundancy behavior is controlled by an additional H-Parameter Assignment Frame appended to the standard parameterization telegram. The frame layout per the Siemens "Configuration Frame and Parameter Assignment Frame for the ET 200M" documentation is:
| Byte (offset) | Value | Meaning |
|---|---|---|
| 10 | 0x08 | Block length = 8 bytes |
| 11 | 0x02 | Command (fixed: H-Parameter Assignment Command) |
| 12 | 0x00 | Slot (fixed: 0 = applies to whole station) |
| 13–17 | Variable | Redundancy parameters (H-modes, primary/backup role, slot mapping) |
When using a third-party master that does not parse this 8-byte block, the IM 153-2 default behavior is still redundant, but with implicit (rather than explicit) redundancy. Implicit redundancy is acceptable for many applications and is what is observed with the 0xC0, 0x01, 0x08 parameter string without an H-frame.
When the H-Frame Is Required
- S7-400H with two PROFIBUS masters, one per IM 153-2 in the redundant pair (typical Y-link topology).
- Siemens software redundancy (S7-300 / S7-400 with SWR library) where the user program explicitly toggles which IM is primary.
- Applications requiring asymmetric slot mapping between primary and backup IMs.
Workaround When H-Frame Fails to Bring Up Redundancy
If the H-frame causes the rack to fail the PROFIBUS parameterization handshake on a third-party master (parameter check Wait_Prm timeout), drop the H-frame entirely and rely on the implicit redundancy of the 0xC0, 0x01, 0x08 parameter string. Some users have additionally reported that setting bit 9.4 of byte 9 (when the H-frame is being used) restores redundancy on masters with stricter parameter checks.
Third-Party PROFIBUS Master Configuration (Hilscher CIF 104P-PB)
The Hilscher CIF 104P-PB is a PCI/PC-based PROFIBUS-DP master that ships with the cifX toolkit and SYCON.net configuration software. When using this master against the ET 200M with IM 153-2BA02, the configuration steps are:
- Import the
si04801e.gsefile from the Siemens support site. Do not rely on the Hilscher-bundled GSD library; it may lag one revision behind the Siemens release. - Insert the IM 153-2 as the slave. Confirm the slot count does not exceed 12.
- Open the slave's parameter dialog. The "User Parameters" tab exposes the bits encoded by the
Ext_User_Prm_Data_Refentries. - Configure as follows:
| Bit | Required Setting | Reason |
|---|---|---|
| 7.7 (DPV1 services) | Set | Allows the master to read extended diagnostics via DPV1 read services |
| 7.6 (Fail-Safe) | Clear | No F-modules in the station; setting it requires PROFIsafe support in the master |
| 8.0 (Actual Config ≠ Preset) | Set | Enables insertion/removal diagnostics |
| 8.1 (Submodule Status) | Clear unless required | Adds DPV1 status traffic; not required for hot swap |
| 8.5 | Application dependent | Enable if any module produces manufacturer-specific diagnostics |
| 8.6 (Channel-related Diag) | Application dependent | Enable if channel-granular alarms are required |
| 8.7 (Module Interrupt) | Clear | CIF 104P-PB firmware does not service the interrupt ACK; setting it freezes the slot |
| 17.6 (Unbundled H-KIR) | Clear | Hilscher stack does not parse H-frames |
- Confirm the binary user parameter bytes display as
C0 01 08in the SYCON.net hex view of the parameter telegram. - Download the configuration to the CIF 104P-PB and put the master into OPERATE state.
- Observe the IM 153-2 transition from
Wait_PrmtoPrm_Okin the slave diagnostic window.
Verification Procedure and Commissioning Checks
After applying the parameter string 0xC0, 0x01, 0x08 and re-commissioning the rack, perform the following removal/insertion test sequence. Each test must pass before declaring the rack hot-swap capable.
Test 1: Cold-State Insertion Detection
- With the rack running in process, remove one DO module (preferably a non-critical load).
- Verify both IM SF LEDs are red.
- Verify the master receives a device diagnostic "Removed" message within 100 ms of physical extraction.
- Reinsert the same module within 5 seconds.
- Verify the SF LEDs extinguish within 200 ms of physical insertion.
- Verify the master receives a device diagnostic "Inserted" message.
- Verify the output channels drive to their commanded values.
Test 2: Hot-State Removal of an Active Output
- Force one DO channel high via the application.
- Read back the physical voltage at the field terminal to confirm it is energized.
- Remove the DO module.
- Verify the SF LED illuminates and the diagnostic "Removed" arrives.
- Reinsert the module.
- Verify the channel re-energizes to the forced state without any application-level intervention.
Test 3: Redundancy Switchover Without Power Cycle
- Remove the DO module.
- Without reinserting, remove the PROFIBUS cable from the active IM 153-2.
- Wait for the watchdog to expire (typically 200–500 ms, depending on master configuration).
- Verify the standby IM takes over and that an "IM Switchover" diagnostic is logged.
- Reinsert the DO module.
- Verify the outputs re-energize on the now-active IM.
- Remove the module a second time. Verify the diagnostic is still generated (this is the case the original symptom breaks).
Test 4: Long-Duration Removal
- Remove a module and leave the slot empty for 5 minutes.
- Verify the master continues to receive "is Missing" diagnostics at the configured update rate.
- Reinsert and verify outputs resume.
Troubleshooting Matrix
| Observed Symptom | Likely Cause | Corrective Action |
|---|---|---|
| Outputs do not re-energize after reinsertion; no "Inserted" diagnostic | Bit 8.7 set but master does not service module interrupts | Clear bit 8.7; verify parameter string shows C0 01 08
|
| SF LED never illuminates on removal | Bit 8.0 cleared; IM does not report Actual Config mismatch | Set bit 8.0 |
IM 153-2 fails to leave Wait_Prm
|
GSD checksum mismatch or invalid byte 9 value | Restore default GSD; verify byte 9 = 0x08 |
| Redundant pair, only one IM reports diagnostics | H-Parameter Frame not parsed; standby IM out of sync | Drop H-frame; rely on implicit redundancy of C0 01 08; try setting byte 9.4 as experiment |
| Module Inserted diagnostic arrives but outputs still 0 | Master has not sent the cyclic output data since the insertion event | Verify output area is not suppressed; check master watchdog configuration |
| Removal not detected on the IM that originally brought the station up | IM lost slot synchronization due to prior unacknowledged interrupt | Power cycle the rack; reapply correct parameter string; commission again |
| Insertion diagnostic reports wrong slot | Slot mapping in master does not match physical configuration | Re-export GSD from STEP 7 / TIA Portal and reload into the third-party master |
Alternative Controllers and Cross-Platform Notes
The IM 153-2 hot swap behavior depends only on the parameter telegram, not on the master's brand. The following controllers have been field-validated against the configuration in this article:
-
Beckhoff CX-series with EL6731 PROFIBUS master: Supports DPV1 interrupt ACK; bit 8.7 may be set safely. Verify the Beckhoff PLC library has the
PROFIBUS_DPV1_ACKfunction block enabled in the slot properties. -
Schneider Electric Modicon M340 with PRM Gateway (TSX PBY 100): Does not service DPV1 module interrupts; use
0xC0, 0x01, 0x08. The Unity Pro "Implicit Redundancy" checkbox in the DTM should remain unchecked. - WAGO 750-370 PROFIBUS coupler: Pass-through master; parameter string must be applied at the upstream controller. WAGO-side behavior is transparent.
-
Siemens S7-400H with two PROFIBUS masters: Use the full H-Parameter Frame plus the standard
0xC0, 0x01, 0x08string. The H-frame is parsed correctly by the S7-400H DP master.
Field-Proven Caveats
- The 6ES7 153-2BA02-0XB0 is the final BA02 variant. New deployments should consider the 6ES7 153-2BA10-0XB0 successor, which improves hot swap diagnostics and adds DPV2 services. The parameter layout differs in byte 9 — consult the IM 153-2 Product Information before migrating.
- Modules with firmware older than V1.0 on the IM 153-2BA02 do not support the "actual configuration ≠ preset configuration" diagnostic in the same diagnostic frame. Always commission with both IMs at the same firmware revision.
- The 6ES7 322-1HF10 relay output module has a 50 ms mechanical re-make time after power-up. If your application expects faster re-energization, consider the 6ES7 322-1BF01 solid-state variant.
- Repeated hot swap of analog modules (6ES7 331-7NF10) without a 2-second settle time between removal and reinsertion may produce out-of-range diagnostics on adjacent slots due to backplane transient coupling.
Summary of Required Parameter Settings
| Use Case | Byte 7 | Byte 8 | Byte 9 | H-Frame |
|---|---|---|---|---|
| Siemens S7 master (full DPV1) | 0xC0 | 0x81 (bits 8.7 + 8.0) | 0x08 | Yes |
| Third-party master, no DPV1 interrupt ACK (Hilscher, Beckhoff soft-master, Modicon) | 0xC0 | 0x01 (bit 8.0 only) | 0x08 | No |
| Redundant IM pair, third-party master, implicit redundancy | 0xC0 | 0x01 | 0x08 | No |
| Redundant IM pair, S7-400H Y-link | 0xC0 | 0x81 | 0x08 | Yes |
Apply the correct row to your master configuration and verify using the four-step removal/insertion test sequence before declaring the rack operational.
Why do my ET 200M outputs stay at zero after I reinsert a hot-swapped module?
The IM 153-2 generated the module-insertion diagnostic as a DPV1 module interrupt, but bit 8.7 ("Enable Module Interrupt") was set in the parameter telegram while the third-party PROFIBUS master never sent the interrupt acknowledge. Clear bit 8.7, set bit 8.0 ("Actual Config ≠ Preset"), and use the parameter string 0xC0, 0x01, 0x08. Outputs will resume within 200 ms of insertion.
Which parameter byte controls the "Module Change During Operation" feature?
Byte 8, bit 0 ("Identifier-related diagnostics" / "Actual Configuration ≠ Preset Configuration") must be set. Byte 8, bit 7 ("Enable Module Interrupt") must be set only if the PROFIBUS master services DPV1 module interrupts; otherwise clear it. The Siemens-recommended string for third-party masters is 0xC0, 0x01, 0x08.
Can I edit the si04801e.gse file to change Ext_User_Prm_Data_Const?
Yes, the GSD/GSE file is text and can be modified, but this is not recommended for production. Vendor tools may overwrite the custom file, and the modified GSD breaks checksum validation in some S7 master stacks. Prefer to change the parameter bits at the master configuration layer, or expose only the intended bits through the Ext_User_Prm_Data_Ref indices (511, 512, 513 for bits 8.0, 8.1, 8.6).
Do I need an H-Parameter Assignment Frame for redundant IM 153-2 on a third-party master?
Not necessarily. With parameter string 0xC0, 0x01, 0x08 the redundant IM pair operates in implicit redundancy mode. Add the 8-byte H-frame (bytes 10–17: 0x08, 0x02, 0x00, ... ) only when the master is an S7-400H, an S7-300/S7-400 with software redundancy, or any controller that explicitly parses the H-block.
Why does the second removal on the same IM no longer produce a diagnostic after the IM switchover?
The original IM lost slot synchronization because the unacknowledged module interrupt was never cleared. After a forced switchover the second IM (now active) handles the first removal correctly, but the original IM has dropped its slot state. A rack power cycle or a reparameterization telegram is required to restore the original IM's diagnostic capability. Correcting the parameter bits prevents this from happening in the first place.