---
title: DNP3 Ethernet with FB Extensions
slug: litmusedge/dnp3-ethernet-with-fb-extensions
docTags: 
createdAt: 2024-06-20T17:03:43.842Z
---

Review the following information for setting up and configuring the DNP3 Ethernet with FB Extensions driver.&#x20;

:::hint{type="info"}
**Notes**:

- This driver does not support SAv5.
- This driver supports Emerson's DNP3 tunneling method for Emerson FBx RTUs only.
:::

# Litmus Edge Compatible Series&#x20;

| Compatibility parameter      | Compatible items                                                           |
| ---------------------------- | -------------------------------------------------------------------------- |
| **Driver type**              | Ethernet                                                                   |
| **Validated devices/series** | [Emerson FB3000 RTU](https://www.emerson.com/en-us/catalog/emerson-fb3000) |

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, use software on your computer to configure the device for Ethernet access.&#x20;

# 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;

:::hint{type="warning"}
**Caution**: Make sure that the value you enter for *Master Address* is unique.&#x20;
:::

| Parameter                   | Value                                                                    |
| --------------------------- | ------------------------------------------------------------------------ |
| **Type**                    | Emerson                                                                  |
| **Driver**                  | DNP3 Ethernet with FB Extensions                                         |
| **Network Address**         | The device address you defined in Step 1                                 |
| **Network Port&#x20;**      | 20000                                                                    |
| **Outstation Address**      | The outstation address defined in the device configuration.              |
| **Master Address**          | 0                                                                        |
| **Class 1/2/3 Poll Period** | The default value is 30, but you can customize it to your requirements.  |

# Step 3: Configure the List of Registers

When you [Add a Tag](#) to the connected device, see the following Register Table and Tag Parameters sections. You can also [Browse and Add Tags from a Device](#) for the device.

See the following additional resources if necessary:&#x20;

- [Organize Device and Tag Data by Using Metadata](#)
- [Tag Formula Variables](#)

## Register Table

| **Name**      | **Value Types**                                                                                              | Access Types  | **Min Address** | **Max Address** | **Access Type** | **Description**       |
| ------------- | ------------------------------------------------------------------------------------------------------------ | ------------- | --------------- | --------------- | --------------- | --------------------- |
| G0            | ATTRIBUTE                                                                                                    | R/W           | 0               | 255             | R/W             | Device Attributes     |
| G1            | BIN                                                                                                          | R/W           | 0               | 65535           | R/W             | Binary Inputs         |
| G10           | BIN                                                                                                          | R/W           | 0               | 65535           | R/W             | Binary Outputs        |
| G20           | UINT16, UINT32                                                                                               | R/W           | 0               | 65535           | R/W             | Counters              |
| G30           | INT16, UINT16, INT32, UINT32, INT64, UINT64, FLT32, FLT64                                                    | R/W           | 0               | 65535           | R/W             | Analog Inputs         |
| G40           | INT16, UINT16, INT32, UINT32, INT64, UINT64, FLT32, FLT64                                                    | R/W           | 0               | 65535           | R/W             | Analog Outputs        |
| G50           | DNP3TIME                                                                                                     | R/W           | 0               | 65535           | R/W             | Time                  |
| G70           | FILE                                                                                                         | R/W           | 0               | 65535           | R/W             | File Control          |
| G110          | OSTR                                                                                                         | R/W           | 0               | 65535           | R/W             | Octet strings         |
| T-Params&#xD; | UINT8, UINT16, UINT32, UINT64, INT8, INT16, INT32, INT64, ENUM16, FLT32, FLT64, TIME, UC10, UC20, UC30, UC40 | R/W           | 0               | 65535           | R/W             | Tunneling: Parameters |

## Tag Parameters

- **Name**: Select a register name from the drop-down list. The available options depend on the names in the register table.&#x20;
- **Value Type**: Select a data type from the drop-down list. The available options depend on the register name selected.&#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;
- **Address**: Enter a tag address. The value must in the decimal format, within the allowed min/max range. Omit the leading zeros. The device might use the decimal (D), hexadecimal (H), or octal (O) address format. See the Register Table at the bottom of the dialog box. For Bit tags, append the bit address without the bit separator. The lowercase letters in the address format indicate how many digits you should enter in the Bit address.
- **Filename**: Available when you select the Nam&#x65;*&#x20;G70 - File Control*.&#x20;
- **PLC Tag**: Available when you select the Name *T-Params - Tunneling: Parameters*.
- **Count**: Enter the number of register values to read. A count higher than 1 will generate an array of values from the address value configured and respective subsequent address values. &#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 customize NATS messages to be published only when the *value&#x20;*&#x70;arameter changes from a previous value to a new one. *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. It 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;
:::

