Resolving SINAMICS S120 Isochronous Mode Compile Error in TIA

David Krause10 min read
SiemensTIA PortalTroubleshooting
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: SINAMICS S120 Isochronous Mode Compile Error in TIA Portal

During hardware compilation of a TIA Portal project that contains a SINAMICS S120 drive on PROFINET IRT, the build aborts with the following error from the device configuration compiler:

Isochronous mode must be enabled on submodule, because the submodule is operating in isochronous mode

When the engineer opens the S120 in the device view, navigates to Properties → Advanced options → Detail overview, the Iso mode checkbox is grayed out. Toggling it is impossible because the dependency on the parent IRT configuration has not been satisfied. The build will not produce a downloadable configuration until the isochronous enable propagates to every required subslot.

Symptom signature: TIA Portal V16/V17/V18/V19/V20 hardware compile fails on the S120. The drive appears as IRT Sync Slave in the topology, but the submodules (telegram 105, additional telegram 701) report inconsistent isochronous state. The compile log cites a specific submodule (typically subslot 1 of the drive object) as the source of the fault.

Root Cause Analysis

The error is generated when the PROFINET controller (S7-1500, S7-1200 G2, or ET 200 CPU) is configured as an IRT sync master and has placed a SINAMICS S120 in a synchronized IRT domain, but the isochronous enable flag is missing on at least one of the drive's submodules. The TIA Portal compiler reconciles the isochronous state from the top down: first the sync domain, then the IO device, then each submodule. If any subslot is not individually marked isochronous, the device-level flag is locked and the build rejects the configuration with diagnostic Parameter error at startup.

Two conditions commonly trigger the lockout:

  1. Missing IRT-class assignment on the S120 IO device. The drive must be set to IRT (synchronization) rather than RT. The S7 CPU defaults to RT Class RT for non-CPU devices unless explicitly overridden.
  2. Zusatztelegramm 701 (PZD-2/5) is configured as RT only. Telegram 105 is often auto-set to IRT by the catalog, but the supplementary telegram 701 frequently remains in RT class, which breaks the isochronous chain. TIA Portal therefore refuses to enable isochronous mode on the parent subslot.

Architecture and Topology Requirements

Isochronous PROFINET requires three architectural conditions to be in place before the S120 submodules will accept the enable:

Layer Required Setting Location in TIA Portal
Sync domain At least one device designated as Sync Master, all drives as Sync Slave Topology view → Sync domains
Controller port IRT class, fixed ports assigned, no auto-negotiation on sync ports Device view → PROFINET interface → Ports
IO device (S120) RT class = IRT, isochronous application cycle = bus cycle (or divisor) Properties → PROFINET interface → Real time settings
Drive submodules Every used telegram marked isochronous, including the supplementary 701 Device view → Subslot → Properties → Addresses

The isochronous application cycle in the S7-1500 is tied to OB61 (or OB6x for the servo/IPO task). Per the official TIA Portal functional description, you cannot add an F-OB with event class Synchronous Cycle directly during the configuration of isochronous mode. Add the standard OB first, validate the build, and only then insert any F-OB referencing the isochronous event class (see Siemens Support ID 54110126).

Prerequisites

  • TIA Portal V16 or later (V18/V19/V20 recommended for current SINAMICS S120 GSDML/GSD variants).
  • Installed HSP (Hardware Support Package) for the SINAMICS S120 CU320-2 PN or CU310-2 PN firmware version present in the cabinet.
  • CPU firmware that supports IRT class 2: S7-1500 (FW ≥ 1.8 minimum for full IRT), S7-1200 G2 (FW ≥ 4.4 with IRT support), or ET 200SP CPU.
  • Drive firmware with PROFINET IRT isochronous support: SINAMICS S120 with SW ≥ 4.7 on CU320-2 PN (check p978 on the drive Control Unit for the active version).
  • Project must contain the S120 in the device tree with telegrams 105 and 701 inserted in the device view.

Step-by-Step Configuration

Follow this sequence exactly. Order matters: changing the sync domain after configuring subslots can revert the isochronous enable and require re-entry.

Step 1 - Assign the Sync Domain

  1. Open the Topology view in the project.
  2. Right-click the S7 CPU and select PROFINET interface → Sync domain.
  3. Create a new sync domain if none exists, or join the existing one.
  4. Mark the CPU as Sync Master.
  5. Select the SINAMICS S120 IO device and set its role to Sync Slave (IRT). This is the setting that drives the rest of the configuration; without it, the device view will continue to show RT and the Iso mode checkbox will remain grayed out.

Step 2 - Set the S120 IO Device to IRT

  1. Open the Device view for the SINAMICS S120.
  2. Select the PROFINET interface of the drive.
  3. Go to Properties → PROFINET interface → Real time settings.
  4. Set RT class = IRT.
  5. Set the Synchronization role to Sync Slave.
  6. Confirm the Send clock matches the controller (typical values: 250 µs, 500 µs, 1 ms, 2 ms). The isochronous application cycle must be a multiple of the send clock.

Step 3 - Enable Isochronous Mode on Telegram 105 Subslot

  1. In the device view of the S120, locate the Subslot table on the right pane.
  2. Select the subslot that contains Standard telegram 105 (PZD-10/15).
  3. Open Properties → Addresses for that subslot.
  4. Under the IO addresses section, locate the Isochronous mode option and tick it.
  5. Assign the inputs and outputs to a process image partition (PIP). The PIP is consumed by the isochronous OB. If you skip this step, the isochronous enable is rejected even if the checkbox is set.

Step 4 - Configure Zusatztelegramm 701 (PZD-2/5) as IRT

This is the most frequently missed step and the direct cause of the reported failure.

  1. In the same S120 device view, select the subslot containing Zusatztelegramm 701 (PZD-2/5) - this is the supplementary telegram used for Siemens-specific status words beyond what 105 carries.
  2. Open Properties → Addresses.
  3. Set the RT class to IRT (this is independent of the parent device's RT class setting and must be applied per subslot).
  4. Tick Isochronous mode.
  5. Assign its I/O addresses to the same process image partition used in Step 3.
Key point: TIA Portal will only allow Iso mode to be checked on subslots whose parent IO device is set to IRT Sync Slave. If the option is still grayed out after Step 1, return to the sync domain and confirm the S120 is not still on RT or IRT (not synchronized).

Step 5 - Assign the Process Image Partition to the Isochronous OB

  1. In the project tree, open Program blocks.
  2. Add a new OB of type Synchronous Cycle (OB61 in S7-1500, or the equivalent on S7-1200 G2).
  3. Open the OB properties and assign the PIP created in Steps 3 and 4.
  4. Inside the OB, access the drive process data via direct PIP I/O access (e.g. %IW symbolic names from the subslot addresses).

Per the TIA Portal functional description for S7-1500 central I/O isochronous mode, three things must be in place: isochronous enable on the module, address assignment to a PIP, and the OB referencing that PIP. Missing any one of the three yields the same compile error pattern (S7-1500 Isochronous Mode Configuration).

Verification

After completing the configuration, perform these checks in order:

  1. Hardware compile. Right-click the device → Compile → Hardware (rebuild all). The error must clear. If it persists, repeat Step 4 - the most common cause of a second failure is an additional subslot (often telegram 750 for the DO telemetry channel) that has not been promoted to IRT.
  2. Topology compile. Right-click the PROFINET subnet → Compile. The topology editor must show no port-interconnection warnings between the CPU and the S120.
  3. Download to the CPU. Connect online and download the hardware configuration.
  4. Online diagnostics. Open Online & diagnostics → PROFINET diagnostics on the S120. Confirm:
    • RT class = IRT
    • Sync role = Slave, synchronized
    • No Parameter error alarm on any subslot
    • Data status of telegram 105 and telegram 701 = Valid (0x00 qualifier)
  5. OB61 execution. In online view, confirm OB61 is being called at the configured isochronous application cycle and that the PIP addresses contain fresh process data each cycle. A static value indicates the PIP is bound to the wrong OB or to no OB at all.

Diagnostic Alarms and Error Codes

When the S120 rejects a configuration because of inconsistent isochronous settings, the drive raises a PROFINET channel diagnostics alarm. The most common channel error codes seen at commissioning:

Channel Error Code (hex) Meaning Likely Cause
0x0000 No error Configuration accepted
0x0010 Parameter error - submodule Telegram 105 or 701 not flagged isochronous
0x0011 Parameter error - IO device RT class of device does not match submodule expectation
0x0015 Configuration error - slot Slot number does not match GSDML definition
0x0018 Isochronous mode mismatch Subslot cycle time does not match the sync master
0x001A Sync domain inconsistency Sync slave has no reachable sync master

These codes appear in the S120 diagnostics buffer as PROFINET alarms and are mirrored in TIA Portal under Online & diagnostics → Diagnostics buffer. For GSDML-based configurations, an inconsistent submodule choice will cause the controller to reject the device entirely with a Parameter error alarm (TIA Portal Isochronous Mode documentation).

Common Pitfalls

  • Mixing RT and IRT subslots on the same drive. If any subslot remains in RT class, the device-level isochronous enable is blocked. Promote every subslot that carries process data.
  • Send clock mismatch. Setting the CPU send clock to 1 ms and the S120 to 250 µs is a common mistake; the slave must be a divisor of the master, not a multiple.
  • PIP assigned but no synchronous OB. The PIP is consumed only by the OB61. Without the OB, the compile may succeed but no data flows at runtime.
  • Inserting F-OB before standard OB. The F-OB with event class Synchronous Cycle must be added after the standard OB; adding it first produces its own error in TIA Portal (see Siemens Support ID 54110126).
  • GSDML vs. HSP configuration. A drive imported via GSDML requires manual selection of the isochronous configuration; an HSP-imported drive may default to IRT but still needs the subslot-level enable.
  • Topology port assignment. Sync domains require explicit port interconnection in the topology view. Leaving ports in Auto mode defeats the sync chain.

Telegram and Subslot Reference

The S120 PROFINET interface uses a fixed slot/subslot map that TIA Portal populates from the GSDML. The most commonly used telegrams in an isochronous application:

Telegram Type PZD Width (PZD-IN/PZD-OUT) Typical Use Iso Mode Required?
105 Standard 10 / 15 Positioning, setpoints, status words, encoder values Yes for IRT
701 Supplementary 2 / 5 Siemens-specific extension (e.g. safety telegram integration) Yes when chained with 105
750 Supplementary variable DO Telemetry, free mapping Only if used in the isochronous OB
1 to 6 Standard 2 to 14 Speed control, basic positioning Yes for IRT

Application Cycle and Timing

Choose the isochronous application cycle based on the mechanical dynamics:

Application Typical Cycle Send Clock OB
Positioning, camming 1 ms 250 µs OB61
High-speed printing, packaging 500 µs 250 µs OB61 with IPO fast
General motion 2 ms 500 µs OB61 or OB62
Low-dynamics pumping, fans 4 ms 1 ms OB61

Jitter tolerance for SINAMICS S120 is documented in the SINAMICS S120 Function Manual. Exceeding it causes the drive to drop out of synchronization and raise F08501 (life sign monitoring). The S7-1500 jitter on PROFINET IRT is typically below 1 µs, well within drive tolerance.

FAQ

Why is the Iso mode checkbox grayed out in the SINAMICS S120 device view?

The S120 has not been placed in an IRT sync domain as a Sync Slave. Open Topology view, create or join a sync domain, mark the CPU as Sync Master, and set the S120 to Sync Slave (IRT). The Iso mode checkbox becomes editable once the device-level RT class is IRT.

Do I have to set IRT on every subslot, or only on telegram 105?

You must set IRT and isochronous mode on every subslot that carries process data used by the isochronous OB. In the typical SINAMICS S120 configuration this means telegram 105 and Zusatztelegramm 701 (PZD-2/5). Missing 701 is the most common cause of the reported compile error.

Can I add an F-OB with event class Synchronous Cycle during isochronous configuration?

No. Per Siemens Support article 54110126, the F-OB must be added after the standard synchronous OB is configured and validated. Adding it first triggers a separate compile error and is not supported.

What send clock and isochronous cycle should I use for a 1 ms motion application?

Use a 250 µs send clock on the PROFINET sync domain and set the isochronous application cycle to 1 ms. The cycle must be an integer multiple of the send clock; 500 µs and 2 ms are also valid choices depending on jitter budget and CPU load.

The hardware compiles now but OB61 sees no fresh data. What is wrong?

The process image partition (PIP) on the subslot addresses is not bound to the synchronous OB. Open the OB properties and assign the same PIP that was configured on the subslots in Steps 3 and 4. Without that binding, the compiler does not link the PIP to the OB and the data is never refreshed inside the synchronous cycle.

Back to blog