Fixing F07900 Motor Blocked Fault on SINAMICS S120 External Brake
When a SINAMICS S120 CU320-2PN drive is configured for sensorless vector control (SLVC) of an induction motor that drives an external mechanical load, and the motor's holding brake is commanded directly by a PLC rather than by the drive's internal brake sequencer, the drive can trip with fault F07900 (motor blocked) during the stop sequence. The fault is raised when the drive continues to develop torque against a closed mechanical brake after the speed has dropped below the configured blocked-speed threshold. This article documents the root cause, the parameter set that must be aligned, and the three field-validated sequences that eliminate the fault.
1. Problem Statement: F07900 with External Holding Brake
The reported scenario uses a SINAMICS S120 with a CU320-2PN Control Unit running an induction motor in sensorless vector control (control mode p1300 = 0 or 1, speed/torque control via p1500 / p1501). The motor shaft drives an external mechanism with a spring-set holding brake. The PLC opens the brake on a joystick command and closes the brake when a "speed threshold achieved" flag becomes true, independent of the drive's own actual-speed feedback. The fault sequence is:
- Joystick is released — drive receives OFF1, ramps along the configured ramp-down ramp (p1121).
- PLC closes the brake as soon as its internal "speed reached zero" logic is true, or after a fixed timer that is not synchronised to the drive's actual state.
- Drive continues to develop torque against the now-locked rotor until the p2177 motor-blocked delay time elapses.
- Drive trips with F07900 (motor blocked) and pulses are cancelled.
The root cause is a sequencing error: the mechanical brake closes before the drive's torque-producing current path is disabled. The drive's "motor blocked" detector does not care whether the rotor is held by an external brake, a mechanical jam, or a stalled load — it only sees that the speed is below p2175 while the torque is above the blocked-torque threshold for longer than p2177. The drive is reacting exactly as designed; the application sequencing is what is wrong.
2. Root Cause Analysis
The SINAMICS S120 implements the "motor blocked" detection function inside the drive firmware. The parameters that govern the detector are:
- p2144[0] – BI: Motor blocked monitoring enable (1 = enabled, 0 = disabled). Default is enabled.
- p2148[0] – Motor blocked configuration (bit field used to choose ramp-up vs ramp-down behaviour).
- p2165[0] – Load torque monitoring threshold (Nm or % of rated torque).
- p2175[0] – Motor blocked speed threshold (rpm). Default is typically 30 rpm but can be set lower for high-resolution applications.
- p2177[0] – Motor blocked delay time (ms). Default is typically 1000 ms; field value must be tuned to mechanical settling time.
When the absolute actual speed |r63| stays below p2175 and the torque-producing current is above the blocked-torque threshold for p2177 milliseconds, F07900 is raised. The torque current is read from r80 (torque-generating current, Iq) and is compared against the threshold derived from p2165 and p1520 / p1521 (positive and negative torque limits).
In the reported scenario, two things go wrong at the same time:
- The PLC closes the brake using a generic "speed reached" flag derived from a coarse threshold, not from r63 = 0 sequenced with r852 / r899. The brake contacts engage while the motor is still producing torque.
- The drive has no knowledge that the brake has been closed. It continues to follow the OFF1 ramp. Because the rotor is now mechanically locked, the speed controller drives Iq upward to maintain speed, hits the torque limit, and the motor-blocked detector trips.
The fault is a system-level sequencing error, not a parameter error. No change to p2175, p2177, or p2144 will fix it — the only sustainable fixes are to either (a) let the drive command the brake, or (b) reorder the PLC sequence so the brake closes only after the drive has been told to disable pulses (OFF1/OFF2/OFF3 completed and the speed controller is no longer active).
3. SINAMICS S120 Brake Control Architecture
The SINAMICS S120 family includes an internal holding brake sequencer. When enabled, it issues open / close commands on a digital output (typically DO 0 or DO 1 of the Control Unit or a connected TM31 / TM15 terminal module) and synchronises them with the pulses, the ramp-function generator, and the speed controller. The relevant parameters are:
| Parameter | Description | Typical Value |
|---|---|---|
| p1215 | Holding brake configuration (0 = no brake, 1 = sequence control with 2-wire control, 2 = always released, 3 = sequence control with fieldbus control, 4 = sequence control, no fault on timeout) | 1 or 3 |
| p1216 | Holding brake release time (ms) | 100–500 ms (per brake nameplate) |
| p1217 | Holding brake apply time (ms) | 100–500 ms (per brake nameplate) |
| p1218 | Holding brake opening speed threshold (rpm) | 5–30 rpm |
| p1219 | Immediate holding brake apply on OFF1 / OFF3 (bit 0 = OFF1, bit 1 = OFF3) | 1 or 3 |
| p1220 | Signal source for "open holding brake" command (BICO to a digital output) | r852.1 (drive-internal) — leave default |
Status and command words used by the sequencer are:
- r852 – Brake control word (drive → terminal). Bit 0 = "close brake", Bit 1 = "open brake".
- r899 – Brake status word. Bit 12 indicates "brake released" / "brake closed" depending on the firmware version. Verify the exact bit assignment against the SINAMICS S120 List Manual for the firmware version installed.
For sensorless vector control with an external PLC controlling the brake, the most reliable architecture is drive-sequenced: the PLC still issues the high-level open / close intent via a digital input or a PROFINET control word, and the drive's p1215 sequencer then decides when to release pulses, when to command the brake open, and when to apply the brake after the pulses are cancelled.
4. Parameter Reference for Brake Sequencing
The following table lists the parameters that must be aligned for fault-free operation. Verify every value against the List Manual for the firmware version installed on the CU320-2PN (use the parameter readback in Starter or Startdrive to confirm the version — r18 contains the Control Unit firmware version, r20 the drive firmware version).
| Parameter | Meaning | Recommended Setting (External Brake Path) | Notes |
|---|---|---|---|
| p1215[0] | Holding brake configuration | 1 (sequence control) or 3 (fieldbus control) | Use 3 if the PLC must control the enable bit; use 1 if the PLC only commands ON / OFF1. |
| p1216[0] | Brake release time | Per brake nameplate (e.g. 200 ms) | Compensates the mechanical opening delay. |
| p1217[0] | Brake apply time | Per brake nameplate (e.g. 200 ms) | Compensates the mechanical closing delay. |
| p1218[0] | Brake opening speed threshold | 5–10 rpm | Below this, the brake is allowed to close only after pulses are off. |
| p1219[0] | Immediate apply on OFF1 / OFF3 | 1 (OFF1 only) or 3 (OFF1 + OFF3) | If set, the brake closes the instant OFF1 is detected, before ramp-down begins. |
| p1220[0] | Source: "open brake" command | BO r852.1 (drive internal) — leave default | Do not BICO to an external source if you want drive-sequenced operation. |
| p2144[0] | Enable: motor blocked detection | 1 (enabled) | Leave enabled so the drive still protects against genuine stalls. |
| p2175[0] | Motor blocked speed threshold | 30 rpm default; lower if load is fast-decaying | Default is conservative. |
| p2177[0] | Motor blocked delay time | 1000 ms default; tune to mechanical settling | Increasing this is not a fix — it only delays the fault. |
5. F07900 Detection Parameters and Timings
The "motor blocked" detector monitors two state variables in parallel: actual speed (r63, smoothed actual speed value) and torque-producing current (r80, torque-producing current Iq). The fault logic is:
The detector is enabled by p2144. By default on S120 it is active. The threshold for "high torque" is implicit: it is the maximum of the active torque limits (p1520 = positive torque limit, p1521 = negative torque limit) reduced by the configurable margin in p2165 / p1525.
Implication for the reported fault: when the PLC closes the brake at the start of ramp-down and the drive continues to command torque to follow the ramp, |r63| collapses to 0 within a few hundred milliseconds, |Iq| rises as the speed controller drives the rotor against the locked brake, and F07900 fires at t = t_brake_close + p2177. The drive has no way to distinguish this from a genuine stall.
6. Step-by-Step Solution: Drive-Internal Brake Control (Recommended)
Use the SINAMICS S120 internal brake sequencer. The PLC no longer commands the brake directly; it only commands ON / OFF1 to the drive. The drive decides when to open and close the brake based on the actual motor state.
- Wire the brake output. Route the brake 24 V coil through a digital output of the CU320-2PN (e.g. DO 0 on connector X122) or a Terminal Module. The output is driven by r852.1 (open) and r852.0 (close). Configure the output with p738 in the Starter / Startdrive DO configuration tab.
- Enable the brake sequencer. Set p1215[0] = 1 (sequence control) for a hard-wired command path. Use p1215[0] = 3 if the PLC sends a "release brake" bit over PROFINET as a control word bit; in that case map the control word bit to a BICO source for "open brake".
- Set brake timings. Read the brake nameplate and enter p1216[0] = brake release time, p1217[0] = brake apply time. Typical values for industrial holding brakes are 100–500 ms.
- Set the speed threshold. Set p1218[0] to a small value (5–10 rpm). Below this speed, the drive considers the motor mechanically "stopped" and the brake is allowed to apply.
- Enable immediate apply on OFF1. Set p1219[0] = 1 (apply on OFF1) or 3 (apply on OFF1 and OFF3). This makes the brake close the moment OFF1 is initiated, eliminating the "torque against closed brake" window.
- Disable the PLC's direct brake command. The PLC must not energise the brake coil directly. It only issues ON / OFF1 / STO to the drive (typically via PROFINET word 1, bits 0, 1, 2 with the SINAMICS standard telegram 1, 2, 3, 5 or 102–105).
- Download and save. "Copy RAM to ROM" in Starter / Startdrive so the parameters survive a power cycle. Power-cycle the drive to confirm persistent behaviour.
7. Alternative Solution: PLC-Side Sequencing with Drive Parameters
If the PLC must retain direct control of the brake (for example, in a retrofit where the brake wiring cannot easily be rerouted through the drive's DO), the drive's sequencer must be disabled (p1215[0] = 0) and the PLC must implement the correct sequence. The required sequence is:
- PLC detects the stop command.
- PLC ramps the drive down along p1121 via OFF1.
- PLC monitors the actual speed r63 via PROFINET telegram (e.g. in telegram 1, the actual speed is in word 6 of the PZD input; the scaling is set in p2000).
- When |r63| has been below ~5 rpm for at least the brake apply time (p1217) and the drive has cancelled pulses (r852.0 = 1, status word bit 14 = "closed-loop operation inhibited" = 0), the PLC closes the brake.
- The PLC does not close the brake on a generic "speed reached" flag — it must wait for the actual speed to be zero and for the drive to confirm that pulses are off.
The PLC must also turn off any torque request that might still be active. In SLVC, this is automatic on OFF1 once the ramp reaches zero, but if the drive is held in a torque-controlled mode (p1501 = 1), the PLC must explicitly switch to speed control and issue OFF1 before the brake closes.
Sample STL-style pseudo-code (S7-1500 / S7-1200)
// Brake close condition: speed near zero AND drive pulses off
"ActualSpeed" := WORD_TO_REAL("DriveIW6") / 16384.0 * "SpeedScale"; // p2000 scaling
"DrivePulsesOff" := NOT "DriveIW0".X14; // status word bit 14 = operation inhibited
"BrakeCloseOK" := (ABS("ActualSpeed") < 5.0) AND "DrivePulsesOff";
IF "BrakeCloseCmd" AND "BrakeCloseOK" THEN
"BrakeOutput" := FALSE; // de-energise brake coil (fail-safe: de-energise = brake applied)
END_IF;
// Brake open condition: drive ready AND ON command
"DriveReady" := "DriveIW0".X2; // status word bit 2 = operation enabled
IF "JoystickRun" AND "DriveReady" THEN
"BrakeOutput" := TRUE;
END_IF;
The exact bit assignments in the IW / IQ words depend on the telegram selected. With PROFINET Standard Telegram 1: input PZD1 = status word 1 (ZSW1), PZD2 = actual speed (NIST), PZD3 = actual Iq; output PZD1 = control word 1 (STW1), PZD2 = speed setpoint (NSOLL). Verify the assignments in the device configuration under Telegram properties. The actual-speed scaling follows the reference speed set in p2000 (default 3000 rpm); the PLC scales its raw word back to engineering units using the formula n_actual (rpm) = raw_word × p2000 / 16384.
8. Verification and Commissioning Procedure
After the parameter changes are saved and downloaded, run the following validation steps. The test must be repeated from cold start (drive powered up, brake cold) and from hot start (drive already at operating temperature, brake warm) because holding-brake apply times drift with temperature.
- Trace the brake command and the actual speed. Use the Starter / Startdrive trace function to record r63 (actual speed smoothed), r852 (brake control word), and r80 (Iq). Set a 10 s window, 1 ms sample. Trigger on OFF1 command.
- Verify the OFF1 → brake-close timing. In the trace, confirm that r852.0 ("close brake") goes high at the start of ramp-down (or after the configured delay, depending on p1219), and that r63 crosses zero only after the brake is closed or the drive has reached zero speed.
- Verify the OFF1 → Iq collapse. Confirm that |r80| collapses to 0 before the brake contacts are fully closed. The Iq collapse should occur within one current-controller cycle (typically < 2 ms) of the OFF1 command.
- Confirm no F07900. Run 50 stop cycles in a row and confirm the fault buffer remains empty (r0945, r0947, r0948, r0949 — fault number, fault location, fault time, fault value). Use a small script or the Starter fault buffer export to automate.
- Confirm the brake is actually applying. Measure brake coil current with a clamp meter, or use a position sensor on the load. A brake that is commanded to close but is not mechanically closing is a different fault mode (load drops under gravity).
- Test E-stop behaviour. With the safety STO chain wired, activate STO. Confirm the drive pulses are cancelled and the brake applies. The drive may also report a STOP A or STOP B; the brake must close in both cases.
9. Troubleshooting Matrix
The following matrix maps common symptoms to the parameter or wiring change that resolves them. All paths assume the reported architecture: CU320-2PN, SLVC, external mechanical holding brake, PLC-managed high-level command.
| Symptom | Likely Cause | Fix |
|---|---|---|
| F07900 on stop, brake closes before drive reaches zero speed | PLC closes brake on coarse speed flag; drive still produces torque | Enable drive sequencer (p1215 = 1 or 3) and set p1219 = 1 or 3, or rewire PLC to close brake only after r63 ≈ 0 and pulses off |
| F07900 on stop, brake never commanded (open circuit on coil) | Brake coil supply interrupted; rotor coasts but load holds drive in torque limit | Restore coil supply; this is a wiring fault not a parameter fault |
| F07900 on start, brake commanded to open but drive not yet enabled | PLC opens brake before issuing ON; drive starts against a held rotor | Add a handshake: brake-open confirmation (e.g. feedback contact on brake) must precede the ON command |
| F07900 only under high load | Mechanical jam or undersized motor; not a brake issue | Inspect the load; verify motor and gearbox sizing |
| F07900 intermittent, often in cold start | Brake apply time slower than expected; torque applied for > p2177 ms | Increase p1217 to match measured apply time, but the preferred fix is to enable p1219 = 1 so the brake applies before ramp-down |
| F07900 only on OFF3 (fast stop) | p1219 bit 1 not set; drive still follows fast ramp against closed brake | Set p1219 = 3 to include OFF3 in immediate apply |
| F07900 with F07491 (drive: speed controller output limited) | Speed controller is in torque limit; detector trips earlier | Verify torque limits (p1520, p1521) are sized for the load, not arbitrarily low |
| F07900 immediately on enable (no motion) | Encoder scaling wrong, or speed feedback path broken in SLVC mode | For SLVC the drive uses a model-based estimate; check motor data identification (p1910) completed and p1960 (speed controller optimisation) done |
| F07900 + F08501 (PROFINET watchdog) | Communication break; drive reverts to safe state but brake sequence may be incomplete | Check PROFINET cable, watchdog time in p2042; if redundant, set up S2 redundancy |
| F07900 with F30002 (DC link overvoltage) | Mechanical energy returned during stop raises DC link voltage; speed controller fights back | Enable regenerative feedback or a brake chopper; check p1240 / p1245 configuration |
10. Field-Proven Commissioning Notes
Across multiple SINAMICS S120 installations in crane, hoist, winch, and conveyor service, the following practical observations have been recorded. They are not in the source manual but are common to field service engineers.
- The default p2177 = 1000 ms is generous. Increasing it to e.g. 5000 ms to "buy time" is not a fix — it is a workaround that masks the sequencing error. If the real fix cannot be applied (e.g. PLC cannot be modified), the workaround is acceptable as a temporary measure but should be documented in the project's risk assessment.
- The default p2175 = 30 rpm is well above the noise floor of a stopped SLVC drive. Lowering it (e.g. to 5 rpm) makes the detector more sensitive to genuine stalls but also more sensitive to brake sequencing errors. Set p2175 with the same speed threshold as p1218 to keep behaviour consistent.
- Spring-set holding brakes are fail-safe: de-energise = apply. The 24 V supply to the brake coil must be fused and protected against short-circuit. A shorted brake coil will keep the brake open and the drive will run into a different fault (e.g. F07902 — motor speed deviation).
- If the SINAMICS S120 is part of a Safety Integrated application (e.g. SINAMICS Safety Integrated with PROFIsafe), the brake is typically commanded via the safety control word and the parameters above are still applicable. Check the Safety Integrated Function Manual for the additional SS1, STO, SBC parameters. Safe Brake Control (SBC) is supported on specific SINAMICS S120 variants — verify the drive variant and firmware release.
- If the application is a vertical axis (hoist), an additional overspeed detection (p2181, p2182) must be configured to catch a brake failure. F07900 only catches the motor-blocked case (speed too low) — the converse case (speed too high because the brake did not engage) is a different fault, typically F07901 or a Safety trip.
- For redundant brake systems (two brakes in series), the drive's internal sequencer can only command one brake. The second brake must be commanded by a separate output, ideally supervised by a Safety function.
- If the drive is in torque control (p1501 = 1) rather than speed control, the F07900 detector uses |Iq| only and the sequencing changes. In torque control the PLC must explicitly switch to speed control (or issue OFF1 / STO) before closing the brake.
- Motor data identification (p1910 for static, p1960 for rotating) must be completed successfully before relying on SLVC at low speeds. An SLVC drive with a poorly identified motor will report false motor-blocked trips because the speed estimate diverges from reality.
- PROFINET telegram 1 carries 2 PZD words each direction. If more state is required (e.g. r899 brake status, r80 Iq), select telegram 102 or 105. The free PZD configuration in p0922 / p2079 allows fully custom mapping but requires both ends of the link to be configured identically.
- Storing the configuration: SINAMICS S120 stores parameters in three places — volatile RAM, non-volatile CF card, and the CU's internal flash. Use "Copy RAM to ROM" in Starter / Startdrive to save to all persistent locations. The CF card is the recovery image; without it, a drive replacement requires reloading the project.
11. References and Further Reading
- SINAMICS S120 Function Manual (FH1) – detailed description of brake sequencer, motor blocked detection, and Safety Integrated.
- SINAMICS S120 List Manual (LH1) – full parameter list, every parameter mentioned here (p1215, p1216, p1217, p1218, p1219, p1220, p2144, p2175, p2177) is described with field references and bit assignments.
- SINAMICS S120 Getting Started – commissioning flow and Starter / Startdrive navigation.
- SINAMICS S120 product page with manuals – all firmware-version-specific manuals.
FAQ
What does fault F07900 mean on a SINAMICS S120?
F07900 is the "motor blocked" fault. The drive detects that the actual speed r63 has remained below p2175 (default 30 rpm) for longer than p2177 (default 1000 ms) while the torque-producing current r80 was above the blocked-torque threshold. With external brake control, this typically means the brake closed before the drive was told to disable torque.
Can I just increase p2177 to stop the F07900 fault?
Yes, but it is a workaround, not a fix. Increasing p2177 to e.g. 5000 ms delays the fault but does not correct the sequencing error — the drive is still pushing against a closed brake, which generates excess heat in the motor and inverter. Use the parameter increase only as a temporary measure while the real fix is implemented.
What is the correct p1219 setting for an external holding brake?
Set p1219[0] = 1 to apply the brake immediately on OFF1, or p1219[0] = 3 to apply on both OFF1 and OFF3. With one of these settings, the drive closes the brake the instant the stop command is detected, before the ramp begins, eliminating the torque-against-brake window that causes F07900.
Should the PLC or the drive control the holding brake?
Drive control is strongly preferred. Set p1215[0] = 1 (sequence control) or 3 (sequence control with fieldbus enable) and let the drive command the brake based on actual motor state. The PLC then only needs to send ON / OFF1 and STO commands to the drive. This eliminates the F07900 root cause and is the architecture used in the standard Siemens application examples for SINAMICS S120.
What r63 and r899 values should I trace to verify the brake sequence?
Trace r63 (actual speed smoothed, rpm), r852 (brake control word from drive), r899 (brake status word), and r80 (Iq). r899 bit 12 typically indicates brake state depending on the firmware version — check the List Manual. Also confirm the OFF1 command (status word bit 1, ZSW1) transitions before r80 collapses. The correct sequence is: OFF1 → r852.0 (close) high → |r63| ramps to 0 → r80 collapses → brake contacts fully closed. Any other order, especially "r852.0 high before r80 collapses", risks F07900.
How do I confirm my CU320-2PN firmware version before changing brake parameters?
Read r18 (Control Unit firmware version) and r20 (drive firmware version) via Starter / Startdrive online mode. The List Manual reference for your specific firmware is essential because the brake sequencer and bit assignments for r852 / r899 changed between V4.x and V5.x. The current manuals are available from the SINAMICS S120 product page.