MQTT backfill into Ignition tags

Disclaimer: I have little experience with MQTT

We’re starting a new project using MQTT to pull data from oollldd PLCs out in the field back into a new Ignition gateway. The PLCs are most serial talking to a new RedLion protocol converter which will be the MQTT field devices. We have MQTT Engine and Distributor running in Ignition.

My question is about tags and backfilling.
My thoughts and hopes would be to just consider the MQTT Engine as a single “Device”, where I would create tags as normal in an Ignition tag provider (e.g. ‘default’) that would reference the MQTT tag provider tags. The main reason is for the ability to control the tags centrally: make UDTs, configure tags with config (eng ranges, units, format, history, alarms, etc. the normal stuff). I don’t see this being easily possible from MQTT. The fields are all there in the MQTT tag provider tags, however the only config sent down from the Redlions is the name and the address. No other config can be attached. I also can’t add extra Ignition memory tags which might be required into the MQTT structures. If I had to do this in MQTT tags, then I would need to configure every single tag manually, no import/export capability as far as i can tell.
For the Ignition tag provider tags, I would use ‘Reference’ tags in Ignition tag provider to reference the MQTT tags.

That all being said, the thing we need is backfilling capability… which doesn’t look like it works when using reference tags, unless someone knows how I can do this?

As a last resort, I thought that I could manually configure history (and painfully) on the MQTT tags required and use these purely to store history. Then create the Ignition tp tags as well. It would be a bit of a pita creating charts and things…

Am I going about this the wrong way? misunderstanding something obvious? Cheers!

Hey,

So I know in the Transmission module they have this:

History Store

    The MQTT Transmission History Store to use with the Default Transmitter.

In-Order History

    Whether MQTT Transmission will publish historical messages in-order upon reconnecting to an MQTT Server before resuming the publishing of live events.

Do you see any of those options under your MQTT screen?

1 Like

The issue isn’t the backfilling of mqtt tags themselves, that is all working OK with our tests; the issue is backfilling the history on the ignition reference tags which I don’t see as being possible out of the box. I also don’t see the ability to automatically configure history on the mqtt tags either. Tag export/import doesn’t work, regardless whether youre changing the structure or simply wanting to add config to the existing tags such as adding history config. I think I’ll need to configure this manually via the tag editor, albeit I should be able to mulit-select mqtt tags and set history for all. It will still be a pain though, as we will have 70 or so sites with 3 different types of site ‘templates’. It would be nice to be able to setup the mqtt tags once for each site template and not have to do it 70 times manually :frowning:

Edit: also, this option as you’ve said is for the transmission module; we’re only using the engine and the distributor module, and all our tags are coming from the redlions

@nminchin , have you been able to resolve this?

Which model of RedLion are you using? We ran into the exact same issue a while back, and when I queried RedLion about backfilling historical values over MQTT, they informed me that only certain models support backfilling. We were using the DA10D protocol converter, but would have had to upgrade to the DA30D to get backfilling capability.

Cheers.

We didn’t have an issue with the red lion backfilling into mqtt tags in ignition (I’m only half involved in the project and don’t know the redlion model) so we must be using the right model. The issue we had and still have is getting backfilling into the reference tags. However we’ve decided to use the mqtt tags for storing history, and igntiokn tags for everything else. We’ll setup a script to auto turn history on fornth mqtt tags so this isn’t a manual process

Would be nice if someone from IA or CL would pick this up. Seems like a very important feature to make a production ready MQTT environment.

@nminchin don’t you ever lose history on your engine when you retransmit the tags? Any further troubles with this setup?

Not that Im aware of. History uses the tagpath as the Id, so as long as you don’t change the tags in the mqtt server, history should be fine regardless if tags come in and out of the mqtt engine due to sites going offline for extended periods. We also checked, and the configuration on the mqtt tags remains when mqtt tag disappear and reappear

This is build into Ignition now. I have tested this and seems to work.
You need to set this property on the MQTT Engine:


and this one on your reference tag provider:

2 Likes

what version are you using?