- Understand the concepts discussed in the MQTT Transmission Transmitters and Tag Trees which describes how MQTT Transmission Transmitter configurations interact with Ignition tag trees to publish MQTT messages and tags to an MQTT Server.
MQTT Transmission allows for a multi-tag path to be defined for a Transmitter. This can be useful for when you have tags across multiple Edge Gateway tag providers so they can be consumed by a single Transmitter and contained within a single Edge Node and/or device by MQTT Engine rather than split across two different edge nodes.
There are some basic rules to the multi-tag path configuration:
- Tag Provider and Tag Path are used in combination to define the start of each tag tree
- Specific Tag Providers can be specified in the Tag Path using the format [TagProvider]
- If the Tag Provider is not explicitly defined in the Tag Path, Transmission will use the Tag Provider property
- If the Tag Provider is explicitly defined in the Tag Path, Transmission will replace the Tag Provider property with the [TagProvider] configured
- Multiple tag paths are comma separated in the Tag Path property for each Transmitter
Let's put some examples together showing how the multi-tag path feature works.
Following the Ignition Tag Provider Guide, configure two new Realtime Tag Providers as type Standard Tag Provider for your Ignition instance where MQTT Transmission is running. Name them TagProvider1 and TagProvider2.
In Ignition Designer, create a tag tree under each Tag Provider as shown below:
Let's create a transmitter using these properties and use MQTT Transmission refresh mechanism to publish the tags
At MQTT Engine, we will see the following three tag trees each starting at one of the three Tag Paths specified:
- Edge Nodes
Let's create a second transmitter using these properties and use MQTT Transmission refresh mechanism to publish the tags
At MQTT Engine, we will see two additional tag trees created each starting at one of the two Tag Paths specified
Let's create a third transmitter using these properties and use MQTT Transmission refresh mechanism to publish the tags
|Name||Tag Provider||Tag Path|
At MQTT Engine, we will see two additional two tag trees created each starting at one of the Tag Paths specified
All the previous examples create unique Edge Nodes with a single tag under each. Lets add a fourth transmitter but set the Group ID and Edge ID under the Sparkplug IDs to create a single new Edge Node ID.
|Name||Tag Provider||Tag Path||Sparkplug IDs|
At MQTT Engine, we will only see one additional tag tree with two tags using the paths MyGroup/MyEdgeNode/E1 and MyGroup/MyEdgeNode/P1