MQTT és un protocol de comunicació entre diferents dispositius (clients, nodes) a través d'un servidor (broker), mitjançant la publicació / subscripció de missatges associats a temes (topics).
És molt lleuger, consumeix molt pocs recursos. Això el fa idoni per treballar IoT amb sensors i dispositius de baixa potència.
L'ús d'entorns gràfics de programació permet treballar amb MQTT de manera creativa a molts nivells. En els següents MQTT Labs s'ha experimentat amb ArduinoBlocks i App Inventor.
App Inventor no disposa de components específics per MQTT. Si volem utilitzar-lo per crear les nostres pròpies aplicacions per interactuar amb la placa controladora, cal definir la comunicació mitjançant Javascript o bé importar una extensió. En els següents MQTT Labs s'ha utilitzat l'extensió UrsAI2MQTT:
Thingspeak és una plataforma d'allotjament, visualització i anàlisi de dades al núbol. La interacció dels dispositius amb ThingSpeak es fa mitjançant mètodes HTTP, per als quals tant ArduinoBlocks com App Inventor disposen de blocs i components.