Resolving F01912 Sign-of-Life Faults on SINAMICS S120 S7-1500T

David Krause19 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

Resolving F01912 Sign-of-Life Faults on SINAMICS S120 S7-1500T

SINAMICS S120 commissioning with an S7-1500T controller and Startdrive in TIA Portal V16 typically produces clean axis motion within minutes when the PROFINET IRT topology, the telegram assignment, the OB Servo cycle, and the MC_Servo technology object are all aligned. When one of these four pillars is misaligned, the drive reports F01912 (controller sign-of-life failure) within seconds of the first enable, often paired with F01910, A01980, and a downstream A07565 on the technology object. The root cause is almost always PROFINET isochronity, never a defective motor. This article gives an engineer-grade procedure for diagnosing and resolving the F01912 / A07565 combination on a SINAMICS S120 booksize configuration with a CU320-2PN control unit, telegram 105, and S7-1500T motion control.

1. Hardware and Software Configuration Under Test

The reference installation in this guide is the exact configuration from the original commissioning case:

Component Article Number Role
Smart Line Module (Booksize, 5 kW internal air cooling) 6SL3130-6AE15-0AB0 DC-link infeed, 600 V DC, 5 kW
Motor Module (Booksize Compact, 3 A / 3 A) 6SL3120-2TE13-0AA3 Single-axis inverter for 1FK7 motor
Servomotor (1FK7 compact, 63 mm shaft height, with absolute encoder) 1FK7042-2AF71-1RA0-Z Positioning axis, ~4.5 Nm stall, with Z option (e.g. special paint or connector)
Control Unit 6SL3040-1MA01-0AA0 (CU320-2 PN) DRIVE-CLiQ master + PROFINET IO Controller/ Device
Controller S7-1515T-2 PN (or any S7-1500T) Motion Control technology CPU
Engineering TIA Portal V16 + Startdrive V16 Configuration, telegram mapping, MC_Servo
Telegram SIEMENS telegram 105 10 PZD / 10 PZD, 2 encoders, position control

All components are connected via DRIVE-CLiQ; the CU320-2 PN is the PROFINET IO Device. The S7-1500T acts as PROFINET IO Controller and synchronizes the drives in IRT (isochronous real-time) mode. The MC_Servo technology object in the PLC feeds position setpoints through telegram 105 and reads back the actual position, status, and the controller sign-of-life.

Verification before you start. Confirm that the CU320-2 PN firmware is at least V5.2 SP3 (Startdrive V16 baseline). On older CU firmware the PROFINET IRT stack does not interoperate cleanly with TIA Portal V16 isochronous configuration, and F01912 can be triggered by an internal stack time-out rather than by the PLC.

2. Problem Description: The Symptom Pattern

The fault pattern on a fresh S120 + S7-1500T project is consistent and reproducible:

  1. Project compiles, Startdrive goes online without errors.
  2. From the CU-level commissioning tool, both axes can be jogged and produce torque. Alarm A07565 (drive: encoder warning) is reported for both motors even though no motion profile is being executed.
  3. When the user switches to the TO-level commissioning panel (right-click on MC_Servo → Commissioning → Axis control panel), the panel returns "Drive fault, operation not possible" and no alarm is visible at the TO.
  4. After reconnecting to the CU, the buffer shows a long list of acknowledged faults: F01910 (PROFINET: connection interrupted), A01980 (PROFINET: connection fault), and F01912 (PROFINET: sign-of-life failure on controller → drive). All faults can be acknowledged and the motor then starts from the CU panel.
  5. Removing the application program (only the hardware configuration + technology objects remain) allows the TO panel to enable the drive. Adding the application program back reintroduces F01912 within a few seconds.

This symptom set is diagnostic: the drive and motor are healthy, the hardware topology is correct, and the TO can command the drive. The problem is that the controller-to-drive sign-of-life, which telegram 105 embeds in bits 12-15 of STW2, is either not generated by the PLC or is not received by the drive within the configured tolerance window.

3. Root Cause Analysis: Why F01912 Is Triggered

F01912 in the SINAMICS S120 list manual reads: "Sign-of-life failure on controller → drive, telegram failure." With telegram 105, the controller's sign-of-life counter is wired to PZD4 of the receive telegram. The drive evaluates the four-bit counter (STW2.12 through STW2.15, bit 0 through bit 3 of the controller sign-of-life) and compares it to an internally expected sequence. If a number of consecutive telegram cycles are missing the expected counter, the drive reports F01912 and the connection is treated as interrupted.

There are exactly four root-cause classes for F01912 in this configuration:

Class Mechanism Typical Trigger
A. PROFINET isochronity mismatch The send clock of the PROFINET IRT domain, the OB Servo cycle of the PLC, and the drive's isochronous sampling do not all match. Telgrams arrive late or with jitter that the drive interprets as a missing sign-of-life. OB Servo at 1 ms, IRT send clock 1 ms, drive isochronous cycle 1 ms on a slow CPU
B. Application load on the PLC User program in OB1 / cyclic interrupts overruns the OB Servo time slice, so the MC_Servo update is not produced every isochronous cycle. Heavy cyclic OB1 with ToF / TP / PID logic running at 2 ms
C. Telegram / topology mismatch Wrong telegram number, wrong PZD slot for the sign-of-life, or topology editor does not match the physical wiring. Telegram 105 selected on PLC but telegram 106 on the drive, or topology not in IRT mode
D. Hardware / cable / port PROFINET cable fault, ring break, wrong port assignment on the CU (port 1 / port 2 swapped), or duplicate IP. Crossover cable, IP collision, SFP missing on a 2-port CU

In the field case that motivated this article, classes A, B, and C all contributed. Removing the application eliminated class B. Increasing the OB Servo factor reduced class A. Selecting the correct telegram eliminated class C.

4. Telegram 105 and the Sign-of-Life Interconnection

Telegram 105 is the standard position-control telegram on SINAMICS S120 with two encoders. It carries 10 PZD words in each direction. The relevant PZD slots in the receive direction (controller → drive) are:

PZD Slot Drive Parameter Signal Notes
PZD1 r2050[0] STW1 (control word 1) Bit 0 = ON / OFF1, bit 3 = enable, bit 4 = enable ramp, bit 5 = enable ramp, bit 6 = enable setpoint
PZD2 r2050[1] NSOLL_B (speed setpoint, 32-bit) From MC_Servo
PZD3 r2050[2] NSOLL_B high word See PZD2
PZD4 r2050[3] STW2 (control word 2) Bits 12-15 = controller sign-of-life
PZD5 r2050[4] G1_STW / G2_STW (encoder control word) Depending on encoder mode
PZD6 r2050[5] Position setpoint / XERR Position error or setpoint
PZD7-10 r2050[6..9] Supplementary control / setpoints Torque limit, additive setpoint, etc.

The default wiring that Startdrive creates when telegram 105 is selected on both sides is:

  • p2045 = r2050[3] (controller sign-of-life source = PZD4 = STW2)
  • p0925 = 1 (telegram failure tolerance, default 1 = fail on first missing sign-of-life)

When Startdrive selects telegram 105 on the drive side, parameter p2045 is automatically set to r2050[3]. If you change the telegram in TIA Portal but the drive side does not pick the change up (for example, you configured telegram 105 in the device view but the drive still has the previous telegram loaded from a saved parameter set), p2045 will not match the new telegram and F01912 will trigger immediately on enable. The drive-side telegram can be read in r0922; verify it matches the TIA Portal configuration.

Important rule: if you change the telegram in the TIA Portal device view, do a Compile → Drive unit → Load to drive unit (including HW config). A configuration download of the PLC alone will not update the drive telegram.

5. IRT vs RT and the OB Servo Cycle

SINAMICS S120 with telegram 105 in position-control mode requires PROFINET IRT with isochronous mode on the drive. The S7-1500T must synchronize to the IRT cycle. The MC_Servo technology object runs in the OB Servo of the S7-1500T, which is automatically inserted when the MC_Servo is created. Three timing parameters must be in alignment:

Parameter Where Value (Recommended) Effect
PROFINET send clock Properties of the PROFINET interface → Real time settings → Synchronization 1.000 ms Base cycle of the IRT domain
OB Servo cycle Properties of MC_Servo → Cycle time / factor 4.000 ms (factor 4 on a 1 ms send clock) Update rate of the position controller in the PLC
Drive isochronous cycle Drive unit properties → Cyclic interface / isochronous Same as OB Servo, 4.000 ms Sampling rate of the drive-side position controller

Setting all three to 1 ms works on S7-1515T and S7-1518T with low application load. On S7-1511T or with any non-trivial user program in OB1, 1 ms is too tight: the OB Servo overruns, the controller sign-of-life is not produced every cycle, and F01912 fires within 2-3 seconds. field reports was running 1 ms; increasing the OB Servo factor to 4 ms (4 ms cycle) was the first change that allowed continuous motion.

5.1 Why IRT and not RT

PROFINET RT (real-time, non-isochronous) is acceptable for speed-controlled axes with telegram 1 or 2. It is not acceptable for position-controlled axes with telegram 105/106 because the drive cannot guarantee a deterministic position sampling instant, and torque transients are visible on the mechanical load when the controller and drive clocks drift. Stick with IRT for position control. The MC_Servo technology object also actively rejects configuration with RT-only PROFINET in TIA Portal V16 and later, so this is enforced by the toolchain.

6. Diagnosing Bus and Controller Utilization

There are three places to look for the saturation indicator that drives F01912:

  1. PROFINET diagnostics in TIA Portal: Online → Online & Diagnostics → PROFINET interface → Statistics. Look for late telegrams, lost telegrams, and jitter on the IRT cycle. Anything above 1 % late telegrams is a problem.
  2. Drive-side diagnostics: Read r2065 (PROFINET error) and r2067 (PROFINET timeout counter). Non-zero values indicate that the drive saw missing or out-of-order telegrams.
  3. PLC-side diagnostics: Trace the MC_Servo tag STW2.MasterSignOfLifeBit0 through STW2.MasterSignOfLifeBit3. The four bits must form a counting sequence: 0000, 0001, 0010, 0011, ... A frozen value indicates the PLC is not updating the sign-of-life; a non-monotonic value indicates dropped telegram updates.

For deep analysis, capture the trace for at least 10 seconds. The four bits should produce a clean diagonal staircase. If the trace shows a flat line at 0000, the application program is not calling the MC_Servo update path on every OB Servo. If the trace shows a missing step, the cycle has been preempted and a telegram did not go out.

7. Resolving A07565 — Encoder Warning on the Technology Object

A07565 is raised on the MC_Servo technology object whenever the underlying drive reports an encoder warning. The actual diagnostic information is on the drive side and is hidden from the TO panel. The drive keeps the detailed cause in parameter r483 (encoder actual value warnings / faults). The S120 list manual documents the bit field of r483; the most common bits during a first commissioning pass are:

r483 Bit Meaning Resolution
Bit 0 Encoder signals low voltage / cable break Check DRIVE-CLiQ cable, check motor power connector, verify 24 V on the holding brake if used
Bit 1 Encoder signals a level warning Inspect cable for shielding, ensure DRIVE-CLiQ connector is torqued
Bit 4 Encoder homing reference lost / absolute position lost Re-home the axis; check that the encoder has been referenced at least once after power-up
Bit 12 Encoder warning — temperature Check motor current vs. nameplate, mechanical overload, ventilation
Bit 14 Encoder warning — position deviation Position actual value from encoder is out of expected range; check mechanical coupling

For a first commissioning pass with a 1FK7 motor, the most common cause of A07565 is that the absolute encoder has not been referenced. The motor ships in an unreferenced state. Perform the homing sequence (or, for absolute encoders, the absolute-encoder commissioning) once on each axis. After that, A07565 should disappear unless there is a real signal integrity problem.

Engineering tip: To read r483, go online in Startdrive → drive unit → Commissioning → Parameter list. Filter on r483 and the warning value. The TO-level alarm panel does not expose this parameter, which is why the panel reports the fault but the cause is invisible at the TO level.

8. Step-by-Step Resolution Procedure

Apply the following sequence in order. Each step is independently verifiable.

Step 1 — Verify topology and firmware

  1. In TIA Portal, open Devices & Networks and confirm that the S7-1500T and the CU320-2 PN are both visible with the correct ports highlighted on the topology view. The ports that physically carry the IRT connection must be the only ones colored as PROFINET participants.
  2. Open Online → Accessible nodes and confirm that the CU320-2 PN and every Motor Module respond to DCP discovery with the IP configured in the project.
  3. Read the firmware version of the CU320-2 PN (r0963, or Properties → Device information in Startdrive). Use the same V5.2 SP3 family that matches your Startdrive version. Mismatch is a known trigger of F01912.

Step 2 — Align the telegram

  1. Open the CU320-2 PN device view, select the drive object that represents the 1FK7042 axis, and confirm that telegram 105 is selected in Properties → Telegram configuration.
  2. Compile the project, then perform a Load to drive unit (including HW config). The drive-side telegram is read back in r0922; verify it reads 105.
  3. Confirm that p2045 = r2050[3] (sign-of-life wired to PZD4 / STW2). Do not change this; it is the Startdrive default and the value that matches the Telegram-105 layout.

Step 3 — Set up IRT with isochronous mode

  1. Open Properties of the PROFINET interface of the S7-1500T → Real time settings → Synchronization. Set the send clock to 1.000 ms.
  2. On the CU320-2 PN, set the synchronization role to Sync slave. The PLC must remain the master.
  3. On the drive, enable isochronous mode for the cyclic interface (PZD telegram) and set the isochronous time Ti to 4.000 ms. Ti is a multiple of the send clock and must equal the OB Servo cycle.

Step 4 — Tune the OB Servo cycle

  1. Open the MC_Servo technology object, go to Properties → Hardware interface → Drive.
  2. Set the cycle time factor such that OB Servo = 4 ms (factor 4 on a 1 ms send clock). Use 2 ms (factor 2) only if your S7-1500T is a 1515T or 1518T and the application program is light.
  3. Compile the PLC and download to the CPU.

Step 5 — Reduce the user-program load

  1. Move all non-motion logic out of OB1 and into a cyclic OB with a longer period (10 ms or 20 ms).
  2. Avoid TO-heavy instructions (MC_Home, MC_MoveAbsolute, etc.) in OB1. They should be triggered from cyclic OBs, not from the OB Servo priority class.
  3. If the application is a one-axis test rig, disable the second axis MC_Servo and the second Motor Module entirely during the first test pass to eliminate the second drive as a noise source on the PROFINET line.

Step 6 — Re-home and clear A07565

  1. Power-cycle the drive (off → on at 24 V) so the absolute encoder returns to "not referenced."
  2. From the Startdrive commissioning panel, run a homing sequence on each axis. For 1FK7 with absolute encoder, run Absolute encoder commissioning; for incremental encoders, run a reference-point homing.
  3. Acknowledge any remaining faults. The buffer should now be empty on the next enable.

9. Verification Procedure

After applying the changes, validate the fix with this sequence:

  1. Enable the axis from the MC_Servo commissioning panel. The panel should transition from "drive fault" to "ready."
  2. Run a slow jog (1 RPM) for 30 seconds. Monitor the PROFINET error counters r2065 / r2067. They must remain at zero.
  3. Run a motion profile (MC_MoveAbsolute to a position 1 rev away) and confirm that the axis reaches the setpoint with no overshoot, no F01912, and no A07565 in the buffer.
  4. Run the same profile with a 30-minute soak. PROFINET late-telegram counter must stay at 0. The drive's sign-of-life counter (visible in the trace of STW2.12-15) must produce a clean diagonal staircase with no missing steps.
  5. Power-cycle the line, re-enable from a cold start, repeat the profile. The MC_Servo commissioning panel must succeed in < 3 s from CPU RUN to "axis ready."

If the trace of the controller sign-of-life is not clean, return to Step 3 and increase the OB Servo cycle. If r2065 / r2067 increment during motion, return to Step 1 and inspect the PROFINET cable, port, and SFP (if any).

10. Parameter and Fault Code Reference

Code / Parameter Description Default Field Note
F01910 PROFINET: connection interrupted Often secondary to F01912. Acknowledge both, then read the buffer history.
A01980 PROFINET: connection fault Warning that the PN connection has at least one cyclic error; clears on its own when the bus stabilizes.
F01912 PROFINET: sign-of-life failure on controller → drive Primary fault. Triggered by tolerance p0925.
A07565 Drive: encoder warning Read r483 for the detailed bit field. Almost always cleared by homing the absolute encoder.
p2045 Source of controller sign-of-life (CI) r2050[3] Leave at default with telegram 105. Only change when using telegram 6, 9, or 111 with DSC.
p0925 Permissible telegram failure rate 1 Increase to 2-3 only when occasional, sporadic failures are seen with a known-good bus. Never increase to mask a real overload.
p0922 PROFIdrive telegram selection 1 Should read 105 after Telegram-105 download. Mismatch with the PLC side is the most common cause of F01912 in the first hour of commissioning.
r0922 Actual PROFIdrive telegram (read-only) Always read this; the value displayed in the GUI may be stale until the drive is restarted.
r483 Encoder diagnostic word Bit field gives the actual A07565 cause.
r2065 / r2067 PROFINET error / timeout counters 0 Reset by power-cycle. Use for bus health monitoring.
r2050[0..9] PZD receive words (controller → drive) Index 3 = STW2, contains the sign-of-life bits 12-15.

11. Troubleshooting Matrix

Observed Fault Most Likely Cause First Check Fix
F01912 within 1 s of enable Sign-of-life source p2045 does not match the active telegram Read r0922 on the drive and compare with TIA Portal Reload drive unit including HW config; do not change p2045 by hand
F01912 within 3-5 s, intermittent OB Servo cycle too short for application load Check CPU runtime of OB Servo; check OB1 runtime Increase OB Servo factor to 4 ms (or 2 ms on a 1515T/1518T)
F01912 only with full application, not with empty project Cyclic OB / OB1 starving the OB Servo Trace STW2.12-15 in the PLC; flatten the staircase Move logic to a 10 ms cyclic OB; reduce trace frequency
F01910 + F01912 on every enable, regardless of program Physical PROFINET problem Check port LEDs, PROFINET cable, ring break, SFP Replace cable; verify SFP seating; check device names and IPs
A07565 with no motion and no F01912 Absolute encoder not referenced after first power-up Read r483 bit 4 Run homing / absolute encoder commissioning
A07565 with F01912 active Encoder warning is secondary to the comms fault Resolve F01912 first, then re-evaluate A07565 After F01912 is gone, A07565 often clears on its own if the encoder is referenced
"Drive fault" at the TO panel with no alarm TO is reading the drive-side fault buffer, not the PLC fault buffer Read the drive's fault buffer online with Startdrive Resolve the drive-side fault first; the TO panel will then enable
A01980 during normal operation PROFINET watchdog; sporadic late telegram Check for PROFINET devices not synchronized to IRT Force all devices on the IRT domain to sync-slave or non-sync role; do not mix IRT with RT nodes in the same subnet

12. Engineering Notes and Field Caveats

  • Startdrive version vs. CU firmware. Startdrive V16 supports CU320-2 PN V5.2 SP3 and later. Older CU firmware (V4.8, V5.1) is supported only with Startdrive V15.1. Mismatching them causes the telegram layout to be misread, which presents exactly as F01912.
  • Two PROFINET interfaces on the CPU. An S7-1500T with two PROFINET ports must use the same port for the IRT sync and the IRT data. Routing IRT over port 1 and routing it through the CPU's internal switch to port 2 for the CU is not supported. The IRT domain must be on a single physical port.
  • Smart Line Module vs. Basic Line Module. 6SL3130-6AE15-0AB0 is a Smart Line Module (regenerative). It requires the same line filter, line reactor, and pre-charging circuit as a 6SL3130-6AE15-0AB1. The two are pin-compatible but the OB Servo behavior is identical. No SLM-related timing parameter affects F01912.
  • Motor Module 6SL3120-2TE13-0AA3. 3 A / 3 A peak, internal air cooling. Supports telegram 105. The Z option on 1FK7042-2AF71-1RA0-Z must be confirmed against the motor data record (e.g. Z = K44 for holding brake 24 V). A wrong holding-brake configuration does not trigger F01912 but does raise A07565 if the brake is enabled and the encoder detects the rotor moving.
  • For digital-twin workflows. Use the Siemens Virtual Commissioning service to test the S7-1500T logic against a simulated S120 before connecting to a real machine. Siemens Virtual Commissioning for Motion Control shortens first-power-on issues by allowing the IRT and MC_Servo to be validated against a virtual drive.

13. Reference Documentation

For deep detail on the topics in this article, the following official Siemens documents are the authoritative sources:

FAQ

What does F01912 mean on a SINAMICS S120 with telegram 105?

F01912 means the controller sign-of-life, embedded in bits 12-15 of STW2 (PZD4) of telegram 105, did not arrive at the drive within the configured tolerance. The drive's default tolerance (p0925 = 1) flags a single missing sign-of-life as a fault. Always read r0922 on the drive to confirm telegram 105 is loaded, and verify p2045 is the default r2050[3].

What is the recommended OB Servo cycle for a SINAMICS S120 with MC_Servo on S7-1500T?

Use 4 ms (factor 4 on a 1 ms IRT send clock) for the first commissioning pass on any S7-1500T. Use 2 ms only on S7-1515T-2 PN or S7-1518T-2 PN with a light application program. 1 ms is rarely stable outside a virtual-commissioning setup and is the most common trigger of F01912 in field commissioning.

Why does the MC_Servo commissioning panel show "drive fault" with no alarm at the TO?

The TO panel only displays PLC-side faults. Drive-side faults live in the SINAMICS fault buffer and must be read online in Startdrive (drive unit → Commissioning → Diagnostics → Fault buffer). Resolve the drive-side fault first; the TO panel will then enable.

How do I clear A07565 on a 1FK7042-2AF71-1RA0-Z motor at first commissioning?

Read r483 on the drive to see the bit field. In 90 % of first-commissioning cases the cause is bit 4 — the absolute encoder has not been referenced. Run homing or the absolute-encoder commissioning once. A07565 clears on the next power-on or when the encoder reference is established.

Can I run SINAMICS S120 in RT instead of IRT for position control with MC_Servo?

No. Position control with MC_Servo and telegram 105 requires IRT with isochronous mode. RT-only PROFINET causes torque jumps on the load because the controller and drive clocks drift. TIA Portal V16 also enforces this configuration rule in the Startdrive wizard, so a RT-only setup is not offered as a valid option for the S7-1500T.

Back to blog