Siemens MICROMASTER 420 (MM420) Pushbutton Forward/Reverse Setup
Overview
The Siemens MICROMASTER 420 (MM420) is a general-purpose 1AC/3AC variable frequency drive covering the 0.12 kW to 11 kW power range (230 V and 400 V classes). Although the platform has been discontinued and superseded by the SINAMICS family, an installed base of several hundred thousand units continues to operate in pumps, fans, conveyors, and small machine tools worldwide. Configuring the MM420 for pushbutton-operated forward/reverse control requires an understanding of the BICO (Binector Connector) parameter model, because the drive does not expose a single-click "three-wire control" preset comparable to modern inverters.
The most common failure mode when wiring three physical pushbuttons (ON forward, OFF, ON reverse) is that the reverse pushbutton starts the motor but accelerates it in the forward direction. This reference documents the root cause, the working parameter set, the PID-related constraint that limits some installations, and the recommended migration to SINAMICS for new projects.
Prerequisites
- MM420 firmware ES 1.2 or later (parameters P0703, P0842, and BICO connector 722.2 must be present). Older ES versions ship with a smaller digital input set and will reject the parameter write.
- Operator panel BOP (Basic Operator Panel) or AOP (Advanced Operator Panel), or the DriveMonitor / STARTER commissioning tool via RS485 (USS protocol on the COM port).
- Three-pole pushbutton station: one NO (forward), one NC (stop), one NO (reverse), rated for 24 V DC at 10 mA.
- Factory reset of the drive to defaults before applying the configuration below. This avoids stale BICO links from prior applications.
- Reference to the MICROMASTER 420 Parameter List (edition 03/09) for full BICO ranges.
Hardware Wiring (Low-Voltage Control Terminals)
The MM420 control terminal strip is located under the front cover. The internal 24 V supply on terminal 9 sources the digital inputs, and terminal 10 is the logic reference. The default sink (PNP) wiring is shown below.
Wire assignment summary:
| Terminal | Signal | Connection |
|---|---|---|
| 9 | +24 V internal | Common rail to all three pushbuttons (through NO/NC contacts) |
| 5 | DI1 (P0701) | Forward NO pushbutton |
| 6 | DI2 (P0702) | Stop NC pushbutton |
| 7 | DI3 (P0703) | Reverse NO pushbutton |
| 8 | DI4 | Reserved for fault acknowledge or external enable |
| 10 | GND | Logic reference; not required when sourcing from terminal 9 |
Digital Input Function Map (P0701–P0706)
Each digital input is mapped to a control function by parameters P0701–P0706. The values used in this application are:
| Parameter | Value | Function | Comment |
|---|---|---|---|
| P0700 | 2 | Command source = terminal strip | Must remain at 2 to allow direct DI evaluation; value 1 routes commands to BOP |
| P0701 | 1 | ON/OFF1 (right / forward) | Standard run command in positive direction; sets internal positive-direction flag |
| P0702 | 3 or 4 | OFF2 (coast) or OFF3 (quick ramp) | Defines stop behaviour; OFF3 uses P1135 ramp-down time |
| P0703 | 2 | Reverse / ON left | Sets the negative setpoint direction; works with P1000 selection |
| P0704 | 12 | Reverse enable (optional) | Allows firmware to acknowledge direction; default 0 keeps DI4 inactive |
Root Cause Analysis: Why Reverse Spins Forward
The original configuration in the reported case used the PID controller to generate the speed setpoint (P2253 = 2224, P2254 = 21, P2264 = 0). The PID output is r2294, which is a unipolar (positive-only) value. The MM420 PID path cannot produce a negative setpoint; even when P0842 (reverse command) is correctly triggered by r0053.11, the setpoint remains in the positive direction.
Symptom chain:
- Operator presses the reverse pushbutton (DI3 = 1).
- BICO link P2222 = 722.2 propagates the press to the PID fixed-setpoint selector.
- P0842 receives the ON-reverse command from r0053.11.
- Drive enables output stage in the requested direction.
- PID controller evaluates r2294 = P2291 (positive value, e.g. 50 Hz).
- r0021 (output frequency) ramps to +50 Hz, not −50 Hz, because r2294 is unsigned.
Result: the motor accelerates forward even though the reverse command was correctly accepted. This is a documented PID limitation, not a wiring or parameter wiring fault.
Solution A — Fixed-Frequency Setpoint With Direction Flag (Recommended)
For applications that genuinely require forward and reverse, abandon the PID fixed-setpoint path and use the fixed-frequency setpoint (P1000 = 3) together with the direction bits from P0701 and P0703. The fixed-function values 1 (forward) and 2 (reverse) on P0701/P0703 internally flip the sign of the active setpoint.
- Reset to factory defaults:
P0010 = 30,P0970 = 1. - Set access level:
P0003 = 3(expert). - Set command source:
P0700 = 2(terminal strip). - Map digital inputs:
P0701 = 1,P0702 = 4,P0703 = 2. - Select fixed-frequency setpoint:
P1000 = 3. - Define fixed frequencies:
P1001 = 30 Hz,P1002 = 30 Hz(forward and reverse reference values). - Wire BICO selection bits:
P1020 = 722.0,P1021 = 722.2. - Allow negative setpoint:
P1110 = 0(reverse inhibit disabled). - Configure ramp times:
P1120 = 5 s(ramp-up),P1121 = 5 s(ramp-down),P1135 = 3 s(OFF3 quick ramp). - Set minimum and maximum frequency:
P1080 = 0 Hz,P1082 = 50 Hz. - Save to EEPROM:
P0971 = 1. Wait for "busy" to clear on the BOP.
Operation: pressing the forward pushbutton closes DI1; the firmware selects P1001 (30 Hz) and applies a positive sign because P0701 = 1 sets the direction flag to right. Pressing the reverse pushbutton closes DI3; the firmware selects P1002 (30 Hz) and applies a negative sign because P0703 = 2 sets the direction flag to left. The motor accelerates in the requested direction along the ramp defined by P1120.
Solution B — BICO Wiring for Reverse When PID Setpoint Is Required
If the closed-loop PID must remain in place, accept that reverse direction is not available from the PID path. The workaround is to keep forward speed control with PID and to add a relay interlock (latching circuit) so that pressing reverse drops out the forward latch and then drives a separate contactor that reverses two motor phases. This is the approach used in the original report and works, but adds external components and a hardware-based phase reversal that bypasses the drive's own direction logic.
Alternative firmware-only workaround: leave P0703 = 99 (BICO enable) and route P0842 = 53.11 as before, but switch P1000 from PID setpoint to analog setpoint on a bipolar ±10 V signal. In this configuration the analog input becomes the source of the negative setpoint. The PID fixed-setpoint path is then used only for the forward direction.
Solution C — Analog Bipolar Setpoint with Two Pushbuttons
Where a single analog input is available, use ±10 V across terminals 3 (+) and 4 (GND). Wire a centre-tap potentiometer (10 kΩ) to produce positive voltage for forward and negative voltage for reverse, and use DI1 and DI3 as enable contacts.
-
P0700 = 2,P0701 = 1,P0702 = 4,P0703 = 2. -
P1000 = 2(analog setpoint). -
P0756 = 0(unipolar 0–10 V) orP0756 = 2(bipolar −10 V to +10 V). -
P0757 = 0 V,P0758 = 0 %,P0759 = 10 V,P0760 = 100 %. -
P0761 = −10 V,P0762 = −100 %when bipolar mode is selected. -
P1110 = 0(reverse inhibit disabled).
Parameter Cross-Reference Table
| Parameter | Solution A (Fixed Freq) | Solution C (Analog Bipolar) | Source Thread (PID) | Notes |
|---|---|---|---|---|
| P0700 | 2 | 2 | 2 | Terminal strip |
| P0701 | 1 | 1 | 99 | DI1 = FWD |
| P0702 | 4 | 4 | 4 | DI2 = OFF3 |
| P0703 | 2 | 2 | 99 | DI3 = REV |
| P0840 | default (722.0) | default (722.0) | 53.11 | ON/OFF1 command |
| P0842 | default (722.2) | default (722.2) | 53.11 | ON reverse / OFF2 |
| P1000 | 3 | 2 | 0 (PID) | Setpoint source |
| P1001 / P1002 | 30 Hz / 30 Hz | — | — | Fixed frequencies |
| P1020 / P1021 | 722.0 / 722.2 | — | — | Selection bits |
| P2221 / P2222 | — | — | 722.0 / 722.2 | PID setpoint selectors |
| P2253 / P2254 | — | — | 2224 / 21 | PID setpoint + trim |
| P2264 | — | — | 0 | PID feedback source |
| P2280 | — | — | 50 | PID Kp |
| P2291 | — | — | 50 Hz | PID max frequency |
| P1110 | 0 | 0 | 1 (default) | Reverse inhibit must be 0 |
Verification Procedure
- With the drive stopped, monitor
r0053bit 11 in DriveMonitor / STARTER. The bit must toggle to 1 when DI1 or DI3 is pressed, and back to 0 when released. - Monitor
r0021(output frequency in Hz) andr0022(output frequency smoothed) while pressing each pushbutton. The sign of r0021 must follow the direction request: positive for DI1, negative for DI3. - Confirm
r0002= 0 (drive ready) and no fault F0001 (overcurrent), F0021 (ground fault), F0051 (optical link), or F0052 (power stack fault) is active. - Check that the stop pushbutton (DI2, NC) drives the drive through OFF3 ramp using P1135; expected deceleration slope is (P1082 / P1135) Hz/s.
- Capture ramp behaviour with the trace function in STARTER: time-base 200 ms, channels r0021, r0053, r2294. Saved trace files allow post-commissioning comparison across units.
- Verify direction rotation matches the driven machine. For conveyors and pumps, swap any two motor output phases (U, V, W) to reverse the actual rotation if the drive direction flag does not match the mechanical convention.
Fault Code Reference
| Code | Meaning | Triggered By | Corrective Action |
|---|---|---|---|
| F0001 | Overcurrent | Short circuit, ramp too short, motor stalled | Increase P1120 / P1121; check motor insulation |
| F0021 | Ground fault | Insulation breakdown on motor side | Megger motor and cable; check PE bonding |
| F0022 | Power stack fault | IGBT desaturation | Power-cycle; replace power module if persistent |
| F0041 | Motor ID failure | Motor data identification interrupted | Run P1910 again with motor uncoupled |
| F0051 | Optical link / BICO parity | Bad BICO write, expert access missing | Set P0003 = 3 before BICO writes |
| F0052 | Power stack code error | Firmware-version mismatch | Reflash with matching firmware image |
| F0060 | Asic timeout | CPU overload, excessive BICO chains | Reduce number of free function blocks (FFB) |
Troubleshooting Matrix
| Symptom | Likely Cause | Fix |
|---|---|---|
| Reverse pushbutton runs forward | PID setpoint is unipolar (r2294 ≥ 0) | Switch to fixed-frequency path (Solution A) or analog bipolar (Solution C) |
| Drive faults F0051 on parameter write | BOP not in expert access | Set P0003 = 3 before writing BICO links |
| Drive ignores all pushbuttons | P0700 returned to 1 (BOP) after factory reset | Set P0700 = 2 again and save with P0971 = 1 |
| Motor runs at max frequency immediately | P2291 left at default 50 Hz with PID engaged | Reduce P2291 or disable PID fixed setpoint (P2200 = 0) |
| Stop pushbutton does not stop drive | P0702 = 99 not linked | Use P0702 = 3 (OFF2 coast) or 4 (OFF3 ramp) |
| Direction sign ignored on P1002 | P1110 = 1 (reverse inhibit) | Set P1110 = 0 and save |
| Both pushbuttons give same speed | P1001 = P1002 and P0703 = 99 with no BICO link | Set P0703 = 2 and verify P1000 = 3 |
| Output frequency stuck at 0 with DI active | P0840 not connected after BICO edit | Set P0840 = 722.0 and P0842 = 722.2 |
| Drive trips F0001 on direction change | No ramp time on negative setpoint | Increase P1121 ramp-down time |
Migration Path to SINAMICS
New installations should not use the MM420 because the platform is discontinued and spares are increasingly difficult to source. The direct replacement for the MM420 in the 0.12 kW to 15 kW range is the SINAMICS V20. The V20 ships with predefined wiring macros; macro p0015 = 12 maps three-wire control directly to DI0 (start right), DI1 (stop), and DI2 (start left) without any manual BICO wiring.
For higher functionality (Safety Integrated, PROFIBUS / PROFINET, free function blocks, encoder feedback) the SINAMICS G120 with a CU240E-2 control unit is the recommended platform. It supports the same three-wire control via predefined macros and offers parameter ranges 0 to 550 Hz in vector control. The BICO parameter names are similar to MM420 but use the modern SINAMICS naming convention (e.g. bi: p0840 for the binector input).
Standards Reference
- EN 61800-5-1:2017 — Adjustable speed electrical power drive systems — Safety requirements — Electrical, thermal, and energy
- EN 61800-3:2017 — Adjustable speed electrical power drive systems — EMC requirements and specific test methods
- IEC 61131-3:2013 — Programmable controllers — Part 3: Programming languages (referenced for sequencing the pushbutton interlocks)
- EN 60204-1:2018 — Safety of machinery — Electrical equipment of machines (for emergency-stop category mapping onto OFF2 / OFF3)
Field Commissioning Notes
- Always verify rotation direction before coupling the motor to the load. A single-phase motor in the wrong direction can pump backwards and damage seals.
- Use the BOP copy function (P0802 = 1, P0803 = destination drive) to clone the working parameter set to multiple drives. This avoids per-unit parameter entry errors.
- Document the P0971 save step. Parameters written via DriveMonitor or STARTER are not retained across a power cycle until P0971 = 1 is executed.
- For hazardous-area installations, use an MM420 with the ATEX-rated option (MM420-...-ATEX) and follow the supplement manual for thermistor input wiring to terminal 14 / 15.
FAQ
Why does my MM420 spin forward when I press the reverse pushbutton?
The drive is responding to the reverse command (P0842 = 722.2 is correctly triggered), but the speed setpoint is generated by the PID controller, which is unipolar. The motor receives only a positive frequency. Switch from the PID fixed-setpoint path to the fixed-frequency path (P1000 = 3, P0701 = 1, P0703 = 2) to enable true direction control.
What is the difference between P0702 = 3 and P0702 = 4?
P0702 = 3 maps the digital input to OFF2 (coast-to-stop, drive pulses immediately inhibited). P0702 = 4 maps the input to OFF3 (quick ramp-down along P1135). For a stop pushbutton with controlled deceleration use value 4; for an emergency-stop style coast-down use value 3.
Can I run the MM420 with three wires only and no analog input?
Yes. Set P0700 = 2, P0701 = 1, P0702 = 3 or 4, P0703 = 2, P1000 = 3, P1001 = desired forward frequency, P1002 = desired reverse frequency, P1020 = 722.0, P1021 = 722.2. The drive then requires no analog reference and produces ±P1001 / ±P1002 Hz on demand.
How do I save parameters permanently on the MM420?
After all parameters are written, copy from RAM to EEPROM with P0971 = 1. The BOP displays "busy" for a few seconds. After the display returns to "ready", cycle the 24 V control supply or power-cycle the drive to confirm the values persist.
What replaces the MM420 for new installations?
The SINAMICS V20 replaces the MM420 in the 0.12–15 kW range with native three-wire control via macro p0015 = 12. The SINAMICS G120 with CU240E-2 control unit replaces the MM420 in functional applications and adds PROFINET / PROFIBUS, Safety Integrated, free function blocks, and encoder feedback.