Creating UDTs with MQTT Devices

Can someone help me understand how UDTs are used when using the MQTT Modules?

I am looking to use the MQTT modules but I am concerned about how I will utilize UDTs with it. I’ve seen webinars where the tags are auto-created when using these modules and the data comes in using Sparkplug protocol.

I am looking to use a Red Lion HMI which can publish data to an MQTT broker using their Sparkplug MQTT connector. So then the tags should auto-populate under the MQTT Engine tag provider.

If for example, I have 100 pumps that all have the same set of data tags publishing to the MQTT broker using this same HMI, how can I create UDTs if the tags are auto-created with the MQTT Engine Module?
I want to be able to manage Ignition side alarms for those pumps from the Ignition server.

Any suggestions?

Quick reply for now. Don’t mind the typos
We treat mqtt tag provider like any other (apart from ignition opc-ua} , as a source of data for igntion tags. We create udt definitions and tags in the igntiokn opc-ua that link to the mqtt tags usuijg Reference tags. This way we can manage all the config, alarms, properties, etc. From ignition. The only thing we use mqtt tags for is history for its backfill, by adding history into the mqtt tags.
Otherwise you’re unable to add any supporting tags for ignition not coming from mqtt

This is also how another IA employee would do it I was in touch with at the time


AWESOME. Thank you, I’ve been trying to figure that out all day. I was afraid I was going to have to manage them one by one or do some type of scripting or I don’t even know.

1 Like

No worries. If it helps, you can use system.tag.configure to configure the history config on the mqtt tags so you don’t have to do this manually

But why not do it on the reference tag in the UDT definition?

The you won’t get backfill data if the comms fails :frowning:

If you care about backfill of course, otherwise just use history on ignition tags. I had no choice as we needed it

So your devices are using store and forward then?

Yep, I didn’t set up the mqtt side and don’t know the terminology, but store and forward sounds right

I don’t use the Red Lion, but instead I use Maple Systems.

The MQTT Protocol allows you to have several layers of tag grouping.

I have "Well Data, Vfd Data, Flowline Data, Tank Data, Etc…

Here’s some you may want to read.
MQTT Sparkplug B

Fwiw, we used folder structures in our mqtt tags that mimicked our folder and tag structure we used for our ignition tags. This made it easy to set the tag reference sources. However, I would still always use ignition tags from the OPC UA server as opposed to just looking at the mqtt provider tags, as it gives you flexibility to do whatever you want with them and to add supporting tags around them.