MQTT Driver

Help Contents

Introduction

The Message Queuing Telemetry Transport (MQTT) is a publish-subscribe messaging protocol built on top of TCP/IP. Applications and devices connect to an MQTT server and do one or both of the following:

A Topic is a string that identifies or labels a data value.

The data value is a string, which could be:

The Fernhill SCADA MQTT driver supports topic values using these formats:

The Fernhill SCADA MQTT driver maps I/O Data Point Tags to topics in an MQTT Server:

Fernhill SCADA relationship with MQTT Server

Fernhill SCADA Supports these types of interaction with MQTT servers:

MQTT Commands Used

The Fernhill SCADA MQTT Driver uses these MQTT commands:

CommandUse in Fernhill SCADA
CONNECT Connects Fernhill SCADA to an MQTT Server.
DISCONNECT Sent by Fernhill SCADA to all connected MQTT Servers when Fernhill SCADA is shutdown.
SUBSCRIBE Used to subscribe to the topics required by the I/O Data Point Tags associated with the MQTT Server Tag.
UNSUBSCRIBE Used when an I/O Data Tag associated with an MQTT Connection is edited. Edit operations that can cause an UNSUBSCRIBE command include:
  • The tag is modified.
  • The tag is deleted.
  • The tag is moved between MQTT Servers.
PING Periodically the Fernhill SCADA driver sends a PING request to test the availability of the MQTT Server.
PUBLISH Publish messages are both sent and received by Fernhill SCADA.
Messages published by the MQTT server update the value of tag(s) in the Fernhill SCADA Server.
Fernhill SCADA sends a Publish request to the MQTT server in the following circumstances:

Fernhill SCADA MQTT Tags

The MQTT driver provides this tag type to communicate with MQTT Servers:

Icon Tag Type Version Description
Channel Icon MQTT Connection Tag 3.22 A connection between Fernhill SCADA and an MQTT Server.

Fernhill SCADA I/O Data Point Tags

You can use these I/O Data Point Tags to map to topics in an MQTT Server:

Icon Tag Type Version Description
Analog Data Point Tag I/O Analog Data Point Tag 3.12 When associated with an MQTT Server, Maps an Analog Data Point Tag to a topic in the MQTT Server. The IOItemName field specifies how the Analog Data Point Tag> is mapped to a topic in the MQTT Server. See MQTT IOItemName Format to learn how this field is formatted.
Digital Data Point Tag I/O Digital Data Point Tag 3.12 When associated with an MQTT Server, Maps a Digital Data Point Tag to a topic in the MQTT Server. The IOItemName field specifies how the Digital Data Point Tag is mapped to a topic in the MQTT Server. See MQTT IOItemName Format to learn how this field is formatted.
String Data Point Tag I/O String Data Point Tag 3.12 When associated with an MQTT Server, Maps a String Data Point Tag to a topic in the MQTT Server. The IOItemName field specifies how the String Data Point Tag is mapped to a topic in the MQTT Server. See MQTT IOItemName Format to learn how this field is formatted.
Word Data Point Tag I/O Word Data Point Tag 3.12 When associated with an MQTT Server, Maps a Word Data Point Tag to a topic in the MQTT Server. The IOItemName field specifies how the Word Data Point Tag is mapped to a topic in the MQTT Server. See MQTT IOItemName Format to learn how this field is formatted.
Double Word Data Point Tag I/O Double Word Data Point Tag 3.12 When associated with an MQTT Server, Maps a Double Word Data Point Tag to a topic in the MQTT Server. The IOItemName field specifies how the Double Word Data Point Tag is mapped to a topic in the MQTT Server. See MQTT IOItemName Format to learn how this field is formatted.

Further Information

MQTT IOItemName Format

To learn how to specify topic values and optional read filters.

Fernhill SCADA Drivers

For information about other drivers available in Fernhill SCADA.

Glossary

For the meaning of terms used in Fernhill SCADA.