Siemens MM440 Forward Reverse Speed with Dual Potentiometers
The Siemens Micromaster 440 (MM440) is a vector-capable 0.12 kW to 250 kW voltage-frequency drive in the legacy 6SE6440 family. It carries two galvanically-isolated 0–10 V analog inputs (AIN1 on terminals 3/4, AIN2 on terminals 10/11) and a three-deep Command Data Set (CDS) structure that allows the active setpoint source, command source, and digital-input mapping to be switched at runtime. That combination is enough to satisfy the benchsaw requirement originally posted in the source thread: one potentiometer tunes the cut speed (forward), a second potentiometer tunes the retract speed (reverse), and a digital input selects which one is live.
This article expands on the discussion, walks through three practical implementation methods, lists the exact parameter values to enter, gives a commissioning procedure, and supplies a troubleshooting matrix for the most common failure modes. Drive firmware referenced is the V3.2 / V3.3 series, which is the dominant production firmware for the MM440 family; the V2.x firmware uses the same parameter numbers but a smaller parameter set. Operator documentation and parameter lists are maintained on the official Siemens Industry Online Support portal.
Application Overview
The drive accepts a single direction input from the operator (FWD push-button or REV push-button) and a single speed command. The benchsaw application requires:
- Push-button FWD: drive runs the saw motor in the cutting direction at a speed set by Potentiometer 1 (AIN1).
- Push-button REV: drive runs the saw motor in the retract direction at a speed set by Potentiometer 2 (AIN2).
- The two speeds must be independently settable; the operator should not have to re-dial the speed when switching directions.
- The setpoint must remain live while the drive is in standby, so the operator can preset speeds before pressing a run button.
- Forward and reverse must be interlocked — both buttons pressed simultaneously is not a valid state.
The MM440 solves this in software (Methods 1 and 2 below) and is also solvable in hardware (Method 3) using a single potentiometer and a DPDT relay. Method 1 is the cleanest production-grade approach; Method 3 is the lowest-cost retrofit for a machine that already has one pot fitted.
Prerequisites
Before changing any parameter, verify the following:
- MM440 inverter from the 6SE6440 family, any frame size A through F. The MM420 and MM430 use the same parameter numbers but with reduced feature sets; check the firmware manual first.
- Drive firmware V2.1 or higher. V3.x is recommended for full CDS support.
- Basic Operator Panel (BOP), Advanced Operator Panel (AOP), or a serial/USB-to-RS485 converter running STARTER or DriveMonitor. The drive can be programmed entirely from the BOP if necessary.
- Two 10 kΩ linear potentiometers rated for at least 0.5 W. The drive's internal +10 V reference at terminal 1 can source up to 10 mA; each pot draws about 1 mA at full scale, well within the limit.
- 22 AWG (0.34 mm²) or larger shielded twisted pair for the analog signal runs. Keep analog cables at least 200 mm away from any VFD output power cable.
- The drive's P0010 quick-commissioning filter is at 0 (Ready) and the inverter is in r0002 state 0 (Commissioning mode off) when saving the new parameters.
MM440 Setpoint and Command Source Architecture
The MM440 separates where the speed command comes from from where the run command comes from, and further separates how the drive is configured (ramp times, motor data, controller gains) from both of those. The three abstractions are:
- Setpoint source (P1000): Where the speed reference is generated. The MM440 has 8 possible main setpoint sources including analog inputs, motor potentiometer, fixed frequencies, USS serial, and combinations.
- Command source (P0700): Where the run/stop/reverse commands come from. The MM440 accepts default (fault clearing only), operator panel, terminal strip, USS, and Profibus/Fieldbus options.
- Data set (CDS and DDS): A snapshot of command + setpoint parameters (CDS) or motor/ramp/control parameters (DDS). The MM440 has three of each. Each indexed parameter — for example, P1000[0], P1000[1], P1000[2] — holds the value for the corresponding CDS.
By indexing the setpoint source parameter (P1000[0] = 2 for AIN1, P1000[1] = 6 for AIN2) and providing a digital input that selects which CDS is active, the drive automatically switches from Pot 1 to Pot 2 the moment the operator selects forward or reverse. The CDS switching is done by the BICO parameters P0810 (bit 0) and P0811 (bit 1), which can be wired to digital-input status words r0722.0 through r0722.6.
The BICO source IDs that matter for this application are:
| Source ID | Signal | Typical use |
|---|---|---|
| 722.0 — 722.6 | Status of digital input 0 through 6 (0 = open, 1 = closed) | CDS/DDS selection, start/stop, reverse |
| 755.0 | AIN1 actual value, scaled 0–100 % (100 % = 10 V at the input) | Setpoint source |
| 755.1 | AIN2 actual value, scaled 0–100 % | Setpoint source |
| 1024.0 | Fixed setpoint 1 | Constant-speed fallback |
Method 1 — CDS Switching for Direction-Based Setpoint Selection
Method 1 is the recommended production approach. It uses one digital input to select between CDS0 (forward, AIN1) and CDS1 (reverse, AIN2), one digital input for ON/OFF1, and one digital input for the reverse command. The reverse command is also wired to the CDS bit so the setpoint source and the rotation direction change together.
Parameter set to enter (BOP path: P0003 = 3 to expose all parameters, P0010 = 0, then enter each value and press P):
| Parameter | Value | Meaning |
|---|---|---|
| P0003 | 3 | Expert access — all parameters visible |
| P0700[0] | 2 | CDS0 command source = terminal strip |
| P0700[1] | 2 | CDS1 command source = terminal strip |
| P0701 | 1 | Digital input 1 = ON/OFF1 (latched run) |
| P0702 | 12 | Digital input 2 = Reverse command |
| P0703 | 99 | Digital input 3 = BICO enable (CDS select bit 0) |
| P0810 | 722.2 | CDS bit 0 wired to status of DI3 (terminal 6) |
| P1000[0] | 2 | CDS0 setpoint = Analog setpoint 1 (AIN1, terminals 3/4) |
| P1000[1] | 6 | CDS1 setpoint = Analog setpoint 2 (AIN2, terminals 10/11) |
| P2000 | 50.00 | Reference frequency = 50 Hz (set to motor nameplate rated frequency) |
| P1082 | 50.00 | Maximum frequency (Hz) — leave at motor nameplate for saws |
| P1080 | 0.00 | Minimum frequency (Hz) |
| P1120 | 5.0 | Ramp-up time (seconds). 5 s is conservative for a benchsaw; reduce for faster cycle time after verifying blade dynamics. |
| P1121 | 5.0 | Ramp-down time (seconds). Match P1120 unless the load regenerates energy into the DC bus. |
| P1300 | 0 | Control mode = V/f linear. Use 2 (quadratic) only for pumps/fans; saws need constant torque. |
The operator's forward button (NO contact) drives terminal 5 (DI1, ON/OFF1). The operator's reverse button (NO contact) drives terminal 6 (DI3, CDS select). The reverse direction bit on terminal 7 (DI2) is wired in parallel with the reverse button; the drive will not start in reverse until both DI1 and DI2 are high, which gives the desired interlock.
Method 2 — BICO Setpoint Routing per CDS
Method 2 is functionally identical to Method 1 but routes the setpoint signal directly through BICO connectors instead of relying on the indexed P1000 to do the source swap. Use Method 2 when the existing parameter set in the drive has been customized and you do not want to touch the indexed P1000 entries (for example, on a machine that ships with vendor-specific CDS templates).
| Parameter | Value | Meaning |
|---|---|---|
| P1070[0] | 755.0 | Main setpoint in CDS0 = AIN1 scaled value |
| P1070[1] | 755.1 | Main setpoint in CDS1 = AIN2 scaled value |
| P1075[0] | 0 | Disable additional setpoint in CDS0 |
| P1075[1] | 0 | Disable additional setpoint in CDS1 |
| P0700[0], P0700[1], P0701, P0702, P0703, P0810, P2000, P1082, P1120, P1121, P1300 | Same as Method 1 | Command and motor parameters |
Method 2 is the only way to do the swap if the index on P1000 has been locked by a vendor or if you need the setpoint source to be something other than a single analog input (for example, a USS command that combines AIN1 and AIN2 in different ratios in each CDS).
Method 3 — External DPDT Relay Setpoint Selection (Fallback)
For machines that already have a single potentiometer fitted and the operator does not want to run new shielded cable, the same effect can be produced with a DPDT (2NO + 2NC) relay in the analog circuit. When the relay is de-energized, the wiper of Pot 1 is connected to the AIN1 input and the wiper of Pot 2 is shorted to ground. When the relay picks (reverse commanded), Pot 1 is shorted to ground and Pot 2's wiper is routed to AIN1.
The MM440 cannot tell the difference — it always reads AIN1, but the source signal in front of AIN1 changes between the two pots. The reverse direction bit is wired in parallel with the relay coil so the direction command and the setpoint change happen in lockstep.
Wiring schematic for the relay method:
| Relay contact | Common | Normally open (NO) | Normally closed (NC) |
|---|---|---|---|
| Section A | AIN1 (terminal 3) | Pot 1 wiper | Pot 2 wiper |
| Section B | Drive 0 V (terminal 2) | Pot 2 wiper | Pot 1 wiper |
Forward command energizes nothing — Pot 1 drives AIN1. Reverse command energizes the relay — the contacts swap, Pot 2 drives AIN1. The relay coil should be a 24 V DC type with a flyback diode, powered from the drive's internal 24 V supply (terminal 7 = +24 V, terminal 9 = 0 V) or from an external 24 V source if the same relay also has to drive an external indicator lamp.
For a comparable reference implementation on a different platform, the Schneider Electric Altivar 320 (ATV320) supports fixed-speed forward and reverse selection by combining the function PSSP (preset speeds) with the direction bit — see the official Schneider FAQ How can I set a fixed speed forwards and a different fixed speed in reverse (ATV320)?. The MM440 approach is more general because the speed is continuously variable from the pot, but the principle — use the direction command to also switch the active speed source — is the same.
Wiring and Terminal Assignment
The MM440 control terminal strip is identical across all frame sizes A through F. The relevant pins for this application are:
| Terminal | Function | Wire color (suggested) | Goes to |
|---|---|---|---|
| 1 | +10 V reference output | Red | Both pot high ends |
| 2 | 0 V reference (analog) | Black | Both pot low ends |
| 3 | AIN1+ (non-inverting) | White | Pot 1 wiper |
| 4 | AIN1- (inverting, tied to 0 V internally) | Jumper to terminal 2 | Ground reference for AIN1 |
| 5 | Digital input 1 (DI0) | Yellow | FWD push-button (NO contact, returns to terminal 9) |
| 6 | Digital input 2 (DI1) | Green | REV push-button (NO contact, returns to terminal 9) — also drives CDS select via P0810 |
| 7 | +24 V internal supply (≤ 50 mA) | — | Optional: relay coil + for Method 3 |
| 8 | +10 V reference output (redundant with terminal 1) | — | Not used in this application |
| 9 | 0 V reference (digital) | Blue | Common return for FWD/REV push-buttons and relay coil |
| 10 | AIN2+ (non-inverting) | White/Black | Pot 2 wiper |
| 11 | AIN2- (inverting, tied to 0 V internally) | Jumper to terminal 9 | Ground reference for AIN2 |
| U, V, W | Three-phase output to motor | Per local code | Saw motor |
| L1, L2, L3 | Three-phase input from supply | Per local code | Upstream disconnect |
The wiring topology for Methods 1 and 2 is shown below. The two potentiometers are wired identically; only the terminal they connect to differs.
Parameter Reference Table
The table below consolidates every parameter touched in this article. "Type" indicates how the value is entered: I = integer, F = floating-point, B = BICO connector (decimal source-ID notation).
| Parameter | Type | Value | Function | Notes |
|---|---|---|---|---|
| P0003 | I | 3 | Parameter access level | Set to 3 to expose all parameters; remember to set back to 2 or 1 for normal operators |
| P0010 | I | 0 | Commissioning filter | Must be 0 to save motor-side parameters |
| P0700[0] | I | 2 | CDS0 command source | 2 = terminal strip |
| P0700[1] | I | 2 | CDS1 command source | 2 = terminal strip |
| P0701 | I | 1 | DI1 function | 1 = ON/OFF1 |
| P0702 | I | 12 | DI2 function | 12 = Reverse |
| P0703 | I | 99 | DI3 function | 99 = BICO enable (wired via P0810) |
| P0810 | B | 722.2 | CDS bit 0 source | Wire to DI3 status; 0 = CDS0 (AIN1), 1 = CDS1 (AIN2) |
| P0811 | B | 0 | CDS bit 1 source | Leave at default 0; only needed for CDS2 selection |
| P0820 | B | 0 | DDS bit 0 source | Not used in this article; default 0 = DDS0 always |
| P1000[0] | I | 2 | CDS0 setpoint source | 2 = Analog setpoint 1 (AIN1) |
| P1000[1] | I | 6 | CDS1 setpoint source | 6 = Analog setpoint 2 (AIN2) |
| P1070[0] | B | 755.0 | CDS0 main setpoint CI | For Method 2 only; override P1000 routing |
| P1070[1] | B | 755.1 | CDS1 main setpoint CI | For Method 2 only; override P1000 routing |
| P1075[0], P1075[1] | B | 0 | Additional setpoint CI | Set to 0 (disabled) for clean speed control |
| P2000 | F | 50.00 | Reference frequency (Hz) | Set to motor nameplate rated frequency |
| P1080 | F | 0.00 | Minimum frequency (Hz) | 0 = full range down to DC injection |
| P1082 | F | 50.00 | Maximum frequency (Hz) | Match motor nameplate unless the application requires overspeed |
| P1120 | F | 5.0 | Ramp-up time (s) | Tune for cycle time and blade dynamics |
| P1121 | F | 5.0 | Ramp-down time (s) | Match P1120 unless regenerating into DC bus |
| P1300 | I | 0 | Control mode | 0 = V/f linear, 2 = V/f quadratic, 20 = sensorless vector |
Step-by-Step Commissioning Procedure
Follow this sequence exactly. The MM440 requires the parameter filter (P0010) to be 0 and the inverter state (r0002) to be 0 (Ready, not Commissioning) before most parameters will accept new values.
- Lock out and tag out the AC supply at the upstream disconnect. Wait five minutes for the DC bus to bleed off. Verify zero energy at L1, L2, L3 with a properly rated meter.
- Land the wiring exactly as shown in the wiring table. The analog inputs (terminals 3, 4, 10, 11) must use shielded cable with the shield grounded at the drive end only.
- Restore AC supply. Power up the drive.
- Set P0003 = 3 and P0010 = 0 on the BOP. Verify the drive displays r0002 = 0 (Ready).
- Reset the drive to factory defaults: P0010 = 30, P0970 = 1, press P. The drive displays "----" and reverts to factory defaults after about 10 seconds.
- Enter the motor nameplate data into P0304 (rated voltage), P0305 (rated current), P0307 (rated power), and P0310 (rated frequency). P0311 (rated speed) is optional but recommended for vector control.
- Run the motor data identification: P0010 = 1, P1910 = 1, then give an ON command. The drive runs the motor for several seconds measuring stator resistance and leakage inductance. Wait for the drive to return to Ready state.
- Set P0010 = 0. Enter the CDS switching parameters from the parameter reference table: P0700, P0701, P0702, P0703, P0810, P1000.
- Set the motor reference parameters: P2000, P1080, P1082, P1120, P1121, P1300.
- Save the parameters: P0010 = 0, P0971 = 1, press P. The drive writes all parameters to non-volatile memory.
- Test the setpoint scaling with the drive in Ready (not running). With the FWD button open, slowly turn Pot 1 from minimum to maximum; verify that r0755 (AIN1 scaled) climbs smoothly from 0.00 to 100.00 %.
- Repeat the scaling test for Pot 2 by pressing the REV button to switch the CDS to CDS1; verify r0755 is now showing AIN2 (the parameter r0755 is the active analog setpoint; r0750[0] = AIN1 raw, r0750[1] = AIN2 raw).
- Run the drive unloaded: press FWD, ramp Pot 1 to 25 %, verify the motor spins in the forward direction at 12.5 Hz (or 25 % of the reference frequency). Press REV, verify the motor spins in the reverse direction at the speed set by Pot 2.
- Load the saw blade and run a test cut. Listen for unusual current draw (monitor r0027) and watch for F0001 (overcurrent) or F0002 (overvoltage) faults during the cut.
Verification and Diagnostics
After commissioning, the following read-only parameters should be monitored to verify correct operation:
| Read parameter | Signal | Expected behavior |
|---|---|---|
| r0002 | Drive state | 0 = Ready, 1 = Run, 2 = Stop, 7 = Fault active |
| r0020 | Frequency setpoint (Hz) | Tracks the active pot wiper times P2000 |
| r0021 | Actual output frequency (Hz) | Should follow r0020 with a lag equal to the ramp time |
| r0024 | Output frequency smoothed (Hz) | Useful for trend recording |
| r0027 | Output current (A) | Should stay below P0305 × 1.5 for normal sawing |
| r0722 | Status of all digital inputs | Bit pattern: bit 0 = FWD, bit 1 = REV, bit 2 = CDS select |
| r0750[0] | AIN1 raw ADC count | 0 to 65535 as voltage goes 0 to 10 V |
| r0750[1] | AIN2 raw ADC count | Same scaling as AIN1 |
| r0755 | Scaled active setpoint (%) | 0.00 to 100.00 % at the active analog input |
| r0051[0] | Active CDS | 0 = CDS0, 1 = CDS1, 2 = CDS2 |
The single most useful diagnostic during commissioning is r0051[0]. If the operator presses the REV button but r0051[0] stays at 0, the CDS is not switching. Re-check P0703 = 99 and P0810 = 722.2.
Troubleshooting Matrix
| Symptom | Likely cause | Fix |
|---|---|---|
| Motor runs in FWD regardless of pot position | P1000[0] still at factory default 1 (MOP) instead of 2 (AIN1) | Set P1000[0] = 2 explicitly; save with P0971 |
| Motor runs in FWD at speed set by Pot 2, REV at speed set by Pot 1 | Pots are physically swapped at terminals 3 and 10, or P1000 indices are reversed | Verify wiring; P1000[0] = 2 (AIN1), P1000[1] = 6 (AIN2) |
| REV direction gives F0001 (overcurrent) on the first press | Phase sequence on motor output is wrong for the reverse rotation, or the motor load is asymmetric | Swap any two of U, V, W. Verify motor rotation direction with a phase-rotation meter. |
| Both directions run at full speed regardless of pot | P1000 incorrectly set to a fixed frequency (3) or the analog scaling is bypassed | Check P1000[0] and P1000[1]. Reset to factory defaults and re-enter. |
| Drive faults F0002 (DC bus overvoltage) when reversing | Load regenerates energy into the DC bus on ramp-down and the braking resistor is undersized | Increase ramp-down time (P1121) or fit a properly rated braking resistor per the MM440 manual |
| r0051[0] shows CDS0 even when REV button is pressed | P0810 source is wrong, or P0703 is not 99 (BICO enable) | P0810 = 722.2 (DI3 status). P0703 = 99. |
| Setpoint is noisy or jittery when pot is not touched | Shield not grounded, or analog cable routed next to power cable | Ground the shield at the drive end only. Re-route analog cable at least 200 mm from U, V, W. |
| Pot at zero still gives 2-3 % output | Pot has high residual resistance at zero, or analog input offset is miscalibrated | Replace pot. Calibrate AIN1 with P0751/P0752/P0753; calibrate AIN2 with P0756/P0757/P0758. |
| Drive shows A0922 (no load) when pot is at zero | Normal: this is a warning, not a fault | No action required, or disable the warning with P2193 if it is annoying |
Frequently Asked Questions
Can the Siemens MM440 run different forward and reverse speeds from two potentiometers?
Yes. The MM440 supports three independent Command Data Sets (CDS0, CDS1, CDS2). Set P1000[0] = 2 to use Analog Input 1 (terminals 3/4) as the setpoint in CDS0 and P1000[1] = 6 to use Analog Input 2 (terminals 10/11) in CDS1, then use P0810 = 722.x to switch the active CDS from a digital input. This gives a fully independent setpoint per direction without any external relay logic.
What is the difference between CDS and DDS on the MM440?
CDS (Command Data Set) controls where the run and speed commands come from — the command source (P0700) and setpoint source (P1000) are indexed. DDS (Drive Data Set) controls how the drive runs — motor data, ramp times (P1120, P1121), and the V/Hz curve (P1300) are indexed. For the two-pot forward/reverse task, only CDS switching is needed; the DDS is held at DDS0 throughout.
How do I switch between AIN1 and AIN2 on the MM440 at runtime?
Use either the indexed setpoint source parameter (P1000[0] and P1000[1] with P0810 / P0811 to select the index) or BICO setpoint routing (P1070[0] = 755.0, P1070[1] = 755.1). The BICO method works even if P1000 has been locked by a vendor template. The active CDS can be monitored in r0051[0] for verification.
How do I check that the MM440 is reading my analog input correctly?
With the drive stopped, read r0750[0] for AIN1 and r0750[1] for AIN2. Both return the raw ADC count (0 to 65535 for 0 to 10 V). For a percentage value, read r0755; the parameter automatically follows whichever CDS is active. r0755 should sweep smoothly from 0.00 to 100.00 as you turn the pot from end to end.
Can I keep the original forward direction wiring and only add a second pot for reverse?
Yes — use Method 3 (external DPDT relay) from this article. The single existing pot is wired through a DPDT relay whose coil is energized by the reverse command; the relay swaps the wiper of Pot 1 out and Pot 2 in. The reverse direction bit is wired in parallel with the relay coil so the direction command and the setpoint change happen in the same ~10 ms window. This is the lowest-cost retrofit for a machine that already has one pot fitted.