Allen-Bradley PLC Fault Finding and Diagnostics in Studio 5000
Key Takeaway
How to diagnose and clear controller faults, I/O module faults, and program faults in Allen-Bradley ControlLogix and CompactLogix PLCs using Studio 5000.
Quick Answer
Allen-Bradley ControlLogix and CompactLogix controllers provide diagnostic information through front-panel LEDs, the Major/Minor Faults tabs in Studio 5000 Controller Properties, and programmable GSV/SSV (Get/Set System Value) instructions. Most recoverable faults can be diagnosed online and cleared with Studio 5000 or the controller keyswitch after the root cause is removed.
Controller Status LEDs
- RUN (green) — On: controller in Run mode. Off: Program (or other non-Run) mode. Exact blink patterns vary by controller family — confirm in the hardware manual.
- OK / FLT (red) — Solid: major recoverable fault. Flashing: major nonrecoverable fault (often needs firmware reload or hardware replacement).
- BAT / ESM — On many older controllers a red BAT LED means battery low/missing. Newer CompactLogix/ControlLogix platforms often use an Energy Storage Module (ESM) instead of a coin-cell battery; watch ESM/status indicators and MinorFaultBits related to energy storage rather than assuming a replaceable battery.
- I/O (green) — Solid: configured I/O connections OK. Flashing: one or more I/O connections or modules are faulted.
- FORCE (amber) — Solid: I/O forces are present. Forces override normal logic and should be removed before final commissioning.
Controller Fault Types
- Major Fault — Halts logic execution and puts the controller in faulted mode. Outputs go to their configured fault-mode state (often Off, but Hold Last State and other module options exist). Must be cleared before returning to RUN.
- Minor Fault — Logged but does not stop the scan. Examples: arithmetic overflow, some power/ESM warnings, periodic task overlap.
- I/O Fault (Type 3) — Connection or module problems (required connection failed, chassis/bus issues, inhibit/config mismatch). Often shown on the I/O status LED and in I/O fault diagnostics.
Reading Faults in Studio 5000
Go online and open Controller Properties. Use the Major Faults and Minor Faults tabs (not a single “General > Fault Log” page). Each entry shows:
- Fault type and code (e.g., Type 4, Code 16)
- Timestamp
- Description / display text
- Program, routine, and rung information when the fault is a program fault
Always record both Type and Code before clearing — Type alone is not enough for root-cause work. See Rockwell publication 1756-RD001 (Logix 5000 Controller and I/O Fault Codes) for the full list.
Common Major Fault Codes
- Type 1 (Power-Up) — Power lost/restored in RUN, invalid/missing program at power-up, or related power-up faults (codes vary; e.g. T01:C01 power lost and restored in RUN).
- Type 3 (I/O) — Required I/O connection failed or other I/O/chassis faults (e.g. T03:C16 connection failed on a required module).
- Type 4, Code 16 (Unknown Instruction) — Instruction not supported by the firmware (common after download/firmware mismatch). Display text: Program Fault — Unknown instruction encountered.
- Type 4, Code 42 — JMP to a label that did not exist or was deleted (not “stack overflow”).
- Type 4, Code 84 (Stack Overflow) — Stack too small to perform the operation (deep nesting / call depth problems).
- Type 6, Code 1 (Task Watchdog) — Task watchdog expired (infinite loop, oversized continuous task, or higher-priority tasks starving the scan). Type 6 is the watchdog category — not I/O.
- Type 7 (Nonvolatile / Flash) — Store/restore or nonvolatile memory faults (e.g. T07:C40 store to nonvolatile memory failed) — not the task watchdog.
Clearing a Major Fault
- Keyswitch method — Switch RUN → PROG → RUN (or use Remote Run/Program from Studio 5000). Clears a recoverable major fault only if the fault condition is gone.
- Studio 5000 method — Go online, use Clear Major Faults / clear-faults controls, then return to RUN.
- Programmatic method — Use a Controller Fault Handler program (configured under Controller Properties, not Task Properties) with GSV/SSV on the Program object’s MajorFaultRecord to selectively clear or log specific Type/Code pairs. Do not blindly clear all faults every scan.
I/O Module Fault Diagnostics
- Inhibited — Module intentionally disabled. Properties → uncheck Inhibit Module when ready.
- Connection lost — Check cabling, adapter/module status LEDs, IP addressing, and firmware compatibility; Type 3 codes often appear when a required connection fails.
- Configuration mismatch — Project module type or config does not match the physical module. Align the I/O tree with the hardware and download.
Using GSV to Read Fault Information
Use GSV on the FaultLog object for controller-level counters and bitfields (MajorEvents, MajorFaultBits, MinorEvents, MinorFaultBits). To capture the detailed Type/Code/timestamp for a program major fault, GSV the Program object’s MajorFaultRecord into a FAULTRECORD structure (then SSV zeros Type/Code when intentionally clearing a handled fault). That data can feed HMI history without leaving an operator online in Studio 5000.
Task Watchdog Faults (Type 6, Code 1)
A task watchdog major fault means the task did not finish within its configured watchdog time. Common causes:
- Unbounded FOR loops or long continuous-task logic
- Blocking / slow MSG traffic on a high-priority path
- Higher-priority tasks starving lower ones
Remedies: profile MaxScanTime, optimize or move work to periodic tasks, raise priority carefully, and increase the watchdog only after the scan is understood.
Building a Fault History Log
In the Controller Fault Handler, GSV MajorFaultRecord (and related FaultLog counters as needed) into a FIFO of FAULTRECORD / custom history tags. Store recent Type/Code/timestamp values for HMI review so maintenance can see what faulted without connecting Studio 5000.
Need help with scada & programming?
Texas-based licensed engineers — get a free, no-obligation assessment.
Frequently Asked Questions
Toggle the keyswitch from RUN to PROG and back to RUN, or clear major faults in Studio 5000 while online and return to RUN — but only after the fault condition is gone. Recurring faults mean an unresolved program or hardware issue. A Controller Fault Handler can selectively clear specific Type/Code pairs; do not clear all faults blindly every scan.
A solid red OK/FLT indicator typically means a major recoverable fault. Flashing red typically means a major nonrecoverable fault, often requiring firmware reload or hardware replacement. Confirm LED names and patterns in the controller's installation manual.
Go online and open Controller Properties → Major Faults / Minor Faults to view Type, Code, and timestamp. Programmatically, GSV FaultLog for status bits/counters and GSV the Program object's MajorFaultRecord for detailed Type/Code data. Rockwell 1756-RD001 lists official codes.
Still have questions about your setup? Talk to an engineer or call (210) 405-4248.