SINUMERIK 840D Error 27001 Cross-Check Code 44 SI Axis Data Reset

David Krause11 min read
Safety SystemsSiemensTroubleshooting
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

Alarm Definition and Format

Alarm 27001 on SINUMERIK 840D is reported as:

27001 Axis %1 error in cross-check code %2 values NCK %3 drive %4

Decoded for the reported incident:

  • Axis %1 = X1 (the failing axis identifier)
  • Cross-check code %2 = 44 (the parameter group whose cross-check failed)
  • NCK %3 = 920 (value computed/expected by the NCK side)
  • Drive %4 = 5544 (value computed/expected by the SINAMICS drive side)

The alarm is raised by the Safety Integrated (SI) software when the cyclic cross-check between the two-channel safety logic in the NCK and the drive-side safety channel detects a divergence that exceeds the configured tolerance. Because the safety functions (Safe Stop 1 / SS1, Safe Stop 2 / SS2, Safely-Limited Speed / SLS, Safe Operating Stop / SOS, Safe Brake Control / SBC) are executed redundantly in NCK and drive, the controller is not allowed to continue until the two views of the world agree.

Reactive behavior: When 27001 is raised, the drive transitions to STOP A (torque removal) and Safe Torque Off (STO) is engaged. The alarm is latching; it is not cleared by removing the cause alone. A safe acknowledgment sequence is mandatory.

Root Cause of Cross-Check Code 44

Cross-check code 44 falls within the family of position/sensor-data cross-check IDs. Code 44 indicates that the safe actual position values derived independently by NCK and drive from the same encoder do not agree. The two raw operands seen by the safety software are:

Side Value Interpretation
NCK 920 NCK-evaluated safe position increment (raw counts modulo the safe encoder resolution)
Drive 5544 Drive-evaluated safe position increment for the same scan cycle

A difference of 4624 increments is far outside any tolerance window. Typical root-cause families are:

  1. Lost NCK safety data after buffer failure. The 840D retains SI-relevant machine data in SRAM backed by a buffer battery. When the battery discharges, NCK-side SI machine data, drive parameter setpoints stored in the NC, and the safe position reference can be lost. The drive-side non-volatile mirror may still hold the last commissioned values.
  2. Mechanical movement with the controller de-energized. If the axis was physically moved (by hand, by service, or by an external drive) while the encoder lost its supply or its buffered reference, the absolute position reference drifts. When power returns, the drive reads its current encoder counts, while the NCK still holds the last-known frame, producing a wide delta.
  3. Inconsistent SAFE_ENC_* parameter pairs. If SAFE_ENC_RESOL, SAFE_ENC_GEAR_PITCH, SAFE_ENC_GEAR_DENOM, or SAFE_ENC_GEAR_NUMERA were edited on one side only (NCK without drive reload, or vice versa), the safety software applies different scaling and the cross-check fails.
  4. Drive replacement / project load mismatch. After loading a drive archive that does not match the NCK archive, the safety parameter image diverges.
Safety implication: Do not attempt to bypass the cross-check by relaxing tolerances or by editing MD36955 / MD36956 with the goal of hiding the delta. The cross-check is the integrity barrier of SI; tolerating a real mismatch defeats the safety function.

840D Powerline vs. Solution Line Behaviour

The failure mode differs slightly between the two hardware generations:

Aspect 840D Powerline (PL) 840D Solution Line (SL)
HMI entry to SI data Startup → NC → Safety → Axis Data (vertical softkey tree on classic HMI) Startup → Commissioning → Safety → Axis Data (operator panel tree on sinuTrain / PCU)
SI Service screen Diagnostics → SI Service (softkey on PL Drives area) Diagnostics → SI Service (also reachable via the alarms application → softkey SI)
Drives load behavior Drives parameter setpoints are written into the NC archive; restoring NC archive alone normally re-aligns NCK and drive SI data Drive SI parameters live on the drive CF card; an explicit drive load (Startup → Drives) may be required to re-synchronize
Password level for SI Manufacturer or Service-level safety password required Manufacturer-level safety password required; Service-level allows limited inspection only
Cross-check granularity Coarser grouping of safety MDs Finer separation; more granular cross-check code numbers

For the case at hand, the user explicitly identified the controller as Powerline. The article therefore emphasizes the PL procedure; a parallel SL procedure is shown where it differs.

SI Service Screen and Password Levels

The SI Service screen is the single diagnostic surface that shows which parameter is failing the cross-check and what the two values are. It is reached via:

  1. HMI softkey Diagnostics.
  2. Vertical softkey SI Service (PL) or SI (SL).

Inside SI Service you will see, for each axis:

  • Current cross-check status (OK / mismatch)
  • The failing parameter identifier (the same code that appears as code 44 in alarm 27001)
  • The NCK value and the drive value, side by side
  • Softkey to Copy drive data → NCK and vice versa

Access is gated by the safety password hierarchy:

Level Password (Siemens default / typical) Allows
Manufacturer SUNRISE (Siemens service) Full SI commissioning, MD changes, copy operations
Service CUSTOMER (set during installation) SI MD edits within customer scope; cross-check reset; SI Service viewing
User USER (operator) No SI MD edits; only safe acknowledgment
If the password has been forgotten after a battery replacement that wiped non-volatile credentials, a Siemens service engineer must reset the SI password. There is no backdoor on production systems. Plan the downtime.

Safety-Relevant Parameter Set (Axis-Level)

The cross-check code 44 failure sits inside the encoder/sensor parameter group. The full family that must be verified is:

Parameter Meaning Typical range / example
SAFE_ENC_RESOL Safe encoder resolution in increments per revolution 2048, 4096, 8192, 67108864 (SINCOS)
SAFE_ENC_GEAR_NUMERA Load-side gear numerator (motor revolutions) 1
SAFE_ENC_GEAR_DENOM Load-side gear denominator (load revolutions) 1
SAFE_ENC_GEAR_PITCH Lead screw pitch / linear factor in mm or ° 10.000 (mm/rev)
SAFE_ENC_IS_LINEAR Linear encoder flag 0 = rotary, 1 = linear
SAFE_ENC_MOD_TYPE Modulo type for rotary axes 0 = off, 1 = 360°
SAFE_ENC_INC_REV Increments per revolution (rotary encoders) 2048 ...
SAFE_POS_TOL Cross-check tolerance for position (increments) site-specific, default typically a few counts

The values seen by NCK and drive must be identical to the bit. If the battery discharged, NCK defaults may be loaded; the drive retains the last commissioned values from non-volatile storage. The mismatch is therefore a data integrity problem, not a hardware problem in 90 % of post-battery failures.

Determining Whether Position Has Drifted

Before changing any safety parameter, confirm whether the absolute reference has actually shifted. Procedure:

  1. Bring the axis to a known mechanical reference (e.g., reference end of stroke, calibrated gauge block, or the marked home position).
  2. Read the current actual position in the NCK via the Axis display: Actual position (machine) = $AA_IM[X1].
  3. Read the drive-side actual position via the SI Service screen or, on SL, via r0479[0] in the drive trace.
  4. Compare the two modulo the configured SAFE_ENC_RESOL.

If the two values differ by a multiple of the safe encoder resolution, the position was mechanically moved during power-off and the NCK reference must be re-referenced before the safety functions are commissioned.

Step-by-Step Recovery Procedure (840D Powerline)

  1. Establish safe state. Confirm STOP A is active; the drive must be in STO. No movement commands must be issued during the procedure.
  2. Open SI Service. HMI → Diagnostics → SI Service. Verify that code 44 is the failing cross-check identifier and that NCK and drive values match the alarm (920 vs 5544).
  3. Log the current drive values. Screenshot or printout of the SI Service screen for each axis. This becomes the known-good baseline.
  4. Re-load NC archive. Insert the latest commissioning NC archive and start up. On PL, this restores the NCK-side SI machine data and the drive parameter setpoints in one operation.
  5. Trigger the drive parameter reload on SL only. If the controller is SL, additionally perform Startup → Drives → Load to push the NCK SI image down to the SINAMICS drive.
  6. Compare SAFE_ENC_* parameters. Under Startup → NC → Safety → Axis Data, confirm each SAFE_ENC_* value matches the drive-side SI Service readout. Pay particular attention to:
    SAFE_ENC_RESOL        (NCK) == (Drive)
    SAFE_ENC_GEAR_PITCH   (NCK) == (Drive)
    SAFE_ENC_GEAR_DENOM   (NCK) == (Drive)
    SAFE_ENC_GEAR_NUMERA  (NCK) == (Drive)
  7. Use the SI Service Copy drive → NCK function only after confirming the drive values are correct. Do not copy NCK → drive unless the NC archive is the authoritative source.
  8. Re-reference the axis. Drive the axis to a known mechanical reference and perform Reference point approach with the standard NC reference routine. For absolute encoders, the safe position is re-derived from the absolute reference.
  9. Run the SI acceptance test. Mandatory after any safety data change. See the verification section below.
  10. Safe acknowledgment. Clear the alarm with the standard safe-acknowledge sequence: select the alarm → press the SI Acknowledge softkey (PL: Diagnostics → SI Service → Acknowledge; SL: same path). Operator-level password is sufficient for this step.

Re-Commissioning When the NC Archive Is Missing

If no NC archive exists (battery dead and no backup), the safe encoder parameters must be re-entered manually. For X1 on a typical 840D PL:

  1. Identify the encoder part number and read SAFE_ENC_RESOL from the encoder data sheet (e.g., 2048 for a typical Heidenhain ERN 1387).
  2. Compute gear ratio from the mechanical drawing: SAFE_ENC_GEAR_NUMERA / SAFE_ENC_GEAR_DENOM = motor_rev / load_rev.
  3. Measure the lead screw pitch: SAFE_ENC_GEAR_PITCH = lead [mm/rev].
  4. Enter all values under Startup → NC → Safety → Axis Data at Service-level password.
  5. Push to the drive via the SI Service softkey on PL, or via Startup → Drives → SI → Copy on SL.
  6. Save the new NC archive immediately.

Verification and Acceptance Test

After the fix, run an SI acceptance test before returning the machine to production:

  1. Cross-check idle. Power up; observe SI Service screen for all axes. Every cross-check code must report OK with no alarm pending.
  2. Safe Stop 1 (SS1) test. Command SS1 via the test input (PL: Diagnostics → Safety → Test stops; SL: Commissioning → Safety → Test). Verify drive decelerates along the configured OFF3 ramp and STO engages at the configured delay.
  3. Safe Operating Stop (SOS) test. With axis stationary and SOS active, attempt to push the axis by hand → drive must resist within the SOS window (default ±0.5 mm).
  4. Safely-Limited Speed (SLS) test. Override the feedrate; the drive must clamp at the configured SLS limit and trigger STOP A on violation.
  5. Safe acknowledgment. Verify that the operator-level acknowledgment clears the alarm and that a second fault requires a full re-test, not just a re-acknowledge.
  6. Document and archive. Save the SI acceptance protocol as PDF, attach to the machine log book, and update the safety parameter list in the machine documentation.

Functional tests alone are not sufficient. The acceptance test is a regulatory requirement under Siemens SINUMERIK Safety Integrated and is auditable per EN ISO 13849-1 PL d / SIL 2 expectations.

Related Alarms and Cross-Reference

Alarm Meaning Relation to 27001/44
27000 Axis %1 stop category %2 cross-check error Parent alarm; 27001 is the parameter-level instance
27001 Axis %1 cross-check code %2 NCK %3 drive %4 Subject of this article
27002 Axis %1 cross-check failed - STOP F STOP F triggered by persistent cross-check failure
27003 Axis %1 calibration difference NCK %2 drive %3 Often co-occurs; same root cause (mechanical drift)
27004 Axis %1 stop category %2 SI error Fatal SI error requiring full re-commissioning
27005 Axis %1 PROFIsafe telegram failure Communication-level SI fault; distinct from code 44
F01611 SINAMICS SI defect; channel mismatch Drive-side equivalent of cross-check failure
F30611 SINAMICS SI defect functional Drive-side functional SI fault

Codes 27001 / 27002 / 27003 often appear together after a battery event. Treat them as a single recovery package, not as three independent issues.

Preventive Measures

  • Replace the buffer battery on the NCU and the SINAMICS Control Unit at the manufacturer interval (typically 3 years for NCU, 5 years for SINAMICS CU) and log the swap in the maintenance schedule.
  • Maintain a current commissioning archive and a separate SI parameter archive. The SI archive must include the SAFE_ENC_* block explicitly.
  • Add an inspection step to lock out any external mechanical motion (axes left free to rotate on decoupled gearboxes) during extended shutdown.
  • For machines shipped without absolute encoders, document the manual reference procedure as part of every cold-start.

What does the value pair (920 vs 5544) in 27001 code 44 represent?

The two numbers are the raw safe-position increments computed independently by the NCK side (920) and the SINAMICS drive side (5544) for the same scan. Cross-check code 44 belongs to the position/sensor parameter group. A delta of 4624 counts is far beyond any tolerance and confirms a real safety data divergence, typically caused by NCK-side SI data loss or mechanical drift during a power-off window.

Do I have to clear the alarm with the safety password or with the standard NC password?

Alarms 2700x are cleared via the SI Service safe-acknowledge softkey. The acknowledgment itself requires only the operator-level password. However, any editing of the SAFE_ENC_* parameters or any use of the Copy drive → NCK function requires the Service-level safety password (PL) or the Manufacturer-level safety password (SL).

If my machine is 840D Powerline and not Solution Line, where do I find the safety data?

On 840D PL navigate to Startup → NC → Safety → Axis Data. The SAFE_ENC_RESOL, SAFE_ENC_GEAR_PITCH, SAFE_ENC_GEAR_DENOM, and SAFE_ENC_GEAR_NUMERA fields live under that tree. The SI Service diagnostic screen is reached via Diagnostics → SI Service.

Will loading a fresh NC archive automatically fix cross-check code 44?

Yes in the typical post-battery case: an NC archive contains the SAFE_ENC_* values, and on 840D Powerline the NC restore also writes the SI parameter image into the SINAMICS drive. On 840D Solution Line you may need to additionally perform Startup → Drives → Load to push the safety parameters to the drive.

Can I simply increase SAFE_POS_TOL to suppress alarm 27001 code 44?

No. Relaxing the tolerance to hide a real position divergence defeats the safety function and violates the SI commissioning contract. The tolerance must remain small enough to detect an actual fault within the required response time; the divergence must be corrected at its root (battery backup, encoder parameters, reference procedure).

Back to blog