1. Problem Statement
During hardware configuration in TIA Portal V15.1 Update 4, the compiler raises the following diagnostic message in the project tree under Devices & Networks > Compile errors:
"No update time can be calculated for an IO device ..."
The message is non-fatal (compile still produces a buildable project in some cases) but blocks download to the target PLC and prevents the IRT (Isochronous Real Time) communication channel from being established to the affected drive. In the field this symptom appears most often when a third-party servo controller is added to a SIMATIC CPU 1515T-2 PN project and the standard Siemens Telegram 105 (also called the Standard Telegram 105, PROFIdrive application class 4) is selected from the submodule list of the drive's PROFINET interface.
The error is misleading because it suggests a missing timing parameter. The real cause is that Telegram 105 is an IRT-capable PROFIdrive telegram, and TIA Portal will not compute a valid send/receive clock or update time until the device is included in a PROFINET topology together with the IO Controller and the sync master.
2. Affected Components and Versions
| Component | Model / Version | Notes |
|---|---|---|
| Engineering Framework | Siemens TIA Portal V15.1 Update 4 (and earlier V15.x) | Same root cause applies to V16, V17, V18, V19 if topology is missing |
| PLC (IO Controller) | SIMATIC S7-1500T CPU 1515T-2 PN (6ES7515-2TM02-0AB0) | Any S7-1500/S7-1500T with PROFINET IRT support is affected |
| Drive (IO Device) | Festo CMMT-AS series servo drive | Specifically when added with a Siemens-standard submodule such as Telegram 105 |
| PROFINET Telegram | Siemens Standard Telegram 105 (PZD-12/12 IRT) | IRT telegrams include 1, 2, 3, 4, 5, 6, 7, 9, 102, 105, 106 |
| GSD / GSDML | Festo CMMT-AS GSDML file (current version 2021 or later recommended) | Older GSDML versions may not expose Telegram 105 correctly |
3. Root Cause Analysis
PROFINET defines three timing classes:
- RT (Real Time) Class 1 — best-effort cyclic data, no isochronous guarantee, typical update 1–4 ms.
- RT (Real Time) Class 2 (formerly "IRT with high flexibility") — prioritized RT, jitter in the µs range, no isochronous application requirement.
- IRT (Isochronous Real Time) — strictly scheduled, phase-locked to the sync master clock, used for motion control applications where the IO Controller and IO Device exchange process data inside an isochronous bus cycle.
Siemens Standard Telegrams 1, 2, 3, 4, 5, 6, 7, 9, 102, 105, and 106 are defined as IRT-capable in the PROFIdrive profile and require the IO device to be placed inside a Sync Domain with the controller and a designated Sync Master. Until the topology editor contains a complete physical connection graph between the sync master, the controller port, and every IRT device, TIA Portal cannot derive the propagation delay and therefore cannot compute the update time (Ti, To) and the send clock (Tsync).
The exact compile error wording is generated by the TIA Portal device configurator when:
- At least one PROFINET device in the project is configured with an IRT telegram (such as Telegram 105), AND
- That device has no topology neighbor assigned in Devices & Networks > Topology view, AND
- No sync domain has been created or the device is not a member of one.
Resolving the message therefore has nothing to do with manually entering an update time — it is fixed entirely by completing the topology description.
4. Prerequisites for Resolution
Before opening the Topology editor, confirm the following:
- The CPU 1515T-2 PN must support IRT. All S7-1500T CPUs do; standard S7-1500 CPUs from firmware V2.0 onward also support IRT for the PROFINET interfaces X1 and X2.
- The PROFINET device (Festo CMMT-AS) must be installed from a GSDML file that exposes IRT telegrams. Submodule "Standard Telegram 105" must be selectable.
- The Ethernet cabling must be known (port-to-port). Record which port of the switch/controller each CMMT-AS is wired to, including intermediate switches if any.
- The IO Controller must be designated as Sync Master in the PROFINET interface properties. If a managed IRT switch is used, it can be Sync Slave; otherwise the CPU is the sole sync master.
5. Step-by-Step Resolution: Building the Topology
5.1 Open the Topology View
- In the TIA Portal project tree, open Devices & Networks.
- Click the Topology view tab at the bottom of the work area (next to Network view, Device view, and Topology view).
- The topology editor opens as a blank canvas representing the physical PROFINET network. Devices already in the project appear as nodes.
5.2 Designate the Sync Master and Sync Domain
- Double-click the CPU 1515T-2 PN node in the topology view.
- In the inspector pane, switch to PROFINET interface > Sync domain.
- Select "Create new sync domain" and set the role of the CPU to Sync Master.
- Set the send clock (Tsync) — for motion applications 1.000 ms is typical; the controller will then derive reduction ratios to achieve the target update time (e.g. 1 ms with reduction 1:1, or 500 µs with reduction 1:2).
5.3 Add the Festo CMMT-AS to the Sync Domain
- Right-click the CMMT-AS node in the topology view and choose Properties > PROFINET interface > Sync domain.
- Assign the device to the same sync domain created in 5.2.
- Set its role to Sync Slave.
5.4 Draw Physical Interconnections
The topology editor uses "ports" (not "devices") to define physical wiring. For a star topology with the CPU as the central node:
- Hover over a port symbol on the CPU (e.g. Port 1 of X1) until the cursor becomes a connector.
- Drag a connection to the corresponding port of the Festo CMMT-AS (e.g. Port 1).
- Repeat for every additional IRT device in the project.
- If intermediate switches are present, connect CPU → switch port N, then switch port M → CMMT-AS port 1. The switch itself must also be a PROFINET device with its own GSDML.
5.5 Recompile
- Right-click the CPU in the project tree and choose Compile > Hardware and software (rebuild all).
- Open the Info pane > Compile tab. The error "No update time can be calculated for an IO device ..." should now be absent.
- If the error persists, click the green arrow icon next to the message — TIA Portal will jump to the device whose topology is still missing.
6. Verification
After recompiling, perform the following checks to confirm the IRT channel is healthy:
- Online > Accessible nodes in the project tree. The Festo CMMT-AS should appear with a valid IP and PROFINET device name.
- Open the Online & Diagnostics view of the CPU and navigate to PROFINET > Diagnostics. The IRT devices should be listed with state "Connected, OK".
- From the device diagnostics of the CMMT-AS, verify the Sync Master matches the CPU MAC, the Send Clock is the value set in step 5.2, and the Update Time is the resolved reduction ratio (e.g. 1 ms).
- Watch the isochronous task in the S7-1500 CPU: the OB91 (or technology synchronous OB) must show a constant jitter < 1 µs across multiple cycles.
7. Common Related Error Codes and Messages
| Compiler / Online Message | Meaning | Typical Fix |
|---|---|---|
| "No update time can be calculated for an IO device ..." | Missing topology or sync domain membership for an IRT telegram | Add topology connections and sync domain as described above |
| "The PROFINET device ... is not assigned to a sync domain." | Device was created with IRT telegram but not in any sync domain | Assign to the existing sync domain in PROFINET interface properties |
| "Send clock ... is not supported by the IO device." | Send clock too low for the device's PROFINET ASIC | Increase Tsync to the next supported value (e.g. 1 ms instead of 250 µs) |
| "The port ... has multiple port partners." | Topology view has duplicate connections | Delete the redundant port-partner assignment |
| Diagnostic buffer entry 0x001E "PROFINET IO sync loss" | Physical interruption or invalid topology during runtime | Verify cable, check sync master settings, re-import topology from device |
| Diagnostic buffer entry 0x001F "PROFINET IO sync timeout" | Sync slave lost lock to the sync master | Reduce number of IRT devices, increase send clock, or move CMMT-AS closer to controller |
8. Edge Cases and Field-Proven Pitfalls
- Switch between controller and drive is not IRT-capable. Many unmanaged commercial switches (e.g. simple office switches) will silently degrade IRT to RT, and TIA Portal may still report "No update time can be calculated" because the propagation delay model is undefined. Replace with a PROFINET IRT-aware switch (e.g. Siemens Scalance XC-200/XB-200/XC-300 with IRT support, or the SCALANCE XC-100 in IRT mode) or wire the drives in a star directly to the CPU ports (the CPU 1515T-2 PN has an internal 2-port switch per PROFINET interface).
- GSDML version mismatch. A Festo CMMT-AS delivered with firmware < V1.0.0 may have an older GSDML that lists Telegram 105 as a watchdog-disabled variant. After updating the CMMT-AS firmware via Festo Automation Suite, reinstall the new GSDML in TIA Portal (Options > Manage general station description files), and refresh the device catalog entry.
- CPU firmware too old. The S7-1500T CPU 1515T-2 PN must be on firmware V2.0 or higher for full IRT with reduction 1:1 at 1 ms. Older firmware is unable to honor Telegram 105 isochronously. Update the CPU firmware via TIA Portal Online & Diagnostics > Firmware update or via SIMATIC Automation Tool.
- Multiple sync masters. Defining two IO Controllers as sync masters in the same sync domain will collapse the compile to a topology error similar to the one above. The CPU 1515T-2 PN must be the unique sync master; any other controller on the same physical network must be a sync slave or outside the sync domain.
- Topology imported from offline vs. online. If you used Online > Topology discovery, TIA Portal will overwrite the offline view with the discovered wiring. Always verify the discovered topology matches the actual cabling before compiling.
9. Alternative Approaches
If you cannot complete a full topology (e.g. the physical wiring will change frequently, or the system is in a commissioning phase without final cabling), you can downgrade Telegram 105 to an RT telegram temporarily:
- Open the CMMT-AS Device view, switch to the PROFINET interface > Module parameters.
- Replace the Standard Telegram 105 submodule with Standard Telegram 1 (setpoint/actual value, 32-bit) or Standard Telegram 3 (8 PZD). These are RT-class telegrams and do not require a topology.
- Disable isochronous mode in the drive's configuration (isochronous = unchecked in the submodule properties).
Be aware: with RT telegrams, the S7-1500T technology objects will operate in non-isochronous mode, and motion control jitter will rise from < 1 µs to roughly 100–500 µs. Use this only for pre-commissioning I/O checks, not for production motion performance.
10. References to Official Documentation
For deeper background, consult the following primary Siemens and Festo manuals. These should be treated as authoritative for product-specific behavior:
- Siemens Function Manual PROFINET with STEP 7 / TIA Portal — IRT and sync domain chapters.
- Siemens SIMATIC S7-1500 S7-1500T Motion Control Function Manual — telegram configuration for servo drives.
- Festo CMMT-AS Commissioning Manual (Festo Automation Suite documentation set) — Telegram 105 mapping and PROFIdrive parameter set.
11. Quick-Reference Checklist
| Step | Action | Status |
|---|---|---|
| 1 | Open Devices & Networks > Topology view | ☐ |
| 2 | Create sync domain, set CPU as Sync Master | ☐ |
| 3 | Assign CMMT-AS to the same sync domain as Sync Slave | ☐ |
| 4 | Draw physical port-to-port connections for all IRT devices | ☐ |
| 5 | Verify send clock and update time on the inspector pane | ☐ |
| 6 | Recompile hardware, confirm no more "update time" error | ☐ |
| 7 | Download to CPU, go online, check PROFINET Diagnostics | ☐ |
| 8 | Watch OB91 / TO_SynchronousAxis jitter < 1 µs | ☐ |
12. Frequently Asked Questions
What does the TIA Portal error "No update time can be calculated for an IO device" mean?
It means a PROFINET device configured with an IRT telegram (such as Telegram 105) is missing a topology connection or sync domain membership. TIA Portal cannot derive the send clock and update time until the device is wired into the topology editor and assigned to a sync domain with the IO Controller as sync master.
Does Telegram 105 always require PROFINET IRT topology?
Yes. Siemens Standard Telegram 105 is an IRT-capable PROFIdrive telegram (PZD-12/12, application class 4). Any device using it must be placed in a sync domain and given a physical topology connection in TIA Portal before compilation will succeed.
Can I bypass the topology editor and just enter an update time manually?
No. The update time is computed by TIA Portal from the sync domain, send clock, and physical wiring. Manual entry is not exposed in the user interface, and even if it were, the resulting runtime configuration would still fail because the IRT scheduler would have no port-partner information.
Will the same fix work for other Siemens standard telegrams like 1, 3, 6, 102, 106?
Yes — any IRT-capable Siemens standard telegram (1, 2, 3, 4, 5, 6, 7, 9, 102, 105, 106) requires the same topology and sync domain setup. RT-only telegrams (e.g. Festo-specific telegrams added via GSDML) do not require a topology.
What send clock should I use for a Festo CMMT-AS on a CPU 1515T-2 PN?
For most motion control applications using TO_SynchronousAxis on the S7-1500T, a send clock of 1.000 ms with reduction 1:1 (update time 1 ms) is the recommended starting point. If the CMMT-AS firmware and bus cabling support it, 500 µs send clock with 1 ms update (reduction 1:2) provides lower jitter for high-dynamic axes.
Does the SCALANCE switch between the controller and the CMMT-AS have to be IRT-aware?
Yes. If a switch is in the IRT path, it must be a PROFINET IRT-capable switch (e.g. Siemens SCALANCE XC-200, XC-300, or the SCALANCE XC-100/200 in IRT mode). Unmanaged office switches will silently degrade IRT to RT and re-trigger the "no update time" compile error.