---
title: AB CompactLogix Ethernet FreeTag
slug: litmusedge/quickstart-guide/industrial-systems-connection-guide/allen-bradley/ab-compactlogix-ethernet-freetag
description: Review the following information for setting up and configuring the AB CompactLogix Ethernet FreeTag driver. 
docTags: 
createdAt: 2022-05-26T20:56:06.000Z
---

Review the following information for setting up and configuring the AB CompactLogix Ethernet FreeTag driver.&#x20;

:::hint{type="danger"}
**Note**: This driver has been deprecated due to known issues and will be replaced with the [AB Logix Ethernet](docId\:S4gfpbAqF1JgQZhjI75Mr) driver in a future release. During upgrade, any devices using this driver will be automatically migrated to the replacement.
:::

# Litmus Edge Compatible Series

| Compatibility parameter      | Compatible items                                                                                                                                                                                                         |
| ---------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Driver type**              | Ethernet                                                                                                                                                                                                                 |
| **Validated devices/series** | [CompactLogix](https://www.rockwellautomation.com/en-us/products/hardware/allen-bradley/programmable-controllers/small-controllers/compactlogix-family.html)&#xD;<br />[ControlLogix](http://ab.rockwellautomation.com/) |
| **Replaces Gen 1 driver(s)** | [AB CompactLogix (Gen1)](docId\:E5R9zpSH5Xc_LnsE7kFyF)<br />[AB ControlLogix (Gen1)](docId\:BIyC3OsPvHa2Ob2Kck4Rc)<br />Learn more about [Gen1 and Gen2 Driver Differences](docId\:HaIxS2l_OqxFj1YVYWNc1)                |

To set up and configure this device in Litmus Edge, you will need to do the following:

- Step 1: Set up and Configure the PLC Device
- Step 2: Set up the PLC Device in Litmus Edge DeviceHub
- Step 3: Configure the List of Registers

# Step 1: Set up and Configure the PLC Device

If the device is configured for Ethernet access, find its network parameters. Otherwise, follow the steps below.&#x20;

**To configure your device:**

1. Start the Studio 5000 Logix Designer application.
2. Select **File** > **Open**, then select your PLC project.
3. In **Controller Organizer**, right-click the device and select **Properties** from the popup menu.
   The Module Properties dialog box appears.
4. Select the **Port Configuration** tab.
5. Copy aside the IP address from the **IP address** field.

# Step 2: Set up the PLC Device in Litmus Edge DeviceHub

Configure the following parameters when you [Connect a Device](#) with this driver. Update default values to the specific setup of your device.&#x20;

| Parameter           | Value                                    |
| ------------------- | ---------------------------------------- |
| **Type**            | Allen-Bradley                            |
| **Driver**          | AB CompactLogix Ethernet FreeTag         |
| **Network Address** | The device address you defined in Step 1 |
| **Port**            | 44818                                    |
| **Slot**            | 0                                        |

# Step 3: Configure the List of Registers

Browse for tags to add to this FreeTag device. See [Browse Tags](docId\:akkXnVv6EdVzAZ40SHbWM) to learn more. Alternatively, when you [Add Tags](docId\:XgWOkQbTPevII7OR82LL0), type the tag name in the **Name** field exactly as it is defined in the device (case-sensitive). You can find a list of tags by navigating to **Controller Organizer > Controller > Controller Tags** in Studio 5000 Logix Designer.

The following data types are supported:&#x20;

- `bool`
- `byte`
- `sint`
- `int`
- `dint`
- `real`
- `dword`
- `lint`
- `lreal`
- `string`

## Addressing Tips

- To access the bits of a `dint` tag, use the data type `bool` and append the bit address (`.0` to `.31`) to the name of the `dint` tag.
- To access the elements of a two- or three-dimensional array, use multiple square brackets instead of commas to separate the indices. For example, if the array in RSLogix 5000 has the name `MyArray` with the data type `dint[2,2,2]`, you can access the 0th index by entering `MyArray[0][0][0]` in Litmus Edge.

Refer to the following tag parameters in Litmus Edge.&#x20;

## Tag Parameters

- **Name**: Enter the case-sensitive register name exactly as it is defined in the PLC.&#x20;
- **Value Type**: Select a data type from the drop-down list.&#x20;
- **Polling Interval**: Enter a value in seconds. This determines how often the tag should poll the register for data.
- **Tag Name**: Enter a name for the tag.
- **Description** (Optional): Enter a description for the tag. &#x20;
- **Tag Formula**: Enter a formula for the tag to process the generated data. Two variables are permitted: `value` (current tag value) and `timestamp` (current tag UNIX time in milliseconds). The following math functions are available:
  - sin
  - cos
  - sqrt
  - tan
  - power: power(`x`) performs the operation `10^x`.
  - log: log(`x`) is the natural logarithm (the logarithm is in base `e`).&#x20;
  - exp: exp(`x`) performs the operation `e^x`.
- **Only Publish on Change of Value**: Select the checkbox to only publish NATS messages when the *value&#x20;*&#x70;arameter changes to a new value. *Change of Value* only applies to boolean, numeric (such as int or float), and simple string data types. It does not apply to complex types, such as JSON or array. Poll-once topics will not be affected by *Change of Value* settings. These topics will still only see a single message.&#x20;
- **Meta Data**: Metadata summarizes basic information about data. This feature allows you to define key-value pair data for the device output payload later on. Metadata can then be used to find, use, and reuse particular instances of data.&#x20;

:::hint{type="info"}
**Note**: If you use special characters in meta data key names, the special characters are replaced with underscore characters in the payload. This can cause two key names to be combined into one. For example, configuring the key names a\*\*b and a&\&b will cause only one key name to be created (a\_\_b).&#x20;
:::

