MQTT is a light weight protocol that implements a
client/broker architecture. Originally developed as a machine to machine
protocol by IBM and is now an open protocol.
Due to the Client/Server nature and its small footprint this
protocol is well suited for small devices with limited power or network
connectivity.
What is MQTT used
for?
A common
application is to use this protocol on hundreds or thousands of remote devices
that may have battery or solar power and be utilizing cellular or other limited
or expensive communications.
Because of the
small packet size the overall bandwidth usage is low compared to
other common protocols. Even with limited connectivity the Client/Broker
architecture is an excellent choice.
The remote device connects to the broker when possible and publishes its topics. The broker then notifies any client that has subscribed to that topic. This eliminates the need to constantly poll the device for changes thus reducing the network usage.
Connecting to MQTT
The MQTT Protocol is well supported by numerous devices. For
example you can download MQTT Client apps for Windows, Android, Apple
operating systems and be connected to MQTT data in a matter of minutes.
The Protocol is also supported in a number of programming
languages and it is very easy to implement a MQTT Client application in
just about any programming language.
Open Automation Software is an MQTT Client able to
both subscribe and publish to MQTT Brokers. This makes it easy
to take remote device data and View, Historize, Alarm, Trend and Notify via
Web, .Net, Email, Voice and SMS.
It also makes it easy to take non MQTT data and
share it with MQTT device and clients. For example take data that is
coming from a PLC, Database, Excel Spread Sheet,.Net or Web User Interface or
other non MQTT devices and publish that data to one or more MQTT Brokers.