Skip to main content
Call Eric:863-698-8266
CURRYCONTROLS.COMControls & Automation Knowledge Hub
ReferencePLCTroubleshootingAnalog4-20 mASignals

Analog Signal Problems

The controller side of a bad analog value: raw counts against the module range, channel diagnostics, scaling that does not match the transmitter, wiring by device type, noise and filtering, resolution, and a symptom table that points at the check.

8 min readUpdated Sep 5, 2026Published Sep 5, 2026By Eric Sullivan

The short answer

Analog Signal Problems

When an analog value is wrong at the controller, the fault is in one of five places and the raw count says which: the field loop, the input module and its configuration, the scaling from counts to engineering units, the filtering and data handling in the program, or the value on its way to the screen. A raw count that matches the measured loop current means the loop and the module are fine and the problem is scaling or logic; a raw count that does not means the module, its range setting, or the wiring. Module channel diagnostics report open wire, under-range, and over-range directly, and reading them is faster than any meter. Most analog problems at the controller are configuration: a channel set for the wrong range, a scaling that assumes a different count span, or a data type that clips.

Key points

  • Compare the raw count with the measured loop current first; that comparison splits the problem in half.
  • Read the channel diagnostics: open wire, under-range, over-range, and module fault are reported, not inferred.
  • Scaling must use the exact count span of the module and the exact range of the transmitter.
  • Two-wire, three-wire, and four-wire devices are wired differently to the same module; check the terminal drawing.
  • Noise is addressed at the source and the shield before any filter in the program.

Symptom to check

Symptom at the controllerFirst checkUsual finding
Value frozen at a railChannel status and loop currentOpen loop, transmitter fault current, or a scaling clamp
Value reads zero with the transmitter litLoop current through the input; channel modeInput not in the loop, channel set for voltage, or a jumper
Value offset by a constantTransmitter zero and the scaling minimumA range change, a datum, or a zero drift
Value off by a proportionScaling maximum and the count spanWrong count span or transmitter span
Value jumps or is noisyRaw count trend; shield and routingNoise coupled into the loop; a ground loop; a loose terminal
Value steps in coarse incrementsModule resolution and data typeA 12-bit module on a wide range, or an integer scaled too coarsely
Value lags the processFilter settings, module filter, transmitter dampingToo much filtering in series
Value good in the controller, wrong on the screenThe screen tag scaling and formatA second scaling or a wrong decimal place
Whole module badModule status, power, and backplaneModule fault, lost 24 volt supply, or a firmware mismatch

Raw counts against current

The module converts the loop current to a count within a fixed span: 0 to 4095, 0 to 16383, 3277 to 16383, 4000 to 20000, or another depending on the module and its range setting. The count at 4 milliamps and the count at 20 milliamps are in the module manual, and a meter in the loop with the raw count on the screen gives two points that either fall on that line or do not. If they do, everything upstream of the count is right. If they do not, the channel range setting, the wiring, or the module is wrong, and no amount of scaling will fix it.

EU = EU_min + (Raw − Raw_min) × (EU_max − EU_min) ÷ (Raw_max − Raw_min)

  • EU = engineering value
  • Raw = the count from the module
  • Raw_min, Raw_max = the counts at 4 and 20 mA from the module manual, for the channel range in use
  • EU_min, EU_max = the transmitter lower and upper range values

Channel diagnostics

Modern input modules report per channel whether the loop is open, whether the signal is below or above range, and whether the module itself is healthy, and they make those bits available in the controller. The program should use them: a channel with open wire or out-of-range drives a bad-quality flag on the tag, freezes or fails the value safely, and raises an instrument alarm, rather than letting a rail value flow into a control loop. A module that does not offer diagnostics is checked in logic by comparing the raw count with the limits of the live range.

Wiring by device type

DevicePowered byWires to the moduleNote
Two-wire transmitterThe loop, from the module or an external supplyTwo, in series with the inputKnow whether the module sources loop power
Three-wire deviceExternal supply, common shared with signalSupply, signal, commonCommon must be the module common
Four-wire transmitterIts own supply; isolated outputTwo signal wires to a passive inputNever wire to a loop-powering input
Voltage output deviceIts own supplySignal and common to a voltage inputOr a current input with the channel set for voltage

Noise and filtering

  • Shielded twisted pair, shield grounded at one end, usually the panel, and never at both.
  • Analog cables separated from power and drive cables; crossings at right angles.
  • The module input filter set for the application: a slower filter rejects more noise at the cost of response time.
  • A program filter only after the wiring is right, and only as much as the loop needs; document its time constant.
  • A signal that is noisy only when a drive runs is a drive noise problem; the fix is at the drive and the cable, not in the filter.

Resolution and data types

A 12-bit module resolves a span into 4096 steps; on a 0 to 100 foot level that is a step of about a third of an inch, which is fine, and on a 0 to 500 psi transmitter used to control a 5 psi band it is not. A 16-bit module resolves 65,536 steps. The scaled value should be a floating point tag; an integer scaled value loses resolution to its scale factor and clips at its limits, and a rate calculation from an integer level tag is a staircase.

Frequently asked questions

The raw count is right and the engineering value is wrong.
The scaling parameters: the raw minimum and maximum for the channel range actually configured, and the engineering minimum and maximum from the instrument list. One of the four is stale, most often after a transmitter re-range or a module replacement with a different count span.
Why does the channel read a small value with nothing connected?
An open input on some modules floats to a small count rather than zero, and the under-range diagnostic is the reliable indication. Use the channel status, not the count, to detect an open loop.
Can a module channel be damaged by a wiring mistake?
Yes: 24 volts applied directly across a current input, a four-wire transmitter connected to a loop-powering input, or a lightning surge. A damaged channel reads a fixed count or a fault, and the module is replaced. A surge protector on loops that leave the building prevents the third case.
How much filtering is too much?
When the filtered value lags the process by more than the control loop or the alarm can tolerate. Transmitter damping, the module filter, and a program filter add up; a level loop with 30 seconds of combined lag hunts. Set one filter deliberately and leave the others at minimum.

Direct contact

Have a controls question?

Reach Eric Sullivan directly about anything on this site, a controls or automation topic, or one of his personal projects.