Troubleshooting Siemens 314C-2DP PROFIBUS SF/BF Bus Fault LEDs

David Krause14 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

Troubleshooting Siemens SIMATIC S7-300 CPU 314C-2DP PROFIBUS SF/BF Bus Fault LEDs

A field-replacement scenario for the Siemens SIMATIC S7-300 CPU 314C-2DP (order number 6ES7314-6CH04-0AB0 and earlier 6ES7314-6CG03-0AB0 / 6ES7314-6CH04-0AB0 variants) frequently produces a persistent PROFIBUS DP bus fault signature: the CPU displays SF (group error) and BF (bus fault) LEDs, the DP/DP coupler attached to the second PROFIBUS segment reports SF1/BF1, and the CPU's diagnostic buffer records OB122 – I/O Access Error when the user program attempts to read process image inputs from the missing slaves. This article walks through the deterministic diagnostic flow that separates a configuration problem from a genuine DP port failure, and provides the commissioning checklist that prevents recurrence after a CPU swap.

Safety: PROFIBUS diagnostics in a running plant must be performed with the machine in a safe state. Place the affected station in stop/hold and confirm emergency-stop circuits are functional before any cable disconnect or CPU replacement.

1. Problem Statement and Affected Hardware

The fault pattern appears immediately after a CPU 314C-2DP is replaced on a previously healthy machine:

  • CPU SF LED: ON (red, solid)
  • CPU BF LED: BLINKING (red, ~0.5 Hz) — bus fault, single station or distributed I/O failure
  • DP/DP coupler downstream: SF1 + BF1 simultaneously lit
  • Two PROFIBUS DP slaves (typically SINAMICS drives or ET200S stations) unreachable in HW Config online view
  • CPU diagnostic buffer: OB122 – I/O access error when accessing I/O area
  • CPU RUN mode drops to STOP if OB122 is not present in the user program

The 314C-2DP is a compact CPU with two PROFIBUS interfaces:

Table 1 — CPU 314C-2DP interface assignment (6ES7314-6CH04-0AB0)
Interface Physical connector Default firmware designation Typical use
X1 (MPI/DP combined) 9-pin Sub-D, female IF1 (MPI master) PG/OP communication, HMI, MPI multi-master
X2 (DP) 9-pin Sub-D, female IF2 (DP master) PROFIBUS DP master to slaves, DP/DP coupler

Mixing up these two ports is the single most common cause of the reported symptoms after a CPU swap. The MPI cable is inserted into X2 (the DP master port) while the user believes they are programming the CPU through the MPI port — the CPU accepts the download (because PG routing still resolves), but the live PROFIBUS segment on X1 is left without configuration while the configured DP master on X2 has no physical cable connection.

2. LED Decoding on the CPU 314C-2DP

Accurate LED interpretation is the first hard requirement. Reference the official SIMATIC S7-300 CPU 31xC and CPU 31x: Operating Instructions entry ID 12996906.

Table 2 — CPU 314C-2DP front-panel LED meaning
LED Color State Meaning
SF Red ON Group error — diagnostic buffer contains an entry, hardware fault, or programming error
BF Red ON Bus fault on IF1 (X1 MPI/DP)
BF Red BLINKING Bus fault on IF2 (X2 DP) or configuration mismatch
DC5V Green ON Internal 5 V supply OK
FRCE Yellow ON Force request active
RUN Green ON CPU in RUN
STOP Yellow ON CPU in STOP

When the BF LED is blinking (not solid), the CPU has detected DP slaves configured in HW Config that are not responding on the bus. The bus wiring and termination are present, but at least one configured station is missing or has a different PROFIBUS address. A solid BF means the master cannot even initialise the bus (cable break, no termination, duplicate address, or short).

3. Root Cause Tree

The five root causes that produce the exact SF + blinking BF + OB122 signature, in decreasing order of frequency in the field:

Table 3 — Root cause matrix
# Root cause Diagnostic indicator Resolution path
1 PROFIBUS cable inserted into the wrong port (X1 vs X2) MPI/PG comms work; DP slaves missing Move cable to X2, verify online
2 Replacement CPU has a different firmware / MLFB than the original Diagnostic buffer: "Station configuration differs" Match MLFB or update HW Config to match CPU
3 DP/DP coupler configured as gateway but on wrong segment number Coupler SF1 + BF1, downstream slaves absent Re-assign PROFIBUS address, check segment
4 Missing or wrong GSD file for a third-party drive BF blinks, slave shows "diagnosis: PRM OK, cfg fault" Install correct GSD, re-compile HW Config
5 Damaged DP physical port on replacement CPU No slaves seen even with known-good bus and verified cable Replace CPU; confirm with loopback test

4. Step-by-Step Diagnostic Procedure

4.1 Confirm the PG can reach the CPU

  1. Open SIMATIC Manager → Options → Set PG/PC Interface → PC Adapter (MPI) or CP5512 (MPI).
  2. Click Accessible Nodes. The CPU should appear with its MPI address (default 2).
  3. If the CPU is visible via MPI, the MPI/DP port (X1) is functional and the CPU is alive. The fault is on the DP master port (X2).
  4. If no node is visible, swap the PG cable between X1 and X2 — if the node appears on X2, the original X1 socket is where PROFIBUS was wired and the new CPU has been mislabelled as "MPI only".

4.2 Read the diagnostic buffer

  1. Right-click the CPU in the project → CPU → Diagnostic Buffer.
  2. Sort by time, descending. Look for the most recent OB122 entry and the immediately preceding bus-related entries.
  3. Typical sequence in this fault class:
    • "Distributed I/O: Station failure — Address X"
    • "Parameter assignment error: PROFIBUS DP master — Interface X2"
    • "OB122 — I/O access error: P area / PIB / PID / PQB / PQD"
  4. Open the message details by double-clicking. The buffer entry shows the DP diagnostic frame that the slave returned, including the slot that failed.

4.3 Verify the PROFIBUS topology with HW Config

  1. Open HW Config → double-click CPU 314C-2DP → select Interface X2 (DP Master).
  2. Confirm: Interface type = PROFIBUS DP master, not MPI, not DP slave.
  3. Click Properties → PROFIBUS. The configured baud rate and profile must match all slaves. For 6ES7314-6CH04-0AB0 the maximum supported DP baud rate is 12 Mbps; the Profile must be DP (not "Standard" or "Universal").
  4. Check Operating Mode: tick DP master, untick DP slave unless the project intentionally uses X2 as a slave.
  5. Save and recompile (Station → Save and Compile).

4.4 Verify slave addresses and GSDs

  1. List every DP slave configured in HW Config with its assigned PROFIBUS address.
  2. Walk the bus and read each slave's rotary address switches. Address mismatch is the second-most common cause after a wrong cable port.
  3. For any third-party drive or I/O station, confirm the GSD file in the project matches the firmware of the physical device. Right-click the slave in HW Config → Object Properties → General → Device Identification. The vendor and device codes must match the GSD header.
  4. Re-import the GSD from the manufacturer if a firmware update changed slot count or I/O length.

4.5 Verify the DP/DP coupler

The DP/DP coupler (6GK1571-0BA00-0AA0 or later 6GK1571-0BA00-0AB0) sits between two PROFIBUS segments. It is a slave to both masters and bridges them. When both SF1 and BF1 are lit simultaneously, the coupler is configured in the project on segment A but no master is polling on segment B, or vice versa.

  1. Confirm the coupler is on the correct segment in HW Config. Each segment must have its own master interface in the project.
  2. Check the DIP switches on the coupler — PROFIBUS address, segment assignment, and the maximum diagnostic buffer length.
  3. Pull the diagnostic buffer of the coupler via online → DP slave → Operating Mode → Read diagnostics.
  4. Reference the DP/DP Coupler Manual (entry ID 26493247) for the SF/BF combinations.

4.6 Physical layer checks

Even when the configuration is correct, a marginal cable will produce a blinking BF. Use the built-in PROFIBUS diagnostics:

  • SIMATIC Manager → Options → Set PG/PC Interface → CP5611/CP5612 → Diagnostics → Read PROFIBUS
  • Run the bus test from a known-good node (typically the CPU). The test reports reflection, signal level, and active stations.
  • Terminating resistors: must be ON at the two physical ends of the segment only. Many fieldbus faults originate from a third terminator left active in a stub.
  • Shielding: confirm the PROFIBUS cable shield is bonded to ground at the cabinet entry and at the device end. Use PROFIBUS connectors with switchable termination and inductive shielding (e.g., 6GK1500-0FC10 or 6ES7972-0BA52-0XA0).
  • Segment length: at 1.5 Mbps the max stub-free segment is 200 m; at 12 Mbps it is 100 m. Reference the PROFIBUS Installation Guideline (IEC 61158 / IEC 61784).

5. Distinguishing a Damaged DP Port from a Configuration Fault

Before declaring the DP port damaged, isolate the CPU from the bus:

  1. Power down the CPU.
  2. Disconnect the PROFIBUS cable from X2 only.
  3. Insert a PROFIBUS terminator (a connector with termination ON) directly into X2.
  4. Power up the CPU and bring it to RUN.
  5. Check LEDs. With no slaves and the bus terminated at the CPU, BF should be OFF or briefly flash during initialisation, then steady OFF.
  6. If BF is solid ON even with the segment disconnected, the X2 PHY (RS-485 transceiver) is damaged. Replace the CPU.
  7. If BF is OFF, reconnect the bus and repeat the test. The fault is downstream, not in the CPU port.

For a deeper test, the SIMATIC automation tool PROFIBUS Tester 5 (BC-700-PB) or a Softing PROFIBUS Diagnostic Tester (e.g., PROFIBUS-INspektor) can plot the signal level versus time on the segment and pinpoint a damaged port by its characteristic reflection pattern.

6. Replacement CPU Commissioning Procedure

The official Siemens procedure is documented in the S7-300 CPU 31xC Operating Instructions (entry ID 12996906). The field-proven sequence for a swap that previously produced the SF/BF fault:

  1. Match the MLFB. Read the order number (6ES7 314-6CH04-0AB0) and firmware version (CPU → Module Information → Firmware) of the failed CPU before removing it, or from the project backup. The replacement MUST be the same MLFB or a compatible successor. Mixing 6ES7314-6CG03-0AB0 and 6ES7314-6CH04-0AB0 will compile in STEP 7 but produce "Configuration differs" bus faults because the I/O count changed.
  2. Reset to factory. With power off, insert an MMC (Micro Memory Card) if used. Power on with the mode selector in MRES for ~3 s until all LEDs flash, release to one flash, return to MRES for ~3 s. The CPU performs a factory reset and reloads from MMC if present.
  3. Connect via MPI on X1 only. Confirm Accessible Nodes lists the CPU before touching the DP segment.
  4. Download HW Config first, then the user program. In SIMATIC Manager, PLC → Download → to Target System. Select Hardware Configuration in the dialog. Wait for the "Download finished" message before downloading blocks.
  5. Verify online. After download, right-click CPU → CPU → Operating Mode → Restart (warm restart). Watch the diagnostic buffer for "Distributed I/O: Station return" messages for each configured slave.
  6. Verify each slave online. In HW Config, double-click each slave → Operating Mode → Read Diagnostics. Confirm "No fault" for every slot.
  7. Confirm DP/DP coupler handshake. Both SF1 and SF2 must be OFF; BF1 and BF2 OFF. The coupler is healthy only when its status LED is solid green.
  8. Force-test the I/O. Use the variable table to force one output and read one input per slave. If OB122 fires, the address mapping in the program is wrong, not the bus.

7. OB122 I/O Access Error — How to Handle It

OB122 is raised by the operating system whenever the user program accesses an I/O address that has no assigned module at runtime — typically because the configured slave is missing on the bus. Without OB122 in the user program, the CPU transitions to STOP. With OB122, the CPU continues in RUN and the access returns zero / no-op.

Engineering best practice for a CPU that drives distributed I/O over PROFIBUS:

  • Always download OB122 (and OB121, OB80, OB82, OB83, OB85, OB86, OB87) along with the user program. Siemens provides these as part of the standard library under Standard Library → System Function Blocks.
  • Inside OB122, set a "degraded mode" flag that the user program checks before issuing critical drive commands. This prevents a slave drop from becoming a safety event.
  • Inside OB86 (DP master failure), latch the affected slave address from OB86_FLT_ID and OB86_DIAG so that the operator HMI can report which station failed, not just "PROFIBUS fault".

8. Firmware, MLFB and Compatibility Matrix

Table 4 — CPU 314C-2DP variants and compatibility
MLFB Firmware Work memory PROFIBUS DP support Notes
6ES7314-6BG03-0AB0 V2.0 96 KB code / 96 KB data DP master up to 12 Mbps Discontinued, no MMC
6ES7314-6CG03-0AB0 V2.6 128 KB code / 128 KB data DP master up to 12 Mbps MMC slot added
6ES7314-6CH04-0AB0 V3.3 / V3.4 192 KB code / 256 KB data DP master up to 12 Mbps, DP slave optional Current production MLFB

When a V2.x CPU is replaced with a V3.x CPU, the project may need a re-compile in STEP 7 V5.5 SP4 or later. STEP 7 V5.4 cannot build HW Config that targets a V3.x 314C-2DP. If the wrong STEP 7 version is used, the download succeeds but the operating system reports "Configuration error: Module parameter assignment incorrect" and BF blinks.

9. Verification Checklist After Repair

Table 5 — Post-repair verification matrix
Test Pass criterion How to confirm
CPU RUN Green RUN, STOP OFF Front panel
SF LED OFF Front panel
BF LED OFF Front panel
Diagnostic buffer No new OB122/OB85/OB86 entries SIMATIC Manager → CPU → Diagnostic Buffer
All slaves visible online Every DP station has green status in HW Config online HW Config → Station → Online
DP/DP coupler SF1, SF2, BF1, BF2 all OFF; status LED green Coupler front panel
Cycle time Within 50 % of OB1 scan budget CPU → Module Information → Performance Data
Process image Inputs update, outputs drive Variable table force / monitor
OB122 free No entry in last hour of buffer Diagnostic buffer

10. Preventive Measures

  • Label both PROFIBUS ports on the cabinet door: X1 = MPI/PG, X2 = DP master to field. The labels prevent the swap-port mistake that triggers the BF signature on every spare-CPU install.
  • Maintain a project backup that includes the GSD folder. STEP 7 project archives (S7AR) preserve only references to GSDs; the GSDs themselves must be backed up separately in Siemens\Automation\S7\GSD or the project GSD subfolder.
  • Document the MLFB and firmware of every CPU in the plant in a spreadsheet. The spare on the shelf must match the installed unit's MLFB to the last three characters of the order number, not just the family.
  • Install error OBs (OB82, OB85, OB86, OB121, OB122) in every project, even when the user program is small. They are the difference between a CPU in RUN with a bus fault and a CPU in STOP during commissioning.
  • Use Siemens 6GK1500-0FC10 or 6ES7972-0BA52 PROFIBUS connectors with diagnostic LEDs and switchable termination. The diagnostic LED on these connectors shows segment health at a glance.
  • Schedule an annual PROFIBUS segment health check with a PROFIBUS-INspektor-class tool. Signal-to-noise degradation precedes almost every DP failure by months.

11. Frequently Asked Questions

Why does the CPU 314C-2DP show BF blinking after a CPU swap even though the program downloaded successfully?

The download uses the MPI/DP port (X1). If the original DP master cable was wired to X2, the program is in the CPU but the live PROFIBUS segment on X2 has no physical connection. Move the DP master cable to the port designated in HW Config and confirm the address and baud rate match. Reference the CPU Operating Instructions, entry ID 12996906.

How do I tell if the DP port itself is damaged or if the fault is on the bus?

Disconnect the DP cable from X2, terminate X2 with a PROFIBUS connector with termination ON, and restart the CPU. If the BF LED is solid ON with the segment isolated, the X2 RS-485 transceiver is damaged and the CPU must be replaced. If BF is OFF, the fault is downstream on the bus.

What does OB122 mean and is the CPU supposed to STOP when it occurs?

OB122 is the I/O Access Error organisation block, raised when the user program reads or writes a process image address that has no module assigned at runtime — typically a missing DP slave. Without OB122 in the project, the CPU transitions to STOP on the first occurrence. Download OB122 (and OB85, OB86) to keep the CPU in RUN during a bus fault.

Can I replace a 6ES7314-6CG03-0AB0 with a 6ES7314-6CH04-0AB0 without changing the STEP 7 project?

Yes, provided the project was built in STEP 7 V5.5 SP4 or later and compiled against the V3.x GSD of the 6CH04. The project will download and run, but the I/O mapping and work memory layout must be re-verified online because the V3.x CPU has different diagnostic buffer formats and additional OB support.

The DP/DP coupler shows SF1 and BF1 simultaneously. Is the coupler faulty?

Almost never. SF1 + BF1 on a DP/DP coupler means segment A is configured but no DP master is polling on segment A, or segment A is wired incorrectly. Check the segment-A master (this CPU or another) and the cable between master and coupler. The coupler itself is a slave on both segments and cannot have a "group fault" without a master-side cause.

What is the maximum PROFIBUS DP baud rate supported by the CPU 314C-2DP?

All variants of the 6ES7314-6CH04-0AB0 and its predecessors support PROFIBUS DP at 9.6 kbps up to 12 Mbps. The 12 Mbps rate requires a segment length of 100 m maximum and high-quality connectors with shield bonding. Most field installations use 1.5 Mbps for compatibility with legacy drives.

Back to blog