Diagnosing SF LED on S7-300 314C-2 DP as PROFIBUS Slave

David Krause19 min read
S7-300SiemensTroubleshooting
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

When a SIMATIC S7-300 CPU 314C-2 DP (typical MLFB 6ES7314-6CG03-0AB0, 6ES7314-6CG04-0AB0, or 6ES7314-6CH04-0AB0) is configured as a PROFIBUS-DP slave in HW Config (STEP 7 V5.x) or Device Configuration (TIA Portal V13+) and powered up without a DP master on the bus segment, both the BF (Bus Fault) LED and the SF (System Fault) LED illuminate on the front panel. The BF LED is expected — the slave cannot find its communication partner. The SF LED, however, often confuses integrators because the CPU itself is in RUN, the user program executes normally, and no programming error has been made. The diagnostic buffer of such a station typically contains the entries:

  • "Difference between setpoint and actual configuration"
  • "Startup with modified system configuration"
  • "Distributed I/O: station failure"
  • "PROFIBUS DP: station failure, slave <addr>"
  • "Interface X2: physical layer error / no master"

None of these entries is a defect — they are the slave's record that its configured communication partner is absent at startup. This article explains why the SF LED is on, which diagnostics the CPU writes, which OBs are required to keep the CPU running, and how to validate the unit before shipping it to a customer who will connect it to a real PROFIBUS network. The same diagnostic pattern applies to any S7-300 CPU (or ET200S station) operating in DP-slave mode on its integrated PROFIBUS interface. For the official S7-300 CPU 31xC manual set, refer to the Siemens Industry Online Support entry under product support for "S7-300 Automation System / CPU 31xC and CPU 31x".

Hardware Identification: CPU 314C-2 DP

The 314C-2 DP integrates a PROFIBUS-DP master/slave interface (X2, 9-pin D-sub) alongside the MPI interface (X1). Common order numbers, work-memory sizes, and firmware versions:

Order Number (MLFB) Variant Work Memory Code / Data Firmware Programming Tool
6ES7314-6CG03-0AB0 CPU 314C-2 DP, integrated 16 DI / 16 DO / 5 AI / 2 AO 64 KB / 64 KB V2.6 STEP 7 V5.5 SP2 + HF1, TIA V13 SP1+
6ES7314-6CG04-0AB0 CPU 314C-2 DP, integrated I/O 96 KB / 96 KB V3.3 STEP 7 V5.5 SP4+, TIA V13 SP1+
6ES7314-6CH04-0AB0 CPU 314C-2 DP, integrated I/O, extended diagnostics 96 KB / 96 KB V3.3 STEP 7 V5.5 SP4+, TIA V13 SP1+
6ES7314-6EH04-0AB0 CPU 314C-2 PN/DP (adds PROFINET on X3) 192 KB / 192 KB V3.3 STEP 7 V5.5 SP4+, TIA V13 SP1+

The integrated PROFIBUS interface supports baud rates from 9.6 kbit/s to 12 Mbit/s and operates as a class-1 DP master or a class-1 DP slave depending on the HW Config setting. The X1 MPI port is reserved for engineering / HMI access; it does not carry PROFIBUS-DP traffic. The X2 port pinout follows the PROFIBUS-DP standard (IEC 61158 / EN 50170):

Pin Signal Function
1 SHIELD Shield / protective ground
2 M24 24 V common (for termination power)
3 RxD/TxD-P (B) Receive/Transmit data, positive (red wire)
4 RTS Request To Send (direction control)
5 DGND Data ground (reference for signal)
6 VP +5 V supply for bus termination (only first and last node)
7 P24 +24 V (for termination power)
8 RxD/TxD-N (A) Receive/Transmit data, negative (green wire)
9 DGNDA Data ground (only for repeater)
Confirm the exact MLFB printed on the front panel before quoting diagnostic behavior. The LED naming is consistent across all variants, but the diagnostic buffer text format and OB processing are firmware-dependent. Always check the firmware version via PLC › Module Information › Diagnostics in STEP 7, or Online & Diagnostics › Diagnostic buffer in TIA Portal.

PROFIBUS DP Slave Operating States

The PROFIBUS-DP slave state machine, defined in IEC 61158-3 and IEC 61784, transitions through the following states when no master is present on the segment:

  1. Power-On: Slave initializes, performs self-test.
  2. Wait_Prm: Slave waits for the parameterization telegram from a class-1 master.
  3. Wait_Cfg: Slave waits for the configuration telegram from a class-1 master.
  4. Data_Exchange: Slave enters cyclic data exchange with the master.
Wait_Prm no master on segment Wait_Cfg Prm telegram received Data_Exchange cyclic data OK PRM CFG SF LED ON OB86 station-failure called OB82 diagnostic interrupt possible station failure RUN BF SF

Without a master, the slave remains in Wait_Prm indefinitely. It still:

  • Listens for parameterization telegrams and replies to FDL requests.
  • Updates the diagnostic buffer on internal state changes.
  • Triggers OB86 on station-failure events when the previously known master is absent.
  • Generates diagnostic interrupts via OB82 when its module diagnostic status changes.

This is correct slave behavior. The slave is not defective; it simply has no partner to talk to. The BF LED indicates the physical interface cannot complete token-ring participation; the SF LED indicates the CPU has at least one unacknowledged system-fault entry pending.

X2 PROFIBUS Interface and Physical Layer

PROFIBUS-DP uses RS-485 differential signalling on a shielded twisted pair. The electrical characteristics of the bus are:

Parameter Value
Differential output voltage (idle) 5 V typical (1.5 V min)
Termination resistors 220 Ω between A and B; 390 Ω pull-up to VP; 390 Ω pull-down to DGND
Topology Linear bus with active termination at both ends only
Stations per segment 32 (address 0–31 reserved; 0 reserved for service tools)
Stations per network 126 with up to 3 repeaters / 4 segments
Cable type PROFIBUS cable, type A (solid core, 150 Ω ±15 Ω characteristic impedance)

Segment length limits depend on the selected baud rate:

Baud Rate Max Segment Length (Type A cable)
9.6 kbit/s 1200 m
19.2 kbit/s 1200 m
45.45 kbit/s 1200 m
93.75 kbit/s 1200 m
187.5 kbit/s 1000 m
500 kbit/s 400 m
1.5 Mbit/s 200 m
3 Mbit/s 100 m
6 Mbit/s 100 m
12 Mbit/s 100 m
The BF LED can illuminate for any of the following physical-layer reasons: missing termination at segment ends, terminator left ON at a mid-segment device, A/B wires reversed, cable shield not bonded to D-sub shell, segment length exceeded for the configured baud rate, or master not transmitting. Bench testing a slave without a master will always light BF regardless of the cable plant; this is normal.

SF LED and BF LED Reference

The 314C-2 DP front panel provides six LEDs. The two relevant to this scenario are SF (red) and BF (red). The third PROFIBUS-related LED is DC5V (green), which confirms the internal 5 V supply to the DP transceiver.

LED Color Off On (steady) Flashing (~0.5 Hz) Flashing (~2 Hz)
SF Red No system fault System fault pending (programming error, I/O fault, or unacknowledged DP diagnostic) Diagnostic interrupt from a DP slave n/a
BF Red DP interface OK, or no DP configured Physical bus fault: no master, baud-rate mismatch, broken segment, or missing termination Slave not yet in token ring; master not yet transmitting parameterization Intermittent connection, configuration / parameterization error
DC5V Green 5 V supply failed or DP interface inactive 5 V supply OK n/a n/a
FRCE Yellow Force inactive Force function active on at least one I/O point n/a n/a
RUN Green CPU not in RUN CPU in RUN CPU startup in progress (OB100 / OB102) n/a
STOP Yellow CPU not in STOP CPU in STOP (manual or event-driven) Memory reset requested or password-protected n/a
When the CPU is a DP slave with no master, the BF LED typically illuminates steadily rather than flashing. Steady-on means the slave has not detected any FDL activity at all. Flashing BF usually means the slave sees traffic but cannot enter Data_Exchange — for example, the master is on the segment but has not yet parameterized this slave. The distinction matters when diagnosing on site at the customer.

Diagnostic Buffer Entries Explained

Open the diagnostic buffer in STEP 7 via PLC › Diagnostic/Setting › Diagnostic Buffer or in TIA Portal via Online & Diagnostics › Diagnostic buffer. For a 314C-2 DP configured as a slave without a master, expect to see the following events:

Diagnostic Text (English) Event ID (hex) Meaning
Difference between setpoint and actual configuration 0x013A Configured DP slave not present at startup; actual topology differs from HW Config
Startup with modified system configuration 0x0131 CPU started with at least one configured module missing or different; tolerated because OB100 / OB102 / OB86 are loaded
Distributed I/O: station failure 0x0130 DP slave at the configured address is not reachable or has failed
PROFIBUS DP: station failure, slave <addr> 0x0192 Specific slave lost; OB86 called with EV class "station failure"
Interface X2: physical layer error / no master 0x33A2 No FDL activity on X2; no token-ring participation
Module <logical address>: diagnostic interrupt 0x013C A DP slave has sent a diagnostic interrupt; OB82 called
STOP due to missing OB82 0x4521 Diagnostic interrupt occurred but OB82 not loaded
STOP due to missing OB86 0x4524 Station failure occurred but OB86 not loaded

The first three entries are normal during a master-less startup of a DP slave. They tell you the CPU has detected the configuration mismatch and handled it gracefully. The CPU does not go to STOP because OB82 and OB86 are loaded. The SF LED is the visible flag that at least one of these diagnostics is still pending in the buffer.

Event IDs 0x4521 and 0x4524 do not appear in this scenario because both OBs are loaded. If you see them, you must add the missing OB and perform MRES before proceeding.

Required Organization Blocks

The CPU calls organization blocks in response to specific events. For DP slave operation, the following OBs are relevant:

OB Name Trigger Behavior When Missing
OB1 Main cyclic End of cyclic scan CPU does not run user program
OB10–OB17 Time-of-day Scheduled time-of-day interrupt CPU stops on first occurrence
OB82 Diagnostic interrupt Incoming or outgoing diagnostic from a DP slave CPU stops on first diagnostic interrupt
OB86 Rack / station failure DP slave becomes unavailable (failure) or reappears (return) CPU stops on first station failure
OB100 Warm restart Runs once during power-on with mode switch at RUN or RUN-P CPU does not perform warm restart
OB102 Cold restart Runs once after MRES CPU does not perform cold restart
OB121 Programming error STEP 7 code errors (divide by zero, invalid DB, etc.) CPU stops on first programming error
OB122 I/O access error Reading a defective I/O word or unloaded DB CPU stops on first I/O access error

For a standalone bench test of a DP slave, at minimum load the following into the project:

  • OB1 (empty or with the customer's actual code)
  • OB82 (empty — present so the CPU does not stop on diagnostic interrupts)
  • OB86 (empty — to handle station-failure events for the missing master)
  • OB100 (empty or with customer startup code)

Even with OB82 and OB86 loaded, the CPU still writes every failure event into the diagnostic buffer and increments the internal system-fault counter. That is why the SF LED stays lit. Loading OBs prevents STOP transitions; it does not clear pending diagnostic events. For the canonical Siemens list of OBs to load for error handling on a 31xC DP-slave CPU, see Siemens Industry Online Support entry ID 11499205.

Why the SF LED Illuminates Without a Master

The SF LED is the LED-level reflection of the CPU's "system-fault pending" flag. This flag is set by any of the following:

  1. Programming error (handled by OB121).
  2. I/O access error (handled by OB122).
  3. Unacknowledged diagnostic interrupt from a DP slave (handled by OB82).
  4. Unacknowledged rack / station failure (handled by OB86).
  5. Battery fault on memory submodules (legacy CPUs with battery backup).

When the 314C-2 DP is a slave and the master is absent, events 3 and 4 fire repeatedly:

  • At startup, the slave performs its parameterization check. The configured master address is unreachable. OB86 is called with OB86_FLT_ID = B#16#C4 ("DP station failure") for entry, and called again for exit when the slave eventually determines the master is permanently absent.
  • Each time the slave's diagnostic status changes — for example, transition from "configured but not parameterized" to "configured and parameterized" — it can issue a diagnostic interrupt. OB82 is called with the relevant diagnostic data block (DS0/DS1).

The CPU records every entry and exit call. As long as one or more events remain "open" in the internal fault state, SF stays lit. The only ways to extinguish it are:

  • Connect the configured DP master so the slave enters Data_Exchange and closes the station-failure event.
  • Acknowledge the diagnostics manually by calling SFC 13 "DPNRM_DG" for the affected slave (this clears the diagnostic-interrupt pending bit).
  • Power-cycle the CPU with the master present so the slave initializes directly into Data_Exchange.

None of these is appropriate for a pre-shipment bench test. The correct action is to document the SF LED state as expected and verify that the diagnostic buffer contains only the expected station-failure entries. Touching the station-failure event with SFC 13 during bench test does not improve the field result.

Pre-Shipment Verification Procedure

Use the following procedure to verify a DP-slave CPU before shipping it to the customer:

  1. Connect a programming device to the CPU's MPI port (X1) using a PC adapter — USB / MPI for legacy CPUs or Ethernet / MPI for the PN/DP variant. Set the PG/PC interface in STEP 7 or TIA Portal to the correct adapter.
  2. Open STEP 7 or TIA Portal and establish an online connection to the CPU.
  3. Verify the operating mode: PLC › Module Information › Operating Mode. RUN with no STOP request pending is required.
  4. Read the diagnostic buffer: PLC › Diagnostic Buffer. Filter for events with Event ID 0x0130, 0x0131, 0x013A, 0x33A2. Confirm every entry relates to the expected DP station failure and that no unexpected OB121, OB122, or unknown slave errors are present.
  5. Inspect the OB configuration: PLC › Module Information › OBs. Confirm OB1, OB82, OB86 (and OB100 / OB102 if used) are loaded.
  6. Check HW Config consistency: Station › Open HW Config. Confirm the DP slave interface is enabled, the slave address matches the customer's network plan, and the I/O mapping matches the customer specification.
  7. Document the LED state: Take a photograph or note the LED pattern. SF on, BF on, DC5V on, RUN solid green is the expected pre-shipment state for a standalone DP slave.
  8. Save and archive: Upload the project from the CPU and archive the diagnostic-buffer screenshot with the shipping documentation. Stamp with the project number, CPU MLFB, firmware version, and date.

On-Site Commissioning Steps

When the customer's DP master becomes available, the following commissioning procedure will close out the SF LED:

  1. Confirm the PROFIBUS segment is terminated at both physical ends only. The terminator switch on every other D-sub connector must be OFF.
  2. Confirm the baud rate of the master matches the baud rate configured in the slave's HW Config (default "Auto-detect" with a configured master forces the slave to the master's baud rate).
  3. Power the master first; wait for it to enter OPERATE and start PROFIBUS communication.
  4. Power the slave (or perform MRES to ensure a clean startup).
  5. Observe the slave's BF LED: it should transition from on to flashing (slave detecting FDL activity) to off (cyclic data exchange) within 5 to 15 seconds, depending on network loading.
  6. Observe the slave's SF LED: it should extinguish within 5 to 15 seconds after the slave enters Data_Exchange. If it remains lit, read the diagnostic buffer and check for the cause.
  7. On the master, verify the slave's diagnostics show No fault in the slave's DPV0/DPV1 status.
  8. Verify the customer's I/O mapping is reading and writing as expected. Use a PROFIBUS trace tool (e.g., a Softing PROFIBUS Diagnostic Tool) to confirm telegram exchange.
If BF stays on with the master connected, the most common causes are: (a) PROFIBUS address mismatch, (b) the master has not loaded the correct GSD file for the slave, (c) baud-rate mismatch, (d) reversed A / B wires, (e) missing or incorrectly placed termination resistors, (f) broken cable or open shield. Each is documented in the Siemens S7-300 / ET200 PROFIBUS Diagnostic Repeater manual and can be isolated with a PROFIBUS tester.

LED State and Action Matrix

SF BF RUN STOP DC5V Diagnosis Action
Off Off On Off On CPU in RUN, DP cyclic exchange OK None — normal operation
On On On Off On DP slave, no master connected — expected for bench test Document; ship; verify on site
On Flashing On Off On Master present but not parameterizing this slave Check slave address, GSD, baud rate
Off On On Off On Physical bus fault, no FDL activity Check cable, termination, baud rate, master power
On Off Off On On CPU in STOP due to programming / I/O error Read diagnostic buffer; check OB1, OB121, OB122
Flashing Off On Off On Diagnostic interrupt from a DP slave Read OB82 info; check slave diagnostic data via SFC13
Off Off Off On On CPU in STOP, no faults, awaiting RUN Issue RUN command; check mode selector position
On On Off On On CPU in STOP, station failure and missing OB86 Load OB86; MRES; restart
On Off Off On On CPU in STOP, diagnostic interrupt and missing OB82 Load OB82; MRES; restart

Diagnostic Buffer Event ID Reference

Below is a compact reference for the most common Event IDs encountered on a 314C-2 DP as slave. Use PLC › Module Information › Diagnostic Buffer in STEP 7 V5.5 SP4+, or Online & Diagnostics › Diagnostic buffer in TIA Portal V13 SP1+, to view them.

Event ID (hex) Description Severity Common Cause Cleared By
0x0130 Distributed I/O: station failure Error DP slave missing or unreachable Slave returns; SFC13 DPNRM_DG read
0x0131 Startup with modified system configuration Warning Configured slave not present at startup Slave becomes available
0x013A Difference between setpoint and actual configuration Warning Topology mismatch at power-up Topology matches after parameterization
0x0192 PROFIBUS DP: station failure, slave <addr> Error Specific slave lost Slave reappears
0x33A2 Interface X2: physical layer error Error No FDL activity, cable fault, no master Bus recovers
0x013C Module <logical addr>: diagnostic interrupt Info DP slave reports module status OB82 reads DS0/DS1
0x4521 OB82 missing — STOP Error Diagnostic interrupt occurred but OB82 not loaded Load OB82; MRES
0x4524 OB86 missing — STOP Error Station failure occurred but OB86 not loaded Load OB86; MRES
0x4301 Mode switch position changed Info Operator action Informational only
0x4310 Power on Info Normal startup Informational only
0x4302 Memory reset performed Info MRES on mode switch Informational only

PROFIBUS Cable, Termination and Baud Rate

The PROFIBUS-DP physical layer is defined by IEC 61158-2. For reliable operation of the slave once connected to the customer's master, verify the following items during the design phase:

  1. Cable: Use only PROFIBUS cable type A (solid-core, 150 Ω ±15 Ω characteristic impedance, 35 to 165 Ω / km loop resistance, < 30 pF / m capacitance). Avoid type B (stranded core); it limits segment length.
  2. Termination: Only the first and last physical stations must have termination enabled. The classic termination is 220 Ω between pins 3 and 8, with 390 Ω pull-up to pin 6 (VP) and 390 Ω pull-down to pin 5 (DGND). Many PROFIBUS connectors provide this as a switchable terminator.
  3. Baud rate: All stations on a segment must operate at the same baud rate. For DP slaves, the baud rate is set in HW Config under the slave interface properties. For auto-detect baud rate, the slave scans FDL activity on the segment and adopts the master's baud rate within 5 seconds of seeing traffic.
  4. Shield: The cable shield must be bonded to the D-sub metal shell on both ends, with the shell connected to chassis ground at each station. Floating shields invite noise coupling.
  5. Stations per segment: Maximum 32 stations per segment (no repeaters). Maximum 126 stations per network with up to three repeaters.
  6. Repeaters: Each repeater segment introduces one further repeater's worth of signal regeneration. Place repeaters when the segment length for the chosen baud rate would otherwise be exceeded.
The slave CPU's own BF LED does not distinguish between "no master" and "physical-layer fault". If a 314C-2 DP at a customer's site shows BF with a master confirmed powered and parameterized, check the wiring before assuming a CPU fault. A PROFIBUS tester is the only reliable way to differentiate physical-layer issues from logical misconfiguration.

Frequently Asked Questions

Why does my S7-300 314C-2 DP show SF and BF LEDs simultaneously when configured as a PROFIBUS slave without a master?

BF lights because the DP interface cannot find a class-1 master on the segment; this is expected. SF lights because OB86 (station failure) and possibly OB82 (diagnostic interrupt) events are queued in the diagnostic buffer. Loading OB82 and OB86 prevents the CPU from going to STOP but does not clear the pending system-fault state. Both LEDs together are normal for a standalone bench test of a DP slave.

Will the SF LED extinguish automatically once the customer connects a real PROFIBUS master?

Yes, in the typical case. As soon as the slave enters Data_Exchange with the master, the station-failure event is closed, OB86 is called for the return event, and the SF LED extinguishes within 5 to 15 seconds. If the LED does not clear, verify that the master has the correct GSD file for the slave and that the slave address matches the master configuration.

Which OBs must be loaded so the CPU does not go to STOP when configured as a DP slave?

Load at minimum OB1, OB82, and OB86. OB82 handles incoming and outgoing diagnostic interrupts from DP slaves. OB86 handles rack and station failures, including the missing-master condition for a slave CPU. Add OB100 for warm-restart logic and OB102 for cold-restart logic if needed. OB121 and OB122 are only required when you need to handle programming or I/O access errors without stopping the CPU.

What does "Difference between setpoint and actual configuration" mean in the diagnostic buffer?

The CPU's HW Config (setpoint) lists the slave as a partner at a specific PROFIBUS address. At startup the CPU finds no device answering at that address (actual = nothing). The CPU records the mismatch and, because OB86 is loaded, continues to RUN. Once the master is connected and parameterizes the slave, the actual configuration matches the setpoint and the entry is superseded by a return event.

Can I clear the SF LED without connecting a master?

Yes, by calling SFC13 DPNRM_DG in OB86 to read the diagnostic data of the affected slave, then performing a power cycle. A memory reset (MRES) on the mode switch also clears it but deletes the loaded program. The most practical approach during bench test is to document the LED state as expected rather than clear it, because the same SF LED will re-appear at every power-up until a real master is connected.

Does this SF LED behavior apply to other Siemens CPUs operating as PROFIBUS slaves?

Yes. The SF LED behavior is identical across all S7-300 DP-capable CPUs (312C, 313C, 313C-2 DP, 314C-2 DP, 315-2 DP, 316-2 DP, 317-2 DP, 319-3 PN/DP), all S7-400 CPUs with PROFIBUS interface modules, and the ET200S station CPUs (IM151-7, IM151-8 PN/DP). The same diagnostic-buffer entries and the same OB requirements apply. The exact wording of the diagnostic text varies slightly between STEP 7 and TIA Portal, but the Event IDs are stable.

Back to blog