# MQTT protocol

**URL:** <https://forum.inductiveautomation.com/t/mqtt-protocol/8512>\
**Category:** General Discussion\
**Created:** [June 3, 2014, 2:56pm UTC](https://forum.inductiveautomation.com/t/mqtt-protocol/8512 "2014-06-03T14:56:45Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![diat150](https://avatars.discourse-cdn.com/v4/letter/d/a587f6/32.png) [@diat150](https://forum.inductiveautomation.com/u/diat150)\
**Post date:** [June 3, 2014, 2:56pm UTC](https://forum.inductiveautomation.com/t/mqtt-protocol/8512/1 "2014-06-03T14:56:45Z")

</div>

[mqtt.org/](http://mqtt.org/)

Does anyone have experience with this protocol? Any plans for Ignition to support it? I had a customer ask me about this and I had never really heard of it and dont know of any major SCADA software company using it. As a matter of fact, I can only find a open source software called Eclipse that supports it, and also a platform called thingworx that supposedly supports it. They have built their whole business model it seems around the phrase “internet of things” and I guess this protocol falls into that.

So, does anyone have experience with this? Are there any plans or rumblings about making a module to support this protocol for Ignition? I dont even know what end devices would support this, because I have never seen one that would.

From what I have seen by doing some searches, it is mostly freelance developers playing around with arduinos and this protocol.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [June 3, 2014, 3:09pm UTC](https://forum.inductiveautomation.com/t/mqtt-protocol/8512/2 "2014-06-03T15:09:14Z")

</div>

First time I’ve heard of it…

---

<div class="post-metadata">

**Author:** ![cmisztur](https://avatars.discourse-cdn.com/v4/letter/c/53a042/32.png) [@cmisztur](https://forum.inductiveautomation.com/u/cmisztur)\
**Post date:** [April 3, 2015, 1:58am UTC](https://forum.inductiveautomation.com/t/mqtt-protocol/8512/3 "2015-04-03T01:58:12Z")

</div>

Yes. Please support MQ.

---

<div class="post-metadata">

**Author:** ![diat150](https://avatars.discourse-cdn.com/v4/letter/d/a587f6/32.png) [@diat150](https://forum.inductiveautomation.com/u/diat150)\
**Post date:** [April 3, 2015, 2:18am UTC](https://forum.inductiveautomation.com/t/mqtt-protocol/8512/4 "2015-04-03T02:18:30Z")

</div>

your best bet is probably going to be trying to import one of the mqtt client python modules into ignition. the customer that was asking about it fell off the map so we havent looked any further into it. either that or try and find some kind of gateway that can handle the mqtt side and can connect to ignition via opc.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [April 3, 2015, 2:35am UTC](https://forum.inductiveautomation.com/t/mqtt-protocol/8512/5 "2015-04-03T02:35:15Z")

</div>

MQTT is on my radar now as something to implement, although it’s still a little nebulous how to map data acquired to OPC-UA since it’s just opaque payloads.

---

<div class="post-metadata">

**Author:** ![cmisztur](https://avatars.discourse-cdn.com/v4/letter/c/53a042/32.png) [@cmisztur](https://forum.inductiveautomation.com/u/cmisztur)\
**Post date:** [April 3, 2015, 3:38am UTC](https://forum.inductiveautomation.com/t/mqtt-protocol/8512/6 "2015-04-03T03:38:37Z")

</div>

BSON/JSON?  
Maybe what is more important is that the topic has been published to.

---

<div class="post-metadata">

**Author:** ![cmisztur](https://avatars.discourse-cdn.com/v4/letter/c/53a042/32.png) [@cmisztur](https://forum.inductiveautomation.com/u/cmisztur)\
**Post date:** [April 3, 2015, 2:54pm UTC](https://forum.inductiveautomation.com/t/mqtt-protocol/8512/7 "2015-04-03T14:54:12Z")

</div>

What about using the wildcard as a resource path and having Ignition discover tags/sub-topics as they arrive… but yes opaque payloads…

So an MQTT client has preconfigured tags which it could advertise or via some known auto-discovery topic /Device/Disco that would broadcast:

```auto
{
 "tags" : [
  { "name" : "Tag1", "type" : "int" },
  { "name" : "Tag2", "type" : "string" }
 ]
}
```

What if it is just as simple as /Device/Tag1 with payload int:45.6, or /Device/Tag2 with string:hello world.

---

<div class="post-metadata">

**Author:** ![agsense](https://avatars.discourse-cdn.com/v4/letter/a/b2d939/32.png) [@agsense](https://forum.inductiveautomation.com/u/agsense)\
**Post date:** [July 24, 2015, 8:26pm UTC](https://forum.inductiveautomation.com/t/mqtt-protocol/8512/8 "2015-07-24T20:26:24Z")

</div>

This was my solution. Rolled it the other day. Simple and crude. Feedback welcomed.

[npmjs.com/package/mqtt2opcua](https://www.npmjs.com/package/mqtt2opcua)

 ![](https://us1.discourse-cdn.com/inductiveautomation/original/2X/8/8590b21b6a432f7e18d96e3b6514744583ed9ff9.png)

---

<div class="post-metadata">

**Author:** ![cmisztur2](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/cmisztur2/32/4243_2.png) [@cmisztur2](https://forum.inductiveautomation.com/u/cmisztur2)\
**Post date:** [November 15, 2015, 7:47pm UTC](https://forum.inductiveautomation.com/t/mqtt-protocol/8512/9 "2015-11-15T19:47:10Z")

</div>

Thanks guys.  
We are now using Kepware’s IOT platform with MQTT and HTTP support.
