Siemens S5-115U CPU942 EPROM Transfer: Memory Full Fix

David Krause24 min read
PLC HardwareSiemensTroubleshooting
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

The SIMATIC S5-115U central processing unit 6ES5 942-7UB11, fitted with the EPROM memory submodule 6ES5 375-0LA21 and an analog plus six digital I/O cards, intermittently crashes minutes after each restart. With STEP5 v7.17 the program can be uploaded, but the download aborts with a memory full error. The Overall Reset procedure only restores the green RUN LED when the EPROM is removed, and the program is never executed once the submodule is reinstalled. The machine was built in Germany and no offline backup of the program exists, so every step must protect the only remaining copy of the firmware image stored in UV-erasable silicon.

The behavior is reproducible across power cycles and is not caused by transient mains events. The fault pattern - RUN for a few minutes, then STOP, with the same time interval each time - is the classic signature of an S5-115U program memory that is being read with increasing single-bit errors. The CPU 942 does not copy the EPROM into RAM; it executes the EPROM address space in place. When the silicon cell charge has drifted below the sense-amp threshold, a read error halts the cycle and the CPU enters STOP. This article documents the diagnosis, EPROM recovery, and STEP5 v7.17 memory-management procedure for this specific failure mode, with cross-references to official Siemens support material.

Hardware Identification and Memory Architecture

Before any download or reset, confirm the exact hardware variants and the memory model that applies. The order numbers in use determine the available memory submodule options and the diagnostic flow.

Table 1 - Hardware and Memory Specification
Component Order Number Function
CPU 942 (S5-115U family) 6ES5 942-7UB11 Central module, 10 kB internal RAM (approximately 5 k AWL statements), 1 slot for memory submodule, integrated MPI/AS-511 interface
Memory submodule 6ES5 375-0LA21 EPROM 32 kB / 16 k statements, UV-erasable, windowed CERDIP package, factory-fitted light-shielding label
Analog input card 6ES5 460-x (typical) 8 or 16 channel analog input, configured via DX0
Digital I/O cards (x6) 6ES5 4xx-x (typical) 32-channel digital input or output, address areas FW 0 to FW 254
Programming software STEP5 v7.17 PG/PC software for S5-90U, S5-95U, S5-100U, S5-115U, S5-135U, S5-155U families (S5-DOS / S5W for Windows)

The S5-115U memory model differs from the S5-100U and S5-95U models in a single, decisive way. The plug-in memory submodule on the S5-115U is an extension of the address space, not a backup that is copied into the internal RAM at startup. The internal 10 kB of CPU 942 RAM is used by the system program for data blocks (DBs), flags (M, F), timers (T), counters (C), the process image (PII / PIQ), and the cyclic scratch area. The OB, PB, FB, SB, and FX code blocks are executed directly from the EPROM (or RAM submodule, or EEPROM submodule) address window. There is no shadow copy.

Memory model difference between S5 families: On the S5-100U (CPU 100/102/103) and S5-95U, the EPROM contents are copied into internal RAM at power-up if a backup battery is present. The S5-115U family does not perform this copy. A procedure that works on one family silently fails on the other. The CPU 928B used in the S5-135U/155U follows the same in-place-execution model as the S5-115U - the S5-135U CPU 928B Programming Guide documents the same architecture and the same block-by-block download procedures for that family.

Root Cause Analysis

Four failure modes commonly produce the symptoms above. Diagnose in this order, cheapest test first, most invasive last.

1. UV erasure of the EPROM window

The S5-115U rack is open-frame to allow forced-air cooling through the card cage. The same airflow path transmits light. If the EPROM's quartz window is left uncovered, ambient UV - even from a single office fluorescent tube - gradually bleeds the floating-gate charge over months or years. The failure curve is not linear: cells near the edge of the window or under a partially-crumpled light-shielding label lose charge first. The first symptom is occasional single-bit errors during block checksum verification, which the CPU catches and turns into a STOP with the red ST or BAU LED pattern. The diagnostic is visual: lift the light-shielding label covering the EPROM window and inspect for partial erasure, sticker slippage, or stickers that were never applied at all. If the silicon die is visible through the window without a die-imprint pattern (you should see the printer's logo or the Siemens part number etched into the die), the cell array may already be erased.

2. Low or missing backup battery

A weak or missing lithium backup cell in the CPU (or in the memory submodule for RAM/EEPROM types) erases retentive flags, timers, counters, and any DB contents marked as retentive. The CPU 942 uses a single 3.6 V primary lithium cell, typically Siemens 6ES5 971-0AA11 (Tadiran TL-5104, Saft LS-14500, or equivalent). When the battery voltage falls below approximately 3.0 V, the BATF LED on the CPU front lights, and on the next power-down the retentive data is lost. The CPU may enter STOP with a "BATTF" or "RAM parity" stop code on the next restart. Per Siemens SiePortal guidance on S5 CPU keeping stop mode, the first diagnostic step is to "check the battery, it may be low". Replace the battery with the power on to preserve retentive data, then proceed with the verification sequence.

3. PIW/PQW access to non-installed hardware

If the program reads or writes process-image words (PIW / PQW) for an I/O slot that is empty, swapped, or addressed differently from the hardware constants in DX0 / DX2, the cycle can fault when the bus-mastered access times out. S5-115U cards in slots 0 to 7 of the central rack occupy fixed process-image areas; a misconfigured DX0 changes the analog addressing, and a missing or swapped digital card produces a bus error on the first read. The fastest isolation technique is to insert // comments in front of suspect PIW / PQW lines in the program source and re-download. If the CPU stays in RUN with those lines masked, the addressed I/O does not exist or is misconfigured in the hardware constants. Restore the original I/O access once the slot is corrected.

4. Memory fragmentation producing "memory full" errors

STEP5 does not overwrite an existing block with the same name on download. It marks the old block as invalid (the block header's invalid bit is set) and appends the new block to the first free address in the address window. After several upload/download cycles the RAM fills with invalid (orphaned) blocks. A memory full error during download is the symptom. The fix is to compress the PLC memory, which physically removes the invalid blocks and re-packs the valid blocks at the start of the address space.

Pre-Work: Backing Up the EPROM Before Anything Else

With no source backup, every operation risks destroying the only program copy. Before any reset, compress, or download, get a stable read of the EPROM and persist it to disk.

  1. Connect the PG or PC running STEP5 v7.17 to the CPU 942 via the AS-511 (TTY 20 mA current loop) or MPI interface using the appropriate Siemens cable (6ES5 734-1BD20 for AS-511, 6ES7 901-0BF00-0AA0 for MPI).
  2. Select PLC > Upload to PG (German: AG > Laden auf PG). The dialog prompts for a project file. Save it with the machine serial and the date in the file name, e.g. MACHINE_4711_2024-01-15.S5D.
  3. Perform a second upload immediately and diff the two .S5D projects with a hex editor or the STEP5 cross-reference generator. If the two uploads are byte-for-byte identical, the EPROM is read-stable. If they differ, the EPROM has marginal cells and the upload is non-deterministic; the silicon needs replacement.
  4. After upload, export the block list (File > Export > Block List) and the cross-reference (Options > Cross-Reference) to plain text for human review.
Why the upload reflects the EPROM, not the RAM: On S5-115U the CPU executes the EPROM contents directly. The upload from STEP5 therefore reads the program as the CPU sees it, which is the EPROM image. The internal RAM is mostly empty of code blocks on a healthy S5-115U; it is filled with data blocks (DB), the process image, and the system scratch. This is also why the question "how do I transfer the EPROM program to CPU RAM" has no direct STEP5 menu answer for the 115U family: there is no separate RAM copy to populate. The transfer is the upload-download round-trip with a compress step.

CPU Health Verification

Before chasing the EPROM, isolate the CPU itself. With the EPROM removed, the CPU 942 should start, run an empty cycle, and remain in RUN indefinitely. The verification sequence is the official Siemens overall-reset procedure for the S5-115U family.

  1. Power down the PLC by switching off the line filter or rack supply. Wait 30 seconds for the backplane voltages to discharge below 5 V.
  2. Open the CPU card cage and remove the EPROM submodule 6ES5 375-0LA21 from its socket. Place it on a conductive foam mat, window-side up, away from fluorescent light and direct sunlight.
  3. Hold the spring-loaded reset switch (recessed in the CPU front panel, marked RES) down with one hand using an insulated tool such as a ceramic screwdriver.
  4. With the other hand, cycle the RUN/STOP toggle switch three times: STOP → RUN → STOP → RUN → STOP → RUN. Each cycle is one complete toggle motion; the third cycle ends in RUN.
  5. Release the reset switch. The red STOP LED should extinguish and the green RUN LED should illuminate within 2 seconds.
  6. Leave the CPU in RUN with the EPROM removed for at least 10 minutes. Confirm the RUN LED does not blink and the CPU does not restart.

Pass criterion: The green RUN LED stays on indefinitely, the red STOP LED stays off, and the CPU does not restart. If the CPU still faults, the CPU module or the backplane is suspect, not the EPROM. Swap the CPU with a known-good 6ES5 942-7UB11 (any -7UBxx variant is electrically compatible within the S5-115U family); if the replacement also faults, the backplane or power supply is at fault and the EPROM is innocent. Send the suspect CPU to an S5 refurbishment lab for EPROM/flash replacement and board-level repair.

How to Transfer the EPROM Program to CPU RAM on an S5-115U

Direct block-by-block EPROM-to-RAM transfer is not a built-in function of STEP5 for the S5-115U family. The two practical paths are listed below, ordered by operator preference.

Path A - Upload to PG, then download back to PLC

  1. Perform the upload described in the Pre-Work section; persist the .S5D project to PG disk.
  2. Reinstall the EPROM in the CPU socket with the power off; power the PLC back on.
  3. Open the saved project in STEP5 v7.17 and select PLC > Download (German: AG > Laden in AG). STEP5 writes the blocks into the internal RAM area in addition to the EPROM-resident copies.
  4. STEP5 marks the existing EPROM-resident blocks with the same name as invalid and writes the new block to the first free RAM address. To reclaim the address space, run PLC > Compress PLC Memory (next section).

Path B - Read the EPROM with a Siemens PG or third-party EPROM programmer

The classic S5 PG (PG 615, PG 635, PG 685, PG 710, PG 720, PG 730, PG 750, PG 770) carries an EPROM programming socket on its rear or side. Insert the 6ES5 375-0LA21, read it with the PG's EPROM utility, and save the image to floppy as a binary file. The binary image is then downloadable through any S5 AS-511 or MPI port into the target CPU's internal RAM using STEP5. Third-party EPROM programmers can also read the 6ES5 375-0LA21 because it is functionally a 27C256 (256 kbit / 32 kB) UV-erasable EPROM in a 28-pin CERDIP package. Verify the byte order with a known-good dump first; the S5 stores code blocks in little-endian 16-bit words, and the EPROM image is byte-swapped relative to a raw 27C256 read on some programmers.

Siemens technician interpretation: The technician's instruction "transfer EPROM program to CPU RAM" is a colloquial description of the upload-download round-trip plus compress, not a literal in-CPU block copy. The S5-100U family (CPU 100/102/103) does perform an in-CPU EPROM-to-RAM copy at power-up, but limited to 16 kB EPROMs, and the resulting RAM-resident blocks will not run on an S5-115U CPU because the system blocks (OB 100/121/122 for restart, error, etc.) are family-specific. The S5-100U EPROM-to-RAM path is not a cross-family migration path.

Resolving the "Memory Full" Error During Download

STEP5 never overwrites an existing block. It flags the existing block as invalid (header invalid bit) and writes the new block to the first free address. After several upload/download cycles the internal RAM fills with invalid blocks; subsequent downloads fail with a memory-full message even though the program size is small. The fix is the compress command.

  1. In STEP5 v7.17, choose PLC > Compress PLC Memory (German: AG > AG-Speicher verdichten). The keyboard shortcut is Ctrl+Shift+F2 in STEP5 v7.x; older v6.x and v5.x use the menu path only. The keyboard shortcut varies by STEP5 version; the menu path is stable across all versions.
  2. Confirm the prompt when STEP5 asks to perform the compression. STEP5 stops the CPU briefly, removes the invalid blocks, re-packs the valid blocks at the start of the RAM address window, and re-starts the CPU.
  3. Re-attempt the download. It should now succeed with a Download complete message.
Table 2 - CPU 942 Memory Budget After Compression
Memory Size Typical Use
Internal RAM (data + scratch) 10 kB (approximately 5 k AWL statements) DBs, retentive M/F/T/C, process image PII / PIQ, system scratch
EPROM 6ES5 375-0LA21 32 kB (16 k AWL statements) OB, PB, FB, SB, FX code blocks - the program itself
Optional EEPROM 6ES5 375-1LA21 32 kB (16 k AWL statements) Same capacity as the EPROM, electrically erasable, no UV window

For larger programs, switch to a 64 kB (32 k statement) EPROM such as the 6ES5 375-0LC21. Verify that the CPU 942 firmware revision supports the larger submodule; the -7UB11 variant does support 8/16/32/64 kB submodules, while earlier -7UAxx variants are limited to 32 kB. If the program is larger than 64 kB and the application is critical, the path forward is a migration to S7-300 with an S5-to-S7 converter; the CPU 942 cannot address more than 64 kB of code in a single submodule.

Step-by-Step Block Download Procedure

If compression does not resolve the issue, or if the upload still mismatches the running program, perform a block-by-block download as recommended by Siemens SiePortal for S5 PLC error conditions. The block-by-block approach isolates the offending block when there is a logic fault or a corrupted block header.

  1. Power off the PLC for at least 10 minutes to fully discharge the backplane and clear any residual RAM charge. This is longer than the typical 30 seconds because some capacitor-backed circuits on the analog card retain state for several minutes.
  2. Power on. Perform an overall reset (cycle RUN/STOP three times as in the CPU verification section).
  3. Download all DBs first, one DB at a time. After each DB, observe the RUN LED for 5 seconds. Note any DB that causes the CPU to drop to STOP; that DB is the leading candidate for the fault.
  4. Download PB, FB, and OB blocks one at a time. Pause 3 seconds between blocks and observe the RUN LED. If the CPU drops out of RUN after a specific block, that block is the fault origin. The OB1 (cyclic main) and OB21/OB22 (restart) blocks are the most common culprits because they are executed at every cycle and at every restart.
  5. Do not download all blocks at once during a recovery operation. A cascading fault across multiple blocks makes root-cause isolation impossible.
  6. Once all blocks are downloaded and the CPU is in RUN, perform a final compress to clean up the address space.

EPROM UV-Damage Verification and Recovery

Once the program is safely backed up to the PG, verify the EPROM itself. Read it in the PG's EPROM socket (or in a third-party 27C256-compatible programmer) and compare against the saved image byte-for-byte. Any mismatch confirms partial erasure; a fully erased EPROM reads as 0xFF in every byte.

Recovery options for an erased or partially erased EPROM

  • Re-blow a new EPROM: Use a Siemens PG EPROM utility or a third-party programmer (EPROM type 27C256, access time 150 ns or faster, in the 6ES5 375-0LA21 pinout) to program a fresh 6ES5 375-0LA21 or a compatible blank 27C256. Apply a fresh light-shielding sticker over the new EPROM's window before installation. Siemens ships new EPROMs with the sticker already applied; if the sticker is missing, replace it with a 10 mm x 10 mm piece of opaque electrical tape.
  • Migrate to EEPROM (6ES5 375-1LA21): Electrically erasable, no UV window, no erasure risk. Verify the CPU firmware revision supports EEPROM submodules of that size; the CPU 942 -7UB11 does. The EEPROM is pin-compatible with the EPROM in the CPU 942 socket and uses the same STEP5 download path.
  • Apply a UV-opaque cover: For temporary operation while a replacement is sourced, cover the EPROM window with electrical tape and reduce ambient fluorescent light exposure. The cover is a stopgap; the silicon is still losing charge and will eventually fail again.
Light-shielding tag: Siemens ships new EPROMs with a small light-opaque label already applied over the window. The label is a black foil with a pressure-sensitive adhesive and a pull tab. If the label is missing, damaged, was removed for testing, or was applied off-center, replace it before installation. This is the single most common cause of intermittent S5-115U program corruption in field-deployed machines. The light-shielding label is orderable as a spare part from Siemens spare-parts services; field replacements with opaque electrical tape are acceptable.

Battery Replacement Procedure

The CPU 942 uses a single 3.6 V primary lithium cell, located in a holder on the CPU front panel. The cell is hot-swappable: replacing it with the PLC powered on preserves the retentive data in internal RAM.

  1. Verify the BATF LED state on the CPU front. If lit, the battery is below the warning threshold.
  2. Open the battery compartment on the CPU front. The cell is a single AA-sized lithium thionyl chloride cell (Siemens 6ES5 971-0AA11, Tadiran TL-5104, or Saft LS-14500). Observe the polarity markings on the holder; the positive terminal is typically marked + on the right side of the holder as viewed from the front.
  3. Remove the old cell and insert the new cell with the polarity matching the holder marking. The BATF LED should extinguish within 30 seconds if the new cell voltage is above 3.4 V.
  4. Mark the install date on the new cell with a permanent marker. Replace every 3-5 years as preventive maintenance.
Power-on requirement: Replacing the battery with the PLC powered off erases all retentive data in internal RAM. The retentive area includes flags, timers, counters, and any DB marked as retentive in the DB header. For a machine in production, replace the battery with the power on to preserve the running state. If the power must be off, back up the DB contents to the PG first via PLC > Upload to PG with a DB-only filter, then restore the DBs after the battery swap.

PIW/PQW Diagnostic Procedure

To isolate a process-image access fault, perform a targeted PIW/PQW search in the STEP5 source and mask the suspect lines.

  1. In STEP5 v7.17, open the saved .S5D project.
  2. Use Options > Cross-Reference (or the keyboard shortcut Ctrl+Alt+F7) to generate a cross-reference. Filter on PIW and PQW to list every process-image access in the program.
  3. For each PIW/PQW address, identify the corresponding I/O card slot. The address-to-slot mapping is in DX0 (digital) and DX2 (analog). The S5-115U default mapping places slot 1 at PIW 0, slot 2 at PIW 4, and so on for digital cards, and the analog card at PQW 256 for the first analog output channel.
  4. Open the block that contains the suspect PIW/PQW. Insert // at the start of the line to comment it out. Save the block.
  5. Download the modified block to the CPU. If the CPU stays in RUN, the masked PIW/PQW was the fault origin. If the CPU still drops to STOP, the fault is in another block or in the hardware constants.
  6. Restore the original line, address the missing I/O correctly (re-seat the card, replace the card, or update DX0/DX2), and re-download.

Cable and Communication Settings

The CPU 942 has two communication interfaces: a 20 mA TTY current-loop interface for the AS-511 protocol (used by the classic S5 PGs and by STEP5 v7.17 with the 6ES5 734-1BD20 cable) and an MPI interface (used by STEP7 and by STEP5 v7.x with the 6ES7 901-0BF00-0AA0 cable, depending on firmware revision). The COM port settings on the PG side are 9600 baud, even parity, 8 data bits for AS-511, or the MPI defaults of 187.5 kbaud for MPI.

Table 3 - Communication Settings for CPU 942
Interface Cable Baud Parity Data Bits Notes
AS-511 (TTY) 6ES5 734-1BD20 9600 Even 8 Used by all S5 PGs and by STEP5 via COM port
MPI 6ES7 901-0BF00-0AA0 187.5 k n/a n/a Used by STEP7 and by STEP5 v7.x with MPI option

For a serial COM port on a modern PC without a native RS-232 or TTY port, use a USB-to-TTY adapter with the FTDI FT-X series chip set. Configure the COM port number in STEP5 under Options > Set PG/PC Interface to match the COM port assigned by the adapter driver.

Diagnostic Decision Matrix

Table 4 - Symptom to Cause to First Action
Symptom Likely Cause First Action
RUN LED green for minutes, then STOP UV-erased EPROM, intermittent read errors Inspect EPROM window; re-read with PG or programmer
BATF LED lit, STOP persistent Low or missing backup battery Replace battery with power on
RUN green, cycle faults on specific PIW/PQW I/O addressed but hardware missing Cross-reference PIW/PQW; mask and retest
"Memory full" on download Invalid blocks from prior upload/download cycles PLC > Compress PLC Memory (Ctrl+Shift+F2)
STEP5 upload returns different blocks each time Severely erased EPROM, marginal cells Replace EPROM, restore from PG backup
Overall reset without EPROM: STOP persists CPU or backplane fault Swap CPU with known-good unit; check power supply
Overall reset without EPROM: RUN stays green CPU healthy, EPROM suspect Proceed with EPROM diagnostic and replacement
CPU enters STOP on specific OB download Logic fault in OB, restart code path broken Compare OB source to backup; fix or restore
CPU enters STOP after several hours of stable run Marginal EPROM, thermal cell drift Re-read EPROM; replace if any cell drifts

Preventive Measures for Operating S5-115U Systems

  • Replace the lithium backup battery every 3-5 years; mark the install date on the cell with a permanent marker, and log the date in the maintenance record.
  • Cover all EPROM windows with the factory light-shielding label; replace labels that curl, peel, slip, or were removed for diagnostics. Use electrical tape as a field replacement if the original label is unavailable.
  • Maintain at least one offline backup of the project, exported as a STEP5 .S5D file plus a hex dump of the EPROM image. Store the backup on at least two media (PG disk plus network share, or PG disk plus USB stick).
  • Run PLC > Compress PLC Memory before every planned download session on a CPU with a long edit history. The compress operation is non-destructive to running programs but does cause a brief STOP-RUN transition.
  • Add an Operator Panel Reorganize prompt only if the deployment site demands it; a panel-driven reorganization during a running process can drop the CPU into STOP if the panel is connected to the same interface and the reorganization conflicts with the cyclic OB1.
  • Document the block list and the cross-reference in a printed machine manual. S5 documentation is increasingly rare; a paper copy is the only insurance against disappearing support resources.

Verification Procedure After Repair

  1. With the EPROM (or replacement EPROM/EEPROM) installed, perform a full overall reset (cycle RUN/STOP three times as in the CPU verification section).
  2. Download the saved .S5D project from PG to PLC. Observe the compress warning if it appears; accept and continue. The download should complete in under 60 seconds for a 32 kB EPROM.
  3. Power cycle the PLC. The CPU should come up to RUN within 5 seconds and stay there.
  4. Force a few I/O points via STEP5 Force dialog (or via the operator panel if one is present); verify the force value in the process image and on the field wiring with a multimeter or scope.
  5. Leave the machine in automatic for at least 30 minutes; older UV damage sometimes only manifests as cycle-time errors after a long thermal run. Monitor the cycle time with PLC > Information > Cycle Time; a creeping cycle time indicates a marginal EPROM cell.
  6. Document the final block list and the date of the new EPROM/EEPROM installation in the machine manual.

Inline Diagnostic Flowchart

CPU 942 in STOP Power off, remove EPROM Overall reset (3x RUN/STOP) RUN stays green without EPROM? CPU / backplane fault suspected CPU OK, EPROM is the cause Inspect EPROM window label Label intact: re-read with PG UV erased: replace EPROM

Memory Architecture Diagram (S5-115U CPU 942)

CPU 942 6ES5 942-7UB11 Internal RAM 10 kB (DB, M, T, C, PII/PIQ) EPROM Submodule 6ES5 375-0LA21 EPROM 32 kB (OB, PB, FB, SB, FX) S5-115U Backplane Slots 0..7 (central) 6x Digital I/O + Analog PIW 0..254, PQW 256.. (process image mapping) direct exec I/O bus Lithium battery (3.6 V)

Related Siemens Documentation

For deeper reference on the S5 family stop-mode behavior, block-by-block recovery procedure, and the CPU 928B architecture used in the S5-135U/155U, the following official Siemens resources apply directly.

  • Siemens SiePortal: S5 CPU keeping stop mode - first-action guidance for battery, panel, and reorganization causes of persistent STOP.
  • Siemens SiePortal: S5 PLC error - block-by-block download procedure and 10-minute power-off recommendation.
  • Siemens Industry Online Support: S5-135U CPU 928B Programming Guide (PDF) - in-place-execution memory model and restart/error block structure shared with the S5-115U family.
  • Siemens Industry Online Support portal at support.industry.siemens.com for STEP5 v7.17 manuals, CPU 942 datasheets, and spare-parts ordering for the 6ES5 971-0AA11 lithium cell.

Frequently Asked Questions

How do I transfer the EPROM program to CPU RAM on an S5-115U CPU 942?

There is no in-CPU EPROM-to-RAM copy on the S5-115U family. The program is executed in place from the EPROM. Upload the running program with STEP5 (PLC > Upload to PG), save it as a .S5D project, then download it back; the new blocks are placed in internal RAM, with the EPROM-resident blocks flagged invalid. Run PLC > Compress PLC Memory (Ctrl+Shift+F2 in STEP5 v7.17) afterward to reclaim the address space.

Why can STEP5 not upload the program from the EPROM?

On the S5-115U, STEP5 uploads the program the CPU is currently executing, which is read directly from the EPROM submodule. If the upload returns different blocks across attempts, the EPROM is partially UV-erased. To read the EPROM at the silicon level (a stable image regardless of CPU state), use a Siemens PG with the EPROM programming socket or a third-party EPROM programmer compatible with the 27C256 pinout. The CPU itself cannot be coerced to produce a stable read of a marginal EPROM.

Why does the download fail with "memory full" after an upload/download cycle?

STEP5 never overwrites a block with the same name. It marks the existing block as invalid (the block header's invalid bit is set) and writes the new block to the first free RAM address. After several cycles the internal 10 kB of CPU 942 RAM fills with invalid (orphaned) blocks. Choose PLC > Compress PLC Memory (Ctrl+Shift+F2 in STEP5 v7.17) to physically remove the invalid blocks, then re-download.

What battery type does the CPU 942 use, and when must it be replaced?

The CPU 942 uses a single 3.6 V lithium thionyl chloride primary cell (Siemens 6ES5 971-0AA11, Tadiran TL-5104, or Saft LS-14500). Replace every 3-5 years with the PLC powered on, or with the DBs backed up to the PG first. A low battery lights the BATF LED and can drop the CPU into STOP on the next power cycle when the retentive-data check fails.

Is the EPROM 6ES5 375-0LA21 compatible with a 27C256 EPROM programmer?

Yes. The 6ES5 375-0LA21 is functionally a 27C256 (256 kbit, 32 kB) UV-erasable EPROM in a 28-pin CERDIP with a Siemens-branded light-shielding label. Any programmer that supports 27C256 at 12.5 V Vpp can read and write it. Always apply a fresh light-shielding label over the window after programming, and verify the byte order on the programmer matches the S5 little-endian 16-bit word layout.

Can the program from an S5-100U EPROM be loaded into an S5-115U CPU 942?

No. The S5-100U and S5-115U families have family-specific system blocks (OB 100, OB 121, OB 122 for restart and error handling) and different process-image mappings. A program lifted from an S5-100U EPROM will not run on an S5-115U CPU even if the user blocks (PB, FB) appear to load correctly. The migration path is a full re-write of the system blocks for the target family or a translator utility.

How do I know if the EPROM is UV-erased vs the CPU is failing?

Remove the EPROM and run an overall reset. If the CPU 942 comes up to RUN and stays in RUN with the EPROM removed, the CPU is healthy and the EPROM is the fault. If the CPU still drops to STOP with no EPROM, the CPU itself is failing. The BATF LED, the error-code pattern on the red LED, and the cycle-time reading in STEP5 (PLC > Information > Cycle Time) provide additional confirmation.

Back to blog