Contents
Cirrus Link Resources
Cirrus Link Website
Contact Us (Sales/Support)
Forum
Cirrus Link Modules Docs for Ignition 7.9.x
Inductive Resources
Ignition User Manual
Knowledge Base Articles
Inductive University
Forum
Action at Edge | Result | Action | Result |
---|---|---|---|
Create new group level folder with no tags Add G2 | On add: No change at Engine | Refresh Transmission | No folder created at Engine |
Create new edge level with no tags Add G2/E2 | On add: No change at Engine | Refresh Transmission | Folder path is created at Engine |
Create new device level folder with no tags Add G2/E2/D2 | On add: No change at Engine | Refresh Transmission | Folder path is created at Engine |
Create new folder under the device level with no tags Add G2/E2/D2/New Folder | On add: No change at Engine | Refresh Transmission | No folder path created at Engine |
Add a tag to folder Add G1/E1/D1/Tag2 (Int) | On add: No change at Engine | Refresh Transmission | Tag is created under tag folder path at Engine |
Delete a tag Delete G1/E1/D1/Tag2 | On delete: Engine will mark tag as Bad_Stale | Delete tag at Engine | Tag deleted |
Delete tag and add tag with the same name Delete G1/E1/D1/Tag1 Add G1/E1/D1/Tag1 (Bool) | On delete: Engine will mark tag as Bad_Stale On add: No change as Engine | Refresh Transmission | Tag will be configured at Engine under tag folder path with any new properties and GOOD quality |
Delete tag and create a folder which has the same name as the tag. Add a tag to this folder. Delete G1/E1/D1/Tag1 Add G1/E1/D1/Tag1/Tag2 | On delete: Engine will mark tag as Bad_Stale On add: No change at Engine | Delete tag at Engine before a Transmission refresh is performed | New tag will be created under new tag folder path at Engine |
Refresh Transmission without deleting tag at Engine | Error similar to below logged, tag will not be deleted and no tag path folder will be created Error processing edit for tag path '[MQTT Engine]Edge Nodes/My MQTT Group/Edge Node 0964bf/PLC 1/New Tag/New Tag1': Bad_Unsupported("The target path '[MQTT Engine]Edge Nodes/My MQTT Group/Edge Node 0964bf/PLC 1/New Tag' cannot accept children tags.") | ||
Delete tag and parent folder and add a tag with same name as the parent folder Delete G1/E1/D1/Tag1/Tag2 Add G1/E1/D1/Tag1 | On delete: Engine will mark tag as Bad_Stale On add: No change at Engine | Refresh Transmission | Tag and folder will be configured at Engine |
Action at Edge | Result | Action | Result |
---|---|---|---|
Add UDT Definition and UDT Instance Create TestUDT1 with tag "New Tag" (Int) = 10 Add G1/E1/D1/NewInstance1 as TestUDT1 | On add: No change at Engine | Refresh Transmission | Folder will be created named as the UDT Instance and UDT member tag will be created under tag folder at Engine |
Add new member tag to UDT Definition Add "New Tag 1" (Bool) = True to TESTUDT1 | On add: No change at Engine | Refresh Transmission | New UDT member tag created under folder named as UDT Instance at Engine |
Delete member tag from UDT Definition Delete "New Tag 1" from TESTUDT1 | On delete: Engine will mark the tag as Bad_NotFound | Refresh Transmission | No change at Engine |
Delete tag at Engine | Tag deleted | ||
Delete a member tag from a UDT Definition and add one with the same name in the same hierarchy position Delete "New Tag" from TESTUDT1 Add "New Tag" (Bool) | On delete: Engine will mark the tag as Bad_NotFound On add: No change at Engine | Refresh Transmission | UDT member tag will be configured with new properties under folder named as UDT Instance at Engine |
Add a Child UDT definition to a UDT Definition Add TestUDT/t4Instance as type T4 | On add: No change at Engine | Refresh Transmission | New folder and member tags created at Engine named as the new Child UDT instance under the folder named as UDT Instance |
Delete a Child UDT definition from a UDT definition Delete TestUDT/t4Instance | On delete: Engine will mark all tags under the Child UDT folder as Bad_NotFound | Tags will need to be deleted at Engine | |
Delete a Child UDT definition from a UDT definition and add one in the same hierarchy position with the same name and tag folder structure Delete TestUDT/t3Instance with type T3 Add TestUDT/t3Instance as type T3 | On delete: Engine will mark all tags under the Child UDT folder as Bad_NotFound On add: Engine will mark all the tags under the Child UDT folder as Good quality | No action required | |
Delete a Child UDT definition from a UDT definition and add one in the same hierarchy position with the same name and a different tag folder structure Delete TestUDT/t3Instance with type T3 Add TestUDT/t3Instance as type T4 | On delete: Engine will mark all tags under the Child UDT folder as Bad_NotFound On add: No change at Engine | Delete tags at Engine before Transmission refresh is performed | New folder and member tags are created at Engine following the hierarchy of the Child UDT instance |
Refresh Transmission without deleting tags at Engine | New folder and member tags are created at Engine following the hierarchy of the Child UDT instance. Original tags are left with a quality of Bad_NotFound | ||
Delete a child UDT definition member tag (this deletes the Child UDT definition from the parent UDT definition) Delete TestUDT/t3Instance/t3Tag1 | On delete: Engine will mark all tags under the Child UDT folder as Bad_NotFound | Delete tags at Engine | Tags deleted |
Delete a child UDT definition member tag (this deletes the Child UDT definition from the parent UDT definition) and recreate with the same name and tag structure Delete TestUDT/t3Instance with type T3 Add Test/UDT/t3Instance as type T3 | On delete: Engine will mark all tags under the Child UDT folder as Bad_NotFound On add: engine will mark all tags under the Child UDT folder as Good quality | No action required | |
Delete a child UDT definition member tag (this deletes the Child UDT definition from the parent UDT definition) and recreate with the same name and different tag structure Delete TestUDT/t3Instance with type T3 Add TestUDT/t3Instance as type T2 | On delete: Engine will mark all tags under the Child UDT folder as Bad_NotFound On add: No change at Engine | Delete tags at Engine before Transmission refresh is performed | New folder and members tags are created at Engine following the hierarchy of the Child UDT instance. |
Refresh Transmission without deleting tags at Engine | New folder and member tags are created at Engine following the hierarchy of the Child UDT instance. Original tags are left with a quality of Bad_NotFound |
You cannot have UDTs definitions with the same name and different tag members within the system.
MQTT Engine uses the MD5 sum of the UDT to detect differences and will ignore any new UDT definitions received that share the same name as the first recorded UDT definition.
If a collision is detected, a warning will be logged and you can see the detail by setting the com.cirruslink.mqtt.engine.gateway.sparkplug.SparkplugBPayloadHandler to TRACE.
This detail will show the UDT definition at MQTT Engine and also the UDT definition published in the NBIRTH message. The offending edge node can be identified from the NBIRTH message.
Changes made at an edge device to UDT definition member tags are not propagated through the system. You will see that any tag instances of that UDT at the edge device will reflect the changes, but the recorded definition for the UDT at engine will not change nor will tag instances for other edge devices using that definition.