1. Problem Description
A Siemens SIMATIC S7-300 CPU (e.g. CPU 312, 314, 315-2 DP, 317-2, 318-2) is powered up in a switchboard or machine cabinet. The operator observes the following LED pattern on the front of the module:
- RUN LED: ON (steady green)
- STOP LED: BLINKING (typically 1 Hz, one flash per second)
- SF (group fault): typically ON or OFF depending on the underlying cause
- BF / BF1 / BF2 / BF3: OFF unless the PROFIBUS / PROFINET interface is the cause
- DC5V: ON (internal 5 V supply present)
- FRCE: OFF (no forced I/O active)
No STEP 7 / TIA Portal project has yet been downloaded to the CPU. The MMC (Micro Memory Card) may be empty, missing, write-protected, or unreadable. Communication with the programming device is either not possible or only intermittently possible.
This document is written for automation engineers and commissioning technicians who need a deterministic recovery procedure for an S7-300 CPU that cannot leave STOP because it has no valid user program.
2. S7-300 LED Status Indicator Reference
The S7-300 CPU faceplate contains a fixed set of status LEDs. The meaning of each LED is documented in the Siemens S7-300 CPU 31xC and CPU 31x, Equipment Manual. The most important combinations for the case at hand are listed below.
| RUN | STOP | SF | State | Meaning |
|---|---|---|---|---|
| ON | OFF | OFF | RUN | User program executing |
| OFF | ON | OFF | STOP | Normal STOP, no error |
| OFF | ON | ON | STOP with fault | CPU in STOP due to a class A diagnostic or programming error |
| Flashing 0.5 Hz | OFF | OFF | Startup | CPU is in STARTUP (OB100 / OB101 / OB102) |
| Flashing 0.5 Hz | OFF | ON | Startup with fault | Startup aborted by a diagnostic event |
| Flashing 2 Hz | OFF | OFF | HOLD | Test/single-step breakpoint active |
| ON | Flashing 0.5 Hz | OFF | Memory reset requested | User has initiated MRES; confirm with second MRES |
| ON | Flashing 1 Hz | varies | Self-test / diagnostic | CPU has run internal test, requires operator action |
| OFF | Flashing 2 Hz | OFF | Hardware fault | CPU detected internal hardware error during self-test |
| OFF | Flashing rapidly | OFF | Firmware update | Do not power cycle; update in progress |
| OFF | OFF | OFF | No power or defect | Check PS 305/307 output, backplane, mode selector |
3. STOP LED Blink Rate Meanings
The blink rate of the STOP LED is the single most important clue. The CPU drives the LED with different periods depending on the internal state. Use the table below to triage the panel.
| Blink period | Frequency | Most likely meaning | Recommended action |
|---|---|---|---|
| Slow (~2 s period) | 0.5 Hz | Memory reset (MRES) requested and waiting for confirmation | Press MRES a second time within 3 s |
| Medium (~1 s period) | 1 Hz | CPU is performing self-test, holding for operator, or has an unrecoverable load error | Read diagnostic buffer, verify MMC, verify MMC write-protect |
| Fast (~0.3 s period) | 2 Hz | Hardware fault detected during power-on self-test | Power cycle; replace CPU if persistent |
| Very fast (irregular) | n/a | Firmware update in progress | Do not interrupt power supply |
The reported symptom of a flash "every second" matches the 1 Hz category. The CPU is signalling an abnormal operating condition that is not a normal MRES request and not a clean STOP. The two underlying causes that dominate in a no-program scenario are:
- The MMC is missing, empty, or contains an unreadable image.
- The CPU has detected a hardware fault during self-test.
4. Root Cause Analysis: Why the CPU Stops With No Project
S7-300 CPUs with firmware V2.0 or higher (the entire CPU 31x and 31xC range) store the entire user program on a Micro Memory Card (MMC), not in internal battery-backed RAM. There is no longer an internal EEPROM. According to the Siemens S7-300 Module Data Manual:
- If no MMC is inserted, the CPU powers up with no project, runs the OB100 (if it exists in a default image) but cannot enter RUN, and may blink the STOP LED at 1 Hz while waiting for an operator decision.
- If an MMC is present but the project on it is corrupt or only partially loaded, the CPU refuses to enter RUN and reports an OB-not-loaded or MMC-error entry in the diagnostic buffer.
- If the MMC write-protect switch is in the protected position but the CPU needs to write internal data, the load process is aborted and the CPU halts.
The complete chain of reasoning is shown below.
When the field report states that the STOP LED blinks approximately every second (1 Hz) and there is no program on the CPU, the dominant root causes are, in priority order:
- Missing, empty, or unreadable MMC. This is the most common root cause for new cabinets that have never been commissioned.
- MMC with a different CPU type image. The MMC was prepared for a different S7-300 CPU order number (e.g. for a CPU 315-2 DP inserted into a CPU 314). The CPU refuses to start the foreign image.
- MRES confirmation pending. A previous operator has flipped the mode switch to MRES but did not confirm. The CPU is waiting for the second MRES.
- Hardware fault on the CPU module itself. Less common, but indicated by SF LED ON plus STOP blink 1 Hz or 2 Hz.
5. Reading the Diagnostic Buffer
The diagnostic buffer is the first place to look once an MPI / PROFIBUS / Ethernet connection to the CPU is established. It contains the last 100 diagnostic events in chronological order. Open it in STEP 7 with PLC > Module Information > Diagnostic Buffer or in TIA Portal with Online > Online & Diagnostics > Diagnostics buffer. The Siemens STEP 7 Online Help lists the full set of error IDs.
| Event ID (hex) | Meaning | Typical remedy |
|---|---|---|
| 0x4542 | STOP due to memory reset performed by the operator | Proceed with project download |
| 0x4949 | STOP due to internal CPU error (hardware fault class A) | Replace CPU |
| 0x4A22 | Error accessing the MMC (card not inserted, not formatted, or read error) | Insert / replace MMC, format from STEP 7 |
| 0x4A24 | MMC write-protected | Move write-protect slide to OFF |
| 0x4A82 | MMC content does not match CPU type | Re-download the project for the correct order number |
| 0x4300 | Backup / restore active | Wait for completion |
| 0x4301 | Memory reset completed | Proceed with project download |
| 0x4A02 | Firmware update active | Wait; do not power cycle |
6. Memory Reset (MRES) Procedure
Performing a memory reset on an S7-300 CPU is the cleanest way to recover from an unknown internal state. The exact sequence, per the Siemens CPU 31x / 31xC Equipment Manual, is:
- Turn the mode selector to STOP. The STOP LED must be steady ON (not blinking).
- Turn the mode selector to MRES and hold it for at least 3 seconds. The STOP LED transitions from ON to a slow blink (0.5 Hz) and then back to steady ON.
- Within the next 3 seconds, turn the mode selector to MRES again for a brief moment. The CPU now performs the memory reset. The STOP LED remains ON throughout.
- Release the mode selector. The CPU is now in a clean STOP state. The diagnostic buffer will record the event "Memory reset performed" (0x4542 / 0x4301).
If the second MRES is not applied within the 3-second window, the CPU aborts the operation and returns to the previous state. Repeat the sequence if necessary. After a successful memory reset, the SF LED must be OFF and the diagnostic buffer must contain a fresh "Memory reset performed" entry.
7. MMC Card Validation and Replacement
The MMC is the only persistent storage of the S7-300 user program from firmware V2.0 onwards. The Siemens FAQ on SIMATIC S7-300/400 Micro Memory Card lists the approved card types and the maximum usable sizes per CPU order number.
| CPU order number | Firmware | Max MMC size (load memory) |
|---|---|---|
| 6ES7312-1AE14-0AB0 (CPU 312) | V3.3 | 8 MB |
| 6ES7313-5BG04-0AB0 (CPU 313C-2 DP) | V3.3 | 8 MB |
| 6ES7314-1AG14-0AB0 (CPU 314) | V3.3 | 8 MB |
| 6ES7315-2AH14-0AB0 (CPU 315-2 DP) | V3.3 | 8 MB |
| 6ES7315-2EH14-0AB0 (CPU 315-2 PN/DP) | V3.3 | 8 MB |
| 6ES7317-2AK14-0AB0 (CPU 317-2 DP) | V3.3 | 8 MB (16 MB possible via SIMATIC MMC 16 MB) |
| 6ES7318-3EL01-0AB0 (CPU 319-3 PN/DP) | V3.2 | 8 MB (16 MB possible via SIMATIC MMC 16 MB) |
Validation procedure on the panel, with the CPU powered:
- Open the cover flap above the MMC slot. The slot is a 2-row push-push connector.
- Press the card lightly to release it. The card should slide out smoothly.
- Inspect the gold pads for dirt, oxidation, or damage.
- Confirm the write-protect switch is in the unlocked position (slide toward the contacts).
- Re-insert the card, push gently until the ejector clicks. The CPU should re-evaluate the card and the STOP LED should change behavior within 1 to 2 seconds.
If the card is suspect, replace it with a known-good Siemens SIMATIC MMC of the correct size. Siemens warns that third-party SD-to-MMC adapters in the form factor of the original 7-pin MMC are not supported and may produce a 0x4A22 event in the diagnostic buffer.
8. STEP 7 / TIA Portal Access After STOP
After a successful memory reset and with a valid MMC inserted, the next step is to load the user program. The procedures are slightly different in the two engineering tools.
8.1 STEP 7 V5.x
- Open the SIMATIC Manager and the project for the cabinet.
- Select the S7-300 station in the component view.
- Open the online interface:
PLC > Accessible NodesorPLC > Download. - Confirm the PG/PC interface. The default for a fresh cabinet is the MPI interface at 187.5 kbit/s. The CPU default MPI address is 2.
- Use
PLC > Module Informationto confirm the order number and firmware version before downloading. - Right-click the Blocks folder and select
Download to Target System. - After successful download, switch the mode selector to RUN. The CPU performs STARTUP and then transitions to RUN; STOP LED OFF, RUN LED ON.
8.2 TIA Portal (V15.1 and later)
- Open the TIA Portal project. In the project tree, expand the S7-300 station and right-click the CPU.
- Select
Download to device > Hardware configurationon the first download. The portal will scan the subnet for online devices. - Select the detected CPU by order number and confirm.
- Perform a search and download of the software (blocks). Use
Download to device > Software (only)for subsequent updates. - Once download completes, the portal prompts to start the CPU. Confirm to switch the mode selector virtually or physically to RUN.
9. Hardware Fault Scenarios
If the STOP LED continues to blink at 1 Hz or escalates to 2 Hz even after a valid MRES and a verified MMC, the cause is a hardware fault on the CPU module itself. Common symptoms and tests are listed in the table below.
| Symptom | Probable fault | Field test |
|---|---|---|
| STOP LED 2 Hz, SF ON, no PG access | Internal CPU failure (ASIC, flash, RAM) | Replace CPU; verify on a known-good backplane |
| STOP LED 1 Hz, SF ON, PG access works but download fails with 0x4A22 | MMC slot or MMC controller failure | Replace CPU; MMC slot is not a service part |
| DC5V OFF, STOP and RUN both OFF | Backplane power supply failure | Check PS 307 / PS 305 output voltage; measure 24 V DC input |
| STOP LED blinks immediately after power-up, before the mode selector is touched | Mode selector stuck in MRES | Inspect the key switch, return it to STOP |
| STOP LED blinks, SF ON, BF ON, PROFIBUS termination issue | PROFIBUS segment fault propagated to CPU | Disconnect PROFIBUS connectors and re-test |
The Siemens S7-300 Module Diagnostic Manual contains the full list of LED / SF combinations and the corresponding replacement strategy.
10. Power Supply and Battery Considerations
For older S7-300 CPUs without MMC (CPU 312 IFM, 313, 314 IFM, pre-2002 variants) the user program is held in battery-backed RAM. A depleted battery leaves the CPU in STOP at power-up with a STOP-LED blink. Per the Siemens CPU 31x Equipment Manual the buffer battery is type 1 / 2 AA lithium, 3.6 V, with a typical life of 2 years.
For modern MMC-based CPUs, the battery is only relevant for the hardware clock. The user program and the diagnostic buffer are stored on the MMC. A power supply fault on the rack can therefore corrupt the MMC image if the power drops while the CPU is writing to it. Always verify the integrity of the power supply before suspecting the MMC.
Power supply sanity check on the panel:
- Measure the 24 V DC input to the PS 307 / PS 305. Tolerable range is 19.2 V to 28.8 V.
- Measure the 24 V DC output of the PS module. It must be inside the 22.8 V to 25.2 V window for stable CPU operation.
- Check the PS module's DC OK LED. It must be ON.
- Verify that the backplane connector is fully engaged and that the CPU is locked into the rack with both screws.
11. Verification and Commissioning
After applying the recovery sequence (MRES, MMC verification, project download), perform the following checks in order.
- Confirm the STOP LED is OFF and the RUN LED is ON. No other LED should be flashing.
- Open STEP 7 or TIA Portal online and verify the CPU order number and firmware version match the documentation.
- Check the diagnostic buffer: the last event should be a normal "Restart" event (0x4300 / 0x4940 series) and not a fault entry.
- Force a known process value through the watch table and verify the corresponding output responds.
- Cycle power and confirm the CPU returns to RUN without operator intervention. This proves the project was written correctly to the MMC and the startup OB executed.
- Update the cabinet documentation with the CPU order number, firmware version, MMC order number, and the date of the recovery procedure.
12. Troubleshooting Matrix
| Observed | First action | If unresolved | Escalation |
|---|---|---|---|
| RUN ON, STOP blinks 1 Hz, no program | Confirm MMC inserted and unlocked | Perform MRES | Replace MMC; replace CPU |
| RUN ON, STOP blinks 0.5 Hz | Press MRES a second time within 3 s | Cycle mode selector to STOP, then retry MRES | Replace CPU if MRES does not confirm |
| RUN ON, STOP blinks 2 Hz | Cycle power | Try known-good backplane with same CPU | Replace CPU |
| RUN OFF, STOP ON, SF ON | Read diagnostic buffer online | Correct the fault per event ID | Replace CPU if hardware fault |
| RUN OFF, STOP OFF, no PG | Check PS 307 / 305 output | Check backplane and rack screws | Replace PS, then CPU |
| All LEDs off | Verify 24 V DC input to PS | Replace PS | Replace backplane |
13. FAQ
What does a blinking STOP LED with RUN LED on mean on a Siemens S7-300 CPU with no program?
The CPU is in an abnormal operating state, most commonly signalling that the MMC is missing, empty, or unreadable, or that the CPU is requesting an operator action such as a memory reset. Read the diagnostic buffer to confirm; the most frequent event IDs are 0x4A22 (MMC access error), 0x4A24 (MMC write-protected) or 0x4542 (memory reset requested). A blink period of about 1 second is the operator-attention state; a period of 0.5 seconds is the MRES confirmation state; a period of 0.3 seconds is a hardware fault.
How do I perform a memory reset (MRES) on an S7-300 CPU?
Turn the mode selector to STOP, hold it in MRES for at least 3 seconds until the STOP LED blinks slowly, then turn it to MRES a second time within 3 seconds and release. The STOP LED must remain ON, and the diagnostic buffer must record "Memory reset performed" (event 0x4542). Repeat the sequence if the second MRES is not registered within the 3-second window.
Can an S7-300 CPU run without an MMC card?
No, on CPU 31x and 31xC with firmware V2.0 or higher the user program, configuration, and diagnostic buffer are stored exclusively on the MMC. Without an MMC the CPU cannot enter RUN, even after a memory reset. Insert a Siemens SIMATIC MMC of the correct size (typically 2 MB to 8 MB, see the Function Manual for the specific order number) and re-try.
Why does the STOP LED keep blinking after a memory reset?
Either the MMC is invalid (missing, not formatted, write-protected, or for a different CPU order number) or the CPU has an internal hardware fault. Replace the MMC with a known-good card and confirm the write-protect slide is OFF. If the STOP LED continues to blink at 1 Hz or escalates to 2 Hz, replace the CPU module.
Which event IDs in the diagnostic buffer indicate an MMC problem on the S7-300?
0x4A22 means the MMC is not accessible, not inserted, or not formatted. 0x4A24 means the MMC is write-protected. 0x4A82 means the MMC image is for a different CPU order number. The complete set of event IDs is documented in the STEP 7 / TIA Portal online help and in the S7-300 CPU 31x / 31xC Equipment Manual.