Posted on

S7-1500 Memory Card Offline Programming Process and Analysis of “Empty Card” Issues

I. Correct Process for Offline Programming of S7-1500 Memory Cards in TIA Portal

In TIA Portal, you can directly download a compiled project offline to an SIMATIC memory card for the S7-1500, creating a “program transfer card” for loading programs onto the PLC without an internet connection. The recommended steps are as follows:

Hardware Preparation: Use an official Siemens SD card reader and insert an SIMATIC memory card (e.g., 6ES7 954-8LC04-0AA0) into the computer’s USB port. Ensure the card is not write-protected (slide the side switch to the unlocked position). TIA Portal will automatically recognize the card reader.

Memory Card Identification: In the TIA Portal project tree, expand the “Card Reader/USB Memory” node to view the corresponding memory card drive (e.g., “(G:) SIMATIC MC [Program]”). If it does not appear, refresh it via the menu “Online > Display SIMATIC Card Reader”.

Download Project to Memory Card: Select the CPU station in the project tree (e.g., “PLC_1 [CPU 1516-3 PN/DP]”) and drag it to the memory card drive node. Release the mouse, and TIA Portal will prompt a download dialog. Compile and confirm the write operation as instructed. Alternatively, use the menu option “Online > Write to Memory Card”.

Completion of Writing: If the project compiles and writes successfully, TIA Portal will indicate completion. The memory card now contains the program data files for PLC startup. Safely eject the card from the reader, insert it into the target S7-1500 CPU slot, and power on or reset the CPU to load the program from the card.

Additional Note: The drag-and-drop method generates an S7_JOB.S7S (or .SYS) file and a “SIMATIC.S7S” project folder on the memory card, containing all user program data for the PLC. This allows for offline upgrades without an online PLC connection. If TIA Portal is unavailable, generate the project to a PC folder or USB drive first, then transfer it to the memory card.

6ES7 517-3FP01-0AB0

II. Possible Reasons for Controller Identifying Memory Card as Blank

When an S7-1500 CPU displays “Empty card,” it means no valid user program has been detected on the card. For example, the memory card type is identified as “Empty card,” with 0 used space, as shown below.

An S7-1517F CPU displays the memory card type as “Empty card,” indicating no valid program data has been detected.

Common causes include:

Unsuccessful Project Data Writing: If the offline programming process is not completed correctly (e.g., compilation without “Write to Memory Card” execution, or interruption during download), the card may lack the S7_JOB.S7S file and “SIMATIC.S7S” folder. The CPU will then treat the card as empty. Interruptions (e.g., network/power failures) can result in incomplete project data, preventing CPU recognition.

Memory Card File System or Structure Issues: SIMATIC memory cards for S7-1500 use the FAT32 format with pre-installed hidden system files. Non-official formatting, accidental deletion of hidden files, or file system errors can prevent CPU recognition. For instance, hidden “LOG” and “crdinfo.bin” files are essential for card identification; their deletion or corruption may render the card unrecognizable, causing the CPU to treat it as uninitialized and blank.

Project-CPU Incompatibility: Although not directly causing an “empty card” display, if the card contains a higher-version project unsupported by the CPU firmware or inconsistent project data, the CPU may ignore the card contents. For example, a project version higher than the current TIA Portal engineering version may prevent loading (though the CPU displays an empty card, it actually does not recognize the program). Resolving version mismatches requires firmware upgrades or project regeneration.

Hardware or Operational Factors: A damaged or poorly connected memory card can also cause reading failures. Ensure the card is not write-protected; otherwise, while the CPU can read the program, TIA Portal will reject writes (write protection does not cause a blank card but prevents program updates).

Note: According to Siemens official manuals, an “empty memory card” lacks the user program job file (S7_JOB.S7S) and project data folder (SIMATIC.S7S). When detecting an empty card, the S7-1500 CPU will attempt to copy its internal load memory contents to the card (and clear the internal memory) by default or remain unchanged if automatic copying is prohibited. If the CPU also lacks a program, inserting an empty card will leave it without a user program to run, necessitating normal downloads or offline programming as described.

III. Methods to Confirm Valid Program on Memory Card

To ensure the memory card contains a valid PLC program, verify the following:

Check Memory Card File Structure: Use Windows Explorer to open the memory card drive via the reader and check for the presence of the S7_JOB.S7S file and “SIMATIC.S7S” folder in the root directory. The S7_JOB.S7S file contains job instructions for CPU startup, while the “SIMATIC.S7S” folder holds compiled STEP 7 program block data (OBs, DBs, etc.). These files are essential indicators of successful TIA Portal programming; their absence indicates an unsuccessful write.

TIA Portal Property Check: Right-click the identified memory card drive in the TIA Portal project tree (e.g., “(F:) SIMATIC MC [Program]”) and select “Properties” to open the “Memory Card” dialog. Confirm the card type is “Program,” the file system is FAT32, and the used/available storage capacity matches the project size. For example, a 4MB card may show increased usage after programming. If the card remains blank or capacity is unchanged, the write operation likely failed, requiring a retry.

In TIA Portal, viewing SIMATIC memory card properties reveals the card type as “Program” and the file system as FAT32. If a project has been written, the card’s capacity usage should increase accordingly.

CPU Display and Status: Insert the card into the CPU and power it on. Observe the CPU display and indicator lights. Normally, the CPU should recognize the card as a “Program Card” and enter RUN mode. If it displays “Empty card” or remains in STOP mode, the program did not load successfully. Check the CPU panel’s “Memory Card Information” for project name/version (if available) to confirm CPU recognition.

Verify Operational Effect: Finally, observe the CPU’s RUN mode and controller behavior to indirectly confirm program loading. For example, if the program contains startup OBs or output logic, check the corresponding output states after power-on or use TIA Portal’s online monitoring (if connected) to verify CPU program blocks match the offline project.

Tip: SIMATIC memory card program data is encrypted and cannot be directly identified from file contents. However, file existence and structural integrity are sufficient to confirm successful programming. Always safely eject the memory card after writing to prevent incomplete writes or file corruption.

empty card

IV. Memory Card Recovery and Reprogramming Methods

If the memory card is still recognized as blank after insertion into the CPU, take the following steps to restore functionality:

Format via CPU Display: Switch the CPU to STOP mode and access the “Format Memory Card” function in the CPU’s LCD menu (usually under “Functions”). Confirm execution to clear all user data and rebuild the necessary system file structure. This method requires no additional software and is suitable for quick on-site card clearing. After formatting, the display should indicate card initialization.

Format via TIA Portal: Connect to the target CPU in TIA Portal (or via “Accessible Devices”) and open the “Online & Diagnostics” window. Navigate to “Functions > Format Memory Card,” click “Format,” and confirm. This restores the card to factory-blank status (retaining essential hidden files). After formatting, reprogram the card following the correct offline process.

Manual Cleanup via PC Reader: Insert the card into the reader and connect it to the computer. Open the card drive in Windows Explorer and delete the S7_JOB.S7S file and “SIMATIC.S7S” folder (and any other folders like DataLogs, Recipes, if present). Note: Do not format or delete invisible system hidden files (e.g., “LOG,” “crdinfo.bin”). After manual cleanup, the card becomes blank and can be reprogrammed via TIA Portal.

After any recovery step, reprogram the project data onto the memory card following the correct offline process. Ensure no old project residues remain on the card to prevent confusion with new data. If the card is suspected to be faulty (e.g., physical damage or end-of-life from repeated writes), replace it with a new SIMATIC memory card.

V. Siemens Official Guidelines on Programming Operations and Recognition Rules

Siemens provides detailed official documentation on SIMATIC memory card usage:

TIA Portal Offline Programming Process Guide: Siemens Industrial Support Center’s FAQ (Document ID 48711409) explains how to generate and store project data on S7-1200/1500 memory cards for offline program transfer to the CPU. It covers three methods: using a card reader, USB drive, or local folder, and describes the resulting file structure (including S7_JOB.S7S and SIMATIC.S7S).

Memory Card (Program Card) Usage Rules: The S7-1500 series user manual outlines memory card behavior as load memory (program card). For example, inserting a program card prompts the CPU to replace its internal program with the card’s program at startup and requires the card to remain in the CPU as external load memory. Removing the program card during operation stops the CPU and triggers an error due to the missing program. Regarding empty cards, the manual states that if an empty card is detected and automatic copying is not prohibited, the CPU copies its internal program to the card at power-on, then clears the internal memory. The CPU must then start from the card. These mechanisms govern how the S7-1500 determines if a memory card contains valid programs and takes appropriate actions.