Troubleshooting SINAMICS S120 F07900 Motor Locked Fault

David Krause16 min read
SiemensTroubleshootingVFD / Drives
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. Overview of Fault F07900

F07900 is a drive-side fault on the Siemens SINAMICS platform (S120, S210, G120, V90) defined as "Drive: Motor locked / speed controller at its limit." The drive closes the speed control loop, the controller demands more torque than the current/voltage limits allow, and the actual speed value remains below the configured threshold for a defined delay. The reaction is OFF2 (pulse suppression / coast-down to standstill) and the fault must be acknowledged before another run command is accepted.

The fault is identical across SINAMICS firmware versions from V2.4 onward, but the exact threshold parameters, alarm text, and supplementary fault values were extended in later releases. The fault code in r0947 is always 7900; r0949 contains a sub-coded informational value that pinpoints the cause, while r0948 records the UTC timestamp of the trigger.

The hardware family in the source report is the 6SL3120-2TE series (SINAMICS S120 Booksize Compact single-axis power modules), but the diagnostic procedure applies unchanged to 6SL3x Booksize, 6SL31 Blocksize, 6SL32 Combi, and the S210 / S220 servodrive families. The 6SL3120-2TE21-8AA3 (18 A) and 6SL3120-2TE23-8AA3 (38 A) variants are common in single-axis applications such as spindles, cross-cut saws, and machine tool axes that the source describes.

Safety notice: F07900 is a STOP F (fault) class response. After acknowledging, the drive will re-enable only when the cause is removed. Never bypass p2175/p2177 thresholds to clear the fault without correcting the root cause; this only masks mechanical or wiring problems that will re-appear.

2. Fault Mechanism and Trigger Conditions

The SINAMICS speed controller continuously compares the actual speed (r0061) to the setpoint. When the torque limit (r1538 / r1539, which reflect the active lower/upper limits) is reached and the speed error |n_set - n_act| exceeds the threshold in p2175 for longer than the delay in p2177, the firmware raises F07900. The relevant parameter block is:

Parameter Description Default (V4.x) Range
p2175 Speed threshold "Motor locked" 120 rpm 0 - 210000 rpm
p2177 Delay time "Motor locked" 1.0 s 0 - 100 s
p2192 Delay time "Load monitoring" 10.0 s 0 - 65 s
p2193 Load monitoring configuration 1 0 - 3 (bit field)
p1520 Upper torque limit (CO) Motor P0338 derived -1000000.000 to +1000000.000 Nm
p1521 Lower torque limit (CO) -Motor P0338 derived As above
r1538 / r1539 Active upper / lower torque limit read-only Nm
r0061 Actual speed smoothed read-only rpm

Two distinct conditions can trigger F07900:

  1. Mechanical lock / stall – the motor is asked to turn but cannot (mechanical binding, brake not releasing, jammed load).
  2. Control loop saturation – the controller has reached a limit (current, voltage, torque) before it can accelerate the motor to the setpoint. The current limit is the most common cause when the motor is free-spinning by hand.

Distinguishing the two cases is the first job of the troubleshooter. The user's report that "the motor rotates freely by hand" eliminates mechanical stall and points to a control-loop issue: phase sequence reversal, encoder direction error, wrong motor data, DRIVE-CLiQ topology mismatch, or limit clipping.

3. Root Cause Matrix

Rank Root Cause Symptom Fastest Verification
1 Power-cable phase swap (U/V/W crossed at one end) Motor runs jerkily, wrong direction, high current, F07900 on ramp Compare U-V-W to terminal label; run sensorless; check r0061 sign vs setpoint
2 Encoder A/B track swap or direction inversion Controller fights the encoder, r0061 sign wrong, F07900 at first run Toggle p0410 bit 1 or p0430.21; verify r0061 sign at slow jog
3 DRIVE-CLiQ topology mismatch (cable A to motor B, motor B cable to A) Faults on a specific drive that exchanges correctly when swapped Compare topology from SINAMICS Starter / Startdrive / TIA Topology view
4 Encoder cable shield break or intermittent contact Fault appears after warm-up, encoder status word in r0451 has non-zero bits Read r0451; replace cable; check connector torque (0.4 Nm on RJ45)
5 Motor data block wrong (p0300..p0335) – wrong motor type, pole-pair number, or kT Controller tries to command unrealistic torque; r1538 is at the current limit Compare to motor nameplate; run motor data identification p1910
6 Power connector loose or contact burned Intermittent, current ripple, F07900 with high current excursion Thermographic inspection; measure insulation; re-torque
7 Brake not releasing (holding brake) Free by hand only when 24 V removed; cannot turn with current applied Read p0855 status; measure 24 V at brake terminal; force brake open with p0858
8 Current / torque limit too low (p1520, p1521, p0640, p0341) r1538 saturates at low value, r0061 stays below setpoint Display r1538/r1539 during jog; compare to motor P0338

4. Pre-Diagnostic Steps

Before swapping hardware, capture the live state from Starter / Startdrive / TIA Portal V15.1 or later, or use the integrated web server of the Control Unit (CU320-2 PN, CU310-2 PN). The minimum data set is:

  1. Read r0947 = 7900, r0948 = timestamp, r0949 = fault value, r1000 = status list of pending faults.
  2. Read r0451 – encoder status word. Bit 0 = setpoint transferred; bit 1 = encoder operating; bit 7 = CRC error; bit 12 = speed actual value OK.
  3. Read r0061, r0062 (setpoint), r0079 (torque setpoint), r0080 (torque actual), r1538/r1539 (active torque limits).
  4. Export the drive parameter set offline (Startdrive: "Drive device -> Upload to PG") and diff with the working machine using a tool such as WinMerge or the TIA "Compare" function.
  5. Save the trace recording of r0061, r0062, r0079, r1538 captured during the failing run on the Starter trace.

The user already performed a cross-exchange (cable, motor, encoder, drive module) between the two systems, and the fault follows the drive. This isolates the cause to either the drive's parameter set, the DRIVE-CLiQ cable to the next device in the topology, or the power cable to the motor on that particular axis. Mechanical causes are effectively eliminated.

5. Phase Rotation and Power-Cable Verification

A swapped power phase is the most common cause of F07900 on a freshly commissioned axis. With U-V-W sequence, the magnetic field rotates positively; if the cable is wired U-V-W at the motor but W-V-U at the drive, the controller accelerates the field in the wrong direction while the encoder (correctly) reports the actual negative rotation, the speed error grows, the controller hits the torque limit, and F07900 is raised.

5.1 Visual and Continuity Test

  1. With the drive de-energized and locked out, isolate the drive from the line.
  2. Disconnect the motor power cable at both ends.
  3. Use a continuity tester to identify U, V, W on each end. The IEC 60446 colour code is brown (U/L1), black (V/L2), grey (W/L3), but field cabling frequently deviates – never trust colour, always verify the terminal label.
  4. Confirm 1:1 correspondence U-drive ↔ U-motor, V ↔ V, W ↔ W, and PE continuity.

5.2 Sensorless Test

  1. Set p1300 = 0 (open-loop V/f) or p1300 = 20 (sensorless vector), p0400 = 0 to suppress encoder evaluation temporarily.
  2. Lower p2175 to 30 rpm and p2177 to 0.5 s to make the trigger sensitive.
  3. Issue a small setpoint, e.g. 50 rpm, and observe r0061 and the actual rotation direction.
  4. If the motor runs in the wrong direction, swap any two phases at the drive side (e.g. V and W). Do not change motor data.
  5. Restore p1300 / p0400 / p2175 / p2177 to commissioned values.
Note: Sensorless tests with p1300 = 0 (V/f) on a synchronous motor (1FK7, 1FT7, 1PH8) are not supported. Use p1300 = 20 only on induction motors. On permanent-magnet motors, run the test in torque mode with the encoder present.

6. Encoder Direction and DRIVE-CLiQ Topology

6.1 Encoder Direction Inversion

Siemens drives invert the encoder direction with a single bit. Two methods are valid; do not apply both at once.

  • Hardware method: swap the A and A* (or B and B*) track wiring inside the connector. This is the safest because it leaves the firmware untouched.
  • Software method: set p0410.1 = 1 (invert direction) and re-save. For SSI / EnDat, the same can be done via p0430.21.

To verify direction, set a small jog setpoint, p1120 = 1.0 s, and watch r0061 sign versus the setpoint sign. If r0061 is negative when r0062 is positive, the encoder is reversed.

6.2 DRIVE-CLiQ Cable and Topology

On a SINAMICS S120 line-up the DRIVE-CLiQ cable that connects the Sensor Module (SMC20, SMC30, SME120) to the Motor Module carries the encoder data. Mixing two motor cables and their DRIVE-CLiQ cables on the same axis causes a logical cross-wiring: the drive closes the loop on motor A's encoder while driving motor B, with the r0061 reading for a different motor than the one being energized. The drive then commands torque indefinitely because the encoder it sees is not attached to the moving motor.

  1. In the topology editor (Starter: drive -> Configuration -> DRIVE-CLiQ topology; TIA: Topology view), confirm that each Motor Module's "Motor" entry references the correct motor object.
  2. Compare the topology of the working machine with the failing one. Differences in component order indicate a cable was moved to a different port.
  3. Re-label the DRIVE-CLiQ cable on the failing axis with a unique tag before any further swapping, so that it can be re-placed on the same port.

For the Booksize Compact 6SL3120-2TE, the DRIVE-CLiQ port is X200 (drive side) and X500 (motor side, on the power module) – use this to physically verify.

7. Power Cable and Connector Audit

Even when continuity checks pass, a high-resistance joint in the power connector causes the drive to enter current limit and the speed to collapse. The 6SL3120-2TE uses 6 mm² or 10 mm² power cables with Phoenix PC6 or PC10 connectors. Inspection procedure:

  1. De-energize and lock out the drive.
  2. Pull each power contact and inspect for discoloration, pitting, or loose crimp. A loose crimp increases contact resistance from ~1 mΩ to >20 mΩ, which at 30 A develops 0.6 V of drop and 18 W of heat.
  3. Re-crimp using the correct Phoenix tool (e.g., RC 6, Order No. 6SL3x accessory kit).
  4. Re-insert contacts until the locking latch clicks; verify the contact cannot be pulled out with 30 N axial force.
  5. Measure the loop resistance phase-to-phase at the motor terminals: for a 10 m cable, expect 0.1–0.2 Ω per phase; values >1 Ω indicate a poor joint.

8. Parameter Configuration Audit

A parameter-by-parameter diff is essential after the user has already attempted this and found no difference. The right tool makes the diff reliable:

  1. Export the parameter set of the working machine to a .dnx file: Starter -> Drive -> Load to PG -> Save to file.
  2. Export the failing machine's set the same way.
  3. Use the SINAMICS S120/S150 List Manual to filter only the parameters in Expert list level (p0003 = 3) – some hidden parameters are not visible in the standard upload.
  4. Compare with a text-diff tool. Pay particular attention to:
    • p0341 (motor moment of inertia)
    • p0342 (total/load inertia ratio)
    • p1460 (speed controller gain) and p1470 (torque precontrol)
    • p1715 (current controller gain) and p1717 (current controller integral)
    • p2000 (reference speed)
    • p2003 (reference torque)

Often the visible parameter lists match but the project file (SIMOTION SCOUT or TIA) hides a topology-level override that re-writes these at power-up. Re-execute "Download to drive" with the same project that the working machine uses, then power-cycle and try again.

9. Sensorless / Open-Loop Bypass Test

The bypass test is the fastest single check the engineer can do. If the drive works in sensorless mode but fails in closed-loop, the problem is the encoder path; if it fails in both, the problem is the power path or motor data.

  1. Set p1300 = 20 (sensorless vector control) and p0400 = 0 to disable encoder evaluation.
  2. Disable F07900 temporarily by setting p2192 = 65 s and p2177 = 100 s (so it does not trip during the test).
  3. Jog the drive at 100 rpm. Observe r0061 (sensorless) and r0078 (current). If r0061 follows the setpoint and current stays below 80% of the motor rated current, the power electronics and motor are good. The fault is in the encoder or control loop.
  4. Restore p1300, p0400, p2175, p2177 to the original values before commissioning.

10. Mechanical and Load Re-Verification

Although the user reports the motor rotates freely by hand with the drive de-energized, the test must be repeated with the holding brake state considered:

  • If the axis has a holding brake (motor option 1FK7..-A, 1FT7..-B, 1PH8 with holding brake), check whether the brake is released when 24 V is applied. With the drive de-energized, the brake is engaged by spring force, and the motor can be hand-turned only because the spring force is insufficient to oppose the operator's hand. With 24 V applied, the brake is held open and the motor may actually be free; however, the load downstream may not be.
  • Disconnect the load from the motor shaft. If the fault clears, the load is jamming (gearbox failure, bearing seizure, ball-screw jam).
  • Verify the load inertia ratio. If p0342 is set incorrectly (e.g. 1 instead of 5 for a heavy load), the speed controller gain is too high and the controller saturates on the first ramp. Re-run the automatic moment-of-inertia identification p1959 or enter p0342 manually from the mechanical calculation.

11. Live Trace and Diagnostic Parameters

Starter / Startdrive trace is the most informative diagnostic when the failure is repeatable:

  1. Open Trace -> Configuration and select the following signals at 2 ms sample time (1 s pre-trigger, 4 s post-trigger):
    • r0061 – actual speed
    • r0062 – speed setpoint
    • r0078 – current actual (torque-generating)
    • r0079 – torque setpoint
    • r1538 / r1539 – active torque limits
    • r0086 / r0087 – active current limits
  2. Trigger on F07900 (r0947.0) so the trace is captured at the moment of the fault.
  3. Analyse the trace. Typical patterns:
    • Phase swap: r0061 reverses sign as soon as torque is applied; r0078 rises to the current limit instantly.
    • Encoder direction reversed: r0061 rises in the wrong direction; r0062 shows positive setpoint; controller output saturates immediately.
    • DRIVE-CLiQ cross-wired: r0061 does not move at all (encoder is reading a static motor); r0078 saturates.
    • Brake not releasing: r0061 stays at 0; r0079 saturates; r0078 reaches the limit in 200–500 ms.

12. Firmware- and Project-Level Resets

If parameter audit reveals no difference and the hardware cross-exchange has not moved the fault, the issue is most likely in a non-volatile setting that the offline diff did not capture, or a learned safety / technology setting. The factory reset procedure for the Motor Module is:

  1. Set p0010 = 30 (factory settings for the drive object).
  2. Set p0970 = 1 (start factory reset). The drive performs a complete parameter reset to its factory default.
  3. Wait for p0970 to return to 0 (operation completed). The drive will pulse-suppress and require power-cycle.
  4. Re-commission from a known-good project (same as the working machine) and re-run motor identification (p1910 for induction, p1990 for synchronous).
Warning: p0970 = 1 is irreversible. Save the current parameter set to file (p0802 to memory card, then read the file from a different system) before triggering the reset. After reset, the project in Starter / Startdrive / TIA will be out of sync – re-download the project file.

13. Verification Procedure

After the corrective action, run the following sequence before declaring the axis serviceable:

  1. Power-cycle the drive (24 V OFF/ON) and confirm F07900 is no longer pending (r0947 = 0, r0949 = 0).
  2. Run the motor at 10% rated speed, 50% rated speed, and 100% rated speed in both directions, each for 30 s. Monitor r0078 throughout; it must stay below 80% of p0338 motor rated current.
  3. Run a full S-curve ramp with p1120 = 5 s, p1121 = 5 s, 10 cycles. Monitor that r0061 tracks r0062 within 5% and that r0079 stays below r1538.
  4. Repeat the operation that originally triggered F07900 (machine cycle, repeated 50 times). No F07900, no F07901 (load monitoring), no F30002 (DC-link overvoltage), no F30021 (ground fault).
  5. Document the final parameter set, the trace recording, and the engineering change.

14. Field-Proven Engineering Notes

  • On a 6SL3120-2TE21 (small Booksize Compact), the current measurement of the drive is unipolar and the firmware compensates for direction. Swapping the encoder direction while the encoder is the only sensor causes an internal sign conflict that surfaces as F07900; the symptom can be confused with a phase swap, so always verify the encoder direction with r0061 sign before changing phase wiring.
  • When the user has the option of running in sensorless mode successfully, the engineering decision is whether to keep the drive in sensorless (p1300 = 20) for low dynamic positioning, or to correct the encoder. For high-dynamic axes, encoder correction is mandatory.
  • DRIVE-CLiQ ports are hot-pluggable. If the cable is inserted in the wrong port after a maintenance intervention, the topology will not match the project. Always re-upload the topology from the drive to PG after any hot-plug event and compare with the project.
  • Cross-exchanging complete drive modules between two identical machines is the most reliable way to localize a hardware fault; the user has already done this and the fault followed the drive, which is a strong indication of a parameter / configuration issue rather than a hardware failure.

15. Related Faults and Diagnostic Links

Fault Description Relationship to F07900
F07901 Load monitoring – speed below threshold Same parameter block; p2192 controls delay
F07801 Drive overcurrent Often secondary if F07900 masks an overcurrent
F30002 DC-link overvoltage May appear if a free-running motor regenerates during OFF2
F08501 PROFIdrive – sign-of-life failure Causes the speed setpoint to freeze; motor may go to torque limit
F04501 Encoder – internal fault Replace encoder or SME module if persistent

Refer to the SINAMICS S120/S150 List Manual, the SINAMICS S120 Commissioning Manual, and the SINAMICS S120 Function Manual for the authoritative description of every parameter referenced in this article.

What does F07900 mean on a SINAMICS S120 drive?

F07900 ("Drive: Motor locked / speed controller at its limit") is raised when the speed controller hits the torque or current limit and the actual speed stays below the threshold p2175 (default 120 rpm) for longer than the delay p2177 (default 1.0 s). The drive performs an OFF2 stop and must be acknowledged.

How do I clear F07900 after fixing the cause?

Remove the run command, acknowledge with p3981 = 1 or via the PLC control word bit 7, then issue a new run command. If the cause persists, the fault will reappear within the p2177 delay window. A power-cycle is not required unless the project is re-downloaded.

Which parameter is most commonly wrong when F07900 appears only on one of two identical machines?

The most frequent causes are a power-cable phase swap (U, V, W sequence) or a DRIVE-CLiQ topology mismatch between the Motor Module and the Sensor Module. After a cross-exchange, verify p0400 (encoder type), p0410 (encoder configuration including the direction bit), and p1300 (open-loop / closed-loop mode).

Can I disable F07900 to keep the axis running?

Yes, by setting p2175 = 210000 rpm and p2177 = 100 s, but this masks the root cause and is not recommended. The fault exists to protect the motor and the mechanical system from stall. The correct action is to remove the cause – phase swap, encoder error, mechanical jam, or limit clip.

Does F07900 occur on SINAMICS V90 / G120 as well?

Yes. F07900 with the same text exists on V90, G120, G130, S120, S150, S210, and S220. The trigger parameters (p2175, p2177) and the diagnostic procedure are identical. The list manual for each family is the authoritative reference for the firmware version installed.

Back to blog