# UDT Definitions not propagating to enigine

**URL:** <https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89>\
**Category:** MQTT Modules\
**Created:** [June 21, 2021, 8:06am UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89 "2021-06-21T08:06:45Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![Fielies](https://avatars.discourse-cdn.com/v4/letter/f/d9b06d/32.png) [@Fielies](https://forum.cirrus-link.com/u/Fielies)\
**Post date:** [June 21, 2021, 8:06am UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89/1 "2021-06-21T08:06:45Z")

</div>

Hi Guys

I created u UDT on the transmitter/Edge and created an instance of it. I see that on the engine side I receive the udt as folders with tags in them and thus not as a UDT.  
-I did disable “Converts UDT members to normal Tags before publishing”  
-I disabled “Optimizes UDT payload sizes in NDATA and DDATA payloads” (tried enabled as well)  
-I have deleted the tag instances on the engine side and then refreshed under transmission control.  
I keep on receiving the udt as folders containing tags and no UDT definition pops up on the engine UDT Definition side.

Am I missing something?  
I am running:  
-Ignition 8.1.7 (b2021060314)  
-Eng/Dist/Trans 4.0.7 (b2021041216)

---

<div class="post-metadata">

**Author:** ![nathan.davenport](https://avatars.discourse-cdn.com/v4/letter/n/3ab097/32.png) [@nathan.davenport](https://forum.cirrus-link.com/u/nathan.davenport)\
**Post date:** [June 21, 2021, 4:24pm UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89/2 "2021-06-21T16:24:32Z")

</div>

This issue is due to a change in Ignition 8.1.7 that causes our UDT definition lookup logic to return the wrong value. We have a fix for this issue in our latest Nightly modules for Ignition 8. You can download the MQTT Engine fix via the link below.

[https://ignition-modules-nightly.s3.amazonaws.com/Ignition8/MQTT-Engine-signed.modl](https://ignition-modules-nightly.s3.amazonaws.com/Ignition8/MQTT-Engine-signed.modl)

Let us know if you run into any other issues or have any follow up questions. Thanks.

---

<div class="post-metadata">

**Author:** ![Fielies](https://avatars.discourse-cdn.com/v4/letter/f/d9b06d/32.png) [@Fielies](https://forum.cirrus-link.com/u/Fielies)\
**Post date:** [June 22, 2021, 2:07pm UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89/3 "2021-06-22T14:07:52Z")

</div>

Hi Nathan

Thank you for the solution. But that brings me to my next question. I am doing all of this in a dev environment. Once I commission I will be updating the client’s ignition gateway server to 8.1.7 but that client has an existing Ignition edge 8.1.5 running with MQTT Transmission 4.0.6. So I assume I will run into the same issue there? Which means I have to update the Ignition edge MQTT Transmission module and the Ignition Edge version itself as well?

The easiest would probably be to standardize on an Ignition version for that client but a lot of features that the client wants (e.g. map component in Ignition) is getting constant updates with new Ignition releases.

---

<div class="post-metadata">

**Author:** ![Fielies](https://avatars.discourse-cdn.com/v4/letter/f/d9b06d/32.png) [@Fielies](https://forum.cirrus-link.com/u/Fielies)\
**Post date:** [June 22, 2021, 2:20pm UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89/4 "2021-06-22T14:20:06Z")

</div>

Or can I assume that since the Ignition edge version and its transmission version are stable, it won’t be affected by updating the Main Cloud Ignition GW to 8.1.7?

Basically tying in to what Wes said in a different post

> [@Versioning best practice](https://forum.cirrus-link.com/t/versioning-best-practice/88/2):
>
> The versions do not have to be the same. Both sides implement Sparkplug B so they do not have to remain on the same module version. However, as with any software upgrades may be required. The Ignition gateway network and the EAM module may be helpful in this regard.

---

<div class="post-metadata">

**Author:** ![nathan.davenport](https://avatars.discourse-cdn.com/v4/letter/n/3ab097/32.png) [@nathan.davenport](https://forum.cirrus-link.com/u/nathan.davenport)\
**Post date:** [June 22, 2021, 4:09pm UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89/5 "2021-06-22T16:09:08Z")

</div>

That is correct, the Central and Edge GWs (and our MQTT modules) do not need matching versions to work properly since both sides implement Sparkplug B. The only caveat to that is if you’re running into a bug cross module (e.g., a bug that exists in both Engine and Transmission) you may need to pick up the fix and that may require installing matching versions of our modules containing the fix.

In this case, the bug you’re hitting is specific to MQTT Engine on Ignition 8.1.7 and so you will only need to upgrade MQTT Engine to pick up the fix.

---

<div class="post-metadata">

**Author:** ![Fielies](https://avatars.discourse-cdn.com/v4/letter/f/d9b06d/32.png) [@Fielies](https://forum.cirrus-link.com/u/Fielies)\
**Post date:** [June 22, 2021, 7:56pm UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89/6 "2021-06-22T19:56:09Z")

</div>

Thanks Nathan, that saves me a lot of work!

---

<div class="post-metadata">

**Author:** ![prsaptarshi12](https://avatars.discourse-cdn.com/v4/letter/p/6bbea6/32.png) [@prsaptarshi12](https://forum.cirrus-link.com/u/prsaptarshi12)\
**Post date:** [May 13, 2022, 8:00pm UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89/7 "2022-05-13T20:00:27Z")

</div>

Had same issue. Ended up upgrading the modules. It seems to be working now. Ref Ignition Version 8.11.16 MQTT module versions 4.0.10 (b2022020721).

---

<div class="post-metadata">

**Author:** ![peanut](https://avatars.discourse-cdn.com/v4/letter/p/b5e925/32.png) [@peanut](https://forum.cirrus-link.com/u/peanut)\
**Post date:** [June 22, 2022, 2:21am UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89/8 "2022-06-22T02:21:26Z")

</div>

Hi Nathan

I am facing issues regarding UDT as well.  
I am currently upgrading my edge systems to 8.1.7, and their respective transmission module to 4.0.8 as ‘recommended’ by ignition’s webpage:

 ![image](https://canada1.discourse-cdn.com/flex028/uploads/cirrus_link/original/1X/664f2b427f7aaefcb9a388abbc613a95bd5aaebc.png)

On the edge side, things are working fine.  
Currently my server is running on 8.0.16, and to match things up, i have upgraded to 8.1.7 as well.  
I have downloaded 4.0.8 distributor and engine module.  
I observed that when i tried to restart the engine modules / updating engine settings, it takes minutes to refresh. And i am having Error\_Config issues for my UDT instances. Hence im doubting the engine module.

Came across this page, and i thought of trying the " [https://ignition-modules-nightly.s3.amazonaws.com/Ignition8/MQTT-Engine-signed.modl](https://ignition-modules-nightly.s3.amazonaws.com/Ignition8/MQTT-Engine-signed.modl)" that you suggested.  
But i realised it is 4.0.12, which is currently not listed on ignition’s site, so i am not sure if i should go ahead.  
 ![image](https://canada1.discourse-cdn.com/flex028/uploads/cirrus_link/original/1X/ac78e55a93cd08bb7f42cca39b02a108dd38a8be.png)

Since the latest ‘recommended’ version is 4.0.11 for ignition’s site(as shown below), im thinking to try with 4.0.11 first

 ![image](https://canada1.discourse-cdn.com/flex028/uploads/cirrus_link/original/1X/f61518592b090e363bff7654e5e12638d50afdf5.png)

**I just wanna make sure if i can go ahead with below edge/server + mqtt modules versions combination, since they don’t need matching versions to work properly right?..:**

1. Edge gateway v8.1.7 + MQTT Transmission Module **4.0.8** (remain as it is)
2. Igntion server v8.1.7 + MQTT Distributor Module **4.0.11** + MQTT Engine Module **4.0.11**
3. **IF** one of the edge transmission is not working properly, for that particular edge, can i try with v8.1.7 + transmission module 4.0.11? (together with remaining systems in point 1 & 2).
4. **IF** point 3 happens, should i just go ahead with upgrading all edge and server MQTT modules to 4.0.11 instead? So that it will be more…standardized? meaning edge/ignition v8.1.8 + MQTT engine/distributor/transmission module 4.0.11

Sorry for the long post and many thanks in advance!!

---

<div class="post-metadata">

**Author:** ![nathan.davenport](https://avatars.discourse-cdn.com/v4/letter/n/3ab097/32.png) [@nathan.davenport](https://forum.cirrus-link.com/u/nathan.davenport)\
**Post date:** [June 22, 2022, 4:26pm UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89/9 "2022-06-22T16:26:58Z")

</div>

Since you’ve upgraded all of your Ignition GWs to 8.1.7, I recommend that you run the latest official MQTT module release - 4.0.11. 4.0.11 is supported on 8.0.16 to 8.0.17 and 8.1.0 to 8.1.17.

When we release a new version of our MQTT modules we typically only upload to the latest Ignition version, but the new module likely runs without issue on older Ignition versions as well. To see which version of our modules are supported on which versions of the Ignition platform, see our compatibility matrix [here](https://docs.chariot.io/display/CLD80/Ignition+Compatibility+with+Cirrus+Link+Modules). I hope this helps. Let us know if continue to run into UDT issues after upgrade. Thanks.

---

<div class="post-metadata">

**Author:** ![peanut](https://avatars.discourse-cdn.com/v4/letter/p/b5e925/32.png) [@peanut](https://forum.cirrus-link.com/u/peanut)\
**Post date:** [June 23, 2022, 7:04am UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89/10 "2022-06-23T07:04:30Z")

</div>

Hi Nathan, thank you very much for the reply!  
I will try it out.

So just to confirm my understanding of how MQTT module version works,

> [@peanut](#):
>
> **I just wanna make sure if i can go ahead with below edge/server + mqtt modules versions combination, since they don’t need matching versions to work properly right?..:**
> 
> 1. Edge gateway v8.1.7 + MQTT Transmission Module **4.0.8** (remain as it is)
> 2. Igntion server v8.1.7 + MQTT Distributor Module **4.0.11** + MQTT Engine Module **4.0.11**
> 3. **IF** one of the edge transmission is not working properly, for that particular edge, can i try with v8.1.7 + transmission module 4.0.11? (together with remaining systems in point 1 & 2).

So above scenario and implementation is applicable as well right?

---

<div class="post-metadata">

**Author:** ![nathan.davenport](https://avatars.discourse-cdn.com/v4/letter/n/3ab097/32.png) [@nathan.davenport](https://forum.cirrus-link.com/u/nathan.davenport)\
**Post date:** [July 1, 2022, 9:07pm UTC](https://forum.cirrus-link.com/t/udt-definitions-not-propagating-to-enigine/89/11 "2022-07-01T21:07:14Z")

</div>

Yes, the configuration you call out above should work properly without issue.
