20) ElixirConf EU 2019 - Tortoise Evolved; MQTT 5 support in Tortoise MQTT Client - Martin Gausby


Talk in three words: MQTT, client-design, IoT

MQTT is a light-weight PubSub protocol used for machine to machine communication. It its often used in IoT applications, so it fits well in many Nerves projects. Tortoise is a MQTT client for Elixir. It started its life as a MQTT 3.1.1 client, but is in the progress of getting an upgrade to the latest version of MQTT; version 5. Martin will introduce MQTT; give an overview of the new features in MQTT 5; how Tortoise is designed to make MQTT easy to work with in Elixir, and how MQTT 5 will influence that design.

Give an introduction to MQTT - Show some use cases - Introduce the Elixir MQTT client called Tortoise - Talk about how the API of Tortoise came to be, and how changes in the MQTT specification will alter this design.

This should be interesting for people implementing protocols and protocol clients in Elixir, as well as answering why Tortoise is the way it is to people who just wanna use Tortoise.

The speaker
Martin is a long time Elixir developer with a keen interest in implementing network protocols. For the last couple of years he has been working with Erlang and Elixir systems for a living, and during that time spent way too much time tinkering with his Emacs configuration. Besides that he has a horrible taste in music, enjoys coffee, mechanical keyboards, and is a friend of the podcast.

All will be added to the ElixirConf EU 2019 Talks List or via the #elixirConfEU2019 tag.

1 Like

Still working, on and off, on the MQTT 5 support for Tortoise. The plan is progressing, but, as always, not as fast as one would like—this work is really going at a Tortoise’s pace, but we will get there.

The link to the repository is: https://github.com/gausby/tortoise, and the work on the MQTT 5 support is in the branch called MQTT 5, which has a pull request attached to it, PR89.

Please let me know if you have any questions about Tortoise. The ambition is to make it a very fine MQTT client for Elixir, and one that has a very nice logo (thanks to @lrtvri)