LOGO! 6ED1052-1MD08-0BA1 Flash Endurance: Cycles and SD Card

David Krause16 min read
PLC HardwareSiemensTechnical Reference
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

LOGO! 6ED1052-1MD08-0BA1 Flash Memory: Endurance Limits and SD Card Boot Behavior

The Siemens LOGO! 6ED1052-1MD08-0BA1 is a LOGO! 8 generation base module with a micro SD slot, integrated Ethernet, eight 24 V DC digital inputs, and four relay outputs rated 5 A each. Engineers who develop with the LOGO! or use it in classroom and lab settings often ask two related questions: how many program/erase cycles can the internal flash survive, and can the user program be executed directly from the SD card to spare the on-board flash. The short answers are unambiguous:

  • Siemens does not publish an endurance specification for the LOGO! 8 internal program flash. The number is not in the system manual, the data sheet, or the function descriptions.
  • No LOGO! 8 generation executes its user program from the SD card. The micro SD slot is a backup and transfer medium only; on every power-on the LOGO! copies the project from the card into the internal program memory and runs it from there.

This reference consolidates what is documented, what is not, and the engineering practices that extend service life when the controller is reprogrammed many times per day. It is written for automation engineers, instructors, and lab technicians who need a defensible answer to give a manager, a student, or a Siemens support contact.

Document scope: References to the LOGO! system manual and product family apply to the LOGO! 8 platform (FS:01 and later), including 6ED1052-1MD08-0BA1. The micro SD handling logic has not changed across the LOGO! 8 hardware revisions and is consistent with the descriptions in the LOGO! system manual.

1. Module Identification and Storage Architecture

The 6ED1052-1MD08-0BA1 belongs to the LOGO! 8 base module family, order number prefix 6ED1052. It is the variant with:

Parameter Value
Power supply 24 V DC
Display Built-in 6-line LCD + cursor keys
Digital inputs 8 (24 V DC), of which DI7/DI8 usable as analog 0-10 V
Digital outputs 4 relay, 5 A each, aggregate 10 A resistive
Analog inputs 4 (DI7, DI8 shared; AI1, AI2 dedicated on variants that have them)
Ethernet 1 x RJ45 10/100 Mbit/s
Storage Internal program flash, internal RAM, micro SD slot
Program blocks 400 function blocks maximum (LOGO! 8.2 and later, expandable to 4,000 block memory area depending on FW)
Retentive markers Up to 64 bytes (parameterized)

The three physical storage tiers behave very differently:

  1. Internal program flash — non-volatile; holds the compiled user program, parameter set, and a power-down snapshot of retentive data. Bounded endurance (number of program/erase cycles not published).
  2. Internal SRAM — volatile; holds the live process image, current timer/counter values, and the working copy of retentive markers. Backed up by a super-capacitor so it survives short power loss.
  3. Micro SD card — removable; holds a single .lsc/.bin project backup and optional log files. Not used as a run-time code store.
Important: The micro SD card is not boot media in the LOGO!. The LOGO! 8 always boots from internal flash; if an SD card is present at power-up, its content is treated as a backup and only loaded into the internal flash if the card's project is newer than the one in the module (or if the internal flash is empty / a card boot is explicitly requested via LOGO!Soft Comfort or the menu).

2. Flash Memory Endurance Fundamentals (Context for the LOGO!)

Siemens does not publish a write-cycle number for the LOGO! 8 program flash, but the device uses standard NOR or NAND flash on an industrial-grade MCU. The endurance figures that appear on similar industrial embedded controllers establish a defensible expectation:

Embedded flash class Typical program/erase cycles per cell Typical example
Consumer MLC/TLC NAND 1,000 - 10,000 USB sticks, consumer SSDs
Industrial SLC NAND 50,000 - 100,000 Industrial SD cards, eMMC
NOR flash (on-chip MCU) 10,000 - 100,000 STM32, NXP Kinetis internal flash
EEPROM emulation on flash 1,000 - 10,000 effective (wear-leveled) Parameter storage on PLC MCUs
Siemens LOGO! 8 internal program flash Not published Contact Siemens Support for the in-spec figure

Two physical effects dominate:

  • Program/erase wear — each block of flash can only be rewritten a finite number of times before the floating gate oxide traps enough charge to fail. This is a hard, per-cell failure, not gradual.
  • Data retention decay — even unused flash loses charge over years. Retention is typically specified at 10 years for industrial parts but degrades with cycling.

The LOGO! 8 firmware distributes writes across the program flash area using internal wear-leveling, which is why the field history shows no widespread "flash worn out" failures on deployed units. However, wear-leveling only helps when the firmware itself manages it. If the program is rewritten in place without remapping, the same physical blocks take every write.

Engineer caveat: Do not assume a published "100,000 cycles" figure from a generic MCU data sheet applies to the LOGO!. The actual figure depends on the specific flash part used in the module, the block size, the wear-leveling policy inside the firmware, and the on-board temperature. Use the values above as order-of-magnitude context only.

3. What Triggers a Write to the LOGO! Internal Flash

For a LOGO! 6ED1052-1MD08-0BA1, every byte that ends up in the program flash is the result of one of four events. Understanding these is the only way to estimate endurance in a development scenario.

Trigger What is written Typical size Frequency in a lab
New program / program change downloaded from LOGO!Soft Comfort Compiled program, parameter set, FBD/LAD blocks Tens to hundreds of KB Once per compile / download
Parameter change from the LOGO! display or Web server Modified parameter value blocks Bytes to a few KB Whenever an operator edits a parameter
Power down (capacitor-backed SRAM drained) Snapshot of retentive markers Bytes to ~64 B Once per power cycle
Firmware update Internal bootloader area only, not program flash Several hundred KB Rare

During normal operation (steady state, no parameter changes, no power loss), the LOGO! 8 does not write to program flash. The Web server, network, display updates, and live process image all run out of SRAM. This is the single most important point: a deployed LOGO! that never has its program changed can sit in the field for decades with effectively zero flash wear from program area cycling.

4. Why Programs Cannot Run from the SD Card

The most common engineering question, restated for clarity: can the LOGO! 6ED1052-1MD08-0BA1 read the .lsc project from the micro SD card, run it as bytecode, and avoid ever touching internal flash?

The answer is no, for three documented reasons:

  1. Boot sequence. The LOGO! 8 bootloader loads its firmware from internal flash and then looks for a project source. The project source is either the internal flash or the SD card; if it comes from the SD card, the bootloader writes it into the internal program flash and then executes from there. The SD card is a source, not a run-time store.
  2. Execution path. The LOGO! runtime interpreter is hard-wired to fetch operands and opcodes from the internal flash address space. There is no xIP (execute-in-place) mode that maps the SD card into the program fetch window.
  3. Performance and determinism. SD card access is multi-millisecond and non-deterministic. The LOGO! cycle time budget (typically 5 - 50 ms depending on program) would be unachievable if every block fetch went through a removable card.

For the learning/development user, this means that every download from LOGO!Soft Comfort to the module, plus every parameter change, costs at least one program flash write. There is no soft-load mode that bypasses it.

5. Retentive Data and Power-Down Storage

Retentive markers in the LOGO! are the variables that survive a power cycle. Their storage path is:

Live value  <-- SRAM (super-cap backed) -->  Power-down detected
                                              |
                                              v
                                    Snapshot committed to
                                    internal program flash
                                              |
                                              v
                                    Next boot restores snapshot
                                    into SRAM before cycle 1

Implications for the engineer:

  • Each power-down is a small flash write (one retentive snapshot, typically tens of bytes). If a development workstation power-cycles the LOGO! 50 times a day, that is 50 retentive-area writes per day, on top of any program downloads.
  • Retentive writes are not continuous. While the LOGO! is running normally, retentive values live in SRAM and do not touch flash. Only at the moment of controlled power-down does the commit happen.
  • Reducing the number of configured retentive bytes does not change the wear count — the firmware always writes the whole retentive block — but it does reduce the risk of a bad-block corruption in a single power-down event.
Field-proven caveat: A super-capacitor that has aged or sat discharged for a long period can let the LOGO! power off without completing the retentive commit. The symptom is "retain value lost" on next power-up, not a bricked module. A failed retentive commit does not damage flash, but a long sequence of failed commits combined with a brown-out can shorten flash life. Use a regulated 24 V supply and a UPS if the application requires retain persistence.

6. Estimating Service Life for High-Reprogramming Scenarios

A typical learning or lab scenario: an instructor or developer programs the LOGO! 30 - 100 times per workday, with a power-cycle between sessions, for 200 workdays per year, for several years. The total write count over the project life is:

N_writes = N_programs + N_power_cycles

For a 50-programs-per-day, 1-power-cycle-per-day profile over 5 years:

N_programs    = 50 programs/day x 200 days/year x 5 years = 50,000
N_power_cycles = 1 cycle/day x 200 days/year x 5 years = 1,000
N_total        = ~51,000 writes to the program flash area
Use case Programs/day Power cycles/day Writes over 5 years Flash life concern?
Production machine, fixed program 0.01 0.05 < 200 Negligible
Occasional parameter tuning on site 0.1 0.5 < 1,500 Low
Engineer bench development 5 - 20 5 - 20 20,000 - 80,000 Medium — monitor
Classroom / training lab 20 - 100 1 - 5 40,000 - 200,000 High — specify spare units
Automated test rig reprogramming the LOGO! continuously 100+ 10+ 200,000+ Use a dedicated lab unit, not a production spare

7. Documenting a Support Request to Siemens

Because the endurance figure is not in the data sheet, the only authoritative channel is a Siemens Industry Online Support request. To get a useful answer instead of a stock reply, include the following in the request:

  1. Full MLFB: 6ED1052-1MD08-0BA1 (and any connected expansion modules, e.g., 6ED1055-1HB00-0BA2 for the AM2 RTD module).
  2. Hardware version / FS state: read on the LOGO! display under Menu → Diagnostics → Hardware or from the Web server Module Information page. This identifies the exact firmware build.
  3. Firmware version: shown in the same diagnostic page, and in LOGO!Soft Comfort under Tools → Transfer → Module Information.
  4. Operating profile: programs per day, power cycles per day, parameter changes per day, ambient temperature, supply voltage, years of service.
  5. Application note: state explicitly that the unit is used as a development / training platform and not as a production controller. Siemens may provide a recommended duty cycle or a specific firmware threshold.
  6. Project footprint: number of function blocks, number of retentive markers, presence of any UDFs (user-defined functions) that may increase flash load.

Submission is via the Siemens Industry Online Support portal. The response typically takes 1 - 5 business days for the LOGO! product family. Keep a copy of the case number; if the unit eventually fails, the case history supports a warranty claim.

Best practice: Open one support request per project. Attach the .lsc project file (it does not contain proprietary code if the project is your own), the diagnostic screenshots, and a brief description of the duty profile. Engineers in the Siemens support team can correlate the firmware build against any known flash-related field issues.

8. Best Practices to Extend Flash Life in a Lab

For a learning or development environment with the 6ED1052-1MD08-0BA1, the following practices reduce flash wear without changing the platform:

  1. Use LOGO!Soft Comfort simulation for the first 80% of program development. The PC-side simulator does not touch the module's flash at all and supports FBD and LAD with on-screen I/O forcing.
  2. Consolidate edits before download. A single download with 30 edits is one flash write; 30 downloads with one edit each is 30 flash writes. Use the LOGO!Soft Comfort Compare tool before transfer to confirm a single coherent change set.
  3. Avoid unnecessary power cycles. The LOGO!Soft Comfort Online mode supports parameter changes over Ethernet without a power cycle. Use it instead of "stop - edit - run" loops.
  4. Store the master project on the SD card and only write to internal flash when the project is final. The SD card is a legitimate transfer medium and does not wear internal flash.
  5. Use a dedicated lab unit. Keep a known-good spare for production work; use a retired or aged unit for training. Spare units do not see flash writes.
  6. Minimize retentive block size where the application allows. A 4-byte retain block is faster to commit and lower-risk than a 64-byte block.
  7. Power the unit from a regulated supply. Brown-outs force the super-cap to do its job and can lead to a half-committed retentive snapshot, which costs an extra flash write on the next clean power-up.

Combined, these practices typically reduce flash writes by 10x - 50x in a typical lab setting, which is the difference between a 6-month service life and a 5-year service life on a heavily used training unit.

9. Comparison: LOGO! 8 vs. Other Siemens Controllers on Storage

For engineers who may migrate a heavy-development application from a LOGO! to a larger Siemens PLC, the storage architecture differs substantially.

Controller Program storage Retain storage SD card role Published endurance?
LOGO! 8 (6ED1052-1MD08-0BA1) Internal NOR flash SRAM, snapshotted to flash at power-down Project backup / transfer only No
S7-200 SMART Internal flash (EEPROM emulation) Internal super-cap + flash Not supported No
S7-1200 (CPU 1211C - 1215C, 1217C) Internal flash, optional SIMATIC memory card Internal retentive memory Firmware, program, recipe, data log; can be transfer card but execution still from internal flash No (refer to Siemens Support)
ET 200SP CPU Internal flash + SIMATIC memory card Retain memory in flash Program card; can be the program source but execution from internal flash No
S7-1500 Internal flash + SIMATIC memory card Retain in NVRAM, backed to flash Program card, firmware, trace, data log No (refer to Siemens Support)

No Siemens controller in the LOGO!, S7-200, S7-1200, ET 200SP, or S7-1500 families publishes a flash endurance figure. Siemens positions these as "fit for industrial service life" with a 10-year design horizon, not as hot-swappable program stores. The migration path for a high-reprogramming application is therefore not to a different Siemens PLC but to:

  • PC-side simulation (LOGO!Soft Comfort, PLCSIM, S7-PLCSIM) for development, leaving the hardware untouched.
  • A dedicated spare pool of LOGO! modules rotated through production use, with the development units retired once they reach the support-team's recommended cycle count.

10. Verification and Field Diagnostics

There is no public API or diagnostic counter on the LOGO! 8 that reports cumulative flash write count. Verification of flash health is therefore indirect:

  1. Boot-time project load. If the SD card has a project newer than the internal flash, the LOGO! writes the new project to flash on every boot. If the same SD card is left in place and the unit is power-cycled daily, the bootloader will rewrite the flash daily. Remove the SD card after the project is loaded, unless you specifically need it to be the recovery source.
  2. Web server module info. The Diagnostics → Module Information page reports firmware version, hardware version, and any I/O fault state. It does not report flash wear. Use it to capture the firmware build for support requests.
  3. Display diagnostics. The LOGO! display shows fault codes (e.g., "SD card removed during write", "internal program checksum error"). A repeated "internal program checksum error" on cold start is the primary symptom of a worn or corrupted program flash area.
  4. Counter test. Program a counter that increments once per program download cycle and stores its value in a retentive marker. After a known number of test cycles, read the value. If the value is correct, the program flash and retain path are still working as designed. A mismatch indicates wear-related corruption.
Important: A "checksum error" on the LOGO! display is not automatically a flash failure. It can also be triggered by a power loss in the middle of a download. To distinguish the two, attempt a clean re-flash with a known-good project from a known-good SD card. If the error persists, the flash area is suspect.

11. Practical Guidance for the Original Question

Restating the engineering use case from the field report: a developer wants to know whether they can keep the user program on the SD card and execute it from there, in order to spare the LOGO! 8 internal flash during a heavy learning / development phase. The answer, after the analysis above, is:

  • No, the LOGO! 6ED1052-1MD08-0BA1 cannot execute from the SD card. The SD card is a transfer medium. The internal program flash is the only execution location.
  • For a high-reprogramming development scenario, do not rely on the same unit for production use. Use PC-side simulation in LOGO!Soft Comfort, batch your edits, avoid unnecessary power cycles, and rotate units between the bench and the field as they age.
  • Open a Siemens support request through Siemens Industry Online Support with the module's MLFB, FS version, firmware version, and the projected programming profile. Siemens can provide an application-specific endurance number that the data sheet does not.
  • Treat the SD card as a project backup, not a wear-saver. Use it to recover a known-good project into internal flash, not to run the program.

12. Frequently Asked Questions

How many program/erase cycles is the LOGO! 6ED1052-1MD08-0BA1 internal flash rated for?

Siemens does not publish a cycle rating for the LOGO! 8 internal program flash. The figure depends on the specific flash part used in the module, the firmware wear-leveling policy, and operating temperature. Submit a request to Siemens Industry Online Support with the MLFB, hardware (FS) version, and firmware version to obtain an application-specific value.

Can I run a LOGO! program directly from the micro SD card to save internal flash cycles?

No. The LOGO! 8 always boots its firmware and runs the user program from internal flash. The micro SD card is a backup and transfer medium only; if a project is loaded from the SD card on power-up, the bootloader writes it into internal program flash and then runs it from there.

Does the LOGO! write to internal flash on every power cycle?

Yes, the retentive-marker snapshot is committed to internal flash on every controlled power-down. During steady-state operation, the live process image and retentive values live in SRAM (super-capacitor backed) and do not touch the flash.

What is the most effective way to extend flash life in a development / training scenario?

Use LOGO!Soft Comfort simulation for the majority of program development, batch multiple edits into a single download, avoid unnecessary power cycles by using LOGO!Soft Comfort's online parameter edit mode, and keep a dedicated spare pool of LOGO! modules for production use so that high-reprogramming units can be retired to the bench.

What symptom indicates that the LOGO! internal program flash is wearing out?

The primary symptom is a repeated "internal program checksum error" on cold start that persists after a clean re-flash from a known-good SD card project. Web server "Module Information" and the display Diagnostics → Module Information page do not report a cumulative flash write count, so a checksum error combined with a high programming profile is the field indicator.

Back to blog