Siemens ET200SP Analog Input Stuck at 2044: MODE and Wiring Fix

David Krause16 min read
I/O ModulesSiemensTroubleshooting
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

Problem Description

A SIMATIC ET 200SP distributed I/O station reports a frozen or capped raw analog value when a 0–10 V DC signal is applied to one of its analog input (AI) channels. The field wiring is verified with a handheld multimeter at the terminal block: the signal sweeps cleanly from 0.000 V DC to 10.000 V DC. The PLC, however, returns a maximum integer of 2044 instead of the expected 27648 raw counts associated with the nominal 0–10 V range in STEP 7 / TIA Portal.

This symptom is reported across the 4-channel and 8-channel ET 200SP AI modules in the 6ES7131-6BF0x and 6ES7131-6BH0x families, including the 4×U/I 2-wire Standard, 4×U/I 2-wire High Feature, and 8×U/I 2-wire High Feature variants. Two root causes dominate the field population: an unconfigured or wrongly written MODE parameter (data record 128 byte 0..1) inside the channel driver, and a wiring-side problem in the 24 V DC → 10 V DC resistor/zener network that feeds the potentiometer wiper into the AI channel.

Affected ET 200SP Analog Input Modules

The behavior has been confirmed on the following SIMATIC ET 200SP AI baseUnits and modules. Verify the exact order number (MLFB) on the front of the module before applying the procedure below — the MODE value for 0–10 V is consistent across the family, but the diagnostic data record offsets differ between the Standard (ST) and High Feature (HF) variants.

Module MLFB Resolution Channels Manual Reference
AI 4×U/I 2-wire ST 6ES7131-6BF00-0BA0 16 bit 4 Manual 109769385
AI 4×U/I 2-wire HF 6ES7131-6BF00-0CA0 16 bit 4 Manual 109769387
AI 4×U/I 4-wire 6ES7131-6BD00-0BA0 16 bit 4 Manual 109769386
AI 8×U/I 2-wire HF 6ES7131-6BH00-0CA0 16 bit 8 Manual 109769388
AI 2×U/I 2-wire HF 6ES7131-6AB00-0CA0 16 bit 2 Manual 109769384

All modules above accept firmware versions V1.0 and higher; data record 128 layout is firmware V2.0+ for the High Feature family. Always re-deploy the GSD file (GSDML-Vx.x-Siemens-ET200SP-...) in the master configuration when stepping to a new module revision.

Why 2044 Instead of 27648: Decoding the Raw Value

The integer 2044 is not a documented S7 analog full-scale value, which makes it a useful forensic clue. Working through the four most common states that produce a flat-line reading around 2044 counts:

  1. MODE = 16#000 (channel deactivated). The channel driver ignores the input front end and returns a fixed residual value. On the High Feature AI the deactivated channel reports 0x7FC = 2044 in many firmware revisions. This is the single most common cause of the 2044 cap and is the value the source incident was initially diagnosed as.
  2. Wrong MODE family (e.g. RTD / TC / current) selected for a voltage source. A thermocouple MODE applied to a 0–10 V source produces a sub-range, non-linear mapping that often pegs near 2044 counts at the upper end of the user-applied voltage because the channel is interpreting the input as a ±80 mV or ±760 mV TC range.
  3. Voltage divider loading by the AI input impedance. The differential input impedance of the ET 200SP AI is > 1 MΩ (typ. 10 MΩ) for voltage ranges. A 24 V → 10 V divider made from a 1 kΩ + 0.7 kΩ pair looks like 411 Ω of source impedance. Loading by 1 MΩ produces a divider error of ~0.04 %, which alone cannot explain a 2044 count limit. A poorly chosen zener or a 100 kΩ+ potentiometer wiper that is shorted to the wrong end of its track can easily produce a hard ceiling around 0.74 V, however — see 2044 × 10 V / 27648 = 0.739 V.
  4. Open thermocouple / wire-break detection flagging. With overflow diagnostics enabled the channel returns 7FFFh (32767). The 0x7FC value is therefore inconsistent with break diagnostics and is best explained by deactivated or unconfigured MODE.

Once the wiring and the input signal have been independently verified, the next move is the MODE parameter. The wiring check eliminates case 3; the raw value not being 7FFFh eliminates case 4; the 0.74 V implied ceiling in case 3 also matches a 0.74 V zener or a pot wiper wired to the wrong end of its track.

MODE Parameter Reference Table

The MODE parameter is a 16-bit value written into the channel’s configuration data record. It is documented in chapter "Parameter assignment / Structure of data record 128" of the corresponding AI module manual. Use the table below as a quick lookup; cross-check against the manual for the exact MLFB before writing the value to the live device.

MODE (hex) MODE (dec) Measurement Type / Range Nominal Full-Scale Raw Value
16#0000 0 Channel deactivated (no coding) Channel returns 0x7FC = 2044 on HF modules
16#0108 264 Voltage 0–10 V (single-ended, 2-wire) 27648
16#0109 265 Current 0–20 mA (4-wire) 27648
16#010A 266 Current 4–20 mA (4-wire) 27648
16#010B 267 Current 0–20 mA (2-wire) 27648
16#010C 268 Current 4–20 mA (2-wire) 27648
16#0110 272 Voltage ±10 V 27648
16#0111 273 Voltage ±5 V 27648
16#0112 274 Voltage ±2.5 V 27648
16#0114 276 Voltage 1–5 V 27648
16#0200 512 RTD Pt100 climatic (4-wire) depends on temperature range
16#0201 513 RTD Pt100 standard (4-wire) depends on temperature range
16#0300 768 Thermocouple type K, internal comp. depends on temperature range

For a 0–10 V DC signal applied to the AI, the value to write is MODE = 16#0108 (or simply 264 in decimal). A MODE of 0 leaves the channel in the deactivated state and is the documented explanation for a 2044 ceiling on the High Feature ET 200SP AI.

Required Configuration in TIA Portal

ET 200SP AI modules are configured in two places: the device configuration in the TIA Portal project (HMI/engineering view) and the optional runtime override through SFCs WRREC / RDREC in the user program. Both must agree; the device view is the source of truth, the SFC writes only take effect when the program is running and the channel is not in DPV1/operator-monitored mode.

Prerequisites before configuration changes:

  • TIA Portal V16 or higher (V18 recommended for current AI module GSDMLs).
  • The matching AI module HSP (Hardware Support Package) installed: Help → Installed software → Add-ons.
  • Online connection to the ET 200SP IM head module (PROFINET name assigned, IP reachable).
  • CPU in STOP, or at minimum the AI channel diagnostics buffer cleared after the write.

Step-by-Step: Configuring MODE via Device Configuration

  1. Open the TIA Portal project and expand the ET 200SP station in the project tree.
  2. Double-click the AI module (for example, AI 4×U/I 2-wire HF / 6ES7131-6BF00-0CA0).
  3. Select the channel that reports 2044 (Channel 0, Channel 1, …). The default view shows all channels together.
  4. In the inspector window, navigate to Properties > General > Channel parameters > Measurement.
  5. Set Measurement type = Voltage and Range = 0 .. 10 V. The corresponding MODE 16#0108 is written to data record 128 automatically on download.
  6. Set Smoothing to "None" during commissioning so a hard 10 V sweep produces an immediate 27648 count response.
  7. Set Diagnostics = enable "Overflow" and "Underflow" only; leave wire-break disabled for a voltage source (a voltage source cannot break the loop).
  8. Compile the project (Project → Compile → All) and download the configuration to the ET 200SP station.
  9. Place the CPU in RUN and re-sweep the 0–10 V input. The raw value should now traverse 0 → 27648.

Step-by-Step: Configuring MODE via SFC / User Program

If the AI is part of a runtime-reconfigurable I-Device or a third-party PROFINET controller, the MODE parameter can be written from the user program. The example below is a STEP 7 SCL block that writes MODE = 16#0108 to channel 0 of the AI module at logical address 288 (channel 0 occupies PIW 288…289 for the 4-channel HF variant). Adjust HW_IO and CHANNEL for the slot you need.

// SCL — Write 0..10 V MODE to ET 200SP AI channel
DATA_BLOCK dbMODE WRREC_WRITE
  { S7_Optimized_Access := 'FALSE' }
END_DATA_BLOCK

FUNCTION_BLOCK fbWriteAiMode
VAR_INPUT
  hwIo     : INT;   // logical address of the channel (e.g. 288)
  channel  : INT;   // 0..7 for AI 4x / 8x modules
  modeWord : WORD;  // 16#0108 for 0..10 V
END_VAR
VAR_TEMP
  retVal   : INT;
  busy     : BOOL;
  done     : BOOL;
  error    : BOOL;
  status   : WORD;
  rec      : ARRAY[0..27] OF BYTE;  // data record 128, 28 bytes
END_VAR
BEGIN
  // Build data record 128 for the channel
  rec[0]  := 16#00;  // variant / reserved
  rec[1]  := 16#00;
  rec[2]  := 16#00;
  rec[3]  := 16#00;
  rec[4]  := BYTE#16#00;            // channel number
  rec[5]  := BYTE#16#00;            // reserved
  rec[6]  := DWORD_TO_BYTE(DWORD#16#0000_0000);  // padding / behavior bits
  rec[7]  := 16#00;
  rec[8]  := 16#00;                 // MODE high byte
  rec[9]  := DWORD_TO_BYTE(DWORD#16#00);          // (continued)
  rec[10] := 16#01;                 // MODE low byte = 0x08 for 0..10 V
  rec[11] := 16#08;
  // ... remainder of the 28-byte record left at default

  retVal := WRREC(
    REQ      := TRUE,
    IOID     := B#16#54,
    LADDR    := WORD#16#0120,        // diagnostic address of the AI slot
    RECNUM   := 128,
    RECORD   := rec,
    BUSY     := busy,
    DONE     := done,
    ERROR    := error,
    STATUS   => status);
END_FUNCTION_BLOCK

After the WRREC call returns DONE = TRUE with STATUS = 16#0000, cycle power on the AI head module or restart the ET 200SP station. The new MODE is latched on the next channel initialization.

Wiring Diagnosis: The 24 V to 10 V Resistor / Zener Network

The source incident involves a 24 V DC supply dropped to 0–10 V using a series resistor and a zener diode, with the wiper of a potentiometer feeding the AI channel. This topology is common in retrofit panels where a 0–10 V transducer must be re-driven from a 24 V PLC source. The four most common wiring defects that produce a 2044 raw value (i.e. ~0.74 V at the AI terminal) are listed below in order of frequency.

Defect Symptom Detection Repair
Zener is 5.6 V instead of 10 V Output ceiling is 5.6 V, raw value ceiling is ~15470 Measure across zener with pot at max Replace with 10 V / 1 W zener (e.g. BZX85C10)
Pot wiper wired to the wrong terminal (track end instead of wiper) Output ceiling is ~0.7 V regardless of pot position Track wiper continuity with ohmmeter, pot at max Re-wire to the wiper (middle terminal)
M / V- reference of the AI is floating, not bonded to 24 V supply GND Output reads 2044 then drifts with temperature Measure MANA terminal vs 24 V GND — must be < 100 mV Bond M terminal of the baseUnit to 24 V supply 0 V
Series resistor value too high, zener not regulating Output never reaches 10 V, ceiling is 0.5–2 V Measure zener current with pot at min; should be > 5 mA for regulation Reduce series resistor so Izener(min) > 5 mA

Voltage Divider Calculations for 24 V to 10 V Scaling

When the divider is built around a 10 V zener, the supply to the wiper network is the zener voltage (10 V) and the resistor only sets the zener bias current. A practical design that survives the AI’s 1 MΩ input impedance, an ambient swing of −0 °C to +60 °C, and a 24 V supply tolerance of 19.2 V to 28.8 V (per ET 200SP AI manual 109769387, section on permissible input voltage) is shown below.

For 24 V nominal supply and 10 V output:

  • Zener: 10 V ± 2 %, 1 W (e.g. BZX85C10, Iz(max) = 76 mA, Iz(min) = 5 mA for regulation).
  • Series resistor RS = (Vsupply − Vz) / Iz. At Vsupply(min) = 19.2 V: RS(max) = (19.2 − 10) / 0.005 = 1.84 kΩ. At Vsupply(max) = 28.8 V: Iz(max) = (28.8 − 10) / RS → choose RS = 1.5 kΩ / 1 W for a safe Iz(max) of 12.5 mA at 28.8 V, well within the 1 W zener’s dissipation of (10 × 0.0125) = 125 mW.
  • Potentiometer: 10 kΩ linear, three terminals, wiper feeding AI+, both outer terminals across the 10 V zener. The 10 kΩ load on the zener adds 1 mA, leaving 11.5 mA still above Iz(min) at 28.8 V supply.
  • AI differential input: 0–10 V applied to AI+ and AI− (or M terminal of the baseUnit). AI input impedance > 1 MΩ draws < 10 µA, so the divider ratio is preserved within 0.01 %.

If the actual installed network uses 24 V across the divider (no zener, just R1/R2), the same math applies: R1/(R1+R2) = 10/24 = 0.4167 → R1 = 4.7 kΩ, R2 = 6.8 kΩ is a near-standard pair, but the divider is unregulated so the output will scale linearly with the 24 V supply, not with the wiper position alone — another reason the zener reference is preferred.

Verification and Commissioning Procedure

After the MODE has been corrected in TIA Portal and the wiring has been repaired, run the following verification. Repeat the steps for every channel that was symptomatic.

  1. Force the CPU to STOP and connect with the TIA Portal online view.
  2. Open Watch table for the AI input words (default PIW 288..295 for the 4-channel HF module).
  3. With the 24 V supply on and the pot at minimum, confirm PIW = 0 ± 2 counts.
  4. Sweep the pot to 50 %: confirm PIW = 13824 ± 20 counts (i.e. 50 % of 27648).
  5. Sweep the pot to 100 %: confirm PIW = 27644..27648 counts.
  6. Open the AI module’s Online & Diagnostics view and confirm the channel diagnostics buffer is empty (no overflow / underflow / wire-break events).
  7. In the TIA Portal project, set Smoothing = "Weak" or "Medium" if the field signal is electrically noisy, recompile, and download.
  8. Place the CPU in RUN, hand the line over to operations, and log the PIW at 0 %, 50 %, and 100 % in the commissioning sheet.

If the value still caps below 27648 after MODE = 16#0108, the wiring is the remaining suspect. Disconnect the AI terminal, drive a calibrated 0–10 V source from a calibrator directly into the channel, and confirm 27648 at 10 V. If the calibrator works and the pot network does not, the network is at fault and the wiring check list above applies.

Common Pitfalls and Field Notes

The following issues have been observed on ET 200SP AI stations in 24 V control panels and are worth pre-empting during commissioning.

  • Mixing up Standard vs High Feature AI in TIA Portal. The Standard (ST) module rejects some MODE values that the High Feature (HF) module accepts, or vice versa. A downloaded configuration with a mismatched MLFB will report the module as "wrong module" and fall back to MODE = 0, which once again produces the 2044 cap. Always re-read the inserted module (right-click the slot → "Detect inserted module") before downloading.
  • Hardware interrupt / limit monitoring set on a deactivated channel. Limits are evaluated against the residual 2044 count. During commissioning the limit will never fire because the value is pegged. Clear all limits on the affected channel before the first calibration sweep.
  • PROFINET name / IP reassignment during a hot-swap. If the AI is on a replaceable head module and the new module ships with a default MODE = 0, the 2044 cap returns the moment the spare is plugged in. Bake the MODE into the head module’s slot configuration and require the spare to be re-imaged with the project GSD before installation.
  • Potentiometer wired as a rheostat instead of a divider. If the wiper is tied to one end of the track, the pot becomes a variable resistor from 0 Ω to 10 kΩ in series with the 10 V zener. The AI sees Vz × RAI / (Rpot + RAI), which is essentially Vz at low Rpot and tends to 0 V as Rpot approaches 10 kΩ. This produces a reading that pegs near 27648 at the pot’s low end and falls off, the inverse of the expected sweep. The fix is to wire the two outer terminals of the pot across the 10 V reference and feed the wiper to the AI.
  • 24 V common vs 0 V common confusion on the baseUnit. The ET 200SP baseUnit has a dedicated M terminal that must be bonded to the 24 V supply 0 V for the AI voltage range to reference correctly. A floating M terminal is the most common cause of an ungrounded signal that pegs at a low value and drifts with hand contact.
  • Wire break diagnostics enabled on a 0–10 V source. Wire-break detection on a voltage channel is invalid; it expects a current loop. Enabling it forces a 7FFFh (32767) reading instead of 2044. If the symptom suddenly shifts from 2044 to 7FFFh after a parameter change, wire-break was toggled on.
  • Step response vs raw value. A 0–10 V sweep applied through a 100 kΩ+ source impedance into a 1 MΩ AI will still produce 27648 counts, but the time constant of the input filter dominates the visible value. Always wait for the input filter time constant to elapse (default 1 ms, configurable to 100 ms) before concluding that the value is capped.

FAQ

What MODE value should I use for a 0–10 V signal on the ET 200SP AI module?

Use MODE = 16#0108 (decimal 264) for the 0–10 V range on the 6ES7131-6BF0x and 6ES7131-6BH0x family. The value is written to data record 128 in the channel configuration block. A MODE of 0 leaves the channel deactivated and produces a 2044 count cap on High Feature modules.

Why does the AI read 2044 even though my multimeter shows 10 V at the terminal?

Two explanations dominate. First, the channel’s MODE is 0, so the channel driver is in the deactivated state and returns the residual 0x7FC = 2044. Second, the wiring reference is wrong — the M terminal of the baseUnit must be bonded to the 24 V supply 0 V, otherwise the differential input sees only the zener / divider noise floor and pegs at ~0.74 V, which decodes to 2044 counts at 16 bit resolution.

Can I write the MODE parameter from a STEP 7 SCL program at runtime?

Yes. Build a 28-byte data record 128 with the channel number in byte 4 and the MODE word in bytes 8–11 (low byte = 0x08, high byte = 0x01 for 0–10 V), then call WRREC with the AI module’s diagnostic address, RECNUM = 128, and the record. Cycle power on the station after a successful write so the new MODE is latched on the next channel initialization.

What is the expected raw value at 10 V on an ET 200SP AI 0–10 V input?

The expected full-scale integer is 27648 for unipolar ranges (0–10 V, 0–20 mA, 4–20 mA) on all ET 200SP AI modules with 16 bit resolution. A reading of 27644–27648 at 10 V is normal; an overflow flag is set only above 32511.

Does the same procedure apply to the Standard (ST) variant of the AI module?

Yes. The MODE value 16#0108 for 0–10 V is the same across the Standard and High Feature variants, and data record 128 layout is identical in both families. The only difference is the diagnostic counters and the input filter time constants available — the HF module supports additional filter and limit features that the ST module rejects silently, which is a frequent cause of "configuration downloaded but channel still reports 2044" symptoms.

Back to blog