Skip to main content
Version: 8.1

Legacy DNP3 Driver

The Legacy DNP3 driver, known as the DNP3 Driver prior to 8.1.35, uses the DNP3 protocol for explicit reads and unsolicited messaging to acquire data. The Legacy DNP3 driver will no longer be receiving continued support, updates, or fixes. For the newest driver, see DNP3 Driver.


The Legacy DNP3 driver does not support DNP3 Secure Authentication.

Data Acquisition Methods

The Legacy DNP3 driver offers two methods for acquiring data: explicit reads and unsolicited messaging.

Explicit Reads

This method serves as the primary approach to data acquisition for the Legacy DNP3 driver.

The DNP3 Read function code is employed to directly access data points. During each polling operation, only the static or current value of each data point is obtainable, and event data is neither retrieved nor processed. This data acquisition method is specifically intended for scenarios where data points are designated using the group/variation/index (gvi) syntax.

Unsolicited Messaging

Unsolicited messaging shares similarities with event-based polling in its event-driven approach to data processing. However, instead of explicitly polling each class at configured intervals, the outstation reports events only when changes occur within the outstation. The client's sampling interval does not influence the outstation, but does affect OPC UA MonitoredItem and Subscription behavior. OPC UA clients with MonitoredItems set to a sampling interval of 0 will receive the entire reported sequence of events for each point. It's important to note that not all outstations support unsolicited messaging.

Connecting to a Device

Ignition's Legacy DNP3 driver can connect directly to any devices that support Ethernet communication through the master station. It is important to make a new device connection for each of the outstations (remote devices), setting the source and destination addresses for each in Ignition's device connection.

  1. Go to the Config section of the Gateway Webpage.
  2. Scroll down and select OPC UA > Device Connections.
  3. On the Devices page, find the blue arrow and click on Create new Device.
  4. On the Add Device Step 1: Choose Type page, select Legacy DNP3 Driver, and click Next.
  5. On the New Device page, leave all the default values and type in the following fields:
    • Name: Legacy DNP3
    • Hostname: Enter IP address or hostname of the device.
  6. Click Create new Device. The Devices page is displayed showing the Legacy DNP3 device is successfully created and added to Ignition. The Status will show as Disconnected and then Connected or Idle, depending on the status of the device.

Connection Settings


NameThe name of this DNP3 device connection.
DescriptionDevice connection description (optional). Can be used to provide any useful information / comments about this connection.
EnabledIf True (checked), the connection is enabled; if False ( unchecked), the connection is disabled.


HostnameThe IP Address of the device.
PortThe port to use when connecting to a DNP3 device. The default port is 20000.
Local Address
New in 8.1.8
The local address to connect from when establishing a TCP connection. If left blank, then the driver will simply pick an available address.
Source AddressThe address of the master station, default is 3.
These addresses are assigned to the computers and should be the same across all settings. For example, if the device is configured with an address of 4 and Ignition has an address of 3:
  • Ignition settings: Source Address is 3 and Destination Address is 4.
  • Device settings: Source Address is 4 and Destination Address is 3.
Integrity Poll IntervalThe interval at which to perform an integrity poll, in milliseconds, default is 3,600,000.
Direct Operate EnabledWhen true, the Direct-Operate function code is used on a write, otherwise Select-Operate is used, default is true.
Unsolicited Messages EnabledWhen true, the outstation may send unsolicited messages for Class 1, 2, and 3 data, default is false. Ignition will connect to the outstation, but not request any data from it. Ignition waits for the outstation to send data.
Not all devices support this option; those that do need to be configured to use it. Please refer to your device's documentation for more information.


Message Fragment SizeThe maximum size of a message fragment in the application layer, default is 249.
Message TimeoutThe amount of time to wait for a message response from the outstation, default is 5,000.
RetriesThe number of retries on a message timeout, default is 0.
Time Synchronization Enabled
New in 8.1.17
When true, automatically synchronizes the gateway time to the outstation when requested, default is true.
Link Layer ConfirmationWhen true, a link layer confirmation will be required from the outstation when sending messages, default is false.
Default Outstation Conformance LevelThe default DNP3 Application Layer level subset to use when communicating with the outstation.

Default Value Types

Analog Input PointsThe default value type to use when reading an analog input point. Default is INTEGER.
Analog Input Frozen PointsThe default value type to use when reading a frozen analog input point. Default is INTEGER.
Analog Output PointsThe default value type to use when reading/writing an analog output point. Default is INTEGER.
Counter PointsThe default value type to use when reading a counter point. Default is INTEGER.
Counter Frozen PointsThe default value type to use when reading a frozen counter point. Default is INTEGER.
Binary Input PointsThe default value type to use when reading a binary input point. Default is WITH_FLAGS.
Double-Bit Binary Input PointsThe default value type to use when reading a double-bit binary input point. Default is WITH_FLAGS.
Binary Output PointsThe default value type to use when reading a binary output point. default is WITH_FLAGS.

Aliased Points

Aliased points allow the user to assign meaningful names and descriptions to DNP3 points. They are also useful for addressing any points that were not returned by the initial integrity-poll on connection.

Point AddressThe group, variation, and index that fully describe a point. A full address consists of all three parts:
  • Group – An integer prefixed with g. For example, g40
  • Variation – An integer prefixed with v. For example, v2
  • Index – An integer prefixed with i. For example, i5
Example: g30v1i20
Browse PathA “/” separated folder hierarchy in which to create the aliased point.
Example: Facility1/Voltage
DescriptionA user-defined description of the point mapping.

Tags that have been created based on these aliases may need to have their OPC Item Path adjusted if the Point Address from the _Aliased Points_ configuration is modified.

Browsing DNP3 Points

When the driver (master) connects to a device (outstation), an integrity poll is performed. Any DNP3 points returned in the response are mapped to the OPC server with the appropriate index. For example, g40v1i2 corresponds to an AnalogOutput point, variation 1, index 2.

To see mapped points, go to the Designer and open the Connected Devices window.