# MQTT Connection between Ignition and PLC device

**URL:** <https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805>\
**Category:** Ignition\
**Tags:** ignition81\
**Created:** [May 2, 2024, 7:43am UTC](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805 "2024-05-02T07:43:28Z")\
**Posts on this page:** 10\
**Page:** 2

<div class="post-metadata">

**Author:** ![bensonh](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/bensonh/32/6073_2.png) [@bensonh](https://forum.inductiveautomation.com/u/bensonh)\
**Post date:** [May 22, 2024, 10:54pm UTC](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805/21 "2024-05-22T22:54:02Z")

</div>

Actually, Opto 22 groov EPIC, RIO, and EMU support MQTT and Sparkplug B directly from the devices.

Versions of these devices also support Ignition Edge. See here for more info:

> **[Opto 22 | Solution Partner with Inductive Automation](https://inductiveautomation.com/partners/solution-partners/opto22/)**
>
> Opto 22 is a USA-based manufacturer of hardware and software for industrial automation, remote operations monitoring, and data acquisition. Specializing in electronic equipment including Ethernet I/O and edge-programmable industrial controllers, they...

---

<div class="post-metadata">

**Author:** ![PRAMANJ](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pramanj/32/66935_2.png) [@PRAMANJ](https://forum.inductiveautomation.com/u/PRAMANJ)\
**Post date:** [May 23, 2024, 4:44am UTC](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805/22 "2024-05-23T04:44:27Z")

</div>

Yes but if you are using a different PLC then you have to go thru the Ignition Edge and OPC to connect to the PLC and MQTT

---

<div class="post-metadata">

**Author:** ![bensonh](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/bensonh/32/6073_2.png) [@bensonh](https://forum.inductiveautomation.com/u/bensonh)\
**Post date:** [May 23, 2024, 11:33pm UTC](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805/23 "2024-05-23T23:33:50Z")

</div>

Correct, PRAMANJ. I was addressing your comment that "You can't connect MQTT directly to PLCs." While true for many PLCs, there are some that do just that.

For the use cases where you'll need to communicate with non-MQTT PLCs, we embed Ignition into these products as well. So, both native MQTT and Ignition MQTT are available onboard this particular "PLC." I hope that makes sense.

---

<div class="post-metadata">

**Author:** ![PRAMANJ](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pramanj/32/66935_2.png) [@PRAMANJ](https://forum.inductiveautomation.com/u/PRAMANJ)\
**Post date:** [May 24, 2024, 4:00am UTC](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805/24 "2024-05-24T04:00:04Z")

</div>

Agreed. More and more PLCs are offering native support for MQTT client, OPC server etc. More the merrier, as it eliminates the extra layer of edge devices.

However to connect to Ignition you need the CirrusLink's MQTT modules on Ignition side, but you can connect any MQTT device on client side with or without SparkPlugB support. With sparkPlugB you get plug and play functionality with complete tags metadata from client to server. You can use any commercially available MQTT servers or CirrusLinks own servers.

Feel free to add/delete/correct anything in the above understanding of mine.

---

<div class="post-metadata">

**Author:** ![bensonh](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/bensonh/32/6073_2.png) [@bensonh](https://forum.inductiveautomation.com/u/bensonh)\
**Post date:** [May 28, 2024, 11:10pm UTC](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805/25 "2024-05-28T23:10:16Z")

</div>

You got it!

For Ignition to subscribe to MQTT messages from any MQTT 3.1.1 compliant broker (many available, including Cirrus Link's MQTT Distributor module that runs within Ignition), you only need Cirrus Link's MQTT Engine module.

Thank you for the dialogue! -Benson

---

<div class="post-metadata">

**Author:** ![uwe](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/uwe/32/6039_2.png) [@uwe](https://forum.inductiveautomation.com/u/uwe)\
**Post date:** [May 30, 2024, 2:30pm UTC](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805/26 "2024-05-30T14:30:40Z")

</div>

Try it yourself in 15 minutes as detailed at

> **[IoT Simulator: Testing / Proof of concept / Training for the Internet of Things](https://mqttlab.iotsim.io/sparkplug/)**
>
> Create a large virtual lab with Gambit Communications MIMIC Simulator for testing your IoT Platform. Minimize cost & take your testing to next level using IoT Simulation.

and shown in this 3-minute video

https://www.youtube.com/embed/7TlXSAikhGI?feature=oembed&wmode=opaque&list=PLS47QG_BdOlQsPMpr5Re3W-Qrol_t9cOk

---

<div class="post-metadata">

**Author:** ![Alagumani\_Kaliyaperu](https://avatars.discourse-cdn.com/v4/letter/a/8baadc/32.png) [@Alagumani\_Kaliyaperu](https://forum.inductiveautomation.com/u/Alagumani_Kaliyaperu)\
**Post date:** [June 5, 2024, 9:12am UTC](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805/27 "2024-06-05T09:12:56Z")

</div>

Hi All  
Thanks for your suggestion and Information. I'm Trying to connect the Delta PLC MQTT module (AS-FFTP01) with Ignition, I have tested the connection using MQTT.fx - 1.7.1. I can subscribe the "Topics" from delta PLC. but I couldn't find the Delta MQTT 'Topics' on the Ignition - MQTT Engine - Edge Nodes.  
I suspects two things:

1. IG using 4.0.20 whereas Delta PLC MQTT module using the MQTT V3.1.1
2. Ignition using Sparkplug concept but Delta blocks using Topics and Message concept, please let me know is there any problem with this.  
I have attached screen shot of my PLC setting and Ignition for your reference. kindly give me your suggestions.

 ![Delta PLC](https://us1.discourse-cdn.com/inductiveautomation/original/3X/0/2/026c9fd6dee92013228aa26ef159c8703f4c4cd3.png)  
 ![Ignition Connection](https://us1.discourse-cdn.com/inductiveautomation/original/3X/6/1/6162b86db78cf015ea4eae04e83c63f2c0e7bb97.png)  
 ![MQTT Connection](https://us1.discourse-cdn.com/inductiveautomation/original/3X/1/3/1369c662f5e82c98da02df5e902df41030fbc5ca.png)

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [June 5, 2024, 11:41am UTC](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805/28 "2024-06-05T11:41:28Z")

</div>

If a source device doesn't use Sparkplug B, then you must set up a custom namespace in Ignition. You also lose various features (like writeback) that are automatic with Sparkplug.

---

<div class="post-metadata">

**Author:** ![Alagumani\_Kaliyaperu](https://avatars.discourse-cdn.com/v4/letter/a/8baadc/32.png) [@Alagumani\_Kaliyaperu](https://forum.inductiveautomation.com/u/Alagumani_Kaliyaperu)\
**Post date:** [June 6, 2024, 2:34am UTC](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805/29 "2024-06-06T02:34:03Z")

</div>

Hi @pturmel Thanks for your information. Now I can read the Tags on Ignition. Is there any other way to write the tag without Sparkplug B function.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [June 6, 2024, 10:57am UTC](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805/30 "2024-06-06T10:57:43Z")

</div>

There would need to be other topics for the reverse direction, and would have to be subscribed by the device, in some device-specific way. On the Ignition side, you have to script the publish to such a topic.

[Previous page](https://forum.inductiveautomation.com/t/mqtt-connection-between-ignition-and-plc-device/89805.md?page=1)
