Ruuvi Gateway bietet eine einfache Möglichkeit, Bluetooth-LE-Daten von deinem Standort an eine maßgeschneiderte HTTP- oder MQTT-Serverlösung zu übertragen. In diesem Artikel zeigen wir dir, wie du MQTT auf deinem Ruuvi Gateway konfigurierst und welche Vorteile MQTT für deine IoT-Umgebung bieten kann.
Was ist MQTT?
Message Queuing Telemetry Transport (MQTT) ist ein leichtgewichtiges und effizientes Messaging-Protokoll, das speziell für Netzwerke mit geringer Bandbreite, hoher Latenz oder unzuverlässiger Verbindung entwickelt wurde. MQTT eignet sich besonders für ressourcenbeschränkte Geräte mit begrenzter Rechenleistung und wenig Speicher und wird aufgrund seiner schlanken Architektur und seines effizienten Kommunikationsmodells häufig in IoT-Szenarien eingesetzt. Es ermöglicht Geräten mit unterschiedlichen Fähigkeiten einen nahtlosen Informationsaustausch und ist daher eine bevorzugte Wahl für Smart Homes, industrielle Automatisierung und andere IoT-Deployments.
MQTT arbeitet nach dem Publish/Subscribe-Muster. In diesem Modell kommunizieren Geräte (Clients) über eine zentrale Instanz, den sogenannten Broker. Clients können Nachrichten zu bestimmten Topics veröffentlichen, und andere Clients, die diese Topics abonniert haben, erhalten die Nachrichten. Das erhöht Skalierbarkeit und Flexibilität der Kommunikation deutlich.
Das Protokoll ermöglicht es, Quality of Service– (QoS-)Stufen je nach Netzwerkzuverlässigkeit und Anwendungsanforderungen festzulegen. Außerdem unterstützt es das Konzept der Retained Messages, wodurch der zuletzt bekannte gültige Wert eines Topics für neue Abonnenten stets verfügbar ist.
Erste Schritte mit MQTT im Ruuvi Gateway
Ruuvi Gateway kann Daten gleichzeitig an mehrere Ziele senden, darunter Ruuvi Cloud, HTTP(S)- und MQTT(S)-Server. Über den Ruuvi Gateway Setup Wizard kannst du diese Ziele ganz einfach an deine Anforderungen anpassen.
Wichtig: Ruuvi Gateway kann alle Bluetooth-LE-Advertisements aus der Umgebung empfangen. Diese Funktion lässt sich auf der Seite „Bluetooth Scanning“ im Ruuvi Gateway Setup Wizard konfigurieren, und die Daten können an HTTP(S)- und/oder MQTT(S)-Ziele weitergeleitet werden. So kannst du Ruuvi Gateway z. B. nutzen, um Daten von Sensoren oder anderen Bluetooth-LE-Geräten zu empfangen und weiterzuleiten, die nicht von Ruuvi hergestellt werden. Das eröffnet eine ganze Welt an Möglichkeiten, IoT-Lösungen mit Ruuvi-Gateway-Routern zu bauen. Umgekehrt akzeptiert Ruuvi Cloud ausschließlich Ruuvi-Sensordaten, die mit Ruuvi Cloud kompatibel sind.
Um auf die MQTT-Einstellungen zuzugreifen, wähle auf der Seite „Cloud Options“ im Ruuvi Gateway Setup Wizard unter „Advanced Settings“ die Option „Use Ruuvi Cloud and/or a custom server“.
Richte deine Ziel-URL und datenbezogene Einstellungen ein
MQTT im Ruuvi Gateway unterstützt das Senden von Daten an SSL-gesicherte oder ungesicherte Adressen. Wenn du ein Transportprotokoll auswählst, werden URL-Präfix und Port automatisch entsprechend deiner Auswahl konfiguriert.
Trage Benutzername und Passwort ein, wenn deine Konfiguration eine Authentifizierung verwendet. In bestimmten Fällen, z. B. bei AWS, kann auch ein Client-Name erforderlich sein.
Ruuvi Gateway sendet standardmäßig Rohdaten an das MQTT(S)-Ziel, du kannst aber auch zwischen dekodierten Daten oder beidem wählen. Schau in der Dokumentation deines MQTT-Brokers nach, welche Option für dich am besten ist.
Du kannst außerdem ein Sendeintervall nach deinen Vorlieben festlegen; standardmäßig sendet Ruuvi Gateway die empfangenen Daten sofort nach dem Empfang. In manchen Fällen – insbesondere wenn dein Installationsort nur eine Internetverbindung mit geringer Bandbreite hat oder du den Datenverbrauch auf ein bestimmtes Limit begrenzen möchtest – kann es sinnvoll sein, diese Einstellung anzupassen.
Topic-Präfixe und Retained Messages
Topic-Präfixe in MQTT ermöglichen es dir, Nachrichten zu „kennzeichnen“, die von deinem Ruuvi Gateway an einen MQTT-Broker gesendet werden. Wenn du mit deinem MQTT-Client Nachrichten von einem Broker liest, kannst du bestimmte Topics abonnieren. So bleibt die Datenerfassung übersichtlich und leicht zu verwalten.
Retained messages sind Nachrichten, die beim Broker als „zuletzt bekannter gültiger“ Wert für ein bestimmtes Topic gespeichert werden. Diese Nachrichten werden an einen Client gesendet, sobald er ein bestimmtes Topic abonniert. Im Ruuvi Gateway sind Retained Messages standardmäßig aktiviert und werden verwendet, um den Online-/Offline-Status deines Ruuvi-Gateway-Routers zu melden. Du kannst diese Funktion auch deaktivieren.
Sicherheit durch SSL-Zertifikate
Als zusätzliche Sicherheitsebene kannst du mit MQTT auch SSL certificates (Client-Zertifikat, privater Schlüssel, Serverzertifikat) verwenden. Diese Funktion ermöglicht einen sicheren und validierten Kommunikationskanal zwischen Client und Server. Wenn du ein Server-SSL-Zertifikat verwendest, bist du unabhängig von öffentlichen Certificate Authorities (CAs) und kannst bei der Nutzung eines selbstsignierten Zertifikats mit deinem MQTT-Server individuelle Anpassungen vornehmen.
Deinen privaten Schlüssel und SSL-Zertifikate kannst du im Setup Wizard ganz einfach über die Upload-Buttons unter „SSL certificate“ hochladen.
Sollte ich MQTT zusammen mit Ruuvi Cloud nutzen?
Ruuvi Cloud zusammen mit Ruuvi Gateway ist eine umfassende Remote-Monitoring-Lösung, die für eine Vielzahl privater und geschäftlicher Anforderungen entwickelt wurde.
MQTT im Ruuvi Gateway ist eine hervorragende Möglichkeit, die Optionen zum Sammeln und Weiterverarbeiten der von deiner Ruuvi-Lösung übertragenen Daten zu erweitern. Wenn deine aktuelle IoT-Umgebung bereits eine MQTT-Lösung nutzt, kann es sich lohnen, MQTT im Ruuvi Gateway zu konfigurieren.
Fazit
Ruuvi Gateway bietet eine einfache Möglichkeit, deine Daten per MQTT an Lösungen von Drittanbietern zu übertragen. Mit dem benutzerfreundlichen Ruuvi Gateway Setup Wizard richtest du die Weiterleitung deiner Daten an eine individuelle MQTT-Lösung in nur wenigen Schritten ein.