What a major fault is and where it shows
A major fault stops a Logix 5000 controller from executing logic. When a fault condition prevents an instruction from running, the instruction is aborted, the controller reports a major fault and switches to faulted mode; outputs go to the state configured for faulted mode (1756-PM014O, chapter 1, pages 9 and 21). A minor fault is different: the controller keeps running and only records the fault — see Logix minor fault codes.
Where to look:
- The OK indicator on the controller flashes red (PM014O p. 9).
- Online in Logix Designer, open Controller Properties → "Major Faults" tab: it shows the fault Type and Code (PM014O p. 22).
- In the program: Type and Code are held in the MajorFaultRecord attribute of the Program object, read with a GSV instruction (PM014O pp.17–18).
- The scrolling status display on the controller: for Type 1 Code 60/61/62, Rockwell asks you to note the 9-character code shown there (1756-RD001).
Reading Type and Code
Type is the fault group, Code the specific fault in that group. Logix Designer displays them as "Major Fault T04:C20 - Program Fault: …", meaning Type 4, Code 20. The same Code means something completely different under another Type: Code 1 under Type 6 is a watchdog fault, under Type 11 it is an axis past its positive overtravel limit. When you report a fault, always give both numbers and the full display text.
Some Types contain both major and minor codes (Type 4 Code 4, arithmetic overflow, is minor), so do not judge severity from the Type alone.
Recoverable and non-recoverable
- Recoverable — most major faults (program, I/O, watchdog…): fix the cause, clear the fault and return the controller to Run; or let a fault routine in the program clear the fault so the machine keeps running. Rockwell calls resuming execution after the fault clears fault recovery (PM014O p. 9).
- Non-recoverable — 1756-RD001 says so explicitly for some codes: Type 1 Code 60, 61, 62 ("Non-recoverable fault"), Type 3 Code 20/21 ("Not recoverable", replace the chassis), and many Type 14 codes on GuardLogix (noted "Nonrecoverable"). Clearing the fault is not enough for these; RD001 points to replacing hardware, downloading the application again, or contacting Rockwell.
Common major fault codes
The tables explain, in our words, the codes maintenance engineers meet most often, based on 1756-RD001 (September 2025). The full list and Rockwell's own corrective actions are in that spreadsheet, sheet "Logix 5000 Controllers".
Type 1 — Power-up
| Code | Meaning | Usual cause | What to check |
|---|---|---|---|
| 1 | Power restored while the controller was in Run | Power was lost and came back; with an empty Power-Up Handler this fault keeps the machine from restarting on its own (PM014O p. 15) | Why power was lost; whether the machine should restart by itself (see Power-Up Handler below) |
| 40 | Battery/ESM could not save the program at power-down | Battery or ESM (Energy Storage Module) without enough charge | Replace the battery; for an ESM: let it charge fully before powering down, replace the ESM, or replace the controller if the ESM is not removable |
| 60, 61, 62 | Non-recoverable fault (61: diagnostic information saved; 62: also user program stored) | The controller detected a serious internal fault | Insert a memory card, restart to write diagnostics to it, clear the fault, download the application; give Rockwell the 9-character code |
Type 3 — I/O
| Code | Meaning | Usual cause | What to check |
|---|---|---|---|
| 16 | Connection lost to a module configured as required | Module not in the chassis, electronic keying mismatch, connection path to the module lost | Module in the chassis, keying, the "Major Faults" tab and the module's "Connection" tab — see I/O module faults 16#0204, 16#0203 |
| 20, 21 | ControlBus chassis information cannot be read | Possible chassis fault | RD001: not recoverable, replace the chassis |
| 23 | A required module was not connected before the change to Run | Switching to Run before the required connections are established | Wait for the controller I/O indicator to turn green before Run. Time allowed: 5380/5580 30 s (redundant 90 s); 5590 60 s (redundant 120 s) |
Type 4 — Program
| Code | Meaning | Usual cause | What to check |
|---|---|---|---|
| 16 | Unknown instruction | Usually left by a program conversion | Find and remove the instruction |
| 20 | Array subscript too large, or invalid .POS/.LEN of a CONTROL tag | Index tag (indirect addressing) running past the array size | Limit the index to the array range before use |
| 31 | JSR/RET did not pass the expected parameters | JSR parameters do not match the SBR or RET | Parameter count at both ends |
| 34 | Timer with negative PRE or ACC | Logic loads a negative value into a timer | Limit the value before it is moved into the timer |
| 83 | Value out of range | Index used with BOOL arrays or bit-level addressing | As for Code 20 |
| 990–999 | User-defined fault | The program deliberately stops the controller on its own condition (PM014O p. 21) | Find where the program raises that code to learn the condition |
Types 6 and 7 — Watchdog and nonvolatile memory
| Type/Code | Meaning | Usual cause | What to check |
|---|---|---|---|
| Type 6 Code 1 | Task watchdog expired | Infinite loop, program too heavy, higher-priority task taking the time | Watchdog setting, execution time, task priorities; move code to another controller if needed |
| Type 7 Code 40 | Store to nonvolatile memory failed | Memory card | Try the store again; if it still fails replace the card; on 1756-L7x check the card is unlocked |
| Type 7 Code 41, 42 | Load from nonvolatile memory failed: controller type (41) or firmware revision (42) mismatch | Project on the card made for another controller type or revision | 41: correct controller, or download and store again; 42: update controller firmware to the project's revision |
| Type 7 Code 43, 44 | Bad checksum / controller memory not restored | — | Contact Rockwell |
Other groups you will meet
| Type/Code | Meaning | What to check |
|---|---|---|
| Type 11 Code 1, 2 | Axis past positive / negative overtravel limit | Move the axis back within the limit, run Motion Axis Fault Reset |
| Type 14 Code 3 | GuardLogix: safety partner missing | Fit a compatible safety partner, clear the fault; a download may be needed |
| Type 17 Code 34 | Controller internal temperature above its limit | Reduce ambient temperature, keep the recommended clearance around the chassis |
| Type 20 Code 1 | License missing or invalid on transition to Run/Test | Insert a CmCard holding all licenses the project needs |
Fault routine, Controller Fault Handler, Power-Up Handler
1756-PM014O (pp.11–12) tells you where to put handling logic by Type:
| Condition | Type | Put the logic in |
|---|---|---|
| An instruction faults during execution | 4 | The program's fault routine |
| Communication with an I/O module fails | 3 | Controller Fault Handler |
| A task watchdog expires | 6 | Controller Fault Handler |
| A motion axis faults | 11 | Controller Fault Handler |
| Power returns in Run or Remote Run | 1 | Power-Up Handler |
Order: the program's fault routine runs first, before the controller goes to faulted mode; if that routine does not clear the fault, the controller runs the Controller Fault Handler (pp.12, 19).
Reading and clearing in logic (pp.17–21): use GSV to read the MajorFaultRecord attribute (DINT[11]) of the Program object — by program name or THIS — into a tag of a FAULTRECORD user-defined type with members Time_Low, Time_High, Type, Code and Info (DINT[8]). Compare Type and Code with the exact fault you intend to handle; to clear it, set Type and Code to 0 and write the record back with SSV.
What PM014O stresses:
- Do not use fault routines to keep clearing every fault; clear only the specific faults you have checked for.
- The faulting instruction is skipped. If it is a JSR, the whole subroutine does not run; a fault inside an Add-On Instruction aborts the rest of that AOI.
- During prescan, an internal fault handler clears only array faults Type 4 Code 20 and 83 (pp.10–11).
- An empty Power-Up Handler leaves the controller faulted with Type 1 Code 1 when power returns; to resume, the handler must clear that fault and run the logic you need (p. 15). Whether a machine may restart by itself after a power loss is an operating and safety decision for the plant, not just a programming choice.
Clearing a major fault safely
- Record before clearing: Type, Code, full display text, time, and a screenshot of the "Major Faults" tab.
- Find and fix the cause first. Clearing without a fix usually just brings the fault back, possibly when the machine is under load.
- When the controller returns to Run, logic executes again and outputs can change at once — motors, valves and servo axes can move. Warn operations, check the machine area, and follow the plant's lockout and permit-to-work rules.
- If the fault returns straight after clearing, stop; do not keep clearing it.
- For Type 1 Code 60–62, follow the RD001 sequence above, with a backup of the project actually running at hand.
When it is hardware
Per RD001: Type 3 Code 20/21 means replacing the chassis; Type 1 Code 60–62 and Type 7 Code 43/44 go to Rockwell support; a recurring Type 7 Code 40 means a new memory card; Type 1 Code 40 means a new battery, ESM or controller. For Type 17 Code 34, fix cabinet cooling first. If the faulty part is an older controller or chassis with scarce spares, plan its replacement now: obsolescence and lifecycle review.
What to record before calling for support
- Type, Code and full text from the "Major Faults" tab; any minor faults present.
- What the machine was doing: power loss, download, mode change, online edit.
- Controller catalog number, firmware revision, Logix Designer version.
- For Type 1 Code 60–62: the 9-character code and the memory card with the diagnostics.
- For Type 4: program/routine name and the faulting rung.
- A copy of the running project, photos of the indicators and rack.
Need an engineer on site: request support.
Frequently asked questions
What is fault Type 4 Code 20 on ControlLogix?
Type 4 Code 20 means an array subscript is beyond the array size, or the .POS/.LEN of a CONTROL tag is invalid; the usual cause is an index tag (indirect addressing) running past the array limits. The fix is to clamp the index value to the array range before using it.
What is fault Type 3 Code 16 on Logix?
It means the connection to a module configured as required has failed: the module is not in the chassis, the electronic keying is wrong or the connection path to the module is lost. Check the module in the chassis, the keying, the "Major Faults" tab and the module's "Connection" tab.
How do you handle a Type 6 Code 1 watchdog fault?
Type 6 Code 1 is a task watchdog timeout, usually caused by an endless loop, an overloaded program or a higher-priority task taking the time. Check the watchdog setting, execution time and task priorities; if needed, move code to another controller.
Why does the controller stop on Type 1 Code 1 after power returns?
With an empty Power-Up Handler, power returning while the controller was in Run leaves it faulted with Type 1 Code 1, and the machine does not restart on its own. To resume, the handler must clear that fault and run the logic you need; whether a machine may restart by itself is an operating and safety decision for the plant.
Which major faults are non-recoverable?
1756-RD001 says so explicitly for Type 1 Code 60, 61, 62, Type 3 Code 20/21 and many Type 14 codes on GuardLogix. Clearing the fault is not enough for these; the corrective action is replacing hardware, downloading the application again or contacting Rockwell.
Sources
- Rockwell Automation, 1756-PM014O-EN-P, Logix 5000 Controllers Major, Minor, and I/O Faults Programming Manual, 09/2024 — chapter 1 "Major Faults", pp. 9–22
- Rockwell Automation, 1756-RD001F-EN-P, Logix 5000 Controller and I/O Fault Codes (spreadsheet), 09/2025 — sheet "Logix 5000 Controllers"
- Rockwell Automation Knowledgebase QA45576 (public), Logix 5000 Controllers: Major and Minor Fault Code List
Read 25 October 2026. This article paraphrases the sources and does not quote them; read the original documents before designing or working on a system. Links open the latest edition in Rockwell's literature library; page numbers refer to the edition cited.