Resolving LC281 Reading Head Recognition Failure on 840D sl NC

David Krause15 min read
Motion ControlSiemensTroubleshooting
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

1. Problem Overview

On a milling machine equipped with a SINUMERIK 840D sl controller (2013 build), an HEIDENHAIN LC201 exposed linear scale is read by an AE LC281 reading head. When the reading head is replaced with a brand-new LC281 carrying an identical serial number and ID number, the NC fails to bring the axis into operation. The fault is reproducible with multiple replacement heads. A reading head that has been in service for approximately five years continues to be recognized and operates correctly.

The behaviour is not consistent with a Heidenhain-side hardware defect: when the suspect heads were returned to Heidenhain, the manufacturer's bench test reported no abnormalities. Heidenhain's response attributes the symptom to the Siemens controller writing a parameter into the reading head the first time the encoder is connected. According to Heidenhain, this condition has already been reported to Siemens and is treated as an inter-vendor interoperability issue rather than a single-unit defect.

Field note: A replacement head that arrives with the same catalog number, serial number, and ID number as the original is not necessarily bit-identical in terms of stored commissioning data. Siemens and Heidenhain both store vendor-specific data blocks inside EnDat-capable encoders. Two physically identical heads can behave differently if the Siemens commissioning routine alters the data block during the first power-on handshake.

2. Hardware and Software Affected

Item Value Notes
Linear scale HEIDENHAIN LC201 Exposed linear encoder, absolute or incremental depending on variant
Reading head HEIDENHAIN AE LC281 Mounted on the LC201 scale body
CNC controller SINUMERIK 840D sl 2013 build vintage
Drive system Sinamics S120 (typical) Sensor Module SME/SMC on the drive line-up
Encoder interface EnDat 2.1 / EnDat 2.2 Native protocol on LC281
Service channel Heidenhain Service / Siemens Industry Online Support Both vendors must be engaged for closed-loop resolution

Refer to the HEIDENHAIN linear encoders product page for the LC201/LC281 catalog documentation and to the SINUMERIK 840D sl product page for the controller manual set, including the basic machine and function manual lists.

3. Symptom Manifestation and Initial Triage

Before assuming the new head is faulty, walk through the following triage matrix. Each row isolates a layer of the measurement chain.

Layer What to check Pass criterion
Mechanical Mounting of the LC281 on the LC201 scale body Reading head fully engaged, no lift-off, mounting bracket torqued, alignment gauge within tolerance
Electrical Heidenhain sub-D adapter cable (e.g. cable with EnDat output) Shield grounded at the cabinet end only, conductors not swapped, supply voltage at the head within specification
Sensor Module SME20 / SME25 / SMC20 on Sinamics S120 Module firmly seated, firmware compatible, status LEDs green
Drive firmware Sinamics S120 CU320 / CU320-2 version Matches the version expected by the SINUMERIK 840D sl commissioning image
NCK software SINUMERIK Operate / NCK version NCK software version must be on the supported compatibility list for the drive firmware
Encoder data block First-time write sequence at power-on No alarm during encoder initialization

If a 5-year-old head from the same machine runs without alarm, the mechanical, electrical, sensor module, drive firmware, and NCK layers can be excluded as the cause. The residual variable is the encoder data block content versus the SINUMERIK commissioning routine.

4. Root Cause: Siemens-Side First-Time Parameter Write

The Heidenhain service statement attributes the symptom to a parameter being written into the reading head during the first connection handshake. Two scenarios can produce this behaviour.

  1. Commutation / axis-specific calibration value: SINUMERIK may store axis- or machine-specific information inside the encoder memory so that a future replacement recognizes the original mechanical axis geometry. If the writing routine fails validation against the new head's blank data block, the drive rejects the head.
  2. Electronic typeplate / motor plate pairing: Some Siemens/Heidenhain encoder variants store motor plate data or vendor-specific commissioning data that must be present at first power-on. A head that was never commissioned by Siemens returns a blank area that triggers a parameter-check alarm rather than a normal initialization.

The fact that an older head is accepted and a new head is not, despite identical catalog numbers and matching ID numbers, is consistent with the controller keying on a previously written data block rather than on the typeplate content alone. This is the structural reason Heidenhain's bench test passes: the heads are functionally clean; the controller is rejecting the data-block state.

5. Encoder Memory and EnDat Protocol Context

The EnDat interface used by the LC281 exposes several memory regions. The table below summarises the regions that participate in the Siemens handshake.

EnDat memory region Purpose Siemens write behaviour
OEM data (0x1B00–0x1BFF range, encoder-specific) Vendor-reserved area Siemens writes axis identifier, machine serial, or commutation calibration
Operating parameters (0x21xx range) Resolution, singleturn/ multiturn configuration Usually written once during commissioning
Electronic typeplate Manufacturer, part number, serial number Read-only from the encoder side
Memory areas 1 / 2 (MRS codes 0x1E / 0x1F) General purpose storage May be written during Siemens drive parameterization

The EnDat specification is documented by Heidenhain at the HEIDENHAIN encoder documentation portal. The relevant Siemens-side commissioning manual for Sinamics S120 is the SINAMICS S120 Function Manual available through Siemens Industry Online Support.

Engineering note: The OEM memory region is intentionally reserved so that a controller manufacturer can store private data without violating the open EnDat contract. Siemens uses this region for axis identification. A blank OEM region at first power-on is not a defect; it is the expected factory state. If the SINUMERIK commissioning routine has been updated to treat a previously written OEM region as mandatory, a freshly shipped head will be rejected.

6. Diagnostic Procedure

Use the following ordered procedure to localise the failure. Each step must pass before moving to the next.

  1. Capture the alarm text exactly. From the SINUMERIK HMI, record the alarm number, the axis identifier, and the cleared / cleared-by text. Typical alarms for encoder parameter errors on Sinamics S120 with EnDat encoders sit in the F3xxx range (drive-side) and the 25xxx / 38xxx range (NC-side). The exact code is needed when contacting Siemens support.
  2. Read the drive-side encoder parameter set. On the Sinamics S120 commissioning tool (Starter or Startdrive), inspect the encoder parameter group on the suspect axis. The parameters below are the canonical encoder-data parameters for Sinamics S120 with linear EnDat encoders:
    • p0400[0..n] – Encoder type selection
    • p0401[0..n] – Encoder type, selection list
    • p0407[0..n] – Linear encoder scale graduations
    • p0408[0..n] – Rotary encoder pulse number
    • p0421[0..n] – Absolute encoder rotary multiturn resolution
    • p0422[0..n] – Absolute encoder linear measuring step
    • p0423[0..n] – Absolute encoder rotary singleturn resolution
    • p0431[0..n] – Commissioning interface for EnDat 2.2
    • p0437[0..n] – Sensor Module configuration extended
    • p0438[0..n] – Sensor Module filter configuration
  3. Compare the parameter image between the working axis and the suspect axis. If another identical axis on the same machine runs with a healthy head, transfer the working encoder parameter image for reference. Drive-side parameter comparison must be done with the controller in the same state (online, safety unlocked, machine in a safe state).
  4. Trigger an explicit encoder parameterization. Use the drive's p0343 = 1 parameterization routine, or the equivalent commissioning action in Startdrive, to force the drive to re-read the encoder data block from the head.
  5. Read the OEM memory contents. If the Sinamics version supports p0441 / p0442 or the equivalent EnDat 2.2 OEM memory parameters, export the OEM memory region for comparison between the old (working) head and the new (failing) head.

Record the parameter values for the next section.

7. Sinamics Drive Parameter Review

The fault typically surfaces as one of the following drive alarms. None of these alarms are written into the encoder; they are raised by the drive and reflected as NC alarms by SINUMERIK 840D sl.

Alarm / fault code Text (typical) Indicates
F31100 Encoder 1: zero mark distance error Encoder parameterization inconsistent with physical scale
F31110 Encoder 1: serial communication failed EnDat link not establishing
F31111 Encoder 1: encoder reports internal error EnDat error word active from head
F31112 Encoder 1: encoder reports internal warning EnDat warning word active from head
F31130 Encoder 1: zero mark and commutation not plausible Commutation data missing or incompatible
F31131 Encoder 1: position actual value incorrect EnDat position word inconsistent with expected absolute position
F31900 Encoder 1: parameter write fault Siemens-side parameter write rejected by encoder
F31901 Encoder 1: parameter read fault EnDat memory read failed
25100 / 25105 Axis / spindle encoder not identifiable NC-side wrapper of the drive fault

The F31900 / F31901 family is the most direct match to the Heidenhain description "Siemens CNC writing a parameter to the reader the first time it's connected". If either of these faults is present, proceed with the commissioning steps below.

8. Commissioning Procedure for a Replacement Reading Head

The procedure below restores the head to operational status while avoiding the introduction of new faults. Run it on each suspect axis in sequence.

  1. Bring the machine to a safe state. All axes at standstill, safety door closed, drives offline in Startdrive / Starter.
  2. Confirm the catalog number, serial number, and ID number of the new head. Match them against the Heidenhain delivery note. Document the values in the machine log.
  3. Connect to the Sinamics drive online. Identify the axis and the encoder data set in use (typically encoder data set EDS0).
  4. Read out the existing encoder parameter image. Export p0400 through p0439 as a reference. Save this image to file.
  5. Activate the parameterization step. Set p0343 = 1 and trigger a parameter save. The drive will write its commissioning values into the encoder.
  6. Power-cycle the drive. Some firmware revisions only commit OEM memory writes after a full DC-bus off / on cycle. Wait at least 30 seconds between power off and power on for the EnDat memory to complete the internal write.
  7. Re-initialize the encoder. In Starter / Startdrive, execute the "Encoder parameterization" action on the affected encoder data set.
  8. Verify the alarm list is clear. The drive alarm buffer and the NC alarm buffer must both be empty on the affected axis.
  9. Perform a controlled axis move. With reduced feedrate override and an observer ready, traverse the axis over a small distance in both directions. Confirm the position actual value tracks the command value.
  10. Perform a reference-point approach. SINUMERIK 840D sl enforces a fresh referencing after encoder replacement in most configurations. Use the machine datum ID number consistent with the axis configuration.
Caution: If the drive reports a parameter-write alarm after step 5, do not repeat step 5 in rapid succession. Each write attempt consumes a finite number of memory cycles on the encoder. Three consecutive failed attempts with the same alarm text indicate a vendor-side incompatibility and require a Siemens support case rather than a retry.

9. Firmware Compatibility Verification

A common cause of "head not recognised" symptoms on older 840D sl machines is a drift between the NCK software version, the Sinamics firmware version, and the sensor module firmware version. Use the following matrix as a guide when comparing your installation against the supported combinations.

Component What to verify Where to find the value
NCK software version Matches the supported combination list for the machine builder SINUMERIK Operate > Diagnostics > Version
Sinamics CU firmware Compatible with NCK version Starter / Startdrive > Online > Drive unit diagnostics
Sensor Module firmware Compatible with CU firmware Starter / Startdrive > Sensor Module identification
EnDat protocol level EnDat 2.1 or 2.2 supported by all three layers Heidenhain documentation for LC281
Heidenhain cable generation Cable generation matches head generation (e.g. with or without PUR sheath retrofit) Heidenhain catalog data

When the NCK and Sinamics firmware are old (typical of 2013 vintage), a newly manufactured EnDat head may include a protocol revision that the old firmware does not accept. Heidenhain ships the LC281 with a known set of protocol revisions; the serial-number range of the new head should be checked against the revision supported by the installed firmware. If a mismatch is found, the resolution options are: (a) request a Heidenhain head from a serial-number range known to ship with the older protocol revision, or (b) perform a controlled firmware update of the Sinamics and NCK components through Siemens Industry Online Support.

10. Verification and Functional Testing

The reading-head replacement is not closed out until the following functional tests pass.

  1. Power-on test. Three consecutive cold starts with the drive remaining error-free. This exercises the first-time parameter write path three times under realistic conditions.
  2. Bidirectional axis move. Move the axis over its full travel in both directions at low feedrate. Confirm smooth position tracking, no alarm, no following-error spike above the configured tolerance.
  3. Repeatability test. Return to a known mechanical reference and command the same target coordinate ten times. Compare the position actual value at each stop. Spread should be within the encoder resolution.
  4. Speed test. Traverse at the maximum programmed feedrate and rapid traverse. Confirm the position controller remains stable and no encoder warning is raised.
  5. Long-duration test. Run the axis under a representative part program for at least one hour. Monitor the encoder error word via r0480 / r0481 equivalents; the warning counter must remain at zero.
  6. Reference-point consistency. Power down and power up the controller. Confirm the referencing routine finds the reference marker on the LC201 within the configured search distance, with no retries and no alarms.
Documentation requirement: Capture the parameter image, the alarm log, and the functional-test results. Store them with the machine log. If the failure recurs on the next scheduled head replacement, the historical comparison will pinpoint the firmware revision that introduced the regression.

11. Escalation Workflow and RMA Considerations

Because the symptom is a vendor inter-operability issue, the escalation must involve both vendors in parallel rather than serially. The following workflow minimises machine downtime.

  1. Open a Siemens support case via Industry Online Support. Provide the NCK software version, the Sinamics firmware version, the sensor module version, the alarm text, and the parameter export from Section 6.
  2. Open a Heidenhain service case in parallel. Provide the head serial number, the head delivery note, and the Siemens case number. Ask Heidenhain to confirm the protocol revision of the delivered head and whether it differs from earlier production batches.
  3. Hold the suspect heads. Do not return them to Heidenhain until both vendors agree on the head set to be analysed. The comparison set must include one working head and at least one failing head with identical catalog number.
  4. Request a vendor bulletin. Both Siemens and Heidenhain publish internal service bulletins on encoder inter-operability. Ask both vendors to share any open bulletin that addresses LC281 on SINUMERIK 840D sl commissioning.
  5. Temporary workaround. If production cannot wait, install a known-good used reading head from a sister machine of the same vintage. The five-year-old head behaviour confirms the controller side is not fundamentally broken.

If the case ultimately requires a firmware update, schedule it during a planned maintenance window. A Sinamics / NCK firmware update on an 840D sl system must be done with the machine builder's configuration backup in hand. The update procedure is documented in the SINUMERIK 840D sl Commissioning Manual, available through Siemens Industry Online Support.

12. Preventive Measures

Once the immediate issue is closed, the following measures reduce the chance of recurrence.

  • Maintain a head-swap log. Record catalog number, serial number, protocol revision, and NCK / Sinamics firmware version for every head replacement.
  • Keep a bench-tested spare head. Pre-commission the spare on a test fixture with the same Sinamics firmware as the production machine. A bench-commissioned head is more likely to be accepted on the machine at first power-on.
  • Track Heidenhain revision letters. When ordering replacement heads, request the revision letter that matches the existing installed base.
  • Subscribe to vendor service bulletins. Both Siemens (Industry Online Support) and Heidenhain (service portal) publish change notifications on encoder / controller compatibility.
  • Avoid mixing revisions. Do not upgrade the NCK or Sinamics firmware on a single axis without re-qualifying the encoder commissioning path. Mixed firmware populations are a common source of "worked yesterday, fails today" symptoms.

Why is the new LC281 reading head not recognised by the SINUMERIK 840D sl while the old one is?

The Heidenhain service statement attributes the symptom to the Siemens controller writing a parameter into the reading head the first time it is connected. A new head arrives with a blank OEM memory area; if the SINUMERIK commissioning routine has been updated to treat a previously written OEM region as mandatory, the new head is rejected at the parameter-write step. Heidenhain has reported this behaviour to Siemens as an inter-vendor interoperability issue.

Can the issue be resolved without firmware update?

Often yes. Force the drive to re-initialise the encoder by setting p0343 = 1, save the parameters, power-cycle the drive, and re-run the encoder commissioning. If the writing routine rejects the head three consecutive times with the same alarm, the resolution requires either a head from a serial-number range that matches the installed firmware protocol revision, or a firmware update of the Sinamics / NCK components.

Which Sinamics parameter should I read to confirm the cause?

Inspect the encoder parameter group, in particular p0400, p0407, p0422, p0431, p0437, and p0438. The drive alarm buffer is the most direct indicator: F31900 (parameter write fault) or F31901 (parameter read fault) point to the EnDat memory handshake; F31110 through F31131 point to encoder-data consistency.

Is it safe to install a five-year-old used reading head as a temporary workaround?

Yes, provided the head has been stored in conditions within the Heidenhain specification (no mechanical shock, no condensation, no contamination on the LC201 scale body) and the catalog / protocol revision matches the installed Sinamics firmware. A previously commissioned head has a populated OEM memory region that the SINUMERIK commissioning routine will accept. Treat the used head as a stop-gap and replace it with a controlled-stock replacement once the inter-vendor case is closed.

Who should be contacted first when a replacement encoder is not recognised?

Open both vendor support channels in parallel. Provide Siemens with the NCK / Sinamics / sensor module version and the drive alarm text; provide Heidenhain with the head serial number and the delivery note. Cross-link the case numbers so each vendor can confirm protocol revision compatibility. Sequential escalation (Heidenhain first, then Siemens only if Heidenhain closes the case) is the most common cause of extended downtime on this class of fault.

Back to blog