{"id":135122,"date":"2022-08-03T10:12:47","date_gmt":"2022-08-03T07:12:47","guid":{"rendered":"https:\/\/ruuvi.com\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/"},"modified":"2026-06-11T04:49:05","modified_gmt":"2026-06-11T01:49:05","slug":"ruuvi-gateway-mit-einem-privaten-server-verbinden","status":"publish","type":"post","link":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/","title":{"rendered":"Ruuvi Gateway mit einem privaten Server verbinden"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Wie alle Ruuvi-Produkte soll auch das Ruuvi Gateway zwei sehr unterschiedliche Anwendungsf\u00e4lle abdecken: Plug-and-Play-Nutzer, die eine \u201efunktioniert einfach\u201c-Erfahrung wollen, auf der einen Seite \u2013 und Enthusiasten, die experimentieren, anpassen und ihre eigenen Systeme betreiben m\u00f6chten, auf der anderen. Dieser Artikel zeigt Schritt f\u00fcr Schritt, wie du ein Ruuvi Gateway \u00fcber MQTT, NodeJS, InfluxDB und Grafana mit einem privaten Server verbindest.  <\/p>\n\n<p class=\"wp-block-paragraph\">MQTT wird verwendet, um das Ruuvi Gateway mit einem privaten Server zu verbinden, sodass du Ruuvi Cloud parallel mit einem Gateway-Ger\u00e4t betreiben kannst. MQTT h\u00e4lt au\u00dferdem eine dauerhafte Verbindung zwischen Gateway und Ger\u00e4t, wodurch das Backend jedes Datenpaket empfangen kann, das das Gateway erh\u00e4lt. <\/p>\n\n<h2 class=\"wp-block-heading\">Einen privaten DigitalOcean-Server f\u00fcr RuuviTag-Daten einrichten<\/h2>\n\n<p class=\"wp-block-paragraph\">Ruuvi Cloud startete zwar als Open Source, aber wir haben schnell gemerkt, dass der Einrichtungsaufwand und die Wartung einer eigenen L\u00f6sung mehr Aufwand bedeuten und weniger flexibel sind als eine fertige L\u00f6sung \u2013 zumindest f\u00fcr Nutzer, die nur ihre pers\u00f6nlichen Sensoren unterst\u00fctzen m\u00f6chten. Deshalb haben wir f\u00fcr die Anleitung zum privaten Server einen vertrauten Stack aus weit verbreiteten Open-Source-Komponenten gew\u00e4hlt, statt ein Ruuvi-Cloud-Clone-Setup zu beschreiben. <\/p>\n\n<p class=\"wp-block-paragraph\">Diese Anleitung wurde auf Debian getestet, das auf DigitalOcean l\u00e4uft. Die Hardware-Anforderungen h\u00e4ngen von der Menge der verarbeiteten Daten ab, aber f\u00fcr eine leichte Last mit einigen Dutzend Sensoren sollte jede Instanz f\u00fcr 10\u201320 USD ausreichen. <\/p>\n\n<h3 class=\"wp-block-heading\">Komponenten f\u00fcr einen privaten Server installieren<\/h3>\n\n<h4 class=\"wp-block-heading\">Mosquitto-MQTT-Broker f\u00fcr Ruuvi Gateway<\/h4>\n\n<p class=\"wp-block-paragraph\">Mosquitto ist ein Open-Source-MQTT-Broker. Wir nutzen ihn, um Nachrichten von den Gateways zu empfangen und sie an unsere NodeJS-Anwendung weiterzuleiten, die zur Verarbeitung der Daten lauscht. <\/p>\n\n<p class=\"wp-block-paragraph\">Um Mosquitto zu installieren, f\u00fchre Folgendes aus:<\/p>\n\n<pre class=\"wp-block-code\"><code>sudo apt-get install mosquitto<\/code><\/pre>\n\n<h4 class=\"wp-block-heading\">NodeJS-Open-Source-Server zum Ausf\u00fchren von JavaScript<\/h4>\n\n<p class=\"wp-block-paragraph\">NodeJS ist eine Open-Source-Serverumgebung, die JavaScript-Code ausf\u00fchrt. Wir verwenden NodeJS als \u201eKlebstoff\u201c, um die Komponenten zu verbinden.  <\/p>\n\n<p class=\"wp-block-paragraph\">Die mit Debian Package Control ausgelieferten NodeJS-Versionen sind ziemlich veraltet, daher verwenden wir das NodeSource-Repository, um eine aktuelle NodeJS-Version zu installieren. Im Terminal ausf\u00fchren: <\/p>\n\n<pre class=\"wp-block-code\"><code>sudo apt install curl\ncurl -fsSL https:\/\/deb.nodesource.com\/setup_16.x | sudo -E bash -\nsudo apt install nodejs\n<\/code><\/pre>\n\n<h4 class=\"wp-block-heading\">InfluxDB-Datenbank f\u00fcr RuuviTag-Sensor-IoT-Daten <\/h4>\n\n<p class=\"wp-block-paragraph\">InfluxDB ist eine Time-Series-Datenbank, das hei\u00dft, sie ist speziell daf\u00fcr ausgelegt, Daten zu verarbeiten, die nach steigenden Zeitstempeln sortiert sind. Das passt perfekt zu Sensordaten. Obwohl die aktuelle InfluxDB inzwischen bei Version 2.x ist, verwenden wir aus Kompatibilit\u00e4tsgr\u00fcnden mit unserem Glue-Code weiterhin 1.x-Distributionen.  <\/p>\n\n<p class=\"wp-block-paragraph\">Influx h\u00e4lt aktuelle Installationsanweisungen bereit unter: <a href=\"https:\/\/docs.influxdata.com\/influxdb\/v1.8\/introduction\/install\/#\">https:\/\/docs.influxdata.com\/influxdb\/v1.8\/introduction\/install\/#<\/a>. Aktuell kannst du Folgendes ausf\u00fchren:<\/p>\n\n<pre class=\"wp-block-code\"><code>wget -q https:\/\/repos.influxdata.com\/influxdb.key\n\necho '23a1c8836f0afc5ed24e0486339d7cc8f6790b83886c4c96995b88a061c5bb5d influxdb.key' | sha256sum -c &amp;&amp; cat influxdb.key | gpg --dearmor | sudo tee \/etc\/apt\/trusted.gpg.d\/influxdb.gpg &gt; \/dev\/null\n\necho 'deb &#91;signed-by=\/etc\/apt\/trusted.gpg.d\/influxdb.gpg] https:\/\/repos.influxdata.com\/debian stable main' | sudo tee \/etc\/apt\/sources.list.d\/influxdata.list\n \nsudo apt-get update &amp;&amp; sudo apt-get install influxdb\n\nsudo systemctl unmask influxdb.service\n\nsudo systemctl start influxdb\n<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">Wichtig: InfluxDB verwendet standardm\u00e4\u00dfig keine Authentifizierung, das hei\u00dft, jeder kann auf deine Datenbank zugreifen. Influx stellt Anweisungen zum Einrichten der Authentifizierung bereit unter: <a href=\"https:\/\/docs.influxdata.com\/influxdb\/v1.8\/administration\/authentication_and_authorization\/\">https:\/\/docs.influxdata.com\/influxdb\/v1.8\/administration\/authentication_and_authorization\/<\/a>. <\/p>\n\n<p class=\"wp-block-paragraph\">Sobald InfluxDB l\u00e4uft, starte das Influx-Terminal und erstelle Datenbanken. Wenn du Authentifizierung eingerichtet hast, gib deinem Nutzer Schreibzugriff auf die Datenbanken. Die Beispiele unten unterst\u00fctzen einige benutzerdefinierte Datenformate; verpflichtend ist nur die Datenbank \u201eruuvi\u201c.  <\/p>\n\n<pre class=\"wp-block-code\"><code>CREATE DATABASE ruuvi\nCREATE DATABASE acceleration\nCREATE DATABASE fft\n<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">Wenn du Authentifizierung eingerichtet hast, kannst du separate Admin-, Writer- und Reader-Nutzer anlegen:<\/p>\n\n<pre class=\"wp-block-code\"><code>CREATE USER admin WITH PASSWORD '&lt;password&gt;' WITH ALL PRIVILEGES\nCREATE USER ruuvi_writer WITH PASSWORD '123456'\nCREATE USER ruuvi_reader WITH PASSWORD '123456'\nGRANT WRITE ON ruuvi TO ruuvi_writer\nGRANT READER ON ruuvi TO ruuvi_reader\nGRANT WRITE ON fft TO ruuvi_writer\nGRANT READER ON fft TO ruuvi_reader\nGRANT WRITE ON acceleration TO ruuvi_writer\nGRANT READER ON acceleration TO ruuvi_reader\n<\/code><\/pre>\n\n<h4 class=\"wp-block-heading\">Grafana zur Visualisierung von RuuviTag-Sensordaten<\/h4>\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\"><p><em>Grafana ist eine plattform\u00fcbergreifende Open-Source-Webanwendung f\u00fcr Analytics und interaktive Visualisierung. Sie bietet Diagramme, Grafiken und Alerts f\u00fcr das Web \u2026 <\/em><\/p><cite><em>Wikipedia<\/em><\/cite><\/blockquote>\n\n<p class=\"wp-block-paragraph\">Einfach gesagt ist Grafana ein Tool, mit dem du Dashboards zum Anzeigen von Daten einrichtest. Du kannst es installieren mit: <\/p>\n\n<pre class=\"wp-block-code\"><code>sudo apt-get install -y apt-transport-https\n\nsudo apt-get install -y software-properties-common wget\n\nsudo wget -q -O \/usr\/share\/keyrings\/grafana.key https:\/\/packages.grafana.com\/gpg.key\n\necho \"deb &#91;signed-by=\/usr\/share\/keyrings\/grafana.key] https:\/\/packages.grafana.com\/oss\/deb stable main\" | sudo tee -a \/etc\/apt\/sources.list.d\/grafana.list\n\necho \"deb &#91;signed-by=\/usr\/share\/keyrings\/grafana.key] https:\/\/packages.grafana.com\/oss\/deb beta main\" | sudo tee -a \/etc\/apt\/sources.list.d\/grafana.list\n\nsudo apt-get update\n\nsudo apt-get install grafana\n<\/code><\/pre>\n\n<h4 class=\"wp-block-heading\">Glue-Logik<\/h4>\n\n<p class=\"wp-block-paragraph\">Die Logik, die die Teile serverseitig zusammenf\u00fchrt, liegt im TypeScript-Repository: <a href=\"https:\/\/github.com\/ojousima\/ojousima.mqtt2influx.ts\">https:\/\/github.com\/ojousima\/ojousima.mqtt2influx.ts<\/a>.<\/p>\n\n<p class=\"wp-block-paragraph\">Den neuesten Code kannst du herunterladen, indem du Folgendes ausf\u00fchrst:<\/p>\n\n<pre class=\"wp-block-code\"><code>sudo apt-get install git\ngit clone https:\/\/github.com\/ojousima\/ojousima.mqtt2influx.ts\n<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">Nach dem Klonen des Projekts musst du die Zugangsdaten und die Konfiguration einrichten.<\/p>\n\n<pre class=\"wp-block-code\"><code>cd ojousima.mqtt2influx.ts\ncp .env.ts.example .env.ts\nnano .env.ts\n<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">Nachdem du deine Server-URL und Passw\u00f6rter eingegeben hast, musst du das Projekt kompilieren und ausf\u00fchren.<\/p>\n\n<pre class=\"wp-block-code\"><code>npm run-script build\nnode lib\/src\/index.js\n<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">Wenn alles reibungslos l\u00e4uft, kannst du die Glue-Logik mit \u201eforever<em>\u201d<\/em> weiterlaufen lassen.<\/p>\n\n<pre class=\"wp-block-code\"><code>sudo npm -i -g forever\nforever start lib\/src\/index.js\n<\/code><\/pre>\n\n<h2 class=\"wp-block-heading\">Ruuvi-Gateway-Einrichtung zum Senden von Daten an einen privaten Server<\/h2>\n\n<p class=\"wp-block-paragraph\">Das Ruuvi Gateway l\u00e4sst sich schnell \u00fcber die Konfigurationsoberfl\u00e4che einrichten. Gehe wie gewohnt durch die Konfiguration und w\u00e4hle dann in den Cloud-Optionen \u201eAdvanced Settings\u201c. <\/p>\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"972\" height=\"1024\" src=\"https:\/\/ruuvi.com\/i\/u\/Find-Ruuvi-Gateway-advanced-settings-972x1024.png\" alt=\"Ruuvi-Gateway-Konfigurationsassistent. Du kannst Daten entweder an Ruuvi Cloud oder an deinen eigenen privaten Server senden. \" class=\"wp-image-43251\" srcset=\"https:\/\/ruuvi.com\/i\/u\/Find-Ruuvi-Gateway-advanced-settings-972x1024.png 972w, https:\/\/ruuvi.com\/i\/u\/Find-Ruuvi-Gateway-advanced-settings-427x450.png 427w, https:\/\/ruuvi.com\/i\/u\/Find-Ruuvi-Gateway-advanced-settings-768x809.png 768w, https:\/\/ruuvi.com\/i\/u\/Find-Ruuvi-Gateway-advanced-settings-600x632.png 600w, https:\/\/ruuvi.com\/i\/u\/Find-Ruuvi-Gateway-advanced-settings.png 1454w\" sizes=\"auto, (max-width: 972px) 100vw, 972px\" \/><\/figure>\n<\/div>\n<p class=\"wp-block-paragraph\">In der Konfiguration f\u00fcr einen benutzerdefinierten Server kannst du die HTTP-Standardeinstellung aktiviert lassen, um weiterhin an die Ruuvi Cloud zu senden. Aktiviere das K\u00e4stchen MQTT(S) und gib deine Serverdaten ein. Die Glue-Logik verwendet das Pr\u00e4fix \u201eruuvi\u201c und die Gateway-ID, um die Messwerte den Gateways zuzuordnen.  <\/p>\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"815\" height=\"1024\" src=\"https:\/\/ruuvi.com\/i\/u\/Ruuvi-Gateway-advanced-settings-names-1-815x1024.png\" alt=\"Daten an deinen eigenen Server senden. Es gibt verschiedene M&#xF6;glichkeiten, Daten an deinen eigenen Server zu senden. \" class=\"wp-image-43253\" srcset=\"https:\/\/ruuvi.com\/i\/u\/Ruuvi-Gateway-advanced-settings-names-1-815x1024.png 815w, https:\/\/ruuvi.com\/i\/u\/Ruuvi-Gateway-advanced-settings-names-1-358x450.png 358w, https:\/\/ruuvi.com\/i\/u\/Ruuvi-Gateway-advanced-settings-names-1-768x965.png 768w, https:\/\/ruuvi.com\/i\/u\/Ruuvi-Gateway-advanced-settings-names-1-600x754.png 600w, https:\/\/ruuvi.com\/i\/u\/Ruuvi-Gateway-advanced-settings-names-1.png 1148w\" sizes=\"auto, (max-width: 815px) 100vw, 815px\" \/><\/figure>\n<\/div>\n<p class=\"wp-block-paragraph\">Wenn du fertig bist, sollte alles bereit sein, damit du ein paar Dashboards einrichten kannst.<\/p>\n\n<h2 class=\"wp-block-heading\">Dashboards in Grafana f\u00fcr RuuviTag-Daten einrichten<\/h2>\n\n<h3 class=\"wp-block-heading\">Datenquellen einrichten<\/h3>\n\n<p class=\"wp-block-paragraph\">Als Erstes m\u00fcssen wir Grafana sagen, wo sich die Datenbank befindet und wie die Verbindung hergestellt wird. Das Beispiel der Glue-Logik unterst\u00fctzt einige experimentelle Formate, aber wir verwenden hier nur Standard-Ruuvi-Daten. <\/p>\n\n<p class=\"wp-block-paragraph\">Melde dich bei Grafana an, gib bei Bedarf ein neues Admin-Passwort ein und w\u00e4hle unten links das Zahnrad. Dann \u201eConfiguration\u201c -&gt; \u201eData Sources\u201c -&gt; \u201eAdd data source\u201c. <\/p>\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"618\" src=\"https:\/\/ruuvi.com\/i\/u\/Grafana-configuration-Ruuvi-1024x618.png\" alt=\"Grafana bezieht Daten aus InfluxDB.\" class=\"wp-image-43255\" srcset=\"https:\/\/ruuvi.com\/i\/u\/Grafana-configuration-Ruuvi-1024x618.png 1024w, https:\/\/ruuvi.com\/i\/u\/Grafana-configuration-Ruuvi-450x272.png 450w, https:\/\/ruuvi.com\/i\/u\/Grafana-configuration-Ruuvi-768x464.png 768w, https:\/\/ruuvi.com\/i\/u\/Grafana-configuration-Ruuvi-600x362.png 600w, https:\/\/ruuvi.com\/i\/u\/Grafana-configuration-Ruuvi.png 1429w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n<p class=\"wp-block-paragraph\">W\u00e4hle im Dialog \u201eAdd data source\u201c \u201eInflux DB\u201c. Wenn Grafana und Influx auf demselben Server laufen, verwende die HTTP-URL <a href=\"http:\/\/localhost:8086\">http:\/\/localhost:8086<\/a> und gib die Datenbankdetails ein. In diesem Beispiel w\u00e4ren das:  <\/p>\n\n<pre class=\"wp-block-code\"><code>database: ruuvi\nuser:     ruuvi_reader\npassword: 123456\n<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">Benenne die Datenquelle so, dass du dich daran erinnerst, mit welcher Datenbank sie verbunden war. <\/p>\n\n<p class=\"wp-block-paragraph\">Als N\u00e4chstes kannst du dein eigenes Dashboard erstellen oder eines importieren von: <a href=\"https:\/\/github.com\/ruuvi\/ruuvi.grafana-dashboards.json\">https:\/\/github.com\/ruuvi\/ruuvi.grafana-dashboards.json<\/a>. Beim Importieren der Dashboards w\u00e4hle die Data Source aus, die die Datenbank enth\u00e4lt, die das Dashboard verwendet; Standard-Ruuvi-Messwerte nutzen zum Beispiel die Datenbank \u201eraw\u201c, wenn alles wie in der Beispielumgebung des mqtt2influx-Projekts konfiguriert ist. <\/p>\n\n<p class=\"wp-block-paragraph\">Ebenso muss der Measurement-Name in der Konfiguration \u00fcbereinstimmen \u2013 hier ist es \u201eraw_measurement\u201c. Du kannst die Panel-Konfiguration im Dashboard sehen, indem du bei Panels auf \u201eedit\u201c klickst. <\/p>\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ruuvi.com\/i\/u\/Configuring-Grafana-dashboard.png\" alt=\"Datenquelle in Grafana definieren.\" class=\"wp-image-43257\" width=\"770\" height=\"436\" srcset=\"https:\/\/ruuvi.com\/i\/u\/Configuring-Grafana-dashboard.png 499w, https:\/\/ruuvi.com\/i\/u\/Configuring-Grafana-dashboard-450x255.png 450w\" sizes=\"auto, (max-width: 770px) 100vw, 770px\" \/><\/figure>\n<\/div>\n<p class=\"wp-block-paragraph\">Wenn alles geklappt hat, solltest du jetzt dein Ruuvi-Dashboard auf deinem eigenen Server am Laufen haben.<\/p>\n<div class=\"wp-block-image is-style-default\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"690\" src=\"https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana-1024x690.png\" alt=\"Dashboard-Ansicht in Grafana. Grafana ist ein gro&#xDF;artiges Tool, um Daten zu visualisieren. \" class=\"wp-image-43259\" srcset=\"https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana-1024x690.png 1024w, https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana-450x303.png 450w, https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana-768x517.png 768w, https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana-600x404.png 600w, https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana.png 1384w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n<\/div>\n<h2 class=\"wp-block-heading\">Fehlersuche beim Grafana- und InfluxDB-Setup<\/h2>\n\n<p class=\"wp-block-paragraph\">Wenn du keine Daten auf deinem Dashboard siehst, kannst du Folgendes pr\u00fcfen:<\/p>\n\n<h3 class=\"wp-block-heading\">Gateway zum MQTT-Broker<\/h3>\n\n<p class=\"wp-block-paragraph\">Verbinde dich mit einem Client deiner Wahl mit deinem MQTT-Broker. <a href=\"https:\/\/www.emqx.com\/en\/products\/mqttx\">MQTT X<\/a> ist eine Option, es gibt aber viele weitere. Sobald du verbunden bist, abonniere das Wildcard-Topic \/# und pr\u00fcfe, ob unter den \u201eruuvi\u201c-Topics Aktivit\u00e4t zu sehen ist. Wenn nicht, \u00fcberpr\u00fcfe deine Gateway-Konfiguration noch einmal; wenn doch, pr\u00fcfe als N\u00e4chstes das Projekt ojousima.mqtt2influx.ts.  <\/p>\n\n<h3 class=\"wp-block-heading\">Glue-Logik<\/h3>\n\n<p class=\"wp-block-paragraph\">Du kannst das Programm im Terminal per SSH ausf\u00fchren und schauen, ob Fehler auftauchen. Wenn es keine Fehler gibt, kannst du in src\/influx.ts in der Funktion rawToInflux eine console.log-Zeile hinzuf\u00fcgen, um zu sehen, ob das Projekt versucht, Daten in Influx zu speichern. <\/p>\n\n<h3 class=\"wp-block-heading\">InfluxDB<\/h3>\n\n<p class=\"wp-block-paragraph\">Du kannst pr\u00fcfen, ob Daten in InfluxDB vorhanden sind, indem du dich auf deinem Server anmeldest und die Influx-Shell \u00f6ffnest, indem du \u201einflux\u201c eingibst. Danach kannst du dir Daten in der Datenbank ansehen, z. B.: <\/p>\n\n<pre class=\"wp-block-code\"><code>USE raw\nSHOW SERIES\n<\/code><\/pre>\n\n<p class=\"wp-block-paragraph\">Das sollte die Sensoren ausgeben, die du in der Datenbank hast, z. B.:<\/p>\n\n<pre class=\"wp-block-code\"><code>raw_measurement,dataFormat=5,gateway_id=DD:C3:3B:AB:2F:FC,mac=DA:35:40:88:09:7B\nraw_measurement,dataFormat=5,gateway_id=DD:C3:3B:AB:2F:FC,mac=E5:83:B4:04:90:52\nraw_measurement,dataFormat=5,gateway_id=DD:C3:3B:AB:2F:FC,mac=F6:3A:84:A8:E4:CF\nraw_measurement,dataFormat=5,gateway_id=DD:C3:3B:AB:2F:FC,mac=F6:81:DD:6E:FE:D8\nraw_measurement,dataFormat=5,gateway_id=DD:C3:3B:AB:2F:FC,mac=FA:60:2B:73:87:E1\nraw_measurement,dataFormat=5,gateway_id=E8:CD:63:50:2D:9C,mac=E9:D3:D4:23:A0:EF\nraw_measurement,dataFormat=5,gateway_id=E8:CD:63:50:2D:9C,mac=EB:A1:0F:22:E2:20\nraw_measurement,dataFormat=5,gateway_id=E8:CD:63:50:2D:9C,mac=F2:DE:8B:DA:AB:AE\n<\/code><\/pre>\n\n<h3 class=\"wp-block-heading\">Grafana<\/h3>\n\n<p class=\"wp-block-paragraph\">Wenn alles oben zu funktionieren scheint, pr\u00fcfe, ob deine Grafana-Datenquellen korrekt konfiguriert sind und du Zeitbereiche ausgew\u00e4hlt hast, in denen Daten vorhanden sein sollten. <\/p>\n\n<h2 class=\"wp-block-heading\">Fazit<\/h2>\n\n<p class=\"wp-block-paragraph\">Das Ruuvi Gateway so einzurichten, dass es deine eigenen Daten an deinen eigenen Server weiterleitet, ist ziemlich unkompliziert und in ein paar Stunden erledigt. Von Ruuvi-Ger\u00e4ten entstehen keine zus\u00e4tzlichen Kosten, aber dein Server verursacht laufende Kosten \u2013 typischerweise im Bereich von 10\u201320 USD pro Monat.  <\/p>\n\n<p class=\"wp-block-paragraph\">Hol dir jetzt ein paar <a href=\"https:\/\/ruuvi.com\/shop\">Ruuvi Sensors<\/a> und <strong>miss deine Welt<\/strong>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wie alle Ruuvi-Produkte soll auch das Ruuvi Gateway zwei sehr unterschiedliche Anwendungsf\u00e4lle abdecken: Plug-and-Play-Nutzer, die eine \u201efunktioniert einfach\u201c-Erfahrung wollen, auf der einen Seite \u2013 und Enthusiasten, die experimentieren, anpassen und ihre eigenen Systeme betreiben m\u00f6chten, auf der anderen. Dieser Artikel zeigt Schritt f\u00fcr Schritt, wie du ein Ruuvi Gateway \u00fcber MQTT, NodeJS, InfluxDB und Grafana [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":135127,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[318,324],"tags":[],"class_list":["post-135122","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-heimautomatisierung-mit-ruuvi","category-ruuvi-software-artikel"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Ruuvi Gateway mit einem privaten Server verbinden - Ruuvi<\/title>\n<meta name=\"description\" content=\"Hier ist eine Anleitung, wie du dein Ruuvi Gateway so einrichtest, dass es Daten an deinen eigenen privaten Server sendet. Einfach und unkompliziert.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ruuvi Gateway mit einem privaten Server verbinden\" \/>\n<meta property=\"og:description\" content=\"Hier ist eine Anleitung, wie du dein Ruuvi Gateway so einrichtest, dass es Daten an deinen eigenen privaten Server sendet. Einfach und unkompliziert.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/\" \/>\n<meta property=\"og:site_name\" content=\"Ruuvi\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/ruuvi.cc\" \/>\n<meta property=\"article:published_time\" content=\"2022-08-03T07:12:47+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-11T01:49:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana-1024x690.png\" \/>\n<meta name=\"author\" content=\"Otso Jousimaa\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Ruuvi Gateway mit einem privaten Server verbinden\" \/>\n<meta name=\"twitter:description\" content=\"Hier ist eine Anleitung, wie du dein Ruuvi Gateway so einrichtest, dass es Daten an deinen eigenen privaten Server sendet. Einfach und unkompliziert.\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana-1024x690.png\" \/>\n<meta name=\"twitter:creator\" content=\"@ruuvicom\" \/>\n<meta name=\"twitter:site\" content=\"@ruuvicom\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Otso Jousimaa\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"8\u00a0Minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/\"},\"author\":{\"name\":\"Otso Jousimaa\",\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/#\\\/schema\\\/person\\\/143b8e2a095f1e6484b9186673c9ec00\"},\"headline\":\"Ruuvi Gateway mit einem privaten Server verbinden\",\"datePublished\":\"2022-08-03T07:12:47+00:00\",\"dateModified\":\"2026-06-11T01:49:05+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/\"},\"wordCount\":1194,\"image\":{\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/ruuvi.com\\\/i\\\/u\\\/RuuviTags-measurement-data-grafana.png\",\"articleSection\":[\"Heimautomatisierung mit Ruuvi\",\"Ruuvi-Software-Artikel\"],\"inLanguage\":\"de\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/\",\"url\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/\",\"name\":\"Ruuvi Gateway mit einem privaten Server verbinden - Ruuvi\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/ruuvi.com\\\/i\\\/u\\\/RuuviTags-measurement-data-grafana.png\",\"datePublished\":\"2022-08-03T07:12:47+00:00\",\"dateModified\":\"2026-06-11T01:49:05+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/#\\\/schema\\\/person\\\/143b8e2a095f1e6484b9186673c9ec00\"},\"description\":\"Hier ist eine Anleitung, wie du dein Ruuvi Gateway so einrichtest, dass es Daten an deinen eigenen privaten Server sendet. Einfach und unkompliziert.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/#primaryimage\",\"url\":\"https:\\\/\\\/ruuvi.com\\\/i\\\/u\\\/RuuviTags-measurement-data-grafana.png\",\"contentUrl\":\"https:\\\/\\\/ruuvi.com\\\/i\\\/u\\\/RuuviTags-measurement-data-grafana.png\",\"width\":1384,\"height\":932,\"caption\":\"Visualisierung der RuuviTags-Daten in Grafana.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/ruuvi-gateway-mit-einem-privaten-server-verbinden\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/front\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ruuvi Gateway mit einem privaten Server verbinden\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/#website\",\"url\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/\",\"name\":\"Ruuvi\",\"description\":\"Measure Your World\",\"potentialAction\":[],\"inLanguage\":\"de\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/#\\\/schema\\\/person\\\/143b8e2a095f1e6484b9186673c9ec00\",\"name\":\"Otso Jousimaa\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fd52303e35b8b23c01cfeec7bb2636768de567cd33604f794ae86dd971e61645?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fd52303e35b8b23c01cfeec7bb2636768de567cd33604f794ae86dd971e61645?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/fd52303e35b8b23c01cfeec7bb2636768de567cd33604f794ae86dd971e61645?s=96&d=mm&r=g\",\"caption\":\"Otso Jousimaa\"},\"url\":\"https:\\\/\\\/ruuvi.com\\\/de\\\/author\\\/ojousima\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Ruuvi Gateway mit einem privaten Server verbinden - Ruuvi","description":"Hier ist eine Anleitung, wie du dein Ruuvi Gateway so einrichtest, dass es Daten an deinen eigenen privaten Server sendet. Einfach und unkompliziert.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/","og_locale":"de_DE","og_type":"article","og_title":"Ruuvi Gateway mit einem privaten Server verbinden","og_description":"Hier ist eine Anleitung, wie du dein Ruuvi Gateway so einrichtest, dass es Daten an deinen eigenen privaten Server sendet. Einfach und unkompliziert.","og_url":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/","og_site_name":"Ruuvi","article_publisher":"https:\/\/www.facebook.com\/ruuvi.cc","article_published_time":"2022-08-03T07:12:47+00:00","article_modified_time":"2026-06-11T01:49:05+00:00","og_image":[{"url":"https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana-1024x690.png","type":"","width":"","height":""}],"author":"Otso Jousimaa","twitter_card":"summary_large_image","twitter_title":"Ruuvi Gateway mit einem privaten Server verbinden","twitter_description":"Hier ist eine Anleitung, wie du dein Ruuvi Gateway so einrichtest, dass es Daten an deinen eigenen privaten Server sendet. Einfach und unkompliziert.","twitter_image":"https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana-1024x690.png","twitter_creator":"@ruuvicom","twitter_site":"@ruuvicom","twitter_misc":{"Verfasst von":"Otso Jousimaa","Gesch\u00e4tzte Lesezeit":"8\u00a0Minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/#article","isPartOf":{"@id":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/"},"author":{"name":"Otso Jousimaa","@id":"https:\/\/ruuvi.com\/de\/#\/schema\/person\/143b8e2a095f1e6484b9186673c9ec00"},"headline":"Ruuvi Gateway mit einem privaten Server verbinden","datePublished":"2022-08-03T07:12:47+00:00","dateModified":"2026-06-11T01:49:05+00:00","mainEntityOfPage":{"@id":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/"},"wordCount":1194,"image":{"@id":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/#primaryimage"},"thumbnailUrl":"https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana.png","articleSection":["Heimautomatisierung mit Ruuvi","Ruuvi-Software-Artikel"],"inLanguage":"de"},{"@type":"WebPage","@id":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/","url":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/","name":"Ruuvi Gateway mit einem privaten Server verbinden - Ruuvi","isPartOf":{"@id":"https:\/\/ruuvi.com\/de\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/#primaryimage"},"image":{"@id":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/#primaryimage"},"thumbnailUrl":"https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana.png","datePublished":"2022-08-03T07:12:47+00:00","dateModified":"2026-06-11T01:49:05+00:00","author":{"@id":"https:\/\/ruuvi.com\/de\/#\/schema\/person\/143b8e2a095f1e6484b9186673c9ec00"},"description":"Hier ist eine Anleitung, wie du dein Ruuvi Gateway so einrichtest, dass es Daten an deinen eigenen privaten Server sendet. Einfach und unkompliziert.","breadcrumb":{"@id":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/"]}]},{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/#primaryimage","url":"https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana.png","contentUrl":"https:\/\/ruuvi.com\/i\/u\/RuuviTags-measurement-data-grafana.png","width":1384,"height":932,"caption":"Visualisierung der RuuviTags-Daten in Grafana."},{"@type":"BreadcrumbList","@id":"https:\/\/ruuvi.com\/de\/ruuvi-gateway-mit-einem-privaten-server-verbinden\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ruuvi.com\/de\/front\/"},{"@type":"ListItem","position":2,"name":"Ruuvi Gateway mit einem privaten Server verbinden"}]},{"@type":"WebSite","@id":"https:\/\/ruuvi.com\/de\/#website","url":"https:\/\/ruuvi.com\/de\/","name":"Ruuvi","description":"Measure Your World","potentialAction":[],"inLanguage":"de"},{"@type":"Person","@id":"https:\/\/ruuvi.com\/de\/#\/schema\/person\/143b8e2a095f1e6484b9186673c9ec00","name":"Otso Jousimaa","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/secure.gravatar.com\/avatar\/fd52303e35b8b23c01cfeec7bb2636768de567cd33604f794ae86dd971e61645?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/fd52303e35b8b23c01cfeec7bb2636768de567cd33604f794ae86dd971e61645?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fd52303e35b8b23c01cfeec7bb2636768de567cd33604f794ae86dd971e61645?s=96&d=mm&r=g","caption":"Otso Jousimaa"},"url":"https:\/\/ruuvi.com\/de\/author\/ojousima\/"}]}},"_links":{"self":[{"href":"https:\/\/ruuvi.com\/de\/wp-json\/wp\/v2\/posts\/135122","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ruuvi.com\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ruuvi.com\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ruuvi.com\/de\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/ruuvi.com\/de\/wp-json\/wp\/v2\/comments?post=135122"}],"version-history":[{"count":1,"href":"https:\/\/ruuvi.com\/de\/wp-json\/wp\/v2\/posts\/135122\/revisions"}],"predecessor-version":[{"id":135128,"href":"https:\/\/ruuvi.com\/de\/wp-json\/wp\/v2\/posts\/135122\/revisions\/135128"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ruuvi.com\/de\/wp-json\/wp\/v2\/media\/135127"}],"wp:attachment":[{"href":"https:\/\/ruuvi.com\/de\/wp-json\/wp\/v2\/media?parent=135122"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ruuvi.com\/de\/wp-json\/wp\/v2\/categories?post=135122"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ruuvi.com\/de\/wp-json\/wp\/v2\/tags?post=135122"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}