Allen-Bradley ControlLogix Ethernet

See purchasing information for more details
Download Free Demo

Product Overview

The Allen-Bradley ControlLogix Ethernet device driver works in conjunction with KEPServerEX to provide data exchange between OPC/DDE clients and Allen-Bradley ControlLogix controllers via Ethernet.

The ControlLogix Ethernet Device Driver supports communications with the 1761-NET-ENI, Micrologix Series, SLC 500 Fixed I/O Processor, SLC 500 Modular I/O Series, and PLC-5 Series. The driver also enables connectivity with the ControlLogix 5500 Series, CompactLogix 5300 Series, and FlexLogix 5400 Series that support 1761-NET-ENI Series B. Please see the Allen-Bradley ControlLogix Ethernet Manual for more information.

This driver does not require a Rockwell Automation RSLinx license.



  • Enhanced performance and reduced device loads via optimized data access calls
  • Supports Automatic Tag Database Generation through online Allen-Bradley Logix or file-based .L5K and .L5X
  • Supports larger packet sizes for ControlLogix Controllers v20 and higher (configurable up to 4000 bytes) for improved performance.
  • Serial Gateway support with unconnected messaging, which provides access to ControlLogix, CompactLogix, FlexLogix, and SoftLogix devices via the ControlLogix serial port
  • EtherNet/IP Gateway support, which provides access to EtherNet/IP-enabled MicroLogix, SLC, and PLC 5 devices via the ControlLogix Ethernet Communications module
  • Supports ControlLogix Gateway access via Data Highway Plus and ControlNet networks
  • Supports device routing, which allows access to ControlLogix, PLC 5, and SLC 500 PLCs via any connecting network topology
  • Supports access to all pre-defined Structure Data Types (such as CAM, AXIS, and so forth)
  • Connected Messaging for Read/Write transactions
  • Note: This driver is part of our Allen-Bradley Suite. Purchasing either the Allen-Bradley ControlLogix Ethernet, Allen-Bradley DF1, Allen-Bradley DH+, Allen-Bradley Unsolicited, or Allen-Bradley PLC5/SLC505 Ethernet Driver entitles you to all of the drivers


  • EtherNet/IP

Supported Devices

  • CompactLogix 5320
  • CompactLogix 5323
  • CompactLogix 5330
  • CompactLogix 5331
  • CompactLogix 5332
  • CompactLogix 5335
  • CompactLogix 5345
  • CompactLogix 5370
  • CompactLogix 5380
  • CompactLogix 5400
  • ControlLogix 5550
  • ControlLogix 5553
  • ControlLogix 5555
  • ControlLogix 5561
  • ControlLogix 5562
  • ControlLogix 5563
  • ControlLogix 5572
  • ControlLogix 5573
  • ControlLogix 5574
  • ControlLogix 5575
  • ControlLogix 5580
  • FlexLogix 5433
  • FlexLogix 5434
  • MicroLogix 1000
  • MicroLogix 1100
  • MicroLogix 1200
  • MicroLogix 1400
  • MicroLogix 1500
  • PLC 5 Control Net
  • PLC 5/10
  • PLC 5/15
  • PLC 5/20
  • PLC 5/20C
  • PLC 5/25
  • PLC 5/30
  • PLC 5/40
  • PLC 5/40C
  • PLC 5/60
  • PLC 5/80
  • PLC 5/80C
  • SLC 5/01
  • SLC 5/02
  • SLC 5/03
  • SLC 5/04
  • SLC 5/05
  • SLC 500 Fixed I/O Processor
  • SoftLogix 5810
  • SoftLogix 5830
  • SoftLogix 5860

Available Languages

  • English
  • German
  • Japanese
  • Simplified Chinese

Application Support

  • DDE Format CF_Text and AdvancedDDE
  • NIO Interface for iFIX
  • OPC .NET Service (OPC .NET) Version 1.00
  • OPC Alarms and Events (OPC AE) Version 1.10
  • OPC Data Access (OPC DA) Versions 1.0a, 2.0, 2.05a, and 3.0
  • OPC Unified Architecture (OPC UA) Clients
  • SuiteLink and FastDDE for Wonderware

Release Notes



  • Added support for relative time (LTIME, TIME32, TIME) data types for 5x80 controllers.
  • Improved stability of controller project uploads over slow networks.



  • Added support for firmware V34:
    • Added new CAM_EXTENDED and CAM_PROFILE_EXTENDED PDTs for offline automatic tag generation.
    • Added new members to existing AXIS_CIP_DRIVE PDT for offline automatic tag generation.
    • The following new V34 data types are not supported: DT, LDT, TIME32, TIME, and LTIME PDTs
  • Resolved memory issues in ControlLogix causing exceptions and corruptions.
  • Fixed an issue with non-root level Boolean arrays not being treated as such.
  • Fixed an intermittent issue with reading or writing to/from arrays.



  • Resolved memory issues in ControlLogix causing exceptions and corruptions.



  • Added support for ControlLogix firmware V33, which includes support for CompactLogix 5380 and ControlLogix 5580 P-controllers (PlantPAx Distributed Control System).



  • Added support for ControlLogix firmware V33, which includes support for CompactLogix 5380 and ControlLogix 5580 P-controllers (PlantPAx Distributed Control System).



  • Fixed an issue that could cause the Server to crash during program upload.



  • Added support for ControlLogix firmware V32, which includes support for the CompactLogix 5400 model.



  • Fixed an issue with reading arrays from Guardlogix L43S Controllers. 



  • Fixed an issue introduced in the 6.1 release that could cause the driver to become unresponsive when in Logical Blocking mode.



  • Added support for firmware V31, including new Energy tags.
  • Added the channel and device information to "Project online edit detected" event log messages.



  • Resolved issue with loading old default values of Array Count Upper Limit.
  • Fixed a problem with automatic tag generation from projects containing a structure with "hidden" in the name.



  • Fixed issue where the value of Array Count Upper Limit could be loaded in below the minimum from v5 projects.
  • Fixed an issue where Automatic Tag Generation on a project with a hidden structure yielded an unknown error.



  • Fixed an issue where the value of Array Count Upper Limit could be loaded in below the minimum from v5 projects.



  • Added Chinese language support.



  • Fixed an issue when loading v5 projects where Array Count Upper Limit could be loaded below its minimum value.



  • Firmware versions 29 and 30 are now supported.
  • Fixed an issue where reads would fail on a dynamically addressed array when the datatype was not specified.
  • Enhanced driver to support new CIP data types found in firmware 28.012.
  • Fixed an issue where adding a dynamic Boolean tag with an unsupported data type would appear to add a valid tag.



  • Fixed issue where the value of Array Count Upper Limit could be loaded in below the minimum from V5 projects.



  • Added German language support.
  • Added Japanese language support.
  • The station/node ID for EIP Gateway models (PLC-5, MicroLogix, SLC Fixed, and SLC Modular) is now validated to ensure an ENBT channel and remote IP are specified.


  • Fixed an issue where data types could be misinterpreted.


  • Resolved an issue where reads would fail on a dynamically addressed array when the datatype was not specified.
  • Updated the driver to correctly handle UDTs as referenced in firmware 28.012.


  • Fixed an issue where tags stayed in “Bad” quality following a project download or toggle of device data collection.



  • Added support for V28 firmware.
  • Added support for L8 Series controllers.



  • Added support for V26 and V27 firmware.
  • Resolved an issue where a dynamic array tag could be orphaned due to an abrupt disconnection of the client. On reconnect, the array tag was unable to be re-added by the client.
  • Resolved issue that prevented reading arrays with more than 65535 elements when using the Logical Blocking protocol mode.



  • Added support for reporting socket errors in the Event Log when connecting, sending, and receiving data.
  • Fixed an issue where the first read from a device that had been in an error state returned bad quality. The read now returns good quality if the device is available
  • Fixed an issue where the thread count increased when changing the device ID via a System Tag.



  • Added support for V23 and V24 firmware.
  • Updated the driver to work with future-generation devices and firmware. Before this fix, the driver experienced a communications failure with these devices.
  • Increased the maximum channel limit from 256 to 1024.
  • Fixed an issue where automatic tag generation from an L5K file failed if the L5K contained an AOI parameter that aliased another parameter. AOI alias parameters are not supported in automatic tag generation and should not be automatically generated.
  • For Logix FRN V24, updated Predefined Data Types for offline automatic tag generation and added new members to AXIS_CIP_DRIVE, AXIS_CONSUMED, AXIS_GENERIC, AXIS_GENERIC_DRIVE, AXIS_SERVO, AXIS_SERVO_DRIVE, AXIS_VIRTUAL, and MOTION_GROUP per Logix FRN V24 changes.



  • Fixed an issue where device reads may be starved for a device under a channel if another device under the same channel is not in an error state. This would prevented the device in an error state from coming out of the error state.
  • Fixed an issue where a buffer overflow could occur with writes containing 500 or more characters.



  • Enhanced the driver to allow default data types to be replaced by the data type returned from the controller. This does not require clients to specify the data type upfront.
  • Fixed an issue where Boolean array writes were not supported in Logical Mode.



  • Fixed an issue where channels would suddenly stop communicating. This was a rare occurrence that had to do with improper event handling.
  • Fixed an issue where reading arrays of 64 bit data types (LINTs) that spanned multiple transactions would fail.
  • Fixed an issue where switching from Symbolic Mode to any Logical Protocol Mode without reinitializing the server would not honor the Logical Mode and would stay in Symbolic Mode.
  • Expanded and made configurable the CIP Connection size for Logix models. The supported range is now 500 to 4000 where it had previously been hard set to 500.
  • Note: CPU and EtherNet/IP modules must support Large Forward Open for connection sizes greater than 500 bytes.


  • Fixed an issue introduced in server version 5.11 where in certain conditions, reads and writes would be performed in the reverse order in which they were submitted to the driver from a client application.
  • Corrected the message size estimation for Symbolic Writes, which was making it possible to underestimate and overflow a request packet.


  • Fixed a defect in which the "Synchronize with Controller after" settings were not being respected with regard to Online and Offline edits.
  • Changed a behavior where the driver will now retry tags instead of failing them upon detecting an Online or Offline edit (except for Downloads). It's likely that the next attempt will succeed. Also, Offline edits will take priority over Online edits if both occur before being detected by the driver.
  • Fixed an issue where the Protocol Mode drop-down selection arrow would not redraw correctly if the selection invoked a vertical scroll bar in the grid.


  • Fixed an issue where synchronization failed on controllers with Firmware revision 15 or older that contained CAM_PROFILE Tags. This caused the driver to revert to and stay in Symbolic Mode.


  • Added Device-level error message for Identity request failures.
  • Added project change detection support for online and offline project edits. Device setting, "Synchronize with Controller after", is available on the Logix Options property page.
  • Following a project download or edit is a period in which Logical reads/writes resort to Symbolic mode, after which the driver synchronizes with the controller so Logical reads/writes can resume. This time period has been lowered from 60 seconds to 30 seconds to improve recovery time.
    1. In the event of an "Invalid or corrupt project" error during synchronization, we now wait 30 seconds until retrying again. Before we retried immediately which caused unnecessary upload attempts and event log errors.
    2. Added support for failing a synchronization in progress as soon as a project download is detected. Synchronization will be retried after 30 seconds.
  • Fixed issue that was causing an unnecessary event log message to be posted if a project change occurs during a CIP reconnect (Idle Watchdog expires).
  • Improved logic that determines how many reads or writes can fit in a single packet, yielding a slight increase in performance.
  • Message size estimation for Symbol Instance reads was incorrect for array element blocks whose starting offset exceeded 255 (likely), making it possible to underestimate and overflow a request packet.
  • Message size estimation and generation for Symbol Instance writes was incorrect for paths exceeding 255 in size (unlikely).
  • Update for Logix FRN V21. Updated Predefined Data Types for offline ATG per Logix FRN V21:
    1. Added new pre-defined types, DATALOG_INSTRUCTION and HMIBC.
    2. Added several new members to ALARM_ANALOG, ALARM_DIGITAL, and AXIS_CIP_DRIVE per V21 changes.



  • Added support for a new service introduced in Logix FRN V21 for reading Native Tags, called Symbol Instance Addressing. Physical addressing has been deprecated for V21 but is still supported in the driver for Logix FRN V20 and below. Replaced Physical Non-Blocking and Physical Blocking with Logical Non-Blocking and Logical Blocking to encapsulate these two services.
  • Improved the demotion of tags while in an error state by increasing the number of tags failed per transaction. The driver still attempts at least one read tag per transaction to recover from the error state. This does not apply when Auto Demotion is enabled.
  • Fixed an issue where project correlation state information was not being properly reset when switching from one device connection to another which could result in that device using Symbolic mode indefinitely.
  • Resolved a buffer overrun issue where the Device ID could become corrupt if the length of the portion preceding the comma exceeded 16 characters.
  • Added an address validation check to ensure a tag's Symbolic address fits within a single CIP packet. If it exceeds a single packet, the tag will fail with "Address out of range".
  • Floats and Doubles written to BOOL, SINT, INT, DINT, and LINT Tags are now clamped in order to prevent roll-over. For example, the Float 4294967395.0 is larger than a DWord (4294967295) and would roll-over to 0. With this fix, 4294967395.0 will be clamped to 4294967295.
  • Fixed an issue that occurred when writing to BOOL and SINT Tags for Serial Gateway models.



  • Fixed an issue where the Device ID could become corrupt if any three octets of the IP contained exactly three digits and the remaining octet was set to 44.
  • Updated the "Supported Devices" list in the help file to display support for RS Logix V20.
  • Added the '#' symbol to the ControlLogix Predefined Tag addressing syntax as an alternative to the '@' symbol. Previous usage of the '@' symbol conflicted with the dynamic tag addressing syntax used by the server.
  • Added the new device-level internal tag "_FailedConnection" that indicates the driver failed on its attempt to connect to the device.


  • Fixed the incorrect font that was applied to the Channel Wizard dialog "Suggestions" on Chinese language operating systems.
  • Added support for the following pre-defined tags: @REVISION, @STATUS, @MODE, @VENDORID, @PRODUCTCODE, @PLCTYPE, and @PROCESSORNAME.
  • Fixed an issue where the driver could report incorrect data to client applications if the value read was greater than 262,136 bytes (such as in an array of 65535 DINTs). This only occurred on devices configured for Physical Blocking Mode.
  • Updates for RSLogix version 20. The following was included for offline automatic tag generation:
    • Added the new pre-defined types DCAF_INPUT and DCA_INPUT.
  • Performance statistics are now properly disabled when non-ControlLogix models are selected.


  • Fixed a threading issue that could cause a channel to stop communicating on systems with multiple CPUs.


  • Fixed an anomaly in which the device properties Tag Import File and Display Descriptions could be enabled for models that do not support Automatic Tag Generation (such as in MicroLogix).
  • Added a check for a delete pending on each tag before the tag is issued for device communication.
  • Added Serial Gateway support with unconnected messaging, which provides access to ControlLogix, CompactLogix, FlexLogix, and SoftLogix devices via the ControlLogix serial port.
  • Added support for EtherNet/IP Gateway, which provides access to EtherNet/IP-enabled MicroLogix, SLC, and PLC-5 devices via the ControlLogix Ethernet Communications module.
  • Fixed a write issue with LBCD arrays where the driver was writing to every fourth Dword instead of every fourth byte.
  • Fixed discrepancies between L5K and L5X import. Added handling to respect ExternalAccess for AOI Parameters and Data Type members.
  • Resolved an issue where the driver was not correctly handling the connection routing path to a remote device which could cause the driver to fail Automatic Tag Generation and report an invalid device ID.
  • Limited Serial Gateway node id to DF1 limit of 254.


  • A problem has been corrected which could cause data requests to MicroLogix models to fail with CIP Error 0x08.


  • Added support for RSLogix version v19.
  • Added a new check box setting in the Logix Options page of the driver called "Automatically Read String Length". When unchecked, string reads will be optimized by having the driver bypass the LEN member read and terminate the DATA string at either the first null character encountered or the maximum string length of DATA (whichever occurs first).
  • Beginning with L7x controllers, an optimization in controller memory restricts that memory cannot be accessed on a non-DWord boundary or a controller fault will occur. Because the driver was not aware of this restriction, it was possible it could fault the controller while performing Physical reads or writes. To address this issue, the driver now identifies the controller and makes the proper Physical memory access.
  • Fixed an issue where tags stopped updating under certain PC environments running a multi-core CPU.


  • Added support for RSLogix version 18.


  • Modified the driver to support locale-specific multi-byte strings.
  • Resolved an issue with Auto Tag Generation that occurred if a project correlation error was detected.
  • Increased the maximum number of Programs supported from 512 to 1024.
  • Fixed application exception that can occur when multiple Logix Array elements are added and removed at random, followed up by a project upload (due to inactivity, change in project, etc).


  • Fixed issue where L5K files with lines longer than 32768 characters would not import correctly.
  • Fixed various anomalies where tags could not be auto generated via L5K.
  • Added support for automatic tag database generation using .L5X files.
  • Fixed Predefined Data Type tag names created during an L5K/L5X import to match the new names used in online tag generation with V17.
  • Added support for asynchronous hostname resolution.



  • Fixed performance issue for DH+ Gateway, ControlNet Gateway, ENI and Micrologix models where writes and priority reads could be starved in a low bandwidth/slow response time scenario.
  • Fixed issue where the driver generated names for imported array tags with 'CONDENSED' tag hierarchy incorrectly. The generated names were instead in the EXPANDED format.
  • Fixed issue where the driver could occasionally read/write empty data for string tags. This only happened for projects with multiple channels.

Supported Device Details

  • ControlLogix 5550, 5553, 5555, 5561, 5562, 5563, 5572, 5573, 5574, and 5575 via the 1756 ENET/ENBT Module, Serial Gateway, or 1761 NET-ENI Series B using Channel 0 and 5580 via 1756-L83 and 1756-L85 (28.011)
  • CompactLogix 5320, 5323, 5330, 5331, 5332, 5335, 5345, and 5370 via the built-in EtherNet/IP port on processors with E suffix, Serial Gateway, or 1761-NET-ENI Series B using Channel 0 and 5380 via 5069-L320ER (28.011) or 5069-L340ERM
  • SoftLogix 5810, 5830, and 5860 processors via the SoftLogix EtherNet/IP Messaging Module or Serial Gateway
  • FlexLogix 5433 and 5434 processors via the 1788-ENBT Ethernet Daughtercard, Serial Gateway, or the 1761-NET-ENI Series B using Channel 0
  • PLC 5 Control Net via the DH+ Gateway, 1761-NET-ENI, or EtherNet/IP Gateway
  • PLC 5/10, 5/15, 5/20, 5/20C, 5/25, 5/30, 5/40, 5/40C, 5/60, 5/80, and 5/80C via the ControlNet Gateway, 1761-NET-ENI, or EtherNet/IP Gateway
  • SLC 500 Fixed I/O Processor via the 1761-NET-ENI or EtherNet/IP Gateway
  • SLC 5/01, 5/02, 5/03, 5/04, and 5/05 Modular I/O Processor via the DH+ Gateway, 1761-NET-ENI, or EtherNet/IP Gateway
  • MicroLogix 1000, 1100, 1200, 1400, and 1500 via the 1761-NET-ENI, MicroLogix 11/1400 Channel 1 (Ethernet), or EtherNet/IP Gateway