Problem Statement
A SINAMICS G120P with Control Unit CU230P-2PN (article number 6SL3243-0BB30-1FA0, firmware 4.7.10) is controlled by a SIMATIC S7 PLC over PROFINET using TIA Portal V15.1. The PLC writes all bits of the first process data word (PZD1 / STW1) and the drive responds correctly to every bit except bit 7 — the standard PROFIdrive fault acknowledge trigger. The PLC sets QWxxx.%X7 = TRUE, the bit appears in the watch table, but the active fault is never reset by the drive.
Affected Hardware, Firmware, and Software
| Item | Value | Notes |
|---|---|---|
| Drive family | SINAMICS G120P | Pump/fan drive platform |
| Control Unit | CU230P-2PN | Article number 6SL3243-0BB30-1FA0 |
| CU firmware | 4.7.10 | Verified against SINAMICS G120P firmware list |
| PROFINET interface | Integrated, 2-port switch | Supports PROFIdrive V4.2 profile |
| Power Module compatibility | PM230 (IP20/IP55) | Any PM230 size matched to CU230P-2PN |
| Engineering tool | TIA Portal V15.1 | With HSP for SINAMICS G120P installed |
| Drive commissioning tool | STARTER V5.x or Startdrive V15.1 | Used for BICO and parameter inspection |
| Standard telegram | Telegram 1 (STW1/ZSW1 + NSOLL/AIST) | Default for PROFIdrive applications |
Reference the operating instructions for the Control Units at the Siemens support portal: Control Units CU240B-2 and CU240E-2 Operating Instructions. The same STW1 bit semantics, BICO parameter structure, and fault acknowledge command source (p2103) apply to the CU230P-2PN.
PROFIdrive Control Word 1 (STW1) Bit Mapping
The CU230P-2PN receives a 16-bit Control Word 1 from the PLC on every PROFINET update. The PROFIdrive profile specifies the following interpretation:
| Bit | Designation | Function | Edge/Level |
|---|---|---|---|
| 0 | ON / OFF1 | Run command, level-sensitive | Level |
| 1 | OFF2 | Coast to stop, 0 = active | Level (low active) |
| 2 | OFF3 | Fast stop, 0 = active | Level (low active) |
| 3 | Enable operation | Inverter switches on | Level |
| 4 | Enable ramp generator | Releases ramp-function generator | Level |
| 5 | Start ramp generator | Sets ramp output to setpoint | Level |
| 6 | Enable setpoint | Motor follows setpoint | Level |
| 7 | Fault acknowledge | Reset active faults (0→1 transition) | Edge |
| 8 | Jog 1 | Jog bit 1 (signal source p1058) | Level |
| 9 | Jog 2 | Jog bit 2 (signal source p1059) | Level |
| 10 | Control by PLC | 1 = PLC has control authority | Level |
| 11 | Reverse direction | Negative setpoint | Level |
| 12 | HSW bit 0 / open loop | Reserved in standard telegram 1 | — |
| 13 | HSW bit 1 / closed loop | Reserved in standard telegram 1 | — |
| 14 | HSW bit 2 | Reserved | — |
| 15 | HSW bit 3 / reserved | Reserved | — |
Root Cause Categories
When STW1.7 is correctly toggled by the PLC and yet the drive does not clear the fault, one of the following root causes applies. Each is verified against the field experience captured in the original case log.
1. BICO Source for the Acknowledge Command Disconnected
Parameter p2103 is the first source for fault acknowledge at the binector level. In the SINAMICS G120 firmware, the default interconnection after a factory reset is:
-
p2103 = r2090.7— i.e. STW1 bit 7 from PROFINET -
p2104 = 0— second acknowledge source disabled -
p2105 = 0— third acknowledge source disabled
If a previous commissioning step (a "Quick commissioning" run, an upload from the drive, or a parameter write in Startdrive) altered p2103, the PLC's STW1.7 will be ignored even though QWxxx.%X7 reads TRUE in TIA Portal. For example, p2103 = 722.0 (digital input DI 0) routes the acknowledge to a hard-wired terminal — STW1.7 then has no effect.
2. Safety-Integrated Function Holding the Fault
When Safety Integrated Basic Functions (STO, SS1, SBC, SLS) or Extended Functions (via PROFIsafe or TM54F) are configured, certain safety faults (F01611, F30601, F30802, etc.) cannot be acknowledged by the standard STW1.7 path. The drive requires:
- Removal of the STO request (24 V back on STO input, or PROFIsafe bit 0 = 1)
- De-selection of SLS / SS1 via PROFIsafe or terminal
- Then a fresh acknowledge edge on STW1.7
Even if no Safety Integrated function is currently active, an internal safety stack error (e.g. F30600 SI fault) can be latched. In that state, the firmware blocks the standard acknowledge path.
3. Commissioning Mode Latch
If the drive was placed into commissioning (p0010 ≠ 0) or parameter download mode and p0010 was never reset to 0, the drive may be in a state where the standard control word sequence is treated as inactive. p0009 must equal 0 and p0010 must equal 0 for cyclic control word evaluation to apply.
4. PLC Output Word Being Overwritten by a Different Logic Block
Even with the user's check confirming no other write to QWxxx, the following patterns still cause the bit to drop before reaching the drive:
- A watchdog / process image update in TIA Portal: the
QWin the process image is overwritten each OB1 cycle with a value that lacks bit 7. - An uninitialized DB feeding a MOVE into the same output address.
- A second PROFINET device (e.g. a secondary controller, a GSD file mismatch, or an I-Device relationship) writing to the same slot.
- A shared device configuration where the IO controller only owns part of the slots and an IO controller with stale data is overwriting bit 7.
5. Telegram Mismatch
If the TIA Portal project defines standard telegram 1 (4 words PZD) but the drive was last commissioned with SIEMENS telegram 350 (Safety Integrated, 6 words PZD) or telegram 20 (free PZD), the PROFINET telegram length differs. The drive will still accept frames, but the bit mapping shifts. STW1.7 in TIA maps to a different drive-internal bit (for example, the safety control word S_STW1.7) and acknowledge no longer works.
6. Free Telegram Interconnection
If telegram 999 (free PZD interconnection) is active, the user must explicitly interconnect p2051[0] = r2090.7 (or r2090.0..15 as a group) so that PROFINET PZD1 bit 7 is wired through to p2103. After a project download, the free telegram can be reset to default but the BICO chain is not automatically re-linked.
Diagnostic Procedure
Follow this sequence in order. Each step confirms or eliminates one root cause without requiring a drive restart.
Step 1 — Confirm the Bit Is Reaching the Drive in Real Time
- Open TIA Portal V15.1, navigate to Online > Online & Diagnostics for the G120P device.
- Select PROFINET diagnostics > Port statistics and verify Discarded frames = 0 and CRC errors = 0.
- Open the Watch table for the drive's output address. Force
QWxxx = 16#0080(bit 7 set, all others cleared). The watch table should hold the value between OB1 cycles. - Simultaneously, in the drive, read parameter r2050[0] (received PZD1 word) via STARTER or Startdrive online mode. Confirm
r2050[0] = 16#0080. If the drive sees a different value, the PROFINET telegram mapping is wrong (root cause 5 or 6).
Step 2 — Inspect the BICO Acknowledge Source
- Connect to the drive with Startdrive V15.1 online.
- Navigate to Parameters > Drive commissioning > Messages/monitoring > Faults/alarms.
- Open parameter
p2103— Binector-Input 0, Source, First acknowledge command. - Verify the value is
r2090.7. If it is any other signal source (e.g.722.0,2090.15,0), re-enterr2090.7and acknowledge the parameter to write to EEPROM. - Repeat for
p2104andp2105if multi-source acknowledge is required.
Step 3 — Check Active Safety Faults
- In Startdrive, open Diagnostics > Active faults/alarms.
- Filter for faults in the F016xx, F306xx, F308xx, F300xx-SI range.
- If a Safety fault is present, the acknowledge will not clear it via STW1.7. Resolve the Safety function first: confirm
r9772.0(STO active) = 0, confirmr9773.0(SS1 active) = 0, confirm PROFIsafeSTW1.0= 1 if PROFIsafe is used. - Re-attempt the STW1.7 acknowledge only after all SI states show inactive.
Step 4 — Verify Commissioning Mode Is Closed
- Read
p0009(Device commissioning parameter filter) — must equal 0. - Read
p0010(Drive commissioning parameter filter) — must equal 0. - If either is non-zero, write 0 to both and perform a save (copy RAM to ROM,
p0971 = 1).
Step 5 — Telegram Verification
- In Startdrive / STARTER open Configuration > Telegram configuration.
- Note the active telegram (default: Standard telegram 1).
- Cross-check with the TIA Portal device configuration for the G120P — both sides must show the same telegram number AND the same length.
- For telegram 999 (free interconnection), verify
p2051[0] = r2090(or the individual bit sink for the acknowledge is wired correctly).
Step 6 — Cross-Reference Writes to the Output Word
- In TIA Portal, select the drive's
QWtag, right-click, choose Go to > Cross-references. - Confirm Write access shows only the intended FB output. Read access lines are safe; writes from OB100 (startup), OB82 (diagnostic), OB86 (rack failure), or from a different OB must all be removed unless intentional.
- Disable the OB1 section writing
QWxxxtemporarily, set the watch table toQWxxx = 16#0080with Modify mode Force, and observe whether the drive acknowledges the fault. If it does, the PLC logic is overwriting the bit.
Solution
Apply the following ordered fix sequence. Each step is idempotent and can be performed online without stopping the drive unless stated.
Fix A — Restore the BICO Source
In Startdrive online, write:
p2103 = 2090.7
Save to ROM:
p0971 = 1
Cycle the PLC control word FALSE → TRUE → FALSE on bit 7. Verify the fault clears. If the drive was originally configured for multi-source acknowledge (e.g. a digital input and PROFINET), set:
p2103 = 2090.7 // PROFINET STW1.7
p2104 = 722.0 // DI 0 optional hard-wired reset
p2105 = 0 // third source unused
Fix B — Reset the Commissioning Latch
p0009 = 0
p0010 = 0
p0971 = 1
Then cycle power or issue a warm restart via p0009 = 30; p0009 = 0.
Fix C — Align Telegram Configuration
In TIA Portal device configuration of the G120P, ensure the same telegram is selected as in Startdrive. For the typical pump application use Standard telegram 1:
- PZD1 receive: STW1 (control word)
- PZD2 receive: NSOLL (speed setpoint as N2, ±16384 = ±100 %)
- PZD1 send: ZSW1 (status word)
- PZD2 send: NIST (actual speed)
Compile the TIA Portal project, download the device configuration only (not the full program), and re-attempt acknowledge.
Fix D — Provide an Acknowledge Edge in the PLC
The PLC must produce a single rising edge on STW1.7, not a level. The simplest pattern in TIA Portal using SCL:
// Edge generator for STW1.7 fault acknowledge
#AckEdge := #FaultAckRequest AND NOT #AckEdgeMem;
#AckEdgeMem := #FaultAckRequest;
#DriveControlWord.%X0 := #RunEnable; // ON/OFF1
#DriveControlWord.%X1 := TRUE; // OFF2 inactive (high = enable)
#DriveControlWord.%X2 := TRUE; // OFF3 inactive
#DriveControlWord.%X3 := #InverterEnable; // Enable operation
#DriveControlWord.%X4 := TRUE; // Enable ramp generator
#DriveControlWord.%X5 := TRUE; // Start ramp generator
#DriveControlWord.%X6 := #SetpointEnable; // Enable setpoint
#DriveControlWord.%X7 := #AckEdge; // Fault acknowledge (edge)
#DriveControlWord.%X10 := TRUE; // Control from PLC
QWxxx := WORD_TO_INT(#DriveControlWord);
Hold #FaultAckRequest TRUE for at least 2 PROFINET update cycles (≥ 8 ms at 4 ms send clock), then drop it FALSE to issue the next acknowledge attempt.
Fix E — Eliminate Secondary Writes to the Output Tag
Open TIA Portal Go to > Cross-references on the QWxxx tag. Remove unintended writes from OB35, OB82, OB86, OB100, OB121, or any unused FB. Confirm the OB1 write is the only one.
Verification
- Force a known fault: open the drive's online mode in Startdrive, set
p2100 = 1and use the Fault test dialog, or setp2101 = 0withp2102 = 0and a dummy trigger on the fault word. - Confirm the fault is active in Active faults/alarms and that
ZSW1.3(Fault active) = 1 in the PLC receive word. - Trigger the PLC acknowledge: set the
#FaultAckRequesttag TRUE for one OB1 cycle. - Verify in Startdrive that the fault disappears within 4–20 ms (1–5 PROFINET cycles).
- Confirm
ZSW1.3drops to 0 in the PLC andZSW1.2(Operation enabled) returns to 1 once the drive re-enters Run state. - Repeat the fault injection three times to confirm the acknowledge is repeatable, not a one-shot recovery.
Common Faults Cleared by STW1.7 (Selection)
| Fault # | Description | Cleared by STW1.7? | Prerequisite |
|---|---|---|---|
| F07011 | Motor overtemperature (PTC/KTY) | Yes | Motor temperature below trip threshold |
| F07016 | Drive overtemperature | Yes | Heatsink sensor below limit |
| F07900 | Motor blocked | Yes | Load removed |
| F07901 | Motor overspeed | Yes | Speed below limit |
| F30002 | DC link overvoltage | Yes | DC link voltage within range |
| F30003 | DC link undervoltage | Yes | Line voltage restored |
| F30017 | Power unit overload | Yes | Cool-down complete |
| F30802 | SBC/STO active | No (STW1.7 alone) | Remove STO request first, then STW1.7 |
| F01611 | SI: defective component | No | Power cycle + safety acceptance |
| F01018 | Power unit ID failure | No | Power cycle only |
Troubleshooting Matrix
| Symptom in online mode | Parameter check | Most likely cause | Fix |
|---|---|---|---|
| STW1.7 toggles in PLC, drive r2050[0] bit 7 = TRUE, fault persists | p2103 | BICO source changed | Set p2103 = 2090.7 |
| STW1.7 toggles in PLC, drive r2050[0] bit 7 = FALSE | Telegram length, p2051[0] | Free telegram / mismatch | Align telegram, rewire p2051 |
| Fault is F30802 / F30601 / F01611 family | r9772, r9773 | Safety Integrated latch | Remove STO/SS1, then STW1.7 |
| Fault clears once, then cannot be re-acked | PLC program | No edge generated, static-TRUE does not retrigger | Generate 0→1 edge in PLC |
| No fault displayed but drive still does not start | p0009, p0010 | Commissioning mode latched | Set p0009 = p0010 = 0 |
| STW1.7 sometimes works, sometimes does not | Watch table, OB82 | OB82 diagnostic interrupt overwriting | Remove OB82 write, use only OB1 |
| Multiple PROFINET devices writing to same slot | Shared device config | Second IO controller overwrite | Reconfigure shared device access |
Notes on TIA Portal V15.1 Specifics
- TIA Portal V15.1 includes the SINAMICS G120P HSP package which can default
p2103 = 2090.7automatically. After a hardware replacement, the HSP may be reapplied and clear the BICO. Re-verify after every project download thatp2103is still2090.7. - The Online > Force function in TIA Portal V15.1 will write the forced value to the process image; in some combinations, the OB1 cycle will overwrite the forced value within the next scan. Use Modify with a periodic trigger or move the force into a separate test FB that runs in OB1 after the production logic.
- TIA Portal V15.1 with PROFINET prioritized startup enabled on the G120P can cause the drive to skip the first two control words. Allow at least 500 ms after PROFINET "AR established" before issuing the first STW1.7 acknowledge.
Field-Proven Checklist
- Confirm
p2103 = 2090.7online. - Confirm
p0009 = 0,p0010 = 0. - Confirm active telegram matches TIA Portal configuration.
- Confirm no Safety Integrated fault is latched.
- Confirm PLC generates 0→1 edge on STW1.7, not static level.
- Confirm no other OB writes to
QWxxx. - Run Save to ROM (
p0971 = 1) after every parameter change. - Power-cycle the drive if a parameter set was changed while the drive was running.
FAQ
Why does setting STW1.7 to TRUE in the PLC not clear the fault on my CU230P-2PN?
Bit 7 of the PROFIdrive control word is edge-sensitive, so a static TRUE will only generate one acknowledge pulse. The most common cause is a changed p2103 BICO source (e.g. p2103 = 722.0 rewires acknowledge to a digital input). Set p2103 = 2090.7 in Startdrive online, then issue a fresh 0→1 transition from the PLC.
Which parameter connects STW1.7 to the drive's internal fault acknowledge logic?
Parameter p2103 is the first acknowledge command source. The default is r2090.7 (bit 7 of the PROFINET receive word). Multi-source acknowledge is possible via p2104 and p2105, but the PROFIdrive standard recommends keeping only one source active to avoid double-acknowledging faults.
Does Safety Integrated prevent PLC-driven fault acknowledge on the G120P?
Yes. If an SI fault such as F30802, F30601, or F01611 is latched, STW1.7 will not clear it. The Safety function request (STO via terminal, SS1 via PROFIsafe, etc.) must be removed first, then the drive must be re-acknowledged. The PLC must see ZSW1.3 = 0 (no active fault) before re-enabling the inverter.
Can a telegram mismatch cause STW1.7 to stop working?
Yes. If TIA Portal sends Standard telegram 1 (4 PZD) but the drive is configured for telegram 350 (6 PZD with Safety) or telegram 999 (free PZD), the bit mapping shifts. STW1.7 in the PLC may map to a Safety control word bit or a different drive-internal function. Align the telegram on both sides of the PROFINET link and re-run the device configuration download.
My watch table shows QWxxx bit 7 = 1 but the drive does not acknowledge. What should I check next?
Use Startdrive to read r2050[0] on the drive. If bit 7 of r2050[0] is TRUE, the PROFINET link is healthy and the issue is in the BICO chain (p2103, Safety state, or p0009/p0010). If bit 7 of r2050[0] is FALSE, the telegram mapping is wrong or another controller/OB is overwriting the output word before it leaves the PLC.