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!


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?

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.


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