MQTT Transmission provides a configuration section to the Ignition Gateway and this can be seen in the left side menu bar of the Ignition Gateway web UI.

There are two configuration pages "History" and "Settings".                                   

Settings

The configuration options for each of the six tabs - General, Servers, Sets, Transmitters, Records and Files - are detailed below. 

General

The General Settings tab contains a single Main section.

General - Main

Servers

The Servers tab has two parts - Settings and Certificates

Servers - Settings

This tab provides a list of the MQTT Servers that MQTT Transmission should connect to. By default, MQTT Transmission is configured to connect to the local MQTT Distributor based MQTT Server and is set up to connect to localhost, port 1883, using the default username/password.

Additional or alternative MQTT Servers can be configured in MQTT Transmission - often times more than one will be configured to handle fail-over in redundant or geographically distributed systems. Clicking on the 'Create new MQTT Server' link will bring up a form for adding a new MQTT Server setting. 

The 'Connected' column will show the connection status of each MQTT Client with the MQTT Server.

The configuration sections available are Main, TLS, and Advanced.

Server Settings - Main

Server Settings - TLS

See this document for TLS configuration: Configuring Secure MQTT Communication

Server Settings - Advanced


Servers - Certificates

This tab provides a list of the certificate or private key files if loaded and available for TLS configuration.

All certificate or private keys must be in PEM format. If using modules pre 4.0.9, any private key must also be in RSA PKCS1 format. If using modules 4.0.9 or greater, any private key must also be in either RSA PKCS1 or PKCS8 format. 

The Certificates tab contains a single Main section.

Server Certificates - Main

Sets

The Sets tab contains a list of server sets.  Each set represents a logical grouping of MQTT servers.  When a set is referenced by a Transmitter configuration, a single connection to one of the servers in the set will be maintained. The other servers will act as failover in the case that a connection with the first is lost.  Server sets cannot have common elements meaning that a single MQTT server cannot be in more than one set.

The Sets tab contains a single Main section.

Sets - Main

Transmitters

Transmitters are the agents within MQTT Transmission that monitor tags, convert them to Sparkplug Messages, and publish them to an MQTT Server. Each transmitter is configured with a server Set and will attempt to maintain an MQTT client connection with one server in that Set at all times.

Transmitters will monitor tags from a specific Tag Provider and, optionally, a specific Tag Path. If the tag folder hierarchy has been constructed as Group ID, Edge Node ID, and Device ID, then these will automatically be used when building up the MQTT message payload that will represent the Tags as follows:

[TagProvider]<TagPath>/<GroupID>/<EdgeNodeID>/<DeviceID>

If your tag folder hierarchy does not conform to this structure, you can explicitly define these required elements under the SparkPlug Settings section and the elements will be prepended to your tag string.

The configuration sections available are Tag Settings, Command Settings, History Settings, Sparkplug Settings and Advanced Settings.

Transmitters - Tag Settings

Transmitters - Command Settings

Transmitters - History Settings

Note: Store and Forward does not guarantee all data is stored and forwarded. There are some edge cases that are not currently handled with regard to data loss in the event of connection failures related to MQTT keep alive timeouts. This window of potential missed data can be reduced by decreasing MQTT Transmission and MQTT Engine configurable keep alive timeouts.

Transmitters - Sparkplug Settings

Note that if a 'Device ID' is not specified, any folder within the folder specified by the Tag Path will be considered a device folder and any Tags within it will be published as device Tags. 

Transmitters - Advanced Settings

Records

The 'Records' tab allows user to create a table of custom records. Each record defines a folder (under specified tag provider) in which user can create a number of tags that will be published as a record by clicking the 'Publish' checkbox. The 'Publish' tag will be created automatically in the folder specified.

The configuration sections available are Tag Settings, Sparkplug Settings and Advanced Settings.

Records - Tag Settings

Records - Sparkplug Settings

Records - Advanced Settings

Files

The 'Files' tab allows for the configuration to publish files which are transferred using Sparkplug over MQTT.

The configuration sections available are Tag Settings, File Settings, Sparkplug Settings and Advanced Settings.

Files - Tag Settings

Files - File Settings

Files - Sparkplug Settings

Files - Advanced Settings



History

The "History" page allows for the configuration of MQTT Transmission History Stores.  In the event that a Transmitter loses its connection with the MQTT Server and is unable to reconnect, a History Store (if enabled) will store all messages corresponding to change events on the monitored tags.  Once a connection with an MQTT server is reestablished the History Store will publish the stored messages with a flag set to indicate that the messages are "historical" to prevent confusion with live data values.

The History tab contains a single Main section.

History - Main