SINAMICS G120 CU230P-2: Resolving Missing Pump Pressure Macro 103

David Krause13 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. Problem: Macro 103 Is Not Offered on a CU230P-2 PN

When commissioning a SINAMICS G120 with a CU230P-2 PN Control Unit (paired here with a PM240-2, 2.2 kW Power Module), selecting macro 103 – Pump Pressure Control – is not possible. The macro is absent from both the IOP (Intelligent Operator Panel) and the TIA Portal / STARTER drive wizards. The list of available quick-commissioning macros appears truncated to roughly five or six options, and the remaining process-relevant parameters (e.g. routing the analog input to a free interconnect destination such as r0755) cannot be selected as a macro entry.

This article documents the root cause, the variant/firmware matrix that decides macro availability, and the field-proven work-around that lets a CU230P-2 PN or DP perform closed-loop pump pressure control even though macro 103 is not selectable from the standard tool view.

Important: Parameter r0755 is the actual value of analog input 0 expressed in percent (scaled to the configured input type and range). It is an read-only status word and cannot be used as a macro command value interconnect. A missing entry for "AI0 → r0755" in the macro selector is therefore expected behavior, not a defect.

2. Root Cause: Macro Family Mapped to Control Unit Variant

The SINAMICS G120 quick-commissioning macros (parameters P0010 = 15 and the pre-defined macro index P0015) are split into two families:

  • 0XX macros (7, 9, 12, 13, 14, 15, 17, 18, 19, 20, 21) – fieldbus-independent standard macros available on every CU230P-2 variant (DP, PN, BT, HVAC).
  • 1XX macros (101 through 118) – BT (Building Technologies) and HVAC macros. They are only delivered with the CU230P-2 BT and CU230P-2 HVAC firmware images.

The CU230P-2 PN and CU230P-2 DP firmware images do not embed the 1XX BT/HVAC set. Trying to set P0015 = 103 from STARTER, TIA Portal, or the IOP will be rejected with "value not in list" because that index simply does not exist in the parameter range of the loaded firmware image. This is the documented, intentional behavior of the G120 firmware – not a bug in the commissioning tool.

Macro 103 (Pump Pressure Control) in particular is delivered only with the BT and HVAC firmware, where it pre-wires:

  • AI0 as the pressure setpoint or feedback input (4–20 mA)
  • PID controller (P2200 enable, P2251 ramp, P2261 setpoint, P2264 feedback, P2280/P2285 gain/integral)
  • Control word source = fieldbus for remote start/stop, setpoint from analog
  • Digital inputs DI0 = ON/OFF1, DI1 = fault acknowledge, DI3 = external fault

3. CU230P-2 Variants and Available Macros

Control Unit Order Number (MLFB) Fieldbus FW ≥ Macros Delivered
CU230P-2 DP 6SL3243-0BB30-1HA3 PROFIBUS 4.4 0XX set only
CU230P-2 PN 6SL3243-0BB30-1HA0 PROFINET 4.6 (SP6 for PN) 0XX set only
CU230P-2 BT 6SL3243-0BB30-1PA3 PROFIBUS, BT profile 4.7 0XX + 1XX BT set (101–118)
CU230P-2 HVAC 6SL3243-0BB30-1PA0 PROFINET, BACnet / USS 4.7 0XX + 1XX HVAC set (101–118)
CU240B-2 6SL3244-0BB00-1BA1 PROFIBUS 4.5 0XX set only
CU240E-2 6SL3244-0BB12-1BA1 PROFINET 4.6 0XX set only

The definitive source is the SINAMICS G120 CU230P-2 Control Units List Manual (04/2018, English). It lists every parameter, including P0015, and explicitly documents the variant-dependent macro range. Always cross-check the macro list against the as-delivered firmware image on your specific drive – Siemens occasionally re-allocates macro indices between service packs.

4. Confirming the Variant and Firmware on the Drive

Before assuming the macro is "missing" because of a tool problem, verify what the drive actually is:

  1. Read r0010 – drive version. The Control Unit article number is encoded here.
  2. Read r0018 – firmware version (e.g. 4.6.6.0 for PN with SP6).
  3. Read r0019 – firmware build date.
  4. Read r9776 – BOOT loader version.
  5. On the IOP, navigate to Menu → Commissioning → Drive info to see the same values in plain text.

CU230P-2 variants share the same hardware form factor; the distinction is the loaded firmware image. Field replacement of a BT/HVAC unit with a PN unit – or vice versa – is the single most common cause of "the macros vanished after maintenance".

Tip: On a brand-new PN unit in the box, the part number on the label (6SL3243-0BB30-1HA0) confirms the variant. If the label says 1PA0 (HVAC) or 1PA3 (BT), the 1XX macros will be present. The tool screenshot the user saw – a truncated macro list of roughly 5–6 entries – is the unmistakable signature of a PN/DP firmware image.

5. Work-Around: Manual Configuration for Pump Pressure Control

Because macro 103 cannot be loaded on a PN/DP CU230P-2, the macro must be re-implemented parameter-by-parameter. The list below mirrors macro 103 as delivered on a BT/HVAC image; commissioning it manually takes about 15 minutes once the parameter list is in front of you.

5.1 Drive Interface and Command Source

Parameter Value Description
P0010 15 Macro drive unit (set only for preview / read-only on PN/DP)
P0015 0 Macro index – we will build the macro manually because 103 is not in the list
P0700[0] 6 Command source = PROFINET/PROFIBUS control word
P1000[0] 6 Setpoint source = fieldbus (with analog trim via PID)
P0852 r2090.0 Enable ON/OFF1 from bit 0 of fieldbus control word

5.2 Digital Inputs (Default Macro 103 Wiring)

Terminal Parameter Value Function
DI 0 P0701[0] 1 ON / OFF1 (hold DI high to run, low to coast to stop)
DI 1 P0702[0] 10 Acknowledge fault (positive edge)
DI 2 P0703[0] 12 External fault (low → F0781)
DI 3 P0704[0] 0 Disabled (PID enable, assigned below)
DO 0 P0731[0] 52.2 Drive ready (status word 2, bit 2)

5.3 Analog Inputs for Pressure Transducer

Parameter Value Description
P0756[0] 2 AI0 type = 4–20 mA (two-wire transducer with loop power from terminal 10/11)
P0757[0] 4 x1 = 4 mA scaling start
P0758[0] 0 y1 = 0 %
P0759[0] 20 x2 = 20 mA scaling end
P0760[0] 100 y2 = 100 %
P0761[0] 4 Wire-break threshold = 4 mA (enables F0790 on lost signal)

5.4 Process PID Controller (P2200 Set)

Parameter Value Description
P2200[0] 722.1 PID enable from bit 1 of fieldbus control word (r2090.1)
P2251[0] 0 PID mode = PID as setpoint
P2253[0] r2250 PID setpoint from PID-SS internal word (driven by setpoint select)
P2254[0] r0019 PID trim source = none (we use fixed setpoint)
P2255 0 Setpoint 1 active (signaled via P2256/P2257)
P2256[0] 0 Fixed setpoint 1 = 0 %
P2257[0] 0 Ramp-up time for setpoint = 0 s
P2258[0] 0 Ramp-down time = 0 s
P2261[0] 755.0 PID setpoint = r0755.0 (AI0 actual value as percent) – this is the analog setpoint from the operator potentiometer or SCADA
P2264[0] 755.1 PID feedback = r0755.1 (AI1 actual value) – pressure transducer
P2265 0 Feedback filter time = 0 s
P2280[0] 1.0 Proportional gain (start, tune with auto-tune or step test)
P2285[0] 3.0 Integral time (seconds) – start at 3 s
P2291 100 Output upper limit = 100 %
P2292 -100 Output lower limit = -100 % (motor direction 1 only – set to 0 for non-reversing)
P2293 1 Ramp-up time of PID output (s) – prevents step on enable
P2294 1 Ramp-down time of PID output (s)
Polarity note: The macro assumes the feedback signal rises with pressure. If the transducer wiring gives an inverted signal (e.g. 4 mA = 10 bar, 20 mA = 0 bar), invert the value by routing P2264 to r0755.1 with a fixed P2296 = 1 (inversion) or swap P2261 and P2264 sources.

5.5 Setpoint Source Mapping

Macro 103 normally uses the fieldbus as the PID setpoint source. To replicate that on a PN/DP drive:

  1. Send the pressure setpoint as a normalized 0–100 % value in PZD word 2 of the PROFINET/PROFIBUS telegram (telegram 1 by default, or telegram 20 / 350 for Siemens-specific mapping).
  2. Set P2253[0] = r2050[2] (PZD receive word 2) and clear P2255 if you want the setpoint to track the bus exclusively.

5.6 Save and Reset to Runtime

  1. Set P0010 = 0 to leave commissioning mode.
  2. Set P0971 = 1 to save parameters to non-volatile memory. Wait for the drive to finish the save cycle (typically 2–8 s; r3996 = 0 indicates completion).
  3. Issue a power cycle or P0970 = 1 to reload defaults that may have been touched by the failed macro attempt.

6. IOP Wizard Approach (CU230P-2 BT / HVAC Only)

On a BT or HVAC Control Unit, the IOP supports an Add Macro operation. If the macro index has been overwritten with a custom configuration, restore it via:

  1. Menu → Commissioning → Quick Commissioning → Macro.
  2. Select Add → choose the desired 1XX macro (e.g. 103) → confirm.
  3. Restart the quick-commissioning flow; the new macro is now in the list.

On a PN/DP unit, the IOP Add Macro menu does not show the 1XX BT/HVAC options – the same firmware constraint applies. The IOP simply does not have the macro code in its offline database for the variant.

7. TIA Portal Configuration Steps

  1. Open the TIA Portal project that contains the G120 device (GSDML file: GSDML-V2.3x-Siemens-SINAMICS_G120_…).
  2. Insert a SINAMICS G120 device under the PROFINET subnet.
  3. Assign a standard telegram (Telegram 1 with 2 PZD words, or Telegram 20 for PZD-2/2).
  4. In Device view → Drives → Parameters, navigate the online parameter list and apply the manual mapping from §5.
  5. Click Online → Load to device. Use Save to ROM in the same toolbar to commit to the CF card / control unit flash.

If the TIA Portal parameter list view refuses to allow you to type a numeric value, switch the parameter list mode to Expert in the top-right dropdown. The expert view shows every Pxxxx parameter; the standard view hides expert-only parameters such as P2264 and P2253.

8. Verification Procedure

After manual commissioning, prove that the drive is actually performing closed-loop pump pressure control and not just running in open-loop fan/pump V/Hz mode.

  1. Check r0021 – actual CO: speed setpoint after ramp generator. Should track the PID output (r2294 = 755.0 actual PID output).
  2. Check r2250 – active setpoint. With a 12 mA signal on AI0, the value should be ≈ 50 %.
  3. Check r2272 – PID feedback. With a 16 mA signal on AI1, the value should be ≈ 75 %.
  4. Check r2273 – PID error (setpoint − feedback).
  5. Apply a step change to the AI0 setpoint (turn the potentiometer quickly) and watch r0021 smoothly track the new value with a small overshoot. If the output saturates immediately, the PID source wiring is wrong.
  6. Watch r0052[1] (status word 1) bit 2 (drive running), bit 5 (PID active), bit 7 (warning active).
  7. For a directional check, monitor r0079 (torque setpoint). A non-zero torque with motor stalled indicates the PID output is correctly biasing the speed setpoint.

9. Faults and Warnings to Watch For

Code Meaning Likely Cause on This Application
F0781 External fault via DI DI 2 is wired to P0703 = 12 but a normally-closed contact is missing – install jumper or invert the assignment
F0790 Wire break AI0 / AI1 Sensor below 4 mA or open loop; check transducer loop power and P0761
F08501 PN communication failure Watchdog timeout – check P2040 and PROFINET name assignment
F224 PID feedback below minimum P2266 minimum not configured; pipe empty or sensor disconnected
A0790 AI wire break (warning only) Set P0762 = 0 to disable wire-break evaluation if intentional

10. Firmware Update Considerations

If a firmware upgrade is performed, the macro list can change between service packs. Always check the release notes of the new firmware before commissioning. For PROFINET variants:

  • FW 4.6 SP6 is the recommended baseline for CU230P-2 PN.
  • FW 4.7 SP1 introduced updated fault handling and the G120P-specific macro set; the 1XX BT/HVAC macros are still absent on PN.
  • FW 5.x for CU230P-2 introduced PROFIenergy and a refreshed macro set; the macro numbers for the 0XX family may have shifted – always re-validate the macro assignment after a major-version upgrade.

Siemens publishes a complete firmware history and release notes through the Siemens Industry Online Support portal under the article ID 109757195 for the CU230P-2. Treat the list manual as authoritative; older printouts and third-party summaries frequently disagree on minor parameter values.

11. Field-Proven Tuning Sequence for Pump Pressure Control

  1. Start with P2280 = 0.3, P2285 = 30 s (very slow, very low gain) and observe the response to a 10 % setpoint step.
  2. Increase P2280 in 0.1 increments until a small overshoot appears on a step change, then back off 20 %.
  3. Reduce P2285 in 5-second steps until a steady-state error remains for more than 60 s, then increase by 20 %.
  4. Add derivative action by setting P2274 = 0.5 s if the process tolerates derivative (only useful on noisy pressure signals; not on pump discharge pressure).
  5. Set the output ramp P2293 = P2294 = 2 s to prevent hydraulic shock on enable/disable.
  6. Log r0021, r2250, r2272, and r2273 via the trace function in STARTER or TIA Portal during normal operation for 24 h before finalizing P2280/P2285.
Safety: Always provide a hardware over-pressure relief or shut-off on the discharge side that is independent of the drive. The PID controller can saturate and over-pressurize the system if the analog setpoint fails high; the relief device must not depend on drive firmware.

12. Quick Decision Tree

  • Macro 103 visible in the tool? → Use it; you have a BT or HVAC Control Unit.
  • Macro 103 NOT visible? → Confirm the order number. If PN or DP, build the macro manually per §5.
  • Need the 1XX BT/HVAC behavior but have a PN/DP unit? → Order a CU230P-2 BT or HVAC Control Unit and swap the unit (firmware image change); the PM240-2 Power Module is shared across variants.
  • Macro 103 visible but the AI0 → r0755 option is missing in the macro detail screen? → Expected; the macro pre-wires AI0 internally. r0755 is a status word, not a destination, so it should not appear in the routing table.

13. Summary of Key Parameters

Parameter Purpose Recommended Starting Value
P0015 Macro index (PN/DP supports 0, 7, 9, 12, 13, 14, 15, 17, 18, 19, 20, 21) 0 (manual)
P0700 Command source 6 = fieldbus
P1000 Setpoint source 6 = fieldbus
P2251 PID technology controller mode 0
P2261 PID setpoint signal source 755.0 (AI0 actual)
P2264 PID feedback signal source 755.1 (AI1 actual)
P2280 PID proportional gain 1.0 (tune)
P2285 PID integral time 3.0 s (tune)
P0971 Save parameters to NV 1

14. FAQ

Why is macro 103 missing on my CU230P-2 PN drive?

Macro 103 is part of the BT/HVAC macro family (1XX series) and is only delivered on the CU230P-2 BT (6SL3243-0BB30-1PA3) and CU230P-2 HVAC (6SL3243-0BB30-1PA0) Control Units. The PROFINET (1HA0) and PROFIBUS (1HA3) firmware images do not include the 1XX macros. To enable pump pressure control on a PN/DP drive, configure the PID parameters manually (P2200, P2251, P2261, P2264, P2280, P2285).

Can I flash the BT/HVAC firmware onto a PN Control Unit?

No. The hardware is the same, but the firmware image is bound to the MLFB and the loaded firmware image. Swapping the Control Unit for a BT or HVAC variant (same physical form factor) is the supported path. Attempting a cross-flash via the SD card or web server is rejected by the bootloader.

What is the recommended firmware version for a CU230P-2 PN?

FW 4.6 SP6 is the recommended baseline for the PN variant. Later 4.7.x versions are stable and add PROFIenergy and updated fault handling. Avoid 5.x unless you have validated the migration with the Siemens release notes (article ID 109757195).

Why does the macro screen refuse to let me type a parameter number?

STARTER, TIA Portal, and the IOP all restrict the macro selector to the set of macros actually present in the loaded firmware image. If you see a "value not in list" error for P0015 = 103, the macro is not in the image and the value cannot be written. Switch the parameter list view to Expert mode to see all parameters, then enter the values manually.

How do I replicate the 1XX macro on a PN drive without rewriting every parameter?

Use the IOP or STARTER commissioning wizard to load a 0XX macro that is closest to your needs (e.g. macro 9 for fieldbus with PID, or macro 21 for two-wire transducer control), then patch the differing parameters (P2251, P2261, P2264, P2280, P2285, P2200) with the values from §5 above. Save to ROM (P0971 = 1) and verify with r0021, r2250, and r2272.

Back to blog