There are two main specifications for MQTT:
- MQTT v3.1 specification – the primary MQTT specification is available, for royalty-free implementation, on IBM developerWorks. This protocol enables a publish/subscribe messaging model in an extremely lightweight way. It is useful for connections with remote locations where a small code footprint is required and/or network bandwidth is at a premium. Also in Chinese. In cases where implementers have queried the spec, clarifications are available via the mqtt.org wiki.
NB this version of MQTT is currently undergoing standardisation at OASIS incorporating many of the clarifications gathered through the wiki and mailing lists.
- MQTT-SN v1.2 specification – MQTT for Sensor Networks is aimed at embedded devices on non-TCP/IP networks, such as Zigbee. MQTT-SN is a publish/subscribe messaging protocol for wireless sensor networks (WSN), with the aim of extending the MQTT protocol beyond the reach of TCP/IP infrastructure for Sensor and Actuator solutions. Read more about it at the IBM Zurich Research website.
(formerly known as “MQTT-S”)
We encourage you to explore (and contribute to!) the mqtt.org wiki for examples and background, but these are some of the longer and more formal documents on MQTT.
- Building Smarter Planet Solutions with MQTT and IBM WebSphere MQ Telemetry from IBM Redbooks
- Developing Applications for WebSphere MQ Telemetry in the WebSphere MQ InfoCenter
- Using WebSphere MQ Telemetry and Pachube to connect to remote sensors and devices
- Using MQTT with Android (Chinese, IBM developerWorks)
- Using MQ Telemetry Transport with WebSphere Business Integration Message Broker
- Using the IBM Lotus Expeditor micro broker MQTT client to publish messages
For language-specific API information, contact the authors of the individual client APIs (listed on the Software page). If you have a tutorial or guide you think could be added to this list, please let us know!