Troubleshooting S7-400 ET200M Profibus Output Failure on CFC

David Krause13 min read
ProfibusSiemensTroubleshooting
Licensed PE Working through this on a live machine? A Maine-licensed engineer can take it from here — included with IMD hardware, by the hour for everything else. Book an engineer

Problem Overview

A Siemens SIMATIC S7-400 CPU connected over PROFIBUS-DP to one or more ET 200M distributed I/O stations may exhibit a symptom where a digital output (DO) channel—referenced in a CFC (Continuous Function Chart) block as CH_DO—reports a logic value of 1 at the block output, yet the corresponding physical output terminal remains de-energized. The fault is intermittent: only some channels fail, on different ET 200M stations across the plant, while neighboring outputs on the same module respond correctly.

This class of fault is rarely a hardware failure of the output module itself; in most cases it traces back to one of four root causes: missing load-voltage supply to the output group, mismatched I/O addressing between HW Config and CFC, double assignment of a single output address by two logic blocks, or a CFC run-time/OB binding error that prevents the chart from being executed cyclically. The diagnostic procedure below isolates each cause in sequence and prescribes the corrective action.

Scope: This guide targets STEP 7 V5.x with the optional CFC/SFC add-on (part of the STEP 7 Professional / SIMATIC PCS 7 toolset). It applies to S7-400 CPUs (6ES7414-…, 6ES7416-…, 6ES7417-…) with ET 200M IM 153-x heads and SM 322 / SM 332 signal modules. STEP 7 (TIA Portal) workflows differ and are not covered here.

Affected System Architecture

Reference topology for the fault scenario:

S7-400 CPU 6ES7416-3 OB1 / CFC runtime PROFIBUS-DP 1.5 Mbps / 12 Mbps ET 200M #1 IM 153-2 Slot 4: SM 322 DO ET 200M #2 IM 153-2 Slot 5: SM 332 AO 24 V Load Supply L+ / M to DO group ⚠ verify present

The CPU holds the CFC chart in the user program; the chart produces process image output (PIQ) values that the operating system writes to the PROFIBUS-DP slave during the I/O cycle. The ET 200M head (IM 153-2) forwards the PIQ payload to the slot where the SM 322 digital-output or SM 332 analog-output module sits. Each output group on an SM 322 requires its own 24 V DC load supply on terminals 1L+, 2L+, 3L+ — without it, the module cannot source current even though the bit in the PIQ is set.

Root Cause Matrix

# Root Cause Symptom Detection
1 Missing 24 V load supply on output group All channels of a group dead; SF LED on module Measure voltage between L+ and M at terminals
2 HW Config: address not assigned / wrong slot Output never seen by CPU; VAT shows 0 regardless Compare slot list with HW Config
3 CFC chart not installed into cyclic OB Output block runs in editor but not in PLC CFC > Chart > Chart installation
4 Cross-reference: address assigned twice Second writer overwrites first; outputs toggle randomly Reference Data > Cross-reference (Display)
5 CFC run-time group disabled or wrong OB Outputs from this chart frozen at last value Run-time editor > Group properties
6 PROFIBUS slave failure / station failure BF LED on IM 153; SF on CPU CPU diagnostic buffer, online diagnostics
7 Wrong module type in slot (e.g. DI instead of DO) Address accepted but no output driver HW Config > Slot right-click > Module properties

Diagnostic Procedure: Load Power Supply

The single most common reason a CFC output "does nothing" is the absence of the 24 V load voltage on the SM 322 output group. The CPU and the IM 153 backplane bus are powered separately; an SM 322 digital-output module will accept the bit, light no SF LED, and still drive nothing if 1L+ / 2L+ are floating.

  1. Open the ET 200M cabinet and locate the affected SM 322 (6ES7322-1BF01-0AA0, 6ES7322-1BH01-0AA0, or similar 32-channel / 16-channel DO module).
  2. With a calibrated DMM, measure between terminals 1L+ (or 2L+, 3L+) and 1M (or 2M, 3M). Expected: 20.4 V ≤ U ≤ 28.8 V DC.
  3. Verify polarity: L+ must be positive with respect to M. Reversed polarity on a DO module typically blows the per-group fuse.
  4. If voltage is absent, trace the feed to the SITOP power supply or the marshalling terminal block. Verify that the line-protection fuse (typically 6 A or 10 A) is intact.
  5. Repeat for every output group of every SM in the affected ET 200M. Document on the cabinet single-line diagram.
Group concept: SM 322 modules expose output groups of 8 or 16 channels. The SM 322-1BH01-0AA0 (16 DO, 24 V, 0.5 A) has two groups of 8: channels 0–7 share 1L+/1M, channels 8–15 share 2L+/2M. Loss of group-1 supply disables channels 0–7 even if group-2 supply is healthy.

Diagnostic Procedure: HW Config and Address Mapping

If the load supply is present, the next most likely cause is a mismatch between the physical slot population and the HW Config image that the S7-400 CPU downloaded to the IM 153.

  1. In STEP 7 Manager, open the S7 project and double-click Hardware to launch HW Config.
  2. Navigate to the PROFIBUS-DP subnet and expand the affected IM 153-2 (order number 6ES7153-2BA10-0XB0 or 6ES7153-2BA70-0XB0).
  3. Right-click the slot where the DO module is inserted in real life and select Object Properties. Confirm the order number matches the printed label on the module exactly.
  4. In the Addresses tab, note the start address of the outputs (for example 0, 4, 8…). For SM 322 modules, the default is a process image partition (PIP) start address; for SM 332 analog modules the start address is a PQW word boundary.
  5. Cross-check that the start address is not the input address of an input module already present on another ET 200M. STEP 7 will compile without warning if you manually rename a slot's address range to overlap with another station.
  6. Save & Compile (Station > Save and Compile), then Download to the CPU (PLC > Download to Target). Cycle power to the IM 153 only if a hardware change was made.
Module Order Number Channels Address Width Default P/Q Start
SM 322 DO 24 V / 0.5 A 6ES7322-1BH01-0AA0 16 2 bytes 0 (configurable)
SM 322 DO 24 V / 2 A 6ES7322-1BF01-0AA0 8 1 byte 0 (configurable)
SM 322 Relay 6ES7322-1HH01-0AA0 16 2 bytes 0 (configurable)
SM 332 AO 6ES7332-5HF00-0AB0 8 8 PQW words 256 (configurable)
SM 332 AO 6ES7332-7ND02-0AB0 4 4 PQW words 272 (configurable)

Diagnostic Procedure: CFC Chart Installation

A CFC chart is a graphic network of function blocks compiled into STL/FBD and executed only if it is installed into a cyclic organization block (typically OB1, OB35, or OB36–OB38 depending on cycle time). The block-icon editor displays the running block even when the chart is not installed; the online value you see is the last computed value held in the PIQ area.

  1. Open the CFC editor and select the affected chart in the chart tree (left pane).
  2. Right-click the chart folder and select Chart > Chart Installation.
  3. In the dialog, verify that the chart appears under the correct run-time group. Default assignments:
Run-time Group Default OB Typical Cycle
Use
MAINT OB1 100 ms (CPU scan) Startup / non-time-critical logic
RTC OB35 100 ms Standard regulation loops
PHG_1 OB36 20 ms Fast regulation
PHG_2 OB37 50 ms Mid-rate loops
  1. Click the Enabled check-box. A chart with the box cleared is compiled but not executed.
  2. Confirm the chart's Task is bound: View > Run Sequence shows the run-time groups in execution order.
  3. Download the chart (Chart > Download) and the chart installation (Options > Chart Install > Download).
Online test: From a Variable Table (VAT) in STEP 7, force the output address directly with PQW 256 := W#16#7FFF for an analog or with a bit-pattern assignment for a digital. If the physical output then energizes, the fault is in the CFC chart logic, not in the I/O. If it still does not energize, the fault is in HW Config, power, or PROFIBUS — proceed to the next section.

Diagnostic Procedure: Cross-Reference Analysis

The second-writer problem is common when charts are copy-pasted between projects or when a programmer reassigns a tag alias. The CPU honors the last assignment made in the current scan; the first writer's value is silently overwritten.

  1. In STEP 7 Manager, right-click the S7 program and choose Reference Data > Display.
  2. Select Cross-References and confirm the filter is set to All.
  3. Type the suspect address (for example Q 0.0 or PQW 256) into the address field.
  4. Step 7 returns a list of every network, CFC block, SFC/SFB, and OB that references the address. Each row shows Access (read/write), Type, Block, Location.
  5. If more than one block performs a write access (W) to the same bit, both will appear. You must determine which one is logically correct.
  6. To isolate quickly, force the suspected erroneous writer offline (open the CFC block and temporarily mark the output pin "OVR"), then observe whether the physical output follows the remaining writer.

For an S7-400 the cross-reference data is generated at compile time. Always run Program > Compile All after structural changes to refresh the database.

Diagnostic Procedure: PROFIBUS and ET 200M LED Diagnostics

The IM 153-2 front panel and the SM 322 module each carry a row of status LEDs that localize the fault in seconds.

LED Color State Meaning
SF (IM 153) Red On Group fault — diagnostic buffer entry present
BF (IM 153) Red On PROFIBUS link down / slave not in cyclic exchange
ON (IM 153) Green On 24 V backplane supply OK
SF (SM 322) Red On Module diagnostic — wire-break, missing load voltage, parameter error
SF (SM 332) Red On Analog fault — wire-break on a current loop or short circuit
  1. Walk the cabinet and read every LED on the affected IM 153 and on each SM.
  2. For an IM 153 BF red, read the CPU diagnostic buffer: PLC > Diagnostic/Setting > Diagnostic Buffer. PROFIBUS station failure events include the slave diagnostic word and the slave address.
  3. Open PLC > PROFIBUS > Monitor/Modify to see the slave status: "OK", "Fault", "Not Found". A "Fault" state with cyclic I/O still active usually means a parameterization mismatch.
  4. Check the terminating resistor on the PROFIBUS connector. A missing or dual termination on the bus segment will produce intermittent BF events that briefly silence every output.

Step-by-Step Resolution

Apply the corrective action matching the diagnosed root cause.

Cause 1: Load supply missing

  1. Restore 24 V to the affected output group.
  2. Cycle power to the IM 153 to clear the diagnostic latch on the SM.
  3. Verify with a VAT force that the output now follows.

Cause 2: HW Config mismatch

  1. Insert the correct module in HW Config slot.
  2. Adjust the start address to match the wiring diagram.
  3. Compile and download HW Config.
  4. Cycle the IM 153 power.

Cause 3: Chart not installed

  1. CFC > Chart > Chart Installation > enable and assign to run-time group.
  2. Options > Chart Install > Download.

Cause 4: Cross-reference double-write

  1. Identify the redundant writer with Reference Data > Cross-References.
  2. Remove or comment out the erroneous write, or change its destination to a separate tag.
  3. Compile all and download.

Cause 6: PROFIBUS slave failure

  1. Read the CPU diagnostic buffer and note the slave address.
  2. Inspect the PROFIBUS connector and cable for the failed slave.
  3. Verify the slave's PROFIBUS address matches HW Config (DIP switches or rotary switch on the IM 153).
  4. Replace the IM 153 if hardware fault persists.

Verification and Commissioning

After the corrective action, perform a structured I/O check before returning the system to production.

  1. Open a Variable Table with one row per output bit/word of the affected module.
  2. Trigger each output from the CFC chart in automatic mode and confirm the VAT row reflects the same value within one scan cycle.
  3. Measure the field voltage at the actuator terminal with a DMM; verify the polarity matches the actuator wiring diagram.
  4. For analog outputs, set the CFC block to SUBSTITUTE VALUE = 0 on CPU STOP, then to LAST VALUE on CPU STOP and verify each behavior matches the project specification.
  5. Cycle the CPU from STOP to RUN three times. Watch the IM 153 SF/BF LEDs during each startup. They must extinguish within 5 s of RUN.
  6. Read the CPU diagnostic buffer: PLC > Diagnostic/Setting > Diagnostic Buffer. The buffer must be free of SF events for the affected ET 200M for at least 15 minutes.
Substitute value behavior: SM 322 outputs adopt the configured substitute value (0, 1, or last value) only when the CPU is in STOP. In RUN with a PROFIBUS failure the outputs typically go to 0, regardless of the configured substitute. If your application requires fail-safe outputs on PROFIBUS loss, use a Failsafe DO module (SM 326F) wired to a safety relay.

Preventive Measures and Best Practices

  • Maintain a documented address map per ET 200M station in the cabinet drawing set. Reject any CFC change that overlaps an existing process-image range without a peer review.
  • Add diagnostic CFC blocks (CH_DI, CH_AI, STATUS) for every output group. The STATUS block pulls the diagnostic word from the IM 153 and surfaces it on the HMI as a per-channel health indicator.
  • Fit each output group with a fused marshalling terminal so that a field-side short does not propagate back into the SM 322.
  • Use the optional SFC Visualization in STEP 7 to compare the run-time sequence against a baseline saved in the project archive; any drift indicates a chart that has been installed out of order.
  • Store the compiled S7 program with the STEP 7 V5.x archive function on every plant change. The cross-reference data is rebuilt on compile and a previous archive is the fastest way to identify a regression.
  • Schedule an annual PROFIBUS cable inspection using an oscilloscope or a BT 200 bus tester. A degraded cable produces intermittent BF events that drop the entire ET 200M and silence every output.

Spare Parts Reference

Item Order Number Notes
IM 153-2 (PROFIBUS, redundancy) 6ES7153-2BA10-0XB0 Supports redundant PROFIBUS, up to 12 Mbps
IM 153-2 (PROFIBUS, FO) 6ES7153-2BA70-0XB0 Fiber-optic variant for long distances
SM 322 DO 16×24 V / 0.5 A 6ES7322-1BH01-0AA0 2 groups of 8; common 24 V load supply
SM 322 DO 8×24 V / 2 A 6ES7322-1BF01-0AA0 Single group; suitable for higher inrush loads
SM 332 AO 8×12 bit 6ES7332-5HF00-0AB0 Voltage / current output per channel
Front connector 40-pin 6ES7392-1AM00-0AA0 Screw-type, for SM 322 / SM 332
PROFIBUS connector with PG port 6ES7972-0BB12-0XA0 90° exit, integrated termination

FAQ

Why does my CFC chart show value 1 on CH_DO but the field output never energizes?

Almost always the load-voltage (24 V) on the SM 322 output group is missing. The CPU and the field actuator use two separate supplies. Verify terminals 1L+/1M (and 2L+/2M on a 16-channel module) carry 20.4–28.8 V DC before doing any software work.

How do I confirm that HW Config matches the physical module?

In STEP 7 open Hardware, navigate to the IM 153-2 in the PROFIBUS-DP tree, and compare every slot's order number with the label printed on the installed module. Save & Compile, then Download to Target. A single character difference in the order number silently disables the output.

What does an SF LED on the SM 322 mean?

Group fault. The SM has raised a diagnostic entry, typically wire-break, missing load voltage, short circuit, or parameter error. Open PLC > Diagnostic/Setting > Diagnostic Buffer on the CPU to read the precise event.

How do I find double assignment of an output address?

Open Reference Data > Display > Cross-References in STEP 7 Manager and search for the suspect address. Multiple write accesses (W) on the same address confirm the collision; remove or reassign the redundant writer.

Is the output address the same as the slot number?

No. The slot determines the module type and channel count; the start address is set in the Addresses tab of HW Config and is independent of the physical slot. Two ET 200M stations can carry modules with overlapping slot positions but must have non-overlapping start addresses.

Does an output in CPU STOP retain its last value?

Only if the SM is configured with substitute value = LAST VALUE and the CPU is in STOP. A PROFIBUS failure while the CPU is in RUN usually forces the outputs to 0. For safety applications use SM 326F modules wired to a safety relay.

Back to blog