> For the complete documentation index, see [llms.txt](https://docs.enlyze.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.enlyze.com/en/connect/ot-connectivity/supported-industrial-protocols/ethernet-ip.md).

# EtherNet/IP

This guide walks you through connecting data sources that communicate via the EtherNet/IP protocol. EtherNet/IP is the open protocol based on the Common Industrial Protocol (CIP) that the Logix-generation [Allen-Bradley](/en/connect/ot-connectivity/supported-controller-brands/allen-bradley.md) controllers from Rockwell Automation use to communicate. ENLYZE connects these controllers via EtherNet/IP over Ethernet (CIP over TCP, default port `44818`).

{% hint style="info" %}
**Symbolic tags instead of absolute addresses**

EtherNet/IP addresses the data of Logix controllers through symbolic **tags** (named variables) rather than absolute memory addresses. The connector detects both controller-scoped and program-scoped tags and resolves composite data types (UDTs) down to their individual members.
{% endhint %}

{% hint style="info" %}
**Automatic variable detection**

The EtherNet/IP protocol supports [Variable Discovery](/en/connect/ot-connectivity.md#variable-discovery). The controller's tags are detected automatically, so the memory addresses do not need to be known in advance.
{% endhint %}

## Supported devices

EtherNet/IP is supported by the Logix-generation Allen-Bradley controllers, including:

* ControlLogix (1756 ControlLogix 5570 / 5580, GuardLogix)
* CompactLogix (5370, 5380, Compact GuardLogix)
* Micro800 (Micro820, Micro850, Micro870)

For a complete overview of the families and devices, see the [Allen-Bradley page](/en/connect/ot-connectivity/supported-controller-brands/allen-bradley.md). The classic generations PLC-5, SLC 500, and MicroLogix address through PCCC and are not directly covered by the symbolic EtherNet/IP connector.

## Required information

<table><thead><tr><th width="293.6058349609375">Information</th><th>Comment</th></tr></thead><tbody><tr><td>Name</td><td>Pick a descriptive name for your data source</td></tr><tr><td>Edge Device used for the connection</td><td>Printed on a sticker on each Edge Device. Follows the pattern <code>adjective-scientist</code></td></tr><tr><td>Machine</td><td>Each data source is assigned to exactly one machine</td></tr><tr><td>Manufacturer</td><td>Allen-Bradley</td></tr><tr><td>IP address</td><td>The IPv4 address of the controller. It must be <a href="/pages/NOoLZt9S2VJxBY2IkzbA">reachable</a> from the Edge Device</td></tr><tr><td>Port</td><td>Default: <code>44818</code> (EtherNet/IP, TCP)</td></tr></tbody></table>

{% stepper %}
{% step %}

#### Connect the data source to the network

If not already done, establish a network connection between the data source and the Edge Device. See [Integration scenarios](/en/connect/integration-scenarios.md) for the available options.
{% endstep %}

{% step %}

#### Create the data source

Open the [ENLYZE Manufacturing Data Platform](https://app.enlyze.com/platform), select the machine you want to add the data source to, and click *+ Data source*.

Enter the device details first.
{% endstep %}

{% step %}

#### Add connection details

To establish the connection and start recording data, enter the connection details.

Click *Add connection details* and enter the IP address and port. Then *save* the values.
{% endstep %}

{% step %}

#### Add variables

The EtherNet/IP protocol supports [Variable Discovery](/en/connect/ot-connectivity.md#variable-discovery), so adding variables is automated. The first Variable Discovery is triggered once the connection details are saved.

{% hint style="warning" %}
No data is recorded after Variable Discovery completes. You first need to select the [variables](/en/variable-mapping/contextualisation.md) to record. Follow our variable onboarding flow.
{% endhint %}
{% endstep %}
{% endstepper %}
