Beckhoff TwinCAT 2

72 fault codes documented

42E9

GROUPERR_RANGE_NOMOTIONFILTERTIME

The 'No Motion Filter Time' parameter configured for the group is outside its allowed range of [0.0 ... 60.0] seconds. This parameter filters brief periods of non-motion to prevent false 'no motion' detections, and an invalid setting can cause incorrect status reporting or premature task completion.

42EA

GROUPERR_RANGE_TIMEUNITFIFO

The 'Time Unit FIFO' parameter configured for the group is outside its allowed range of (0.0 ... 1000.0] seconds. This parameter likely relates to the timing and processing of buffered commands within the group's FIFO, and an incorrect value can disrupt sequential command execution or cause timing errors.

42EB

GROUPERR_RANGE_OVERRIDETYPE

The 'Override Type' parameter configured for the group is outside its allowed range of [1, 2]. This parameter defines the operational behavior of override functions (e.g., speed override), and an invalid type will prevent proper scaling of motion commands, leading to unexpected speeds or unresponsive overrides.

42EC

GROUPERR_RANGE_OVERRIDECHANGETIME

The 'Override Change Time' parameter configured for the group is outside its allowed range of (0.0 ... 1000.0] seconds. This parameter controls the ramp rate or filter time when an override value is changed, and an invalid setting can result in abrupt motion changes, jerky movements, or delayed override responses.

42ED

GROUPERR_FIFO_INVALIDDIMENSION

The FIFO dimension (number of axes) configured for the group is invalid, falling outside the supported range of [1 ... 8] or [1 ... 16] (depending on the TwinCAT version, with newer builds supporting up to 16 axes). This mismatch prevents the FIFO buffer from correctly managing motion commands for the intended number of axes in the group.

42EE

GROUPERR_ADDR_FIFOTABLE

This error indicates a problem with the memory address of the FIFO table for the group. The system is unable to locate or access the designated memory region for the FIFO table, which is essential for buffering and sequencing motion commands. This can lead to the inability to execute complex motion profiles.

42EF

Axis is locked for motion commands

The axis or group is currently in a locked state, preventing the execution of new motion commands, because a `MC_Stop` command is still actively processing. This safety interlock ensures that an initiated stop sequence completes fully before any new motion is permitted, preventing unintended or hazardous movements.

42F0

Invalid number of auxiliary axes

The locally configured number of auxiliary axes does not match the globally defined number of auxiliary axes in the system. This inconsistency can lead to errors in kinematic transformations, uncoordinated motion, or misinterpretation of motion commands involving auxiliary axes.

42F1

Invalid reduction parameter for auxiliary axes

The velocity reduction parameters configured for the auxiliary axes are inconsistent or invalid. These parameters dictate how the velocities of auxiliary axes are scaled relative to primary axes, and incorrect settings can result in unintended speeds, motion errors, or violations of kinematic constraints.

42F2

Invalid dynamic parameter for auxiliary axes

The dynamic parameters (e.g., acceleration, deceleration, jerk) configured for the auxiliary axes are inconsistent. These parameters govern the motion behavior and responsiveness of auxiliary axes, and inconsistent values can lead to jerky movements, overshooting, or exceeding mechanical limits during coordinated operations.

42F3

Invalid coupling parameter for auxiliary axes

The coupling parameters configured for the auxiliary axes are inconsistent. These parameters define how auxiliary axes are linked or synchronized with other axes (e.g., master-slave, gearing), and an invalid setup will lead to improper synchronized motion, position errors, or loss of coordinated control.

42F4

Invalid auxiliary axis entry

An auxiliary axis entry, where motion or configuration is expected, is found to be empty. This error suggests an incomplete or missing configuration for an auxiliary axis that is part of a kinematic group or coordinated motion, preventing the system from properly including it in calculations.

42F6

Invalid parameter (auxiliary axis velocity reduction)

The limit for velocity reduction of the auxiliary axes is invalid, as it must be within the interval [0.0, 1.0]. An incorrect value will cause issues with how auxiliary axis velocities are scaled, potentially leading to overspeed, underspeed, or uncoordinated motion, risking damage or poor performance.

42FB

INTERNAL ERROR (GROUPERR_SLAVE_INTERNAL)

An unspecified internal error has occurred within the NC system concerning a slave axis within a group. This indicates a low-level software fault or data inconsistency that prevents the slave axis from functioning correctly. Such internal errors can lead to group motion failure or loss of control over the slave axis.

42FF

GROUPERR_WATCHDOG (customer specific error code)

A watchdog timer for the group has expired, signaling a critical delay or unresponsiveness in the system's processing of group-related tasks. As this is a customer-specific error code, it points to a potential issue in the customer's application logic, configuration, or system load causing the processing delay.

44A2

ENCERR_ADDR_CONTROLLER

This error indicates an issue with the controller's address configuration for an encoder. The NC system cannot properly locate or communicate with the encoder due to an incorrect or missing address assignment. This directly impacts the ability to read position feedback and control the associated axis.

44A3

ENCERR_INVALID_CONTROLLERTYPE

This error signifies that an invalid controller type has been configured or detected for an encoder. The system expects a specific type of controller for the connected encoder but found a mismatch or an undefined type. This mismatch prevents the NC from applying the correct control algorithms and parameters, rendering the encoder unusable.

4000

Internal error

An internal system error has occurred within the NC on ring 0, indicating an unexpected software fault without further specific details. This type of error can lead to system instability, unexpected halts in operation, and potentially data corruption if not resolved, as it affects the core NC processing.

4001

Memory error

The ring-0 memory management system is unable to provide the required memory resources for NC operations. This is typically a secondary symptom of another underlying issue, leading to the controller halting normal operation or experiencing critical failures due to insufficient memory.

4002

Nc retain data error (persistent data)

An error occurred while loading the NC retain data, which stores persistent configuration and state information. This results in affected axes losing their reference (status flag 'Homed' set to FALSE) and can be caused by missing, expired, corrupt, or inconsistent retain data. Loss of this data means the machine will need to be re-homed and potentially re-configured.

4010

Channel identifier not allowed

An unacceptable value (outside the range of 1 to 255) has been used for a channel identifier, or the specified channel does not exist within the current system configuration. This parameter error prevents proper identification and control of the specified channel, leading to operational failure or incorrect routing of commands.

4011

Group identifier not allowed

An unacceptable value (outside the range of 1 to 255) has been used for a group identifier, or the specified group does not exist within the current system configuration. This parameter error prevents proper identification and control of the specified group of axes, leading to failure of coordinated motion commands.

4012

Axis identifier not allowed

An unacceptable value (outside the range of 1 to 255) has been used for an axis identifier, or the specified axis does not exist within the current system configuration. This parameter error prevents proper identification and control of the specified axis, leading to its inability to move or respond to commands.

4013

Encoder identifier not allowed

An unacceptable value (outside the range of 1 to 255) has been used for an encoder identifier, or the specified encoder does not exist within the current system configuration. This parameter error prevents proper identification and reading of position feedback from the specified encoder, leading to uncontrolled motion or axis failures.

4220

Group not ready / group not ready for new task

The NC group received a new motion task while it was still actively processing a previous task. This request is rejected to prevent interruption of the existing task and maintain motion integrity. Attempting to force a new task can lead to unpredictable motion, collisions, or data inconsistencies.

4221

Requested set velocity is not allowed

The velocity value requested for a positioning task is invalid, either being zero or negative, exceeding the axis's 'maximum velocity', or, for servo drives, exceeding the axis's 'reference velocity'. An unacceptable velocity can lead to an axis not moving, overspeed conditions, or triggering other safety limits.

4222

Requested target position is not allowed (master axis)

The target position requested for a positioning task on the master axis falls outside the configured software end locations (either below the minimum or above the maximum). This error occurs only when software end position monitoring is active, indicating a command that would drive the axis beyond its safe virtual limits, potentially causing mechanical damage.

4223

No enable for controller and/or feed (Master axis)

The necessary enable signals for the master axis, such as the controller enable or direction-dependent feed enables (via the PlcToNc interface), are not active. Without these enables, the axis controller cannot operate, preventing any motion or positioning tasks from executing. This is a critical safety interlock.

4224

Movement smaller than one encoder increment

The commanded distance for a group or axis to move is infinitesimally small, less than the physical resolution of one encoder increment or the axis's scaling factor. Although the system reports the axis as logically finished without active movement, this can indicate a precision issue in programming or an attempt to command motion below the system's physical capability.

4225

Drive not ready during axis start

During the startup sequence of an axis, the associated drive is found to be in a non-ready state. Possible causes include the drive being in a hardware error state, still in its power-up or boot-up phase (which can take several seconds after a reset), or lacking the necessary controller enable signal. This prevents the axis from becoming operational.

4226

Invalid parameters of the emergency stop

The parameters configured for the emergency stop (E-Stop) function are invalid. Specifically, the deceleration or jerk values are set to less than zero, or one of these parameters is weaker (less effective) than the corresponding parameter used for normal start data. Invalid E-Stop parameters compromise machine safety, potentially leading to longer stopping distances or uncontrolled deceleration during an emergency.

4227

Setpoint generator is inactive

The setpoint generator, responsible for calculating and outputting motion commands, is currently inactive. This means the system cannot accept any new motion instructions, as the core mechanism for generating movement is not operational. This can occur if the NC is not in a ready state or requires an explicit activation command.

4228

Requested traverse distance is not allowed

The commanded traverse distance or looping distance for a two-speed axis is smaller than its configured braking distance. This means the axis cannot achieve the commanded move reliably, as it would require stopping instantaneously or reversing before completing the minimum necessary travel. Attempting this move can lead to inaccurate positioning or overshooting.

4300

Axis ID not allowed

The value for the axis ID is not allowed because it has already been assigned, is less than or equal to zero, is greater than 255, or does not exist in the current configuration. The allowed range is [1 ... 255]. An invalid axis ID prevents the system from uniquely identifying and controlling the axis, making it inoperable.

4301

Axis type not allowed

The value configured for the axis type is unacceptable because it is not defined within the system's supported types. Valid types include 1: Servo, 2: High/low speed, and 3: Stepper motor. An incorrect axis type means the NC cannot apply the correct control algorithms and parameters, leading to axis malfunction.

4306

Slow manual velocity not allowed

The value configured for the slow manual velocity parameter is not allowed. The accepted range for this parameter is [0.0, 10000.0] (e.g., m/min). An invalid setting prevents the system from reliably executing slow manual movements, potentially leading to no motion or jerky manual control.

4463

Software end location maximum (positioning process)

The actual position of an axis has exceeded its configured software end location maximum while active monitoring is enabled. For servo axes, this limit is extended by the parameterized following error window. This indicates an attempt to move the axis beyond its defined safe operating range, potentially risking mechanical damage or collisions.

4464

Encoder hardware error

The drive or encoder system has reported a hardware error within the encoder itself. This indicates a physical malfunction of the encoder, which is critical for providing accurate position feedback. A faulty encoder will lead to uncontrolled axis motion, loss of positioning accuracy, or complete operational failure.

4465

Position initialization error at system start

During the initial system start-up, the set position could not be successfully initialized for all trials (with/without overflow/underflow) within the final position minimum and maximum limits. This means the axis could not establish a valid initial position, preventing it from becoming referenced and ready for motion.

4470

SSI transformation fault or not finished

The Synchronous Serial Interface (SSI) transformation performed by the FOX 50 module was either faulty for several NC cycles or failed to complete. This indicates a problem in reading or converting data from SSI encoders, leading to inaccurate or missing position feedback and ultimately affecting axis control.

4500

Controller ID not allowed

The value configured for the controller ID is invalid, typically because it's already assigned, out of range (not 1-255), or zero/negative. A unique ID is crucial for the NC system to correctly identify and manage individual controllers. An invalid ID prevents the controller from being recognized and functioning within the system.

4501

Controller type not allowed

The value specified for the controller type is unacceptable because it is not a defined type within the system (e.g., Types 1-8 are defined, but Type 9 is not). An incorrect controller type prevents the NC from applying the appropriate control algorithms and parameters, leading to misbehavior or non-operation of the controlled axis/system.

4502

Controller operating mode not allowed

The value specified for the controller operating mode is not allowed, as the value range is limited to [1]. An incorrect operating mode prevents the controller from initiating or maintaining its intended control function. This will effectively stop the controller from performing any motion or regulation tasks.

4503

Weighting of the velocity pre-control not allowed

The value specified for the percentage weighting of the velocity pre-control is not allowed, as it must be within the range [0.0 ... 1.0]. This parameter, typically preset to 1.0 (100%), influences the feedforward control of velocity. An invalid value can lead to poor motion tracking, instability, or overshoots/undershoots.

4504

Following error monitoring (position) not allowed

The value for the activation of the following error monitoring (position) is not allowed, as the value range is limited to [0, 1]. This parameter enables or disables the system's ability to detect deviations between commanded and actual position. An invalid setting means critical safety monitoring might be disabled or misconfigured.

4505

Following error (velocity) not allowed

The value for the activation of the following error monitoring (velocity) is not allowed, as the value range is limited to [0, 1]. This parameter enables or disables the system's ability to detect deviations between commanded and actual velocity. An invalid setting means critical safety monitoring might be disabled or misconfigured, leading to uncontrolled speeds.

4506

Following error window (position) not allowed

The value configured for the following error window (maximum allowable position following error) is not allowed, as it must be within the range [0.0, 10000.0]. This parameter defines the maximum permissible deviation between the target and actual position. An invalid window can cause false fault triggers or fail to detect actual tracking errors, risking collisions.

4507

Following error filter time (position) not allowed

The value configured for the following error filter time (position) is not allowed, as it must be within the range [0.0, 600.0] seconds. This parameter filters out high-frequency noise from the following error signal, preventing nuisance trips. An invalid filter time can lead to either excessive false alarms or a failure to detect real errors.

4630

Overtemperature

Overtemperature has been detected or reported within the drive or terminal. This indicates that the operating temperature of the drive, motor, or associated I/O terminal has exceeded its safe limits. Prolonged overtemperature operation can cause permanent damage to electronic components, insulation, and lead to premature failure of the equipment.

4631

Undervoltage

An undervoltage condition has been detected or reported in the drive or terminal. This means the supply voltage to the component has dropped below its minimum operational threshold. Undervoltage can cause erratic drive behavior, unstable control, or complete power loss, potentially damaging sensitive electronics if power fluctuates significantly.

4632

Wire break in phase A

A wire break (loss of continuity) has been detected or reported in phase A of the motor connection, either within the drive or at the terminal. This critical fault means one of the motor phases is open-circuited. Attempting to operate the motor with a phase break can lead to severe damage to both the motor and the drive due to unbalanced currents.

4633

Wire break in phase B

A wire break (loss of continuity) has been detected or reported in phase B of the motor connection, either within the drive or at the terminal. This critical fault means one of the motor phases is open-circuited. Attempting to operate the motor with a phase break can lead to severe damage to both the motor and the drive due to unbalanced currents.

4634

Overcurrent in phase A

An overcurrent condition has been detected or reported in phase A of the drive or terminal. This indicates that the current flowing through phase A has exceeded the drive's or motor's rated capacity. Potential causes include mechanical overload, a short circuit in the motor or cable, or incorrect motor parameters in the drive, risking damage to the drive and motor.

4635

Overcurrent in phase B

An overcurrent condition has been detected or reported in phase B of the drive or terminal. This indicates that the current flowing through phase B has exceeded the drive's or motor's rated capacity. Potential causes include mechanical overload, a short circuit in the motor or cable, or incorrect motor parameters in the drive, risking damage to the drive and motor.

4636

Torque overload (stall)

A torque overload leading to a stall condition has been detected or reported in the drive or terminal. This means the motor is attempting to produce more torque than its capacity, typically due to excessive mechanical load, binding in the mechanical system, or incorrect drive tuning. A prolonged stall can lead to motor overheating and permanent damage.

4640

Drive initialization

The drive has not been fully initialized after being created in the system. This indicates that subsequent critical steps, such as I/O initialization, drive parameterization, and a system reset, have not been performed. Without complete initialization, the drive cannot enter an operational state and will not respond to motion commands.

4641

Axis address

The drive does not recognize its assigned axis, or the axis address has not been properly initialized. This prevents the drive from establishing correct communication and control with its corresponding virtual axis within the NC system. As a result, the drive cannot receive commands or provide feedback for coordinated motion.

4642

Address IO input structure

The drive lacks a valid I/O input address in the process image. This indicates a mapping error where the NC system cannot correctly read input data (e.g., encoder feedback, limit switch status) from the drive because its process image address is either missing or invalid. This will lead to a lack of critical feedback for control.

4643

Address IO output structure

The drive lacks a valid I/O output address in the process image. This means the NC system cannot correctly write output data (e.g., control commands, enable signals) to the drive because its process image address is either missing or invalid. This prevents the drive from receiving commands and acting upon them.

4650

Drive hardware not ready to operate

The drive hardware is not in a ready state for operation. This can be caused by the drive being in a hardware error state, still undergoing its start-up phase (which can take several seconds after a reset), or missing the necessary controller enable signal. Until the drive is ready, no motion commands can be executed.

E_ACCESSDENIED

Access Denied

The operation failed due to insufficient permissions or a locked resource. This occurs if the current document in the system manager instance is locked (e.g., when calling NewConfiguration() or OpenConfiguration()) because a reference to the system manager's object or a tree element is open. For DeleteChild(), it indicates that deleting the child item is not allowed due to protection or operational constraints.

E_FAIL

General Function Failure

The operation failed for an unspecified reason, indicating a general failure. This could happen during NewConfiguration() or ActivateConfiguration(), StartRestartTwinCAT() if the TwinCAT system cannot be started, or ConsumeXml() if the provided XML string is not a valid document.

E_INVALIDARG

Invalid Argument Provided

An invalid argument was supplied to the function. For OpenConfiguration(), the bstrFile path does not refer to a valid TwinCAT configuration file. For SaveConfiguration(), the bstrFile path is invalid for saving. For LinkVariables(), the offs1, offs2, or size parameters do not match the variables' structure or range.

E_NOTSUPPORTED

Operation Not Supported in Current Mode

The attempted operation, specifically NewConfiguration(), OpenConfiguration(), or SaveConfiguration(), is not supported in the current TwinCAT Automation Interface operational mode. These methods are exclusively available when the Automation Interface is running in Compatibility Mode.

E_POINTER

Invalid Pointer

An invalid pointer was provided to the function. For ProduceXml(), this applies to the output pXML parameter, indicating the variable to store the XML string is not properly allocated. For CreateChild(), this means the pipItem pointer, intended to receive the new child item's interface, is invalid, preventing the successful creation and return of the child item.

NTE_BAD_SIGNATURE

Invalid Import File Signature

The file specified for import does not contain a valid tree item or has a corrupted signature (0x80090006). This error occurs when ImportChild() attempts to read the file but determines its content is not a recognized TwinCAT tree item export format.

NTE_NOT_FOUND

Import File Not Found

The specified file for importing a child item cannot be found or opened (0x80090011). This indicates an issue with the path to the import file or its accessibility, preventing the ImportChild() operation from completing.

TSM_E_CORRUPTEDLINK

Corrupted Variable Link

The specified variables cannot be unlinked, possibly due to a corrupted or invalid link definition in the TwinCAT configuration (0x98510005). This indicates an issue with the integrity of the variable linkage data within the system.

TSM_E_INVALIDITEMSUBTYPE

Invalid Item SubType for Creation

The provided nSubType parameter for creating a child item is invalid or not compatible with the parent item's type (0x98510003). The usable subType depends on the parent tree item's category; for example, a PLC Functionblock may only be added to a PLCFOLDER item, not a DEVICE item.

TSM_E_INVALIDITEMTYPE

Invalid Tree Item Type for Operation

One or both of the specified tree items are not valid for the attempted operation (0x98510002). For LinkVariables() or UnlinkVariables(), this means one or both tree items are not of a variable type, preventing linkage operations.

TSM_E_ITEMNOTFOUND

TwinCAT Tree Item Not Found

The specified tree item could not be found using the provided identifier (0x98510001). This can occur with LookupTreeItem() (absolute path name), LookupTreeItemById() (itemType/itemId combination), LookupChild() (relative path name), CreateChild() (bstrBefore item not found), DeleteChild() (bstrName item not found), ExportChild() (bstrName item not found), or ChangeChildSubType() (bstrChild item not found).

TSM_E_MISMATCHINGITEMS

Mismatching Items for Operation

The items involved in the operation are incompatible (0x98510004). For LinkVariables(), this occurs when two variables cannot be linked due to incompatible data types, attempting to link two outputs, linking an output of a task to an input of a device, or linking variables of the same owner. For ImportChild(), this means the tree item contained within the import file is not a valid child item for the current parent, or its structure is incompatible.