Overview
The Status Fail (SF) LED on a Siemens SIMATIC S7-300 CPU 315-2 DP (order number 6ES7315-2AFxx-0AB0 family) is the most common amber/red fault indicator a programmer will encounter during commissioning and runtime. The LED illuminates whenever the CPU's operating system detects an internal hardware fault, an I/O access error, a programming error in the user logic, a parameter assignment error on a distributed I/O station, or a fault on the integrated PROFIBUS-DP master interface. Because a single LED is intentionally generic, the diagnostic root cause must be derived from the CPU's Diagnostic Buffer accessed through STEP7 / SIMATIC Manager.
This reference walks through every documented reason the SF LED can be lit on a CPU 315-2 DP, the precise menu path and tool options to read the buffer, the typical error event IDs, and the field-proven corrective actions used to clear the fault without clearing the user program.
CPU 315-2 DP LED Status Indicators
The CPU 315-2 DP front panel exposes two rows of LEDs that distinguish between the CPU fault domain and the two PROFIBUS interfaces (DP master + DP slave on -2DP10/-2DP13 variants). The integrated LEDs are documented in the official CPU 315-2 DP / CPU 317-2 DP device manual, available from Siemens Support entry 12996906.
| LED | Color | Meaning |
|---|---|---|
| SF | red | Hardware fault or software error (CPU-level fault, programming error, I/O fault, parameter assignment fault) |
| BF | red | Bus error at the DP interface (1st PROFIBUS interface, MPI/DP combined) |
| BUS2F (only on -2AF10, -2AH14, -2AJ13) | red | Bus error at the second DP interface (DP slave or second DP master) |
| FRCE | yellow | Force function is active; at least one I/O is being forced |
| RUN | green, flashing | CPU is starting up (STARTUP) |
| RUN | green, static | CPU is in RUN mode |
| STOP | yellow, static | CPU is in STOP mode |
| STOP | yellow, flashing slowly | CPU requests memory reset / is in self-test after MRES |
| DC5V | green | Internal 5 V DC supply for the backplane bus is OK |
The SF LED is intentionally non-specific: a lit SF alone does not distinguish between a broken SM321 digital input module, an OB121 programming error, or a slave drop on PROFIBUS. You must read the Diagnostic Buffer to disambiguate.
Common Causes of the SF LED
Siemens classifies all events that raise SF under the umbrella "CPU-internal error with entry in the diagnostic buffer." In practice, the most frequent causes are:
- Programming error (OB not loaded or not called) – the user program accesses an OB that is not present in the load memory, for example OB121 / OB122 / OB80–OB87.
- I/O access error – direct access to a bit, byte, word, or double word that is not assigned or is faulty. The classic trigger is reading I0.7 when the slot returns a peripheral access fault.
- Module failure / removed module – a signal module (SM), function module (FM), or communications processor (CP) is pulled from the rack, loses power, or reports a hardware fault.
- Parameter assignment error – the configured module parameters in HW Config disagree with the actually inserted module (wrong order number, wrong firmware, wrong slot).
- Distributed I/O fault on PROFIBUS-DP – DP slave station failure, diagnostic interrupt from a slave, or address assignment error.
- Time-of-day interrupt / watchdog / battery fault – secondary faults that may keep the SF LED lit even after the primary error is cleared.
- Memory reset required – after a fatal error the CPU will only restart after MRES (memory reset).
Reading the Diagnostic Buffer
The Diagnostic Buffer is a ring buffer maintained by the CPU operating system that stores up to 100 events with a real-time timestamp. Each entry includes:
- Sequential event number (oldest = top, newest = bottom)
- Date and time-of-day stamp
- Event ID (hexadecimal) – the most important field
- Event description (text in STEP7 language pack)
- Additional information (OB number, module logical address, slot, etc.)
Procedure in STEP7 V5.x
- Open the S7 project in SIMATIC Manager.
- Establish an online connection to the target CPU (PLC → Connect to Target System).
- In the project tree right-click the CPU under S7 Program → Blocks or under Station.
- Select PLC → Module Information (or right-click and choose PLC → Diagnostic Buffer).
- Click the Diagnostic Buffer tab.
- Scroll to the most recent event (bottom of the list). Press F5 to refresh.
- Click any event and then Open Block to jump directly to the faulty block or Module Information for the faulty module.
Procedure in TIA Portal (V13 and later)
- Open the project and go online with the CPU 315-2 DP.
- Right-click the device and choose Online & Diagnostics.
- Select Diagnostics → Diagnostic buffer from the navigation tree.
- Use the «Open in project» button to navigate directly to the offending OB/FB/DB.
Event ID Reference for the CPU 315-2 DP
The following table lists the most frequent Event IDs reported by the CPU 315 operating system when SF is lit. Event IDs are hexadecimal; the prefix 0x is implied in STEP7.
| Event ID | Cause / Meaning | Typical Recovery |
|---|---|---|
| 2521 | Programming error – error in user program execution | Check OB1 / OB121 details; correct the instruction |
| 2522 | STOP caused by programming error (OB not loaded) | Download OB121 (I/O access), OB122, OB80, OB82, OB85, OB86, OB87 |
| 2530 | STOP caused by I/O access error | Verify the slot/logical address; add OB122 to handle peripheral faults |
| 2531 | STOP caused by substitute OB not loaded | Download the missing OB into the load memory |
| 2534 | STOP caused by communication error | Check CP / connection configuration |
| 2940 | Module address error (logical address not assigned) | Recompile HW Config; download the configuration |
| 3310 / 3311 / 3312 / 3313 / 3314 | I/O fault during update / station failure / module removed | Insert the module, repair the rack, or recompile the configuration |
| 3581 | PROFIBUS DP slave failure (BUSF also lights) | Check slave power, bus connector, terminating resistor, address |
| 39xx | Mode selector / operating mode change events | Informational only |
| 4300 – 43FF | Module diagnostic interrupts (e.g. channel short circuit on SM 321) | Navigate to the affected channel via the buffer details |
| 494E / 494D | Watchdog / time-of-day interrupt error | Reconfigure OB10–OB17 cyclic intervals |
| 79FF | Battery low (or no battery installed on the -2AF versions) | Replace the backup battery (3.6 V AA lithium) |
I/O Addressing Verification for I0.7 and I0.0–I0.7
The most direct way for the SF LED to be tied to a specific input bit is when the program uses an I/O area that returns a peripheral fault. STEP7 maps the first 32 bytes of the digital input image to logical addresses I0.0–I3.7, sourced from the SM 321 modules (or the integrated DI on -2DP variants with -2AH14/-2AJ13: there are no onboard DIs on the standard -2AF/-2AG versions). To verify the mapping:
- Open HW Config and double-click slot 4 (or the SM 321 slot).
- Confirm the module's order number (for example 6ES7 321-1BL00-0AA0 for a 32-channel DI 24 V).
- Note the I address shown at the bottom of the properties dialog – this is the start address of the module.
- Open the Monitor/Modify view (online → Monitor) and force the input image to confirm that I0.7 is wired and energized.
If I0.7 is not present (for example because the project uses a different input slotting or the input image is configured at I2.0–I3.7), every read of I0.7 raises an I/O access fault. The CPU then either calls OB122 (if loaded) or transitions to STOP with SF + STOP lit. The STEP7 event in the buffer will be one of:
-
2530– I/O access error -
2940– logical address does not exist
Bit vs. Word vs. Integer Reads
A common beginner mistake is to read IW0 when only IB0 is configured. STEP7 fetches a whole word, and the second byte (bits I1.0–I1.7) must exist. If only one byte of input is wired, IW0 returns a peripheral fault. Use IB0 for an 8-bit read or I0.0 / I0.7 for bit access. Likewise, mixing any direct I/O access with a process image selected to be updated in OB1 only can generate Event ID 3501 if a slot's process image is excluded.
Hardware Fault Detection
When the SF LED comes on together with the DC5V LED going out, the backplane 5 V supply is shorted – usually a defective SM module. The diagnostic procedure is:
- Power down the rack.
- Remove all SM/FM/CP modules from the rack, leaving only the CPU and PS.
- Power up; SF should clear.
- Re-insert one module at a time, power-cycling after each insertion.
- When SF re-appears, the last-inserted module is the suspect.
If SF stays lit with only the CPU and PS in the rack, the CPU itself is suspect and should be replaced or sent in for repair through Siemens Industry Online Support.
Software Error Classes
STEP7 categorizes OB-related errors into error OBs and substitute OBs. The CPU 315-2 DP supports the following error OBs:
| OB | Trigger |
|---|---|
| OB 80 | Time error (cycle time exceeded) |
| OB 81 | Power supply error (PS failure, battery failure) |
| OB 82 | Diagnostic interrupt (module pulls diagnostic) |
| OB 83 | Module pull/plug interrupt (only with active backplane) |
| OB 84 | CPU hardware fault |
| OB 85 | OB not found / process image update error |
| OB 86 | Rack failure / DP station failure |
| OB 87 | Communication error |
| OB 121 | Programming error (e.g. conversion error) |
| OB 122 | I/O access error |
When an error OB is not loaded, the CPU transitions to STOP and lights both SF and STOP. The recovery is to either download the missing OB from the project's System Data or to make the project tolerant of the error by removing the offending code. Always confirm OB presence with STEP7's Block folder view; an empty OB (no code) is still a valid loadable OB.
PROFIBUS DP Communication Faults
When the SF LED is accompanied by BF or BUS2F, the fault is on the PROFIBUS interface. The diagnostic buffer will contain Event IDs 3581 / 3582 / 3583 / 3584 / 3585 describing the bus station failure or diagnostic. The procedure is:
- Open HW Config and right-click the DP master system to view PROFIBUS diagnostics.
- Locate the slave marked red in the topology.
- Verify the slave's PROFIBUS address matches the rotary switch on the device.
- Check bus termination – only the first and last device must have terminating resistors ON.
- Measure bus voltage on the DP connector: a healthy bus is ≥ 4.5 V DC between pins 3 (B) and 8 (A).
- Verify the GSD file in the project matches the slave's actual revision.
Step-by-Step Diagnostic Procedure
Use this sequence the next time SF lights on a CPU 315-2 DP. It is the same workflow Siemens field service engineers apply.
- Capture the diagnostic buffer before doing anything else. Right-click CPU → PLC → Module Information → Diagnostic Buffer. Press Save As to a text file on the PG/PC.
- Identify the latest error event and note its Event ID.
- Note the OB information: which OB was triggered, and whether it was loaded.
- Open the block via the Open Block button. Go online to the block and inspect the STL source for the access.
- Cross-check the I/O address against HW Config. Use the cross-reference tool (Options → Reference Data → Display) to find all uses of the suspect bit/byte/word.
- Check the rack: confirm that every configured module is physically present and that no slot is empty.
- Repair the fault: change the address, add the missing OB, replace the module, or fix the wiring.
- Recompile and download: PLC → Download. Confirm the download reports Download successful.
- Run the CPU: PLC → Run. Verify SF is off and the most recent diagnostic buffer entry is a STOP → RUN transition (Event ID 0800).
- Stress-test: run the line / machine for one full production cycle. Re-read the diagnostic buffer to ensure no new events have been logged.
Verification: Confirming the Fault Has Cleared
After the corrective action, perform the following checks:
| Check | Expected Result |
|---|---|
| SF LED | OFF |
| RUN LED | Static green |
| STOP LED | OFF |
| BF / BUS2F | OFF (or flashing if bus is in startup) |
| Diagnostic buffer latest entry | Event ID 0800 (STOP → RUN) or a normal mode change |
| Cross-reference check on I0.7 | No access to undefined peripheral address |
| PLC → Operating Mode | RUN |
| PLC → Module Information → Performance Data | OB121, OB122, OB80–OB87 all listed as loaded |
If SF stays lit after the corrective action, the most likely remaining cause is a module that the CPU has not yet resynchronized. Cycle the power to the rack (PS off, wait 5 seconds, PS on) to force a full re-initialization. If SF persists, repeat the diagnostic procedure and inspect the next event in the buffer – the user-fixed event will be followed by a new underlying cause.
Preventive Recommendations
- Always download all standard OBs (OB80 through OB87, OB121, OB122) even if they are empty. They prevent the CPU from going to STOP for any non-fatal error.
- Avoid direct I/O access (PIW, PQB) on the user program. Stick to the process image (I, Q) and let OB85 handle image-update errors.
- Use HW Config cross-checks: enable PLC → Module Information → Consistency Check after every download.
- Keep a printed copy of the project's diagnostic buffer from each commissioning. Buffer entries are not retained forever if the CPU is reinitialized.
- Apply CPU firmware updates from the Siemens Industry Online Support portal; some Event IDs are only resolved in a firmware upgrade.
Frequently Asked Questions
What does the SF LED on a CPU 315-2 DP mean?
SF (red) signals an internal CPU fault – hardware fault or software error – and always coincides with an entry in the Diagnostic Buffer. It does not indicate which subsystem is at fault; you must read the buffer via STEP7 (PLC → Module Information → Diagnostic Buffer) to identify the Event ID.
Why does the SF LED come on when I set I0.7 in the program?
Almost always the address I0.7 is not assigned in HW Config (or only IB0 exists, not IW0). The CPU raises Event ID 2530 / 2940 for an I/O access error. Either remap the project to the correct slot address or download OB122 so the CPU handles the fault and continues running instead of going to STOP.
How do I open the Diagnostic Buffer without STEP7?
From the CPU front panel, switch to STOP then briefly to MRES (the mode selector) – this only clears memory. To read the buffer offline, connect any HMI (OP, TP) that supports the S7 diagnostics, or use the Web server of an attached CP. The most reliable method remains STEP7 via MPI/PROFIBUS.
Does a SF LED mean I must replace the CPU?
No. SF is rarely a CPU hardware fault on the 315-2 DP. In the majority of field cases the cause is a programming error (missing OB) or an I/O access fault on a peripheral address. Replace the CPU only after you have reproduced the SF with the rack reduced to PS + CPU and no user program running.
Why does SF light together with BF or BUS2F?
BF / BUS2F indicate a PROFIBUS-DP bus fault at the respective interface, usually a slave station failure or wiring break. The CPU raises SF as well because the OB86 is called. Fix the slave (power, addressing, termination, GSD file) and the SF will clear on the next OB86 cycle without any download.