1. Problem Description and Field Symptoms
An S7-400 station built around a CPU 416 (typical MLFB 6ES7416-2XP07-0AB0 for the CPU 416-2 variant, or 6ES7416-3ES06-0AB0 for the CPU 416-3 variant) intermittently transitions to STOP mode. The operator panel reports two simultaneous diagnostics:
- "Watchdog Monitoring" — the CPU cycle-time monitor has fired.
- "PROFIBUS fault, input/output slave 42" — a DP slave at PROFIBUS address 42 has dropped off the bus, and the DP master has raised a station-failure diagnostic.
These two events are linked. When a distributed I/O station is removed from data exchange, the CPU's cyclic I/O update misses its watchdog window. If OB80 is not present, the CPU transitions to STOP. In other cases, a long-running OB1 scan trips the watchdog first, halts DP polling, and the slave-42 fault appears as a secondary event. The visible "Watchdog Monitoring" line is the final state; the slave-42 message is either the cause or the consequence depending on which appears first in the diagnostic buffer.
2. Affected Hardware and PROFIBUS Topology
The hardware stack typically involved in this fault:
| Component | Typical MLFB / Designation | Role |
|---|---|---|
| SIMATIC S7-400 baseplate (UR1 / UR2 / UR2-H) | 6ES7400-1... / 6ES7400-2... | Mechanical rack, backplane, redundant-power feeding |
| Power supply (PS 405 / PS 407) | 6ES7405-0... / 6ES7407-0... | 24 V / 5 V DC conversion to backplane |
| CPU 416-2 or CPU 416-3 | 6ES7416-2... or 6ES7416-3... | DP master with one or two integrated PROFIBUS interfaces (X1 / X2) |
| IM 151-1 (ET 200S interface module) | 6ES7151-1AA06-0AB0 (HF) or earlier -1AA03-0AB0 | DP slave at address 42, hosting the power module and downstream I/O modules |
| ET 200S digital / analog I/O | 6ES7131-... / 6ES7132-... / 6ES7134-... / 6ES7135-... | 8- or 16-channel DI / DO / AI / AO modules on the ET 200S terminal modules |
| Touch panel HMI | e.g. MP 377, TP 1500 Comfort, or older OP 277 | Class-1 or class-2 DP master on the same bus |
| IR-camera controller | Third-party DP-V0/V1 device | Additional DP master / slave on the bus |
| PROFIBUS cable and connectors | 6XV1830-0EH10 (Fast Connect) + 6GK1500-0FC00 (connector) | RS-485 bus segment, 220 Ω terminator at end nodes |
PROFIBUS DP addresses range from 0 to 125, with 0 reserved for class-2 masters. Slave 42 is the IM 151-1 station. The "previous slave" in the source incident is the next lower DP address on the same bus segment. PROFIBUS DP supports up to 32 stations per segment without repeater; bus topology is linear, RS-485, terminated only at the two end nodes.
3. Watchdog Concepts: CPU Scan and PROFIBUS Station
Two distinct watchdog mechanisms operate simultaneously. They share the same name but use different time bases.
3.1 CPU scan-time watchdog
The S7-400 CPU monitors the OB1 cycle time against a configured maximum — the "cycle monitoring time" or "scan-time watchdog". If a single OB1 pass (including all priority classes invoked during the cycle, HMI request servicing, and asynchronous OB interrupts) exceeds this limit, OB80 is called.
- Default factory value: 150 ms for most CPU 416 firmware releases.
- Configurable in HW Config → CPU properties → Cycle / Clock Memory tab → Scan time monitoring.
- If OB80 is not loaded, the CPU goes to STOP and the diagnostic buffer shows event ID
0x3501"Time error (OB not found)" — the user-visible Watchdog Monitoring message.
3.2 PROFIBUS DP station watchdog
Each DP slave runs its own watchdog. The DP master (the CPU 416 DP interface) cyclically sends token requests; if the slave does not receive a valid request within the configured timeout, it leaves data exchange and reports station failure.
- Watchdog time is set per slave in HW Config → slave properties → DP slave → Parameter Assignment → Watchdog, expressed as a multiplier of the DP cycle time Tdp.
- STEP 7 enforces a minimum of 10 bit-times; the default multiplier is 1, but a recommended minimum of 3 is suggested in the wizard.
- The DP master also tolerates a missing reply for a separate period before raising a station-failure diagnostic interrupt. This is the "Station failure" / "Group error" entry in the diagnostic buffer.
When the slave-42 watchdog fires, the DP master raises an I/O access error. The CPU invokes OB122 (I/O access error OB) on the next read/write to the failed slot. If OB122 is not present, the CPU goes to STOP with event ID 0x4302 (I/O access error). This STOP can stack on top of the OB80 STOP if both OBs are missing and both error sources fire in the same scan.
- OB1 scan watchdog → OB80 → STOP if OB80 missing.
- DP slave watchdog → station failure → OB86 + OB122 → STOP if OB86 / OB122 missing.
- Insert/remove events trigger OB83, diagnostic interrupts trigger OB82, rack-failure triggers OB86, priority-class errors trigger OB85. Any unhandled OB chain in this set can drive the CPU to STOP.
Fig. 1 — Watchdog and station-failure state transitions on the CPU 416.
4. Root Cause Categories
For the "Watchdog Monitoring + PROFIBUS slave 42" combination, the root causes sort into four families:
| Family | Specific cause | Diagnostic signal |
|---|---|---|
| Mechanical / electrical | Loose I/O module in the rack (backplane contact) | Intermittent, vibration-correlated, sub-millisecond dropouts |
| Mechanical / electrical | Oxidised or contaminated backplane contacts | Same, but worse after long shutdowns; correlates with humidity |
| Mechanical / electrical | Damaged PROFIBUS connector (missing/active terminator on a middle joint) | Slave-42 specific; SF / BF LED on the IM 151-1 lit |
| Bus topology | Too many stations on one segment, missing repeater, wrong termination | Reflected frames, station-failure bursts, BF flashing on multiple slaves |
| Configuration / software | OB1 scan time exceeds 150 ms (slow loop, large DB copy, communication load) | Reproducible after warm restart at a consistent % of cycle |
| Configuration / software | Watchdog multiplier in STEP 7 set too tight for actual Tdp | Station failure during process-I/O peak |
| Configuration / software | Non-STEP7 master / slave (touch panel, IR camera) on same bus with no consistent GSD | Stop triggered when the third-party device is queried |
| Hardware aging | IM 151-1 power module wear, terminal-module wear, failed DC/DC on backplane | Station OK at cold start, fails after hours under thermal load |
The reported incident resolved on a loose I/O module in the rack. The likely mechanism: the loose module intermittently lost backplane contact — the ET 200S power-module output dipped, the IM 151-1 left data exchange, the DP master raised a station-failure diagnostic, and the unprogrammed OB chain drove the CPU to STOP with the "Watchdog Monitoring" line visible on the operator panel.
5. Reading the S7-400 Diagnostic Buffer
The diagnostic buffer is the single most useful tool for separating the families above. Open it from STEP 7 → PLC → Online → Accessible Nodes → right-click the CPU → PLC → Diagnose / Set. The buffer holds the last ≈ 320 events (varies by CPU 416 firmware release) and is battery-backed, surviving power loss.
Key event IDs to look for, in the order they appear:
| Event ID (hex) | Event ID (dec) | Meaning |
|---|---|---|
0x3501 |
13569 | OB80 (time error) — scan time exceeded, OB80 not loaded → STOP |
0x3505 |
13573 | OB80 — scan time exceeded, OB80 loaded, error recoverable |
0x4301 |
17153 | STOP because OB80 (time error) missing |
0x4302 |
17154 | STOP because OB122 (I/O access error) missing |
0x4303 |
17155 | STOP because OB121 (programming error) missing |
0x4307 |
17159 | STOP because OB85 (priority class error) missing |
0x4308 |
17160 | STOP because OB86 (rack / IO device failure) missing |
0x39xx |
146xx | PROFIBUS diagnostic interrupt from a slave |
0xE0C4 / 0xE0CE
|
57540 / 57550 | Distributed-I/O faults, station failure / return |
0x1382 |
4994 | Mode change STOP, e.g. caused by missing OB |
If the first event after the last clean cycle is an OB80 trigger, the fault is on the CPU cycle side. If the first event is a station-failure diagnostic from slave 42, the fault is on the bus or slave side. Reading the buffer in order resolves the chicken-and-egg question.
6. OB80 Time-Error Organization Block Behaviour
OB80 is the time-error OB. The CPU calls it when the OB1 scan time exceeds the configured maximum, including during OB1 extension via OB call, communication load, or HMI load. The S7-400 call behaviour for OB80:
- OB80 is called as a separate priority class (priority 26 by default; configurable in HW Config).
- If OB80 is missing, the CPU goes to STOP and the diagnostic buffer shows "STOP caused by missing OB80 (time error)".
- If OB80 is present, the CPU continues, increments an internal error counter, and — after a configurable number of OB80 calls within one cycle — may still go to STOP depending on firmware behaviour.
Programming OB80 is a risk trade-off: it keeps the plant running, but it can also mask a real cycle-time problem until something downstream breaks. The recommended approach is to add a minimal OB80 only after the root cause is fixed, to give the diagnostic buffer a chance to record future events without taking the line down.
6.1 Sample OB80 skeleton (Structured Text)
// FB_WatchdogHandler — called from OB80 only.
// Keep the body minimal. No DB-first-use, no large string operations.
FUNCTION_BLOCK FB_WatchdogHandler
VAR
CycleOverruns : DWORD; // persistent, in instance DB
END_VAR
BEGIN
CycleOverruns := CycleOverruns + 1;
// Set a flag the OB1 can pick up on the next scan.
"db_watchdog".bOverrun := TRUE;
END_FUNCTION_BLOCK
Link OB80 priority to a separate error DB; avoid memory allocation inside OB80. The Siemens Industry Online Support portal at support.industry.siemens.com hosts the complete S7-400 System and Standard Functions Reference manual, which lists every OB call parameter, its priority, and the exact retention semantics.
7. PROFIBUS DP Watchdog Timing Calculation
The PROFIBUS DP watchdog is configured per-slave in HW Config → slave properties → DP slave → Parameter Assignment → Watchdog. The numeric value entered is a multiplier of the configured DP cycle time Tdp.
7.1 Determining Tdp
Tdp is the time between two consecutive polling frames to a given slave. On a CPU 416 DP master with N slaves, average request length Lreq, and baud rate B (bit/s), the bus time per request is:
T_dp ≈ (N · 11_bits_per_frame) · T_bit + L_req · T_bit + arbitration overhead
where T_bit = 1 / B
At 1.5 Mbit/s, Tbit ≈ 667 ns. A typical DP-V0 request for 16 words of I/O is 11 bytes (88 bit times). For a 20-slave bus at 1.5 Mbit/s, Tdp ≈ 5–10 ms; for a 60-slave bus with HMI and IR camera masters sharing the bus, Tdp can reach 20–30 ms. The PROFIBUS trade body publishes the full token-rotation analysis; the PROFIBUS & PROFINET International (PI) site at profibus.com is the canonical reference for bus-timing models.
7.2 Worked example
Configuration: CPU 416, baud 1.5 Mbit/s, 20 DP slaves + 1 HMI master + 1 IR-camera master, single segment, no repeater. Estimated Tdp on the CPU ↔ slave 42 pair ≈ 8 ms. With the STEP 7 default watchdog multiplier of 1, the slave-42 watchdog fires at 1 × Tdp = 8 ms. Because the HMI master's token rotation interleaves with the CPU's polling, slave 42 occasionally sees 2–3 Tdp gaps. Setting the multiplier to 30 gives a 240 ms window — more than enough to absorb multi-master jitter without losing fast station-failure detection.
7.3 Choosing the watchdog multiplier
| Bus profile | Recommended watchdog multiplier | Maximum detection latency |
|---|---|---|
| Single master, ≤ 32 slaves, 1.5 Mbit/s | 10 | ≈ 10 × Tdp (typical 50 ms) |
| Multi-master, HMI + IR camera | 20–30 | ≈ 200–300 ms |
| Long cable, with repeater, ≥ 64 stations | 30–50 | ≈ 1 s |
Setting the multiplier too low is the single most common software-side cause of intermittent station failure on a bus that is mechanically healthy.
8. Mixed-Master and Third-Party Device Considerations
The source explicitly mentions a touch screen and an IR-camera controller on the same PROFIBUS segment. Each acts as a class-1 master (DP-V0) or class-2 master (DP-V1 / V2). They re-arbitrate the bus token with the CPU 416, and they may issue broadcast or multicast requests that the IM 151-1 at address 42 must respond to.
- If a third-party master cycles faster than the CPU 416's scan time, the token rotation time (TRT) lengthens and the slave-42 watchdog window shrinks.
- Some IR-camera controllers use non-standard GSD files that assert DP-V2 features. The IM 151-1 in DP-V0 mode may interpret the cycle-time extension as a watchdog trigger.
- Older HMI panels (e.g. MP 370) use a slot-0 configuration that the IM 151-1 does not recognise. The frame is dropped, the slave is "OK" to its master, but the CPU 416 sees a fragmented response.
Diagnostic: temporarily set the touch panel and the IR-camera controller to "not active" in HW Config (right-click → Object Properties → uncheck Active) and observe whether the watchdog trips still occur. If they stop, the third-party device is the trigger. The fix is either to give the third-party device its own segment with a repeater, or to set the CPU 416 as the only class-1 master and the others as class-2 listeners.
9. Mechanical and Electrical Root Causes
The actual field resolution was a loose I/O module. The S7-400 and the ET 200S are both mechanical-connector systems. Each module has spring-clip retainers on the bottom edge of the housing that engage the rack. If the clip is not fully latched, the backplane connector pins make contact with intermittent resistance — milliohms when seated, megohms during vibration or thermal expansion.
9.1 Symptoms of a loose module
- Event appears intermittently, often correlates with motor starts, conveyor motion, or HVAC cycles (vibration coupling).
- Diagnostic buffer shows the same event ID but with a varying "time since last event" interval.
- SF / DIAG LED on the IM 151-1 flashes; on the affected I/O module, the channel-status LEDs go out and back on within seconds.
- Touching the panel (operator interaction) changes the error rate — the operator's touch adds enough mass and damping to suppress contact bounce.
9.2 Cleaning and re-seating procedure
- Bring the affected station to a safe state. Identify whether the system can be shut down or whether hot-swap is permitted (CPU 416 firmware 5.x and later supports hot-swap for IM 151-1 with the "module replacement during operation" feature enabled in STEP 7).
- Lock-out / tag-out the 24 V supply to the affected rack if the I/O module is not hot-swappable.
- Remove the module using the ejector lever. Do not pull by the front connector.
- Inspect the backplane connector pins on the module and on the rack. Look for:
- Oxidation (greenish-white film on gold contacts)
- Burnt spots (overheated pin from a loose contact arcing)
- Bent pins (misalignment from forced insertion)
- Foreign matter (swarf, oil, coolant)
- Clean the contacts with isopropyl alcohol (≥ 99 %) and a lint-free swab. Do not use contact cleaners with silicone or lubricants; they trap debris.
- Re-insert the module firmly until the spring clip latches with an audible click.
- Re-apply power. Verify the SF LED is off, then restart the CPU if required.
10. Step-by-Step Diagnostic Procedure
Use this procedure in order. Each step is a decision point; do not skip to hardware replacement before ruling out configuration and timing causes.
- Read the diagnostic buffer in chronological order. Note the first event after the last successful cycle and the event that triggered STOP. Export to a text file for the maintenance log.
- Confirm CPU scan-time margin. In STEP 7, PLC → Online → Monitor/Modify, read the current OB1 cycle-time peak. If the peak exceeds 80 % of the configured scan-time watchdog, the trip is a software issue. Extend OB1 or raise the cycle monitoring time after a code review.
- Check the configured watchdog time on slave 42. HW Config → IM 151-1 → DP slave properties → Parameter Assignment → Watchdog. Compare with the worst-case Tdp from §7. If the multiplier is below 10 and the bus has multi-master traffic, raise it to ≥ 20.
- Inspect the diagnostic events of slave 42. Open DP Slave Diagnostics in STEP 7 (right-click slave → DP Slave Diagnostics). Bytes 0–5 are the standard DP diagnostic header. Byte 5 bit 1 = Station_failure. Byte 5 bit 7 = Diagnostic_Overflow.
- Physically inspect the rack. Press each module firmly. Look for the spring-clip click. Verify the SF LED behaviour before and after the press.
- Inspect the PROFIBUS cable and connectors. Measure the bus termination resistance at the end nodes: 220 Ω across A-B. With the bus powered and idle, the voltage between A and B should be ≥ 4.5 V (with 5 V DP terminator active) or between 1 V and 4 V (with the slave's idle voltage).
- Isolate the third-party devices. Temporarily disconnect the touch panel and the IR-camera controller. Run the system for ≥ 4 hours. If the fault does not recur, the third-party device is contributing.
- Program OB80, OB82, OB85, OB86, OB121, OB122. Add minimal OBs that increment a counter and set a flag. Re-run the system. The OBs prevent STOP and give you the next fault trigger to chase.
- Re-seat and re-cable. Replace the I/O module as in §9.2. Re-crimp or replace the PROFIBUS connector on slave 42 and its upstream neighbour.
- Verify by running the system under the same process conditions (motor starts, conveyor motion) for 24–48 hours with the diagnostic buffer watched.
11. Watchdog and Bus Parameter Configuration in STEP 7
11.1 CPU 416 cycle monitoring time
Open the CPU in HW Config → Properties → Cycle / Clock Memory tab. The Scan time monitoring field accepts an integer in milliseconds. The CPU's default is 150 ms. Recommended values:
| Application profile | Recommended scan-time watchdog |
|---|---|
| Fast discrete control (< 20 ms scan, packaging, motion) | 200 ms |
| General process (50–80 ms scan, valves, analogue loops) | 200–500 ms |
| Slow process (200 ms+ scan, batch, tank levels) | 500–1000 ms |
Raising the watchdog above 1000 ms is a code-smell indicator: a better fix is to break the OB1 work into OB35 (cyclic interrupt, e.g. 100 ms) and a shorter OB1.
11.2 DP slave watchdog
For each slave, set:
- Watchdog = integer multiple of Tdp, default 1.
- Minimum permissible: 10 × Tbit at the configured baud rate.
- Recommended for the source's multi-master configuration: 30 × Tdp.
11.3 Slot configuration consistency
Each IM 151-1 slot has a configured module type. A mismatched slot (e.g. a 16-DO module declared as 8-DO) is reported as a configuration error and disables data exchange. Verify in HW Config that every installed module matches the slot declaration. Mismatches can also drop the slave from the bus if the slot-level diagnostic overflow occurs.
12. Verification, Commissioning, and Reliability Hardening
After the fix, perform these checks before returning the system to production.
12.1 Functional verification
- Power down and power up the S7-400 station. Verify the CPU goes to RUN, the IM 151-1 establishes data exchange, and the touch panel shows the configured process image.
- Trigger the I/O under test (e.g. actuate a solenoid, read an analogue). Verify the OB1 process image updates within one scan.
- Force a slave-42 station failure by unplugging the PROFIBUS connector at the IM 151-1. Confirm OB86 is called (or, if absent, confirm the CPU remains in STOP only as expected, and the diagnostic buffer logs the station-failure diagnostic).
- Reconnect the connector. Verify the IM 151-1 returns to data exchange within the configured watchdog time.
12.2 Long-duration stability
- Leave the system in RUN for ≥ 24 h under normal load. Read the diagnostic buffer at the end. The buffer should not contain new OB80, OB82, OB85, OB86, or OB122 calls beyond those expected from the process.
- Repeat the long-duration test under peak load (motor starts, process peaks) for an additional 8 h.
12.3 Reliability hardening
- Apply locking screws or retention clips to all I/O modules in the affected rack. Verify the rack is grounded at the designated PE point with ≤ 1 Ω to the cabinet ground.
- Add a 1.5 kV PROFIBUS surge arrester (e.g. Siemens 6BK1901-0CA00) on cables leaving the cabinet, especially in plants with VFD-driven motors.
- Schedule a quarterly "press and wiggle" test: an operator presses each module once and verifies the SF LED stays off. This is a field-proven way to catch creeping contact wear before it becomes a trip.
- Activate the CPU's web server (CPU 416 with FW ≥ 6.0) and forward the diagnostic buffer entries to a central historian. Multi-station plants benefit from seeing watchdog events correlate across lines.
13. PROFIBUS Cable, Shielding, and EMC Considerations
PROFIBUS DP uses RS-485 over a shielded twisted pair. Cable specification per IEC 61158-2 and PI installation guide:
| Parameter | Specification |
|---|---|
| Cable type | Shielded twisted pair, e.g. 6XV1830-0EH10 |
| Characteristic impedance | 150 Ω ± 15 % at 3–20 MHz |
| Loop resistance | ≤ 110 Ω/km |
| Capacitance | ≤ 30 pF/m |
| Shield coverage | ≥ 80 % (foil + braid) |
| Baud rate vs cable length | 9.6 kbit/s → 1200 m; 1.5 Mbit/s → 200 m; 12 Mbit/s → 100 m |
| Termination | 220 Ω across A-B, only at the two physical end nodes |
Common installation errors that produce intermittent station failure:
- Termination resistor left active on a middle connector. The active terminator divides the bus voltage and creates a reflection point.
- Cable routed in the same tray with VFD motor cables without a metal divider. The PROFIBUS cable picks up common-mode noise that distorts the differential signal.
- Shield not continuous across connector bodies. Each connector's shield must clamp 360° around the cable shield, not via a pigtail.
- Cable length approaching the limit for the chosen baud. At 1.5 Mbit/s with 200 m of cable, a 5 m over-run is enough to push the slave-42 eye pattern into the marginal zone.
14. Frequently Asked Questions
What does "Watchdog Monitoring" mean on an S7-400 CPU 416?
It means the CPU's cycle-time monitor (scan-time watchdog) detected that the OB1 scan exceeded the configured maximum (default 150 ms). The CPU called OB80 (time error). If OB80 is not present in the S7 program, the CPU transitioned to STOP. Program OB80 to handle the error and keep the plant running while you find the root cause.
Why does slave 42 drop off the PROFIBUS at the same time as the watchdog trips?
The two events are usually linked. A loose module, a noisy connector, or a too-tight DP watchdog can remove the IM 151-1 from data exchange. The DP master then raises a station-failure diagnostic. If OB86 (rack/IO device failure) and OB122 (I/O access error) are not programmed, the CPU goes to STOP, and the operator panel shows the "Watchdog Monitoring" message as the final state. Read the diagnostic buffer in chronological order to see which event came first.
How do I separate a software watchdog cause from a bus/mechanical cause?
Read the diagnostic buffer: the first event after the last clean cycle tells you which side failed first. Then check the OB1 peak scan time in STEP 7. If the peak is below 80 % of the configured cycle monitoring time, the fault is on the bus or in the slave. If the peak is above the limit, the fault is in the S7 program (a loop, a large DB copy, or a communication load).
What is the recommended PROFIBUS DP watchdog multiplier for a multi-master bus?
For a bus with the CPU 416, a touch panel, and an IR-camera controller all acting as masters, use a watchdog multiplier of at least 20 × Tdp, preferably 30. The single-master default of 1 is too tight; on a multi-master bus the slave-42 cycle is longer than the CPU↔slave pair's nominal Tdp.
Do I need to power down the S7-400 to re-seat a loose I/O module?
It depends on the module. ET 200S I/O modules (6ES7131-..., 6ES7132-...) are hot-swappable when the IM 151-1 has the "module replacement during operation" function enabled in STEP 7. S7-400 central I/O modules in the central rack are not hot-swappable; you must power down the rack. The CPU 416 itself is not hot-swappable; only the PS, IM, and central I/O are removable under specific conditions.
Why does the "Watchdog Monitoring" message appear on the HMI even though the real cause was a loose module?
Because the HMI reads the CPU's operating mode and the most recent diagnostic. When the CPU went to STOP, it logged the time-error or station-failure event that triggered the STOP, and the HMI displays the STOP reason. The message describes the "why the CPU stopped" not the "what physically broke". Always go to the diagnostic buffer on the engineering station for the underlying cause.
Can I leave OB80, OB86, and OB122 permanently programmed to mask the fault?
Technically yes, and the CPU will no longer STOP. But this hides a real fault. The recommended pattern is: program the OBs to count the events and set a flag, but raise an HMI alarm on the flag so the operator knows. The line stays running long enough to schedule a planned intervention, but the fault is not silently masked.