Resolving Siemens Sinumerik 840C Error 43 ord1 PLC CPU Not Ready

David Krause15 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 Description: Error 43 ord1 on Sinumerik 840C

When a Siemens Sinumerik 840C returns to service after a CSB (Central Service Board) lithium backup battery has expired, the most common operator-visible symptom is a persistent HMI alarm:

43 ord1   PLC CPU not ready for operation

The fault prevents the hydraulic contactor from being enabled, all axis and spindle drives remain blocked, and the integrated SIMATIC S5 PLC refuses to transition to RUN. The NCK (Numerical Control Kernel) and the operator interface appear to load normally, but the PLC flag image is uninitialized and ANW_PROG is flagged as invalid. In nearly every case the PLC alarm buffer reports:

002A   Data loss (Datenverlust) on the PLC

and any attempt to commit the current PLC image back to the CSB returns:

PLC Error (ANW_PROG) cannot be created

This alarm cluster is fully described in the Siemens Sinumerik 840C Diagnostics Guide, chapters 2.1 (PLC alarms) and 2.2 (PLC data backup and restore), and in the 840C Commissioning (Inbetriebnahme, IBN) guide section "Loading from hard disk with user data". The following procedure is the field-proven recovery workflow used by service engineers when a 840C fails to come back up after a CSB battery event.

Root Cause: CSB Battery and SRAM Data Loss

The CSB hosts the 840C integrated SIMATIC S5 PLC CPU and the battery-backed SRAM that retains the entire runtime dataset across power-down:

  • ANW_PROG (Anwender-Programm) - the current user PLC program
  • BNW_PROG (Backup-Programm) - the frozen backup of the user program
  • The PLC flag/word/data image used by the NCK/PLC interface
  • Tool offsets, settable zero offsets (G54-G57), and pitch error / sag / SSFK compensation tables
  • The active machine data set (MD) loaded at the last successful cold start

The on-board lithium cell (typically a 3.6 V primary cell such as the Tadiran TL-5186 / SL-861 or a Siemens-branded equivalent) maintains SRAM retention when the main 24 V and 5 V supplies collapse. When the cell voltage drops below the undervoltage threshold of approximately 2.8 V under load, the CSB writes the battery warning flag and raises a corresponding PLC alarm. If the cell is not replaced in time, the next power-down destroys the SRAM contents.

After a cold start with a fresh cell, the CSB SRAM region is uninitialized. The PLC CPU performs its cold-restart self-test (OB 20 equivalent) and detects an invalid PLC program checksum, raising PLC alarm 002A. The NCK is informed via the PLC status interface (DB 36 / status word), and the NCK surfaces alarm 43 "ord1 PLC CPU not ready" on the HMI.

Engineering insight: After a successful battery replacement, the PLC will not run automatically. The user program must be reloaded from the FDS (Festplatte / hard disk) backup, and the PLC cold-restart sequence must be completed cleanly. Skipping either step leaves the system in the 002A / 43 ord1 state indefinitely.

Hardware Identification: CSB, PLC CPU, and Battery Variants

The Sinumerik 840C shipped with three principal PLC CPU populations. The CSB order number is in the 6FX1 132-1Bxx range.

PLC CPU CSB Order Number Battery Program Memory Typical Use
SIMATIC S5-130A 6FX1 132-1BA 3.6 V Li, 1.7 Ah 32 KB EPROM + 16 KB SRAM Early 840C, single-channel
SIMATIC S5-130W 6FX1 132-1BB 3.6 V Li, 1.7 Ah 64 KB EPROM + 32 KB SRAM 840C, 840CE standard
SIMATIC S5-135W 6FX1 132-1BC 3.6 V Li, 2.4 Ah 128 KB EPROM + 64 KB SRAM 840C Performance, complex tooling

The lithium cell is a replaceable module on the front panel of the CSB. Some service kits provide an AA-size Tadiran holder as a drop-in replacement. The PLC flag word "Battery" is set when the loaded cell voltage drops below 3.0 V; the "Battery alarm" flag is set below 2.8 V and forces the HMI to surface a battery message on next power-on.

PLC Alarm 002A - Data Loss Diagnostic

When PLC alarm 002A appears in the buffer, perform the following verification steps before attempting any reload. Skipping these is the most common cause of a failed recovery.

  1. Verify the new battery is correctly installed and that the polarity matches the silk-screen legend on the CSB holder. Reverse polarity will damage the CSB regulator within minutes.
  2. Measure the open-circuit battery voltage with a calibrated DMM. A fresh Tadiran TL-5186 reads 3.65 V +/- 0.05 V. Any reading below 3.55 V indicates a stale cell - reject it.
  3. Power on the control. Measure the loaded battery terminal voltage at the CSB. Loaded voltage must not drop below 3.0 V at any time during the boot sequence.
  4. Clear the PLC alarm buffer from the HMI: Diagnostics > PLC > Alarms > Clear.
  5. Inspect the PLC status word (DB 36 on the integrated S5). If "PLC STOP" persists with no further error, the PLC is halted by OB 31 (warm restart block) rather than by a battery problem and the recovery is different.
Critical: Do not execute "Save PLC" or "Save to FDS" on a freshly replaced battery that is reporting data loss. Saving writes the uninitialized SRAM image to the FDS backup and will overwrite the only known-good copy of ANW_PROG. If this has already happened, the recovery must be done from an offline PG copy or commissioning diskette.

Pre-Recovery Prerequisites

Confirm every item below before opening the HMI commissioning menu. Each missing item is a documented cause of a failed recovery.

  • The FDS backup set is present in the system. On a 840C this is typically on the boot partition under /SIN840C or on a separate service partition accessible from the HMI service shell.
  • The new battery is installed, its voltage is verified, and the CSB has been powered continuously for at least 30 minutes so the SRAM retention is reliable.
  • The 840C is at a known machine data state. Note the current MD values in the 200*, 300*, 500*, and 1000* ranges on paper in case the FDS load resets them.
  • The PLC password (if assigned) is known. PLC programs on 840C are not encrypted by default, but BNW_PROG may be write-protected.
  • The original commissioning diskettes or the latest INI/MDA backup set is available as a secondary fallback.
  • The HMI keyboard and CRT are functional. A failed CRT during the recovery blocks the verification step.
  • A PG with STEP 5 / COM 840C software and a connecting cable (MPI / SINEC H1 / RS-232) is on the bench, in case the HMI menu cannot complete the cold restart.

Step-by-Step Recovery from FDS (Hard Disk)

The following sequence follows the 840C IBN guide, section "Loading from hard disk with user data".

Step 1 - Power down and check hardware state. Open the main breaker. With the control de-energized, verify the battery is correctly seated and the CSB LEDs (H1 "RUN", H2 "STOP", H3 "BAT") show the expected standby state. H3 must be OFF (battery OK). A lit H3 indicates either a missing battery or a polarity error.

Step 2 - Power on and enter HMI Service mode. Close the main breaker. Wait for the HMI to finish its boot sequence, typically 60-90 s. On the HMI main menu navigate:

Setup > Service > Commissioning

Enter the service password when prompted. On a 840C this is the 4-digit numeric code; on a 840CE it is the 6-digit code supplied at original installation.

Step 3 - Select "Load from hard disk with user data". In the Commissioning menu, locate the option:

Load from hard disk with user data

Confirm the path /SIN840C/USER and proceed. The 840C reads the following objects from the FDS:

  • Machine data (MD)
  • Tool data and tool list
  • Zero offsets (G54-G57)
  • Compensation tables (SSFK, pitch error, sag)
  • PLC user program (ANW_PROG and BNW_PROG)
  • PLC text buffer (alarm texts)
  • Drive parameters (SIMODRIVE 611-A / 6SC6x)

Step 4 - Confirm the load request. The 840C displays a confirmation prompt:

WARNING: All current NC and PLC data will be overwritten.
Continue? (Y/N)

Select Yes. The system reboots partway through the load. Do not interrupt mains power during this phase.

Step 5 - Cold restart the PLC. After the FDS load the PLC CPU is in STOP. From the HMI:

Diagnostics > PLC > Cold restart (PC-COLD-RESTART)

The PLC CPU clears its work memory, reloads ANW_PROG from the CSB SRAM (now populated by the FDS load), and transitions to RUN. Watch the HMI for the message "PLC in RUN".

Step 6 - Verify alarm 43 is cleared. Return to the HMI alarm display. The 43 ord1 alarm must be absent. If it persists, repeat Step 5; if it still persists, see the troubleshooting matrix below.

Step 7 - Restore machine-specific settings. Some machine-specific adjustments (e.g., axis compensation values, handwheel scaling factors, end-of-travel soft limits) may not be present on the FDS backup. Re-enter these manually from the commissioning record.

Handling the "ANW_PROG cannot be created" Error

If the HMI returns PLC Error (ANW_PROG) cannot be created during Step 5 or when selecting "Save PLC", the root cause is one of the following. Work through them in order.

  1. CSB SRAM has not been re-populated by the FDS load. Re-execute Steps 3 and 4 of the recovery procedure and verify the FDS path is /SIN840C/USER and not a different partition.
  2. PLC password-protected BNW_PROG is interfering with the cold restart. From HMI Diagnostics > PLC > Info, view the program status. If BNW_PROG shows PASSWORD, enter the password to unlock.
  3. Residual PG loader on the CSB EPROM is detected before the SRAM. Power down, reseat the CSB memory sub-module, and retry. This forces a re-initialization of the boot sequence.
  4. PLC has crashed during cold restart because of an OB 21 / OB 22 syntax error in the restored program. Connect a PG (programming device) via SINEC H1 or RS-232 MPI and use STEP 5 to inspect ANW_PROG for OB 21 / OB 22 corruption.

Field-proven workaround when the HMI path is blocked: force a fresh ANW_PROG write from STEP 5.

# STEP 5 / COM 840C procedure
1. Online > Connect to PLC
2. PLC > Reset (cold)
3. File > Open ANW_PROG from FDS path
4. PLC > Download to AG
5. PLC > Cold restart

If the PG reports the same cannot be created text, the CSB EPROM is corrupt and must be replaced. The CSB is hot-swappable when the control is de-energized and the new battery is installed.

ANW_PROG and BNW_PROG Strategy

ANW_PROG is the active user program; BNW_PROG is a frozen copy used as a fallback when ANW_PROG has an invalid checksum. The 840C cold restart sequence prefers ANW_PROG and falls back to BNW_PROG only if ANW_PROG cannot be loaded.

The recommended service workflow after every commissioning change is:

  1. From HMI Diagnostics > PLC > Save > ANW_PROG. Verify the save returns no error and the timestamp in the HMI matches the edit.
  2. Use HMI Diagnostics > PLC > Copy and select ANW_PROG -> BNW_PROG to refresh the backup.
  3. Confirm BNW_PROG is readable by selecting Diagnostics > PLC > Info and verifying the BNW_PROG checksum.
  4. Create a third offline copy of ANW_PROG on a service PG and label it with the machine serial number and date. This is a third-tier recovery if both the CSB and FDS backups are lost.
Field tip: A common service error is to confuse ANW_PROG (active) with BNW_PROG (backup) and to edit the wrong one. After any save, always check the HMI program list to confirm the active program is the one you just edited.

Battery Maintenance Schedule

The CSB battery is a wear part. Recommended service intervals:

Operating Mode Replacement Interval Periodic Check
24/7 operation 5 years Verify cell voltage annually
8 h/day operation 4 years Verify cell voltage every 6 months
Infrequent use 3 years Power on control monthly for at least 1 hour
Stored / shipped 2 years Replace before commissioning

Critical rule: A machine that is not running 24/7 must be powered up for at least one continuous hour per month. This allows the PLC to execute its battery self-test (OB 100 / OB 101) and surface a battery warning to the HMI well before SRAM data is at risk. Skipping the monthly power-up is the most common cause of a 840C arriving at a customer site with a dead CSB battery and an unrecoverable PLC.

Verification and Commissioning Tests

After the recovery is complete and alarm 43 is cleared, perform every step below before returning the machine to production. Each test verifies a specific layer of the recovery.

  1. Alarm buffer check. From the HMI clear the alarm buffer and power cycle the control. On reboot no alarms should be present. PLC alarm 002A must be absent.
  2. PLC status display. HMI Diagnostics > PLC must show "PLC in RUN, no errors".
  3. Hydraulic enable. From the operator panel request hydraulics on. Verify the PLC outputs Q0.0 to Q0.7 (typical hydraulic contactor cluster) energize within 2 s.
  4. Axis reference point. Reference all axes. Verify the position display matches the machine coordinate system. If positions are off, re-initialize the MCS via HMI Setup > Reference.
  5. Tool table verification. Load a known tool. Verify the loaded Z offset matches the value recorded in the commissioning sheet.
  6. PLC program checksum. From PG / STEP 5 request the ANW_PROG checksum. It must match the checksum recorded at commissioning. A mismatch indicates partial restoration.
  7. End-of-travel soft limit. Manually jog each axis into its software limit. Verify the PLC-driven rapid stop fires within 50 ms of the limit crossing.
  8. Emergency stop. Press E-Stop. Verify the PLC de-energizes all spindle and axis enable outputs. Reset E-Stop and verify the standard restart sequence is required.
  9. Battery alarm test. With the control running, momentarily disconnect the battery while powered. Within 10 s the HMI must display a battery alarm. Reconnect; the alarm must clear after a power cycle.

Troubleshooting Matrix

Symptom Probable Cause Action
43 ord1 persists after FDS load PLC cold restart not executed HMI Diagnostics > PLC > Cold restart
002A persists after battery change Old battery still installed Verify battery voltage and orientation
ANW_PROG cannot be created CSB SRAM not populated Re-execute FDS load, then PLC cold restart
PLC STOP, no error OB 21/22 syntax error in restored program Reload ANW_PROG from STEP 5
BNW_PROG shows PASSWORD PLC password not entered Enter password from HMI
Hydraulic enable does not energize Q0.0 PLC flag "Hyd ready" not set Verify NCK-MMC interface via HMI Diagnostics > NC/PLC
FDS load aborts with "read error" Hard disk failure Boot from service floppy, restore from offline backup
43 ord1 returns after power cycle Battery not retaining load Replace battery, verify under-load voltage
Machine data lost after FDS load Wrong FDS partition selected Repeat load, verify path /SIN840C/USER
Spindle enable missing after recovery Drive parameters not loaded Reload drive parameters separately
HMI displays "Battery" after recovery Cell under load, marginal battery Replace cell, run battery alarm test
PLC goes to STOP within 5 s of RUN OB 1 cycle time exceeded Check OB 1 / OB 31 timing on PG

PLC Alarm Code Reference

Selected PLC alarms relevant to the battery / recovery scenario on the 840C integrated S5 PLC:

Alarm Text (EN) Text (DE) Cause Action
002A Data loss Datenverlust SRAM contents invalid (battery loss) Reload FDS, PLC cold restart
002B Battery warning Batterie-Warnung Cell voltage low Replace battery within 4 weeks
002C Battery alarm Batterie-Alarm Cell voltage critical Replace battery immediately
0031 PLC stop, syntax error PLC-Stop, Syntaxfehler OB 21/22 has syntax error Reload ANW_PROG
0032 PLC stop, OB missing PLC-Stop, OB fehlt Required OB not present Restore OB from PG
0043 PLC CPU not ready PLC CPU nicht betriebsbereit PLC in STOP or faulted Cold restart or reload

The NCK alarm 43 ord1 is the cascaded indication of the underlying PLC alarm 002A or 0031. Resolving the PLC alarm clears the NCK alarm on the next warm restart.

Frequently Asked Questions

What does Siemens Sinumerik 840C alarm 43 ord1 mean?

Alarm 43 ord1 "PLC CPU not ready for operation" indicates the integrated SIMATIC S5 PLC on the CSB is not in RUN. It is the NCK-level cascade of a lower-level PLC fault - typically 002A (data loss) or 0031 (syntax error) - and is resolved by fixing the underlying PLC condition and performing a PLC cold restart.

How do I clear PLC alarm 002A after a CSB battery replacement?

Replace the lithium cell on the CSB with a fresh 3.6 V Tadiran TL-5186 (or approved equivalent), confirm loaded voltage is above 3.0 V, navigate HMI Setup > Service > Commissioning > Load from hard disk with user data, then execute Diagnostics > PLC > Cold restart. Do not run "Save PLC" before the FDS load has populated ANW_PROG.

What causes "PLC Error (ANW_PROG) cannot be created"?

It indicates the CSB SRAM is still uninitialized because the FDS load did not complete, the BNW_PROG password is blocking the cold restart, or OB 21/22 in the restored program is corrupt. Reload from FDS, unlock BNW_PROG, or rewrite ANW_PROG from STEP 5 on a programming device.

Can I copy ANW_PROG to BNW_PROG as a spare?

Yes. From HMI Diagnostics > PLC > Copy select ANW_PROG -> BNW_PROG. This creates a frozen backup that the cold restart will use if ANW_PROG is corrupt. Always verify the BNW_PROG checksum via Diagnostics > PLC > Info after the copy.

How often must the CSB battery be replaced on a Sinumerik 840C?

Replace every 5 years for 24/7 operation, every 4 years for single-shift operation, every 3 years for intermittent use, and every 2 years for stored or shipped units. If the machine is not running 24/7, power it on for at least 1 continuous hour every month to surface a battery warning before SRAM data is lost.

Where is the FDS backup located on a 840C?

The default path is /SIN840C/USER on the boot partition. The Commissioning menu reads this path during "Load from hard disk with user data". If the path is missing, the FDS has been overwritten or the disk is failing; boot from a service floppy and restore from the offline commissioning diskette set.

What CSB order number fits the 840C integrated PLC?

CSB order numbers 6FX1 132-1BA (S5-130A), 6FX1 132-1BB (S5-130W), and 6FX1 132-1BC (S5-135W) cover the 840C family. The battery is a 3.6 V primary lithium cell, 1.7-2.4 Ah depending on variant. Confirm the part number on the CSB front panel label before ordering a replacement.

Back to blog