Problem Overview: SINAMICS CU320-2 EtherCAT Fault 5008 During Master Handshake
When a SINAMICS S120 drive line is built around a CU320-2 DP or CU320-2 PN control unit and is connected to a third-party EtherCAT master (Beckhoff TwinCAT, National Instruments PXI/LabVIEW, Codesys EtherCAT master, or Acontis EC-Master), the first commissioning attempts frequently stall during the AL state transition from PRE-OP to SAFE-OP. The master reports a slave initialization error, often logged as fault 5008 in TwinCAT, with a descriptive text indicating that the slave has no PDO (Process Data Object) mapping. The result is a non-functional cyclic data exchange: the drive stays in PRE-OP, the master shows the slave in red, and the application program cannot read control words, status words, setpoints, or actual values.
This article walks through the exact root cause, the diagnostic procedure, and a step-by-step configuration that resolves the fault. It is built around the official Siemens application example for the EtherCAT interface on the CU320-2 DP/PN, document ID 109757300, and applies equally to TwinCAT, NI LabVIEW, and any other EtherCAT master that follows the ETG (EtherCAT Technology Group) specifications.
Affected Hardware, Option Modules, and Required Firmware Baseline
The EtherCAT interface for SINAMICS S120 is not part of the standard CU320-2 onboard PROFINET or PROFIBUS interfaces. It is implemented as a dedicated option module that occupies the option slot of the CU320-2 control unit and exposes the drive as an EtherCAT slave running the CANopen over EtherCAT (CoE) device profile, in line with the standard ETG.5001.0001 specification and the modular device profile (ETG.5001.5000). The hardware variants that are in scope of this article are:
| Component | Designation | Role |
|---|---|---|
| Control Unit | CU320-2 DP (6SL3040-1MA00-0AA0) or CU320-2 PN (6SL3040-1MA01-0AA0) | Central drive controller for the SINAMICS S120 line |
| Option Slot | Option slot on the CU320-2 | Hosts the EtherCAT communication module |
| EtherCAT Option | EtherCAT interface module per SIOS 109757300 | Implements CoE slave and exposes the SINAMICS object dictionary |
| Commissioning Tool | STARTER (≤ V5.x) or Startdrive / SINAMICS Startdrive (≥ V15) | Parameterization, telegram selection, firmware update |
| EtherCAT Master | TwinCAT 3, NI LabVIEW with NI-Industrial Communications for EtherCAT, or any ETG-conformant master | Cyclic PDO exchange, SDO services, distributed clocks |
For the CoE slave to enumerate correctly on the EtherCAT network, the SINAMICS firmware on the CU320-2 must support the EtherCAT option. The application example 109757300 documents the supported firmware versions and the matching XML device description. Always cross-check the firmware version against the documentation revision history before commissioning; older V4.x firmware branches do not include the EtherCAT option and will refuse the module with a topology error during the STARTER topology wizard.
Root Cause: Why Fault 5008 Appears
Fault 5008 in this context is a slave-side PDO configuration error raised when the EtherCAT master attempts to map cyclic process data to the SINAMICS slave, but the slave's CoE object dictionary does not contain a valid 0x1C00 (Sync Manager PDO assignment) and 0x1A00/0x1C10-class entry set. The drive therefore reports that there is nothing to map. The most common root causes, ordered by frequency in field commissioning, are:
-
No telegram selected in the drive: In STARTER, under the drive object (e.g.
DO SERVOorDO VECTOR), the fieldp0922 = 0or the IF1 configuration is empty. With no telegram selected, the SINAMICS object dictionary has no PDO content for the EtherCAT option to expose, and the master fails the SAFE-OP transition. -
Missing or wrong ESI file: The master cannot read the device description because the
*.xmlESI is not installed in the master's repository (TwinCAT:C:\TwinCAT\3.1\Config\Io\EtherCAT; NI: in the I/O tree after installation). The master then falls back to a generic slave with default PDOs that the SINAMICS hardware does not implement. -
Sync Manager / DC configuration mismatch: The master configures
0x1C32/0x1C33(SM output/input parameter) for distributed clocks, but the SINAMICS option does not support DC in the current firmware branch. The slave rejects the assignment and the master raises a CoE init error. - Topology mismatch: The connected CU320-2 hardware is the DP variant but the project was created for the PN variant, or vice versa. The ESI in the master is for the wrong article number, so the slave identity (vendor ID + product code) does not match and the master treats it as a generic device.
- IF1/IF2 routing: The PROFIsafe/PROFINET onboard interface of the CU320-2 PN is bound to interface IF1, and the EtherCAT option is bound to IF2 (or vice versa), but the telegram is still configured against IF1. The EtherCAT option sees no assigned telegram and reports an empty PDO set.
p2030 on the drive object) before assuming a hardware defect.EtherCAT Communication Architecture for SINAMICS S120
The SINAMICS S120 line follows the standard SINAMICS interface model: each drive object (Servo, Vector, Infeed, Terminal Board, etc.) exposes a set of IF1 and IF2 interfaces for cyclic and acyclic communication. The EtherCAT option slots into IF1 or IF2 depending on the project and, from the master's perspective, the slave appears as a modular CoE device whose modules are mapped 1:1 to the SINAMICS drive objects present in the project.
The communication is layered as follows:
Process data exchange is cyclic and deterministic; the EtherCAT master's frame passes through the slave's ESC (EtherCAT Slave Controller), is processed on the fly, and forwarded to the next slave. SM2 (outputs) carries the master's setpoints to the drive, SM3 (inputs) carries actual values and status words back to the master. SM0 and SM1 are reserved for mailbox communication (CoE SDO services used during initialization, parameter read/write, and fault handling). Distributed clocks (DC) are optional and depend on the SINAMICS firmware branch; if the firmware does not support DC for the EtherCAT option, the master must be configured to operate in Free Run or SM-Synchron mode rather than DC-Synchron.
Prerequisites Before Configuration
Before touching the master project, ensure the following are in place. Skipping any of these is the most common reason that fault 5008 reappears after a clean reinstall.
- CU320-2 firmware: A version that supports the EtherCAT option, per the SIOS application example 109757300. Update using STARTER with the correct CF card image if necessary.
-
STARTER or Startdrive project: The SINAMICS topology is online, the drive objects are created, and the IF1 (or IF2) telegram is selected (
p0922on the DO is non-zero, e.g.p0922 = 1for standard telegram 1). - ESI file: The XML device description for the SINAMICS EtherCAT slave. This is shipped with the application example, the STARTER installation, or downloadable from Siemens Industry Online Support. Match the article number of the CU320-2 exactly (DP vs PN).
- EtherCAT master: TwinCAT 3.1 build 4024 or later, NI LabVIEW with NI-Industrial Communications for EtherCAT, or any ETG-conformant master with mailbox CoE support.
- Network cabling: Standard 100BASE-TX Cat5e or better. The EtherCAT link must be terminated by the master and must show link/activity on the slave's port 0 (input from master) and port 1 (output to next slave or unused for the last device).
Diagnostic Procedure: Isolating Fault 5008 in Five Checks
-
Inspect the master's slave state. In TwinCAT, expand
I/O → Devices → Device n (EtherCAT) → Box n (SINAMICS CU320-2)and read the State column. A persistentPRE-OPwith Init error indicates a CoE init failure. In LabVIEW, read theInit Statusproperty of the slave. -
Read the master's CoE diagnostics. TwinCAT exposes the slave's CoE history; the offending
Abort Codeon SDO transfer is typically0x06020000(object does not exist) or0x06040041(PDO mapping not allowed). Both confirm that the slave's object dictionary has no PDO entries assigned. -
Read the drive's parameter view. In STARTER, connect online and inspect
r2050(IF1 PROFIdrive PZD receive) andr2053(IF1 PROFIdrive PZD send). If both are empty, no telegram is assigned to the interface used by the EtherCAT option. -
Read the drive's
Ffault buffer. A fault code ofF08501(PROFIdrive PZD configuration error) orF08502on the drive side points to the same root cause as the master-side 5008: missing telegram assignment. -
Verify the ESI in the master. In TwinCAT, open
Tools → EtherCAT Device Manager, search for the SINAMICS part number, and confirm the ESI version matches the firmware version on the CU320-2. A mismatch results in a vendor ID / product code mismatch and the slave is treated as a generic device with no PDOs.
Step-by-Step Configuration: ESI File Installation
The ESI file is the master-side analog of a GSD/GSDML for PROFINET. It declares the slave's identity, the supported modules, and the PDO mapping that the master may use. Install it in the master before scanning the network.
- Download the ESI from the SIOS entry 109757300 or from the STARTER installation directory
...\Siemens\Automation\STARTER\EtherCAT. - For TwinCAT 3: copy the
*.xmlto%ProgramData%\Beckhoff\TwinCAT\3.1\Config\Io\EtherCATand restart the TwinCAT system service, or use Tools → EtherCAT Device Manager → Install. - For NI LabVIEW: use the NI EtherCAT Import Utility shipped with NI-Industrial Communications for EtherCAT, select the
*.xml, and import it into the project repository. - For Codesys: import via Tools → Device Repository → Install.
- Confirm installation by searching the device catalog for the SINAMICS part number; the slave should appear with the correct vendor ID (Siemens =
0x000000AE) and product code matching the CU320-2 variant.
Step-by-Step Configuration: Telegram and PDO Mapping in STARTER
The SINAMICS side of the configuration determines what the EtherCAT option has to expose. The mapping rule is simple: the cyclic PZDs (process data words) defined by the PROFIdrive telegram on the drive object are exposed 1:1 as CoE PDOs on the EtherCAT option. No telegram, no PDOs.
- Open the SINAMICS project in STARTER and go online with the CU320-2.
- Open the drive object (e.g.
Servo_01orVector_02) and select Configuration → Telegrams. - Set
p0922to the desired PROFIdrive telegram. Common choices:1(standard telegram 1, 2/2 PZD),2(2/2),3(9/9),4(10/10),5(6/6),7(2/2 + 2 safety),102(speed control, 10/10),105(servo with DSC, 10/10),106(servo with DSC + 2 ext enc, 12/12),116(servo with DSC + torque, 16/16). For motion control via EtherCAT, telegram105or106is the most common starting point. - Assign the telegram to the interface used by the EtherCAT option. By default this is
IF1for the onboard PROFINET/PN control unit and EtherCAT; checkp2030if a non-default routing is in use. - Save the project to the CF card and perform a power cycle of the CU320-2 (the option slot configuration is read at boot time).
- After reboot, in STARTER online, verify
r2050[0..15]andr2053[0..15]are populated with the PZD setpoint and actual-value structure of the chosen telegram.
The CoE object dictionary on the EtherCAT option is then populated automatically by the SINAMICS firmware from the IF1/IF2 PZD set. Each PZD slot becomes a 0x60xx (receive PDO mapping) or 0x70xx (transmit PDO mapping) entry that the master can assign to its process image.
Step-by-Step Configuration: TwinCAT Master Project Setup
- In TwinCAT 3, create or open an EtherCAT Master project (I/O → Devices → Add Device → EtherCAT → EtherCAT Master).
- Right-click the master and select Scan Boxes. TwinCAT should find the SINAMICS CU320-2 slave; if not, verify cabling, ESI installation, and the slave's
PRE-OPLED state. - Open the slave's Slots view. The slave exposes one slot per drive object present in the SINAMICS project (e.g. Servo, Vector, Infeed, TB30, TM31). Activate only the slots that correspond to physical drive objects in the running CU320-2; activating a non-existent slot results in a CoE init error.
- For each activated slot, expand PDO Assignment and confirm the PDOs match the telegram selected in STARTER. If the master shows no PDOs for a slot, the drive object has no telegram assigned to the active interface; revisit
p0922on the drive object. - For each PDO, click Auto Compute Process Data to let TwinCAT build the process image, or assign variables manually. Set the cycle time to a multiple of 250 µs that is compatible with the SINAMICS cycle (
r2060[0]for IF1); 1 ms is a safe default for non-DC applications, 500 µs or 250 µs is typical for DC-synchronized servo control. - Choose the synchronization mode. If the SINAMICS firmware supports DC on the EtherCAT option (verify in the application example 109757300), set the master and the slave to DC-Synchron; otherwise, set the slave to SM-Synchron with the master cycle time matching the SINAMICS cycle.
- Save the TwinCAT project, Activate Configuration, and observe the AL state. The slave should transition
INIT → PRE-OP → SAFE-OP → OPwithin a few seconds, and fault 5008 should clear.
r2060[0], or move the EtherCAT option to a CU320-2 slot whose drive cycle is a multiple of the chosen EtherCAT cycle.Step-by-Step Configuration: NI LabVIEW / PXI Master
- Open the LabVIEW project and ensure the NI-Industrial Communications for EtherCAT driver is installed and licensed for the PXI chassis.
- Add the SINAMICS CU320-2 slave from the device catalog. The NI driver uses the same ESI file as TwinCAT; copy it to the NI device repository if it is not listed automatically.
- Configure the master cycle to 1 ms (typical PXI default) and enable Distributed Clocks only if the firmware supports it. With NI masters, DC support for third-party slaves is sometimes limited; Free Run is the safest starting point.
- Map the PDOs to LabVIEW I/O variables. The driver creates typed clusters for control word (
STW1), status word (ZSW1), setpoint, and actual value. Wire the drive'sSTW1to a Boolean cluster that you write from the FPGA or real-time scan engine. - Build and deploy the RT target. The slave should reach
OPstate; if it remains inPRE-OPwith a CoE Init error, the same root cause (missing PDO) applies. Recheck the telegram assignment in STARTER.
Verification: Confirming Cyclic Data Exchange
Once the master reaches OP, perform the following end-to-end checks. They confirm that fault 5008 is fully resolved and that the SINAMICS option is exchanging real process data.
-
AL state in the master: Slave shows green,
State = OP,Sync Manager 2/3state bothOP. -
PDO counters: TwinCAT exposes
RxPDO ToggleandTxPDO Togglebits in the slave's Online tab. With the drive enabled in the master, these must toggle every cycle. -
Drive-side process data: In STARTER online, monitor
r2050[0](control word from master) andr2053[0](status word to master). Toggle the master'sSTW1bit 0 (OFF/ON) and observe the corresponding bit inr2053[0]. This confirms end-to-end PDO integrity. -
SINAMICS diagnostic buffer: Read
r0947/r2122for the most recent fault codes. A clean running system shows no new entries after a 5-minute soak. -
Cycle time conformance: Compare the SINAMICS IF1 cycle (
r2060[0]) with the master cycle. They must be in a 1:1, 2:1, or 4:1 integer ratio.
Troubleshooting Matrix: Common EtherCAT Faults on CU320-2
| Symptom (master side) | Slave AL state | Drive fault code | Root cause | Action |
|---|---|---|---|---|
| Fault 5008, no PDO assigned | PRE-OP → SAFE-OP rejected | F08501, F08502 | No PROFIdrive telegram assigned to IF1/IF2 in STARTER | Set p0922 on the DO, save to CF, power cycle |
| Generic slave, vendor ID 0x00000000 | PRE-OP | None | ESI not installed or wrong variant (DP vs PN) | Install correct ESI per SIOS 109757300 |
| CoE SDO abort 0x06040041 | PRE-OP | None | Master attempts to remap a PDO that the slave does not support | Use Auto Compute Process Data in the master, do not remap manually |
| Sync Manager Watchdog timeout | OP → SAFE-OP | F08510 | Master cycle time shorter than SINAMICS IF1 cycle | Match cycles 1:1, 2:1, or 4:1 |
| Slave visible but Init error | INIT | F08505 | Option module not recognised on boot | Verify CF card image, check option slot seating, reflash firmware |
OP achieved, but ZSW1 never updates |
OP | None | PDO mapping uses IF2 but the master reads IF1 entries | Confirm p2030 on the DO, remap PDOs to the active interface |
| Master loses slave intermittently | OP → INIT | F01910 / F08502 | PROFINET/EtherCAT conflict on IF1 of a CU320-2 PN | Route EtherCAT to IF2 by p2030 = 9 (IF2) on the DO |
Field-Proven Best Practices for Production Deployment
- Pin the ESI version in the master. Every update of the SINAMICS firmware should be matched by a re-validated ESI; otherwise the master silently falls back to a generic device description.
- Use the slowest cycle time that meets the motion control requirement during commissioning. Push the cycle down only after the system has been stable for at least one shift.
- For motion control via EtherCAT, prefer DC-Synchron only if the SINAMICS firmware branch explicitly supports it; SM-Synchron is a robust fallback for installations where DC jitter on long networks is a concern.
- Document the
p0922,p2030, and the chosen PROFIdrive telegram in the project's communication plan. The combination is the single most common source of post-commissioning EtherCAT issues. - Always save to the CF card and power cycle after changing telegram assignments; online-only changes do not take effect on the option module's boot-time configuration.
FAQ
What exactly is TwinCAT fault 5008 on a SINAMICS CU320-2 EtherCAT slave?
Fault 5008 is a master-side report of a slave initialization failure during the PRE-OP to SAFE-OP transition. In most cases the underlying cause is that the SINAMICS CoE object dictionary contains no PDO mapping for the active IF1/IF2 interface, so the master has nothing to assign to its process image. Fix it by selecting a PROFIdrive telegram in STARTER (p0922), saving to the CF card, and power-cycling the CU320-2.
Which Siemens firmware version of the CU320-2 supports the EtherCAT option?
Support depends on the firmware branch. The official application example at SIOS 109757300 lists the supported SINAMICS versions and the corresponding ESI revision. Always cross-check the firmware version of the EtherCAT option module, not just the CU320-2 control unit.
Can I use the onboard PROFINET port of the CU320-2 PN for EtherCAT?
No. EtherCAT on SINAMICS S120 is implemented only via the dedicated EtherCAT option module that occupies the option slot of the CU320-2. The onboard PROFINET interface of the CU320-2 PN cannot be reconfigured to run EtherCAT. If you need PROFINET and EtherCAT on the same CU320-2, route them to separate IF1/IF2 interfaces and use the appropriate telegram routing (p2030).
Which PROFIdrive telegram should I select for motion control over EtherCAT?
For most servo motion applications, telegram 105 (servo with DSC, 10 PZD receive / 10 PZD send) or telegram 106 (servo with DSC and two external encoders, 12/12) is the recommended starting point. For simple speed control without DSC, telegram 1 or telegram 2 is sufficient. The choice is made in STARTER on the drive object via p0922.
Why does my slave reach OP state but the drive status word never updates?
This is almost always an IF1/IF2 mismatch: the PROFIdrive telegram is assigned to IF1 in STARTER, but the EtherCAT option is wired to IF2, or vice versa. Verify the IF assignment with parameter p2030 on the drive object and confirm that the active PDO set in the master (0x1A00 / 0x1C10 indexes) corresponds to the same interface.
Where can I download the official ESI file for the SINAMICS CU320-2 EtherCAT option?
The XML device description is shipped with the STARTER/Startdrive installation and is also attached to the SIOS application example 109757300. Use the article number that exactly matches the CU320-2 variant (DP vs PN) and the firmware version of the option module.