Configuring SINAMICS G120 to Replace MM420 on Elektronikon MKIV

David Krause15 min read
SiemensTechnical ReferenceVFD / 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

Configuring a SINAMICS G120 as a Drop-In Replacement for a MICROMASTER 420 on an Atlas Copco Elektronikon MKIV USS Link

Atlas Copco oil-injected screw compressors controlled by an Elektronikon MKIV regulator communicate with the cooling-fan drive through the legacy Siemens USS (Universal Serial Interface) protocol on RS-485. The MKIV firmware assumes the slave drive presents the MICROMASTER 420 (MM420) control-word, status-word, setpoint-scaling, and acyclic parameter-channel (PKW) layout. A direct hardware swap of a failed MM420 for a SINAMICS G120 (CU240B-2 or CU240E-2) will not establish communication unless the G120 is re-parameterized to match the MM420 profile. This reference documents the protocol-level mismatch, the parameter-level fix, the field-commissioning sequence, and the verification tests required to integrate a SINAMICS G120 on an existing Elektronikon MKIV USS link without modifying the controller.

Problem Statement

When an MM420 on the cooling-fan VFD slot fails, field engineers commonly substitute a SINAMICS G120 because the MM420 is end-of-life. The wiring is correct, the G120 powers up, the IGBTs close in local mode, and the BOP-2 shows no fault. The MKIV, however, logs No communication or Drive fault within 200 ms of the first poll cycle. The MM420 replacement part, by contrast, works the moment it is plugged in.

Five independent mismatches stack up on the G120 out of the box:

  1. Default protocol: the CU240B-2 ships with Modbus RTU enabled on RS-485 (p2020 = 2). USS is disabled.
  2. PZD interconnection: SINAMICS G120 requires explicit BICO mapping of received control-word bits (p2050[]) and transmitted status-word bits (p2051[]). MM420 maps bits automatically.
  3. STO/OFF2 hard-wiring: CU240E-2 F-variants tie OFF2 to the safe-torque-off input DI4; if STO is open, OFF2 is forced low and the drive cannot run.
  4. Setpoint scaling: MM420 references P2000; G120 references p2000. Both are settable, but the defaults differ (MM420 = 50 Hz, G120 with motor-ID completion = nameplate frequency, often 50/60 Hz).
  5. PKW parameter semantics: r0021, r0027, r0052, r0003 numbers are reused but the encoding (scaling, signed/unsigned, 16-bit vs. Float32) differs. The MKIV parser may misinterpret numeric telemetry.
Field observation: on MKIV firmware ≥ 7.x, the regulator logs Drive not responding within 500 ms if ZSW1 bit 10 (control by PLC) does not return 1. On the G120 this bit is not routed by default and must be explicitly assigned via p2051[10].

USS Protocol Fundamentals on Siemens Drives

USS is a half-duplex RS-485 master-slave protocol documented in the Siemens application note USS Protocol — Application Description. Both MICROMASTER and SINAMICS implementations share the same telegram structure, but the parameter number space and default interconnect differ.

Frame Structure

STX LGE ADR PKE IND PWE1 PWE2 STW1 STW2 HSW BCC PKW (4 words, acyclic) PZD (3 words, cyclic) Master → Slave (typical 16 bytes, MKIV default)

Default COM Settings: MM420 vs. G120 vs. MKIV Required

Parameter MM420 Default G120 CU240B-2 Default MKIV Required
Baud rate 9600 (P2010) 19200 (p2021) 9600
Parity Even (P2011) Even (p2030) Even
Stop bits 2 (P2012) 2 2
Slave address 1 (P2013) 1 (p2021[0]) 1
Protocol USS (P2014) Modbus RTU (p2020=2) USS (p2020=1)
PZD length 2/2/4 (P2015) 0/0/0 (free) 2/2/4
PKW length 4 (P2016) 0 (free) 4
Telegram timeout — 100 ms (p2024) — (handled by MKIV)

Reference: SINAMICS G120 Parameter Manual, section 4.5 (Communication).

Control Word Bit Mapping: MM420 vs. SINAMICS

The MM420 control word follows the legacy PROFIdrive V1/NORD profile. The SINAMICS G120 control word follows the same bit-numbering convention for bits 0-11, but the factory default for bit 10 (control from PLC) is not auto-routed on the receive side. The status word layout is identical at the bit level, but the source of each status bit must be wired through BICO.

Bit MM420 STW1 Meaning SINAMICS STW1 Meaning MM420 ZSW1 SINAMICS ZSW1
0 ON/OFF1 (edge) ON/OFF1 Ready to switch on Ready to switch on
1 OFF2 (coast) OFF2 (coast) Ready Ready
2 OFF3 (quick stop) OFF3 Operation enabled Operation enabled
3 Enable pulse Enable operation Fault present Fault present
4 Enable ramp gen. Enable ramp gen. OFF2 inactive OFF2 inactive
5 RFG start Unfreeze RFG OFF3 inactive OFF3 inactive
6 Setpoint enable Setpoint enable Switch-on inhibited Switch-on inhibited
7 Fault acknowledge Fault acknowledge Alarm present Alarm present
8 JOG right JOG 1 Speed within tolerance Speed set/actual within tol.
9 JOG left JOG 2 Control request Control request
10 Control by PLC Control by PLC f ≥ n_min/max f reached/exceeded
11 Reverse Reversal I ≥ I_limit I, M, P limit reached
12-15 Reserved Reserved (STW2 used) Reserved Reserved

Bits 0-7 are functionally identical. The practical differences are bit 3 (MM420: enable pulse vs. G120: enable operation) and bit 5 (MM420: RFG start vs. G120: unfreeze RFG). On the G120, r899.0 (pulses enabled) only goes high when r52.3 (fault absent) is true AND p8641.0 (modulator enable) is true. The MKIV checks r899.0 implicitly through ZSW1 bit 2 (operation enabled) and trips if it stays low for > 2 s.

Setpoint and Actual-Value Scaling

Both MM420 and G120 normalize the 16-bit main setpoint (HSW) to a percentage of the reference speed defined in p2000 / P2000 (default 50 Hz, normalized 0x4000 = 100 %).

Parameter MM420 SINAMICS G120
Reference speed P2000 (default 50 Hz) p2000 (default = motor nameplate Hz after ID)
Main setpoint input Word 3 (16-bit) PZD word 3 (16-bit, via p2050[2])
Main actual value output Word 3 (16-bit) PZD word 3 (16-bit, via p2051[2])
Normalization 0x4000 = 100 % 0x4000 = 100 % (same)
Ramp-up time P1120 (default 10 s) p1120 (default 10 s)
Ramp-down time P1121 (default 10 s) p1121 (default 10 s)

If the G120 is commissioned at 60 Hz (US-built motor) but the MKIV is sending a 50 Hz reference setpoint, the fan runs 20 % over-speed and the high-pressure safety trips within 90 s. Set p2000 = 50.0 explicitly to emulate the MM420 default.

PKW Acyclic Channel

The MKIV reads r0021 (output frequency), r0027 (output current), and r0003 (status word 1) over the PKW acyclic channel every 5 s for trending. Both MM420 and G120 expose these parameter numbers, but the encoding differs:

Parameter Number MM420 Encoding SINAMICS G120 Encoding
r0003 (ZSW1) 16-bit unsigned, raw bits 16-bit unsigned via r898, raw bits
r0021 (output freq.) Float32, Hz Float32, Hz (via r21)
r0027 (output current) 16-bit, % of P0305 Float32, A (via r27)
r0052 (ZSW2) 16-bit unsigned 16-bit unsigned via r53

For MKIV firmware ≤ 6.5x the controller only logs these values for trending and does not enforce trip limits. On ≥ 7.0 firmware, r0027 is used for current-based shutdown, and a Float32 response is rejected with PKW invalid. Add a scaling block or change p2051[2..5] mapping to provide the MM420-scaled representation.

Reference: SINAMICS G120 List Manual, parameter r27. Float32 is stored across PWE1/PWE2 with high-word-first byte order, which matches the MKIV's expected byte sequence.

Prerequisites for Field Commissioning

  • SINAMICS G120 with CU240B-2 PN or CU240E-2 PN F, firmware ≥ V4.7 SP10 (see G120 firmware release notes).
  • Connected motor nameplate data: kW, V, A, Hz, rpm, cos φ.
  • BOP-2 or IOP-2 handheld, or STARTER / Startdrive ≥ V15.1 with USB cable.
  • RS-485 shielded twisted-pair from MKIV TB3 (A+, B-, GND) to CU terminal 29 (P+) / 30 (N-).
  • 120 Ω termination at the G120 end (DIP switch S1 = ON); disable on-board termination on the MKIV by removing JP3.
  • Risk assessment per IEC 60204-1 if STO is being bypassed.

Step-by-Step Commissioning Procedure

  1. Factory reset: p0970 = 1 (resets all parameters to defaults).
  2. Quick commissioning start: p0010 = 1, p0003 = 3 (expert access).
  3. Enter motor data: p0301 (kW), p0304 (V), p0305 (A), p0307 (Hz), p0311 (rpm), p0308 (cos φ).
  4. Run motor identification: p1900 = 1 (standstill ID) or p1900 = 2 (rotating ID, decouple compressor mechanically first).
  5. Set reference speed: p2000 = 50.0 (Hz, MM420-compatible).
  6. Set limits: p1080 = 5.0 (min), p1082 = 50.0 (max).
  7. Set ramps: p1120 = 10.0, p1121 = 10.0.
  8. Enable USS protocol: p2020 = 1 (USS on RS-485).
  9. Set slave address: p2021[0] = 1 (must match MKIV drive table; cooling fan is typically drive #1).
  10. Set baud rate: p2021[1] = 6 (9600 bit/s).
  11. Set parity/stop bits: p2030 = 2 (even parity, 2 stop bits).
  12. Define PZD length: p2022[0] = 2 (PZD receive words), p2022[1] = 2 (PZD transmit words), p2022[2] = 4 (total PZD).
  13. Define PKW length: p2023[1] = 4 (4 PKW words, matching MKIV).
  14. Set command source to USS: p0700 = 5.
  15. Set setpoint source to USS: p1000 = 5.
  16. Wire received STW1 bits: p2050[0] = r2090.0, p2050[1..15] mapped to r2090.1 through r2090.15 by default (BICO convention).
  17. Wire transmitted ZSW1 bits (CRITICAL):
    • p2051[0] = r52.0 (ready to switch on)
    • p2051[1] = r52.1 (ready)
    • p2051[2] = r52.2 (operation enabled)
    • p2051[3] = r52.3 (fault)
    • p2051[4] = r899.0 (pulses enabled)
    • p2051[5] = r52.5 (OFF3 inactive)
    • p2051[6] = r52.6 (switch-on inhibited)
    • p2051[7] = r52.7 (alarm)
    • p2051[8] = r2197.7 (speed within tolerance)
    • p2051[9] = r52.9 (control request)
    • p2051[10] = r52.10 (control by PLC — required for MKIV handshake)
    • p2051[11] = r2197.4 (ramp active)
  18. Map main setpoint: p2050[2] = r2050[2] (default, PZD receive word 3 → main setpoint).
  19. Map actual value: p2051[2] = r21 (output frequency smoothed, in Hz).
  20. Configure OFF2 source: p0852[0..2] = 0 (constant 0) only if MKIV does not drive STO and a risk assessment per IEC 60204-1 documents the bypass.
  21. Configure OFF3 source: p0856[0..2] = 0 (constant 0, optional).
  22. Configure telegram monitoring: p2024 = 100 (ms, USS telegram fail time; extend to 1000 ms if MKIV cycle time is slow).
  23. Save parameters: p0971 = 1 (commit RAM → non-volatile).
  24. Power-cycle the drive.
  25. Verify with STARTER trace or RS-485 sniffer that ZSW1 returns 0xE031 within 200 ms of MKIV STW1 = 0x447E.
Safety warning: Disabling OFF2 by setting p0852 = 0 bypasses the Safe Torque Off function. If the G120 is the only functional stop element for the cooling fan, retain p0852[0] = r0722.4 (STO input DI4) and add a jumper from DI4 to 24 V on the CU terminals so STO is held inactive while the MKIV is in RUN. See Siemens Safety Integrated manual.

Verification Tests

BOP-2 Local Override

  1. Temporarily set p0700 = 1 (BOP-2 command source).
  2. Press RUN, observe drive accelerates to 25 Hz.
  3. Stop, set p0700 = 5 (USS).
  4. Restart MKIV, observe ZSW1 transitions 0xE031 → 0xE033 → 0xE037 as MKIV walks the state machine.

USS Frame Capture

Connect a USB-to-RS-485 sniffer on terminal 29/30. The captured frames should match:

Master → G120 (Addr 1):
02 0E 01 7E 44 00 00 00 00 00 00 00 00 00 25
                       ^STW1=0x447E  ^HSW=0x0000

G120 → Master:
02 0E 01 31 E0 00 00 00 00 00 00 00 00 00 D1
                       ^ZSW1=0xE031

If ZSW1 returns 0x0000: USS receive is not enabled — check p2020 and p0700.
If ZSW1 returns 0xE031 but the drive does not run on STW1 = 0x447F: check p1000 and p2050[1] (OFF2).
If F30002 or F07220 appears: check p0852 wiring and p2024 timeout.

State-Machine Walk

S1 Switch-on inhibit S2 Switched on S3 Ready S4 Operation S5 Running STW1=0x447E STW1=0x447F STW1+RFG STW1=0x447E (fault)

Fault Code Mapping

Fault Code Cause Resolution
F30002 STO active (DI4 low) Wire p0852[0] to 0 with safety justification, or add jumper from DI4 to 24 V
F07220 USS telegram failure Verify p2021[0] matches MKIV address; extend p2024
F30021 OFF2 via STO input Disable p0852[0] source if MKIV does not drive STO
F08501 Change in comm config not committed Acknowledge with p3981 = 0, commit with p0971 = 1
F07802 Inverter overloaded Motor data mismatch — re-run p1900 = 2
F30022 OFF3 via digital input Disable p0856[0] source
A08502 Warning: USS PZD config Expected during commissioning, clears after p0971
F07320 USS telegram with bad BCC Check RS-485 shielding, baud rate, parity
F7311 PKW acyclic failure Check p2023[1] = 4

Fault codes per SINAMICS G120 List Manual, fault and alarm chapter.

Troubleshooting Matrix

Symptom Likely Cause Diagnostic Parameter Resolution
MKIV: "no communication" Wrong protocol (Modbus default) r2020 Set p2020 = 1
MKIV: "drive fault" STO active, OFF2 low r899.0, r52.2 Disable STO source in p0852
Drive runs but MKIV logs "speed deviation" PKW returns wrong parameter r2053[0..3] Re-route ZSW2 / HIW per p2051
Drive runs at wrong speed p2000 mismatch p2000 Set p2000 = 50 Hz for MM420 emulation
Drive accelerates, trips F07802 Motor ID not run r34 Run p1900 = 2
ZSW1 bit 10 always 0 p2051[10] not wired r52.10 Set p2051[10] = r52.10
MKIV logs "compressor overload" within 1 min PKW r0027 read as wrong format r27, r21 Insert scaling BICO block to convert Float32 → 16-bit
Drive does not respond to RUN USS cable polarity reversed — Swap A+/B- at CU terminal 29/30
MKIV shows intermittent comm loss Baud rate mismatch p2021[1] Set to 6 (9600), check parity 2 stop
Trip F07900 after 5 s Motor blocked or overload r35 Check mechanical coupling, motor fan

Edge Cases and Field Notes

CU240E-2 F (Fail-Safe) Variants

The fail-safe CU variant ties OFF2 to the integrated STO input (DI4). If STO is open, the drive will never enable, regardless of USS commands. Field remedy:

  1. Verify DI4 (terminal 16 on CU240E-2 F) is high (+24 V).
  2. If the MKIV does not have a dedicated STO output, install a jumper between terminal 16 and 24 V internally on the CU.
  3. Document the bypass in the safety file per ISO 13849-1.

Modbus-Default CU240B-2

CU240B-2 ships with Modbus RTU active on RS-485. The Modbus register map is wholly different from USS PZD/PKW, so even valid MKIV frames will be parsed as garbage. Always confirm r2020 = 1 before further commissioning.

IOP-2 Plug-and-Play Interference

If an IOP-2 is plugged in during commissioning, the drive defaults to the IOP command source (p0700 = 4) regardless of USS. Remove the IOP-2 or explicitly set p0700 = 5 after IOP-2 use.

MKIV Firmware Variants

MKIV firmware versions 6.x and 7.x differ in their PKW parser strictness. 7.x enforces parameter-number validation; if you have changed r0027 to a Float32 readout and the MKIV expects a 16-bit integer, the request will fail and the controller may interpret it as "current out of range". Workaround: route ZSW2 / HIW word to a free function block that scales r27 to MM420 16-bit format.

Alternate Controllers

If a third-party controller (not MKIV) is involved, the same procedure applies with different default telegram numbers:

Controller USS Profile Telegram Size Default Reference Speed
Atlas Copco Elektronikon MKIV MM420 emulation 16 bytes (4 PKW + 4 PZD) 50 Hz
Atlas Copco Elektronikon MKV Generic VFD / PROFIdrive 10 bytes (2 PKW + 3 PZD) Configurable
Siemens SIMATIC S7-200 (USS) Standard Siemens Configurable 50 Hz
ABB AC500 Standard Siemens (third-party) Configurable Configurable
Schneider Modicon M340 Custom mapping Configurable 50/60 Hz

Pre-Commissioning Checklist

  • [ ] Motor nameplate captured (kW, V, A, Hz, rpm, cos φ).
  • [ ] Mechanical coupling verified (compressor fan free to rotate).
  • [ ] USS cable A+/B-/GND correctly wired; shield grounded at MKIV end only.
  • [ ] 120 Ω termination active at G120 end (DIP S1 = ON); MKIV on-board termination disabled (JP3 removed).
  • [ ] 24 V SELV supply grounded per IEC 61131-2.
  • [ ] p2020 = 1 confirmed.
  • [ ] p2021[1] = 6 (9600 baud).
  • [ ] p0700 = 5, p1000 = 5 confirmed.
  • [ ] p2051[10] = r52.10 confirmed.

Post-Commissioning Verification

  1. Confirm BOP-2 displays run state within 1 s of MKIV issuing STW1 = 0x447F.
  2. Confirm ZSW1 transitions through bits 0, 1, 2, 3 in the expected order (LED blink pattern on BOP-2).
  3. Confirm r21 (output frequency) tracks HSW setpoint within ± 0.5 Hz.
  4. Confirm r0027 (output current) on MKIV display tracks measured clamp-meter current.
  5. Confirm compressor high-pressure switch does not trip within 10 minutes of continuous run.
  6. Confirm emergency-stop on MKIV trips the G120 (OFF1=0 → coast → ZSW1 bit 1 = 0).
  7. Confirm power restoration restarts the drive without MKIV intervention.
Documentation: Record the final parameter dump (STARTER → Drive → Parameter → Save to file) and attach it to the compressor's maintenance log. This is required by IEC 60204-1 for any safety-relevant parameter change.

FAQ

Can I directly swap a failed MM420 with a SINAMICS G120 on an Elektronikon MKIV without re-parameterizing?

No. The G120 CU240B-2 ships with Modbus RTU enabled (p2020 = 2) and unconnected PZD BICO routing. You must set p2020 = 1, p0700 = 5, p1000 = 5, p2000 = 50 Hz, and wire p2051[10] = r52.10 (ZSW1 bit 10 = control by PLC) for the MKIV handshake to complete.

Why does ZSW1 bit 10 (control by PLC) remain 0 even after the G120 acknowledges STW1 commands?

On the G120, ZSW1 bit 10 must be explicitly mapped via p2051[10]. The default BICO source for transmitted word 1 is the inverter status word r52, but bit 10 is only set when r52.10 = 1, which requires a successful handshake via p2050[10]. Set p2051[10] = r52.10 and p2050[10] = 1 (constant 1) or wire to the received STW1 bit 10 echo.

Which SINAMICS G120 firmware versions support USS?

All G120 firmware versions ≥ V4.5 on CU240B-2 and CU240E-2 support USS protocol. Newer firmware ≥ V4.7 SP10 also adds PROFIsafe support. Reference the G120 Parameter Manual for your specific firmware revision.

What is the difference between STW1 bit 1 (OFF2) on MM420 and G120?

Both use the same logical definition (0 = coast stop, 1 = enable). However, on the G120 with CU240E-2 F-variant, OFF2 is hard-wired to the STO safety input DI4. If STO is open, OFF2 is forced low and the drive cannot run. Disable this hard-wiring by setting p0852[0..2] = 0 after a functional-safety risk assessment per ISO 13849-1.

How do I verify the G120 is communicating on USS without the MKIV present?

Use STARTER or Startdrive online mode, set p0700 = 5 and p1000 = 5, then change p2050 values via the watch window — the r2050 values should track the writes. Alternatively, use an RS-485 sniffer (e.g. MH&H USS-Trace) and confirm STX/LGE/ADR/BCC echo frames from the G120 at the configured slave address.

Does p2000 have to equal 50 Hz for MM420 compatibility?

Yes, if the MKIV is hard-coded to assume 50 Hz reference scaling (which is the MKIV default for 50 Hz regional compressors). For 60 Hz markets the MKIV scales internally — verify the MKIV's compressor type code (CT/CG 50 vs. 60) before adjusting p2000. Reference G120 Parameter Manual p2000.

Back to blog