Skip to main content
Version: 8.3 Beta 🚧

UDP and TCP Driver

Ignition’s UDP and TCP drivers allow communication with simple devices such as barcode scanners and scales. These drivers are not general-purpose PLC drivers, but lightweight tools for raw stream data over TCP or UDP.

They connect to one or more ports on a given IP address and receive any incoming data (ASCII characters, for example) as tag values. Both drivers can act as passive listeners, meaning they do not write or make requests unless configured to do so. This is ideal for devices that continually push data without expecting a poll/response.

The TCP driver supports an optional writeback capability, exposing writable tags to send data back to the device.

note

These drivers do not parse industrial protocols, but instead handle stream-oriented or delimited data only.

Structure in the Address Space

When you connect with these drivers, the device appears under the Devices folder of the OPC UA server with the configured name. Inside the device node, you will see:

  • One folder per configured port
  • Inside each port folder, one tag for the entire message
  • Plus one tag for each configured field

For example, a device with four fields would expose five tags in its port folder.

Connecting to a Device

Instead of connecting directly to a PLC, these drivers connect to ports. The connected device must be configured to send data to those ports. You can configure multiple ports for a single device connection.

These drivers require the OPC UA module to be installed and enabled. If the module is missing or disabled, the devices will fault with a “Missing Dependency” error on the Platform > System > Modules page.

TCP Driver

The TCP driver can act as a passive receiver, or allow writes to be sent back to the device through tags if writeback is enabled.

Connecting to a TCP Device

Inductive University

Connecting to TCP Device

Watch the video

  1. On the Gateway, go to Connections > Devices > Connections.

  2. Click Create Device Connection +.

  3. Select TCP Driver from the list and click Next.

  4. On the Configure Device screen, enter the required fields:

    • Name: The desired name for the device (e.g., TCP)
    • Port(s): The TCP port(s) to connect to, comma-separated. (e.g., 12345)
    • Address: The IP address of the device (e.g., 10.20.3.45)

  5. Click Create Device Connection.

The device will be listed now on the Connections page. The status will initially show Disconnected, but will move to a Connected state.

TCP Device Settings

General

NameDescription
NameA user-defined name for the device. This name appears in OPC item paths and the Devices list. Name must begin with an underscore or a letter, and cannot include special characters.
DescriptionOptional description to help identify the device.
EnabledWhen selected, the device is active and available for use.

Connectivity

NameDescription
Port(s)Specifies the TCP port or ports to connect to. Multiple ports can be entered as a comma-separated list.
AddressSpecifies the IP address of the device to connect to.
Local AddressDefines the local IP address to bind from, if needed.
Connect TimeoutSets the time, in milliseconds, to wait for a socket connection. A value of zero disables the timeout.
Inactivity TimeoutSets the time, in milliseconds, of allowed inactivity before the connection is reset. A value of zero disables the timeout.

Message

NameDescription
Message Delimiter TypeDefines how message boundaries are determined. Options include Packet Based, Character Based, or Fixed Size.
Message DelimiterSpecifies the characters or length used to identify the end of a message, depending on the delimiter type.
Field CountSets the expected number of fields in each message.
Field DelimiterSpecifies the characters used to separate fields within a message.

Writing

NameDescription
Writeback EnabledEnables writable tags to send data to the device.
Writeback Message DelimiterSpecifies the delimiter that signals the end of a message during writeback operations.
Write TimeoutSets the time, in milliseconds, to wait for a write to complete. The default value is 5000.

TCP Tags

NameDescription
Last Receive TimeDisplays the timestamp of the last message received from the device.
MessageShows the string representation of the last received message.
MessageBytesDisplays the binary (byte-level) representation of the last received message.
WritableAllows writing of string data to the device if writeback is enabled.
WritableBytesAllows writing of binary data to the device if writeback is enabled.

UDP Driver

The UDP driver is a passive listener only. It does not send data back to the device and is well-suited for broadcast-type devices.

Connecting to a UDP Device

  1. On the Gateway, go to Connections > Devices > Connections.

  2. Click Create Device Connection +.

  3. Select UDP Driver from the list and click Next.

  4. On the Configure Device screen, enter the required fields:

    • Name: The desired name for the device (e.g., UDP)
    • Port(s): The UDP port(s) to connect to, comma-separated. (e.g., 12345)
    • Address: The IP address of the device (e.g., 0.0.0.0 to listen on all interfaces)

  5. Click Create Device Connection.

The device will be listed now on the Connections page. The status will initially show Disconnected, but will move to a Connected state.

UDP Device Settings

General

NameDescription
NameA user-defined name for the device. This name appears in OPC item paths and the Devices list. Name must begin with an underscore or a letter, and cannot include special characters.
DescriptionOptional description to help identify the device.
EnabledWhen selected, the device is active and available for use.

Connectivity

NameDescription
AddressSpecifies the IP address that the device will listen on.
Port(s)Defines the UDP port or ports to listen on. Multiple ports can be entered as a comma-separated list.

Message

NameDescription
Message Delimiter TypeDefines how message boundaries are determined. Options include Packet Based, Character Based, or Fixed Size.
Message DelimiterSpecifies the characters or length used to identify the end of a message, depending on the delimiter type.
Field CountSets the expected number of fields in each message.
Field DelimiterSpecifies the characters used to separate fields within a message.

UDP

NameDescription
Message Buffer SizeSets the size of the message buffer, in bytes.
MulticastEnables multicast mode for receiving messages.

UDP Tags

NameDescription
Last Receive TimeDisplays the timestamp of the last message received from the device.
MessageShows the string representation of the last received message.
MessageBytesDisplays the binary (byte-level) representation of the last received message.

Message Delimiters

Some devices use control characters to signal the end of a message. Tag values update no faster than the scan class they use. If messages arrive more quickly than the scan class, Ignition will drop them. Typical reliable scan rates are 100–200 ms, though TCP can theoretically scan down to 25 ms, and UDP depends heavily on network conditions. You can specify these in the driver settings.

CharactersDescription
\tRepresents a tab character.
\bRepresents a backspace character.
\nRepresents a newline character.
\rRepresents a carriage return character.
\fRepresents a form feed character.
tip

If tags show unexpected bad quality, check your delimiter and field count settings. Mismatches will result in BAD_CONFIG_ERROR.