MQTT ist ein weit verbreitetes, robustes Protokoll für Maschine-zu-Maschine Kommunikation. Das klingt erst einmal etwas abstrakt und technisch. Im Endeffekt ist es aber ganz einfach. MQTT ermöglicht es, Daten, Kommandos oder andere Informationen zwischen Geräten auszutauschen. Hierzu wird, zusätzlich zu dem sendenden und dem empfangenden Gerät ein "Broker" benötigt. Das ist eine Art Server, der die Nachrichten von einem Gerät in Empfang nimmt und an alle Geräte weiterleitet, die vorher angemeldet haben, dass sie sich für genau diese Nachricht interessieren.


Die Zuordnung passiert dabei über ein sogenanntes "Topic", das im Prinzip so ähnlich strukturiert ist wie ein Dateipfad.


Das sendende Gerät muss also die Webadresse des verwendeten Brokers kennen. Einige Broker benötigen auch eine Authentifizierung, zum Beispiel in Form eines Benutzernamen und Passwords, einer spezifischen Klienten-ID oder eines Zertifikats. Zusätzlich muss das Gerät wissen, an welches Topic es seine Daten schicken soll. Es kann auch Daten an mehrere Topics schicken, z.B. ein separates Topic für jeden Messkanal.


Das empfangende Gerät meldet sich ebenfalls bei dem gleichen Broker an, braucht also auch die Webadresse und gegebenenfalls eine Authentifizierung. Und es teilt dann dem Broker mit, dass es die Nachrichten, die auf dem Topic bzw. den Topics des sendenden Geräts ankommen, empfangen will. Immer, wenn eine neue entsprechende Nachricht auf dem Broker ankommt, werden diese dann weiter geleitet. Sobald der Broker die Nachrichten abgeliefert hat,  "vergisst" er sie wieder. Sie werden also nicht dauerhaft auf dem Broker gespeichert, sondern nur durchgereicht. Wenn niemand da ist, um die Nachrichten in Empfang zu nehmen,  verschwinden sie.


Der dydaqlog Datenlogger kann das MQTT Protokoll in zwei verschiedenen Richtungen nutzen. Er kann seine Daten per MQTT verschicken, z.B. an eine Cloud oder auch an einen anderen Datenlogger. Und mit der Zusatzoption "Daten von externen Eingängen über MQTT Broker einlesen" können externe Messmodule oder andere zusätzliche Datenquellen angeschlossen werden. Hierfür müssen diese MQTT-fähigen Module lediglich im gleichen Netzwerk hängen. Der Broker kann sich dann entweder auf einem PC im gleichen Netzwerk oder auf dem Datenlogger selbst befinden (hierzu ist eine weitere Zusatzoption "Lokaler MQTT-Broker auf dem Gerät" notwendig).


Auch eine Datenübertragung von einem Datenlogger zum anderen ist mit MQTT möglich. Nach Art eines Master/Slave Betriebes muss dann einer der beiden Logger mit den oben genannten Zusatzoptionen ausgestattet sein. Der andere dydaqlog Datenlogger braucht keine weiteren Optionen, da das Logging via MQTT zur Standardfunktionalität gehört.