Wetterstation Daten auslesen: So baust du dir deine eigene Wetter-Cloud (PHP & MariaDB)

Aktualisiert am: 28.05.2026
4,8
Exofox Redaktionswertung
SEHR GUT
★★★★☆
Wetterstation Daten auslesen: So baust du dir deine eigene Wetter-Cloud (PHP & MariaDB)
Unser Fazit:

Mach mehr aus deiner Wetterstation! Nutze das WLAN-Modul, um jede Minute Livedaten an deinen eigenen Server zu senden. Komplettes PHP- und MariaDB-Tutorial für deine eigene Wetter-Cloud – unabhängig von Hersteller-Apps.

🛒 Preis bei Amazon prüfen

In meinem Testbericht zur EMOS E6016 Wetterstation habe ich bereits erwähnt, dass mir die Anzeige auf dem Display im Wohnzimmer nicht ausreicht. Ich bin Entwickler, ich will meine Daten selbst besitzen, auswerten und visualisieren!

Die gute Nachricht: Die Station besitzt ein integriertes WLAN-Modul und ein Webinterface. Damit lässt sie sich wunderbar zweckentfremden, um die Wetterdaten (Temperatur, Wind, Regen etc.) vollautomatisch an einen eigenen Server zu senden. In diesem Tutorial zeige ich dir mein Setup mit PHP und einer MariaDB-Datenbank.

PHP Code und ein Wetter-Dashboard auf dem Bildschirm

Das brauchst du für dieses Projekt

Schritt 1: Das Webinterface der Wetterstation konfigurieren

Die Magie passiert im Webinterface der Station. Wenn du die IP-Adresse deiner Station im Browser aufrufst, kommst du in die Einstellungen. Hier gibt es meist einen Menüpunkt für den Daten-Upload (oft gedacht für Dienste wie WeatherUnderground).

Im Webinterface der EMOS-Station kann man einen benutzerdefinierten Server (Custom Server) für den Daten-Upload hinterlegen. Ich habe mir dafür auf meiner Webseite eine eigene PHP-API-Schnittstelle geschrieben, die durch ein Token-System abgesichert ist, damit niemand fremdes Daten in meine Datenbank schreiben kann.

In den Einstellungen der Wetterstation habe ich also die URL zu meiner API eingetragen. Einen speziellen Port musste ich nicht angeben (es läuft über den Standard-Port 80). Wichtig ist jedoch der Pfad bzw. die Parameter, die übergeben werden sollen. In der Station nutzt man dafür Platzhalter. Meine Konfiguration sieht so aus, um die wichtigsten Werte auszulesen:

?token=DEIN_TOKEN&temp=~temp1~,~hum1~,~windspeed~,~winddir~,~rainh~,~lowbat1~
⚠️ Die SSL-Falle: Warum es am Anfang nicht funktionierte
Hier lauert ein fieses technisches Problem, an dem viele Bastler scheitern: Die EMOS Wetterstation unterstützt für den Wetterstation Daten auslesen Daten-Upload kein HTTPS (SSL), sondern funkt ausschließlich unverschlüsselt über normales HTTP.

Da mein Hosting-Provider (wie heute üblich) aus Sicherheitsgründen jede HTTP-Anfrage automatisch auf HTTPS umleitet, liefen die Datenpakete der Station anfangs ins Leere. Die Lösung? Ich musste die erzwungene SSL-Umleitung für genau diese eine PHP-Datei manuell in der .htaccess Datei auf meinem Server deaktivieren.

Erst als die API reine HTTP-Aufrufe akzeptierte, flossen die Daten im 60-Sekunden-Takt!

Schritt 2: Die MariaDB Datenbank anlegen

Damit wir die Daten, die die Station alle 60 Sekunden schickt, speichern können, brauchen wir eine Tabelle in unserer Datenbank. Ich halte es simpel: Eine Spalte für den Zeitstempel und weitere Spalten für die jeweiligen Sensordaten.


CREATE TABLE `weather_data` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `timestamp` datetime NOT NULL DEFAULT current_timestamp(),
  `temperature` decimal(5,2) DEFAULT NULL,
  `humidity` int(3) DEFAULT NULL,
  `wind_speed` decimal(5,2) DEFAULT NULL,
  `wind_direction` varchar(10) DEFAULT NULL,
  `rain` decimal(5,2) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Schritt 3: Das PHP-Empfangsscript (Webhook)

Jetzt brauchen wir den "Fänger" zum Wetterstation Daten auslesen auf unserem Server. Die Wetterstation ruft alle 60 Sekunden diese PHP-Datei auf und hängt die Sensordaten meist als GET- oder POST-Parameter an die URL an.

Ein vereinfachtes Skript sieht so aus:


<?php
// Verbindungsdaten zur MariaDB
$db = new mysqli('localhost', 'user', 'passwort', 'datenbank');

if ($db->connect_error) {
    die("Connection failed: " . $db->connect_error);
}

// Daten von der Wetterstation abfangen (hier als GET-Beispiel)
$temp = isset($_GET['temp']) ? floatval($_GET['temp']) : 0;
$hum = isset($_GET['humidity']) ? intval($_GET['humidity']) : 0;
$wind = isset($_GET['wind']) ? floatval($_GET['wind']) : 0;

// Sicherheitscheck: Nur eintragen, wenn Daten da sind
if($temp != 0) {
    $stmt = $db->prepare("INSERT INTO weather_data (temperature, humidity, wind_speed) VALUES (?, ?, ?)");
    $stmt->bind_param("did", $temp, $hum, $wind);
    $stmt->execute();
    $stmt->close();
    
    echo "Daten erfolgreich in MariaDB gespeichert!";
}
?>

Hinweis: Das Skript ist stark vereinfacht. In einer produktiven Umgebung von Wetterstation Daten auslesen, solltet ihr noch eine Authentifizierung (z.B. einen API-Key in der URL) einbauen, damit nicht jeder wild Daten in eure Datenbank posten kann!

Schritt 4: Daten visualisieren

Ab hier sind dir keine Grenzen mehr gesetzt. Du hast eine Datenbank, die sich minütlich mit frischen Wetterdaten aus deinem Garten füllt. Mit ein wenig HTML, CSS und einer Chart-Bibliothek (wie Chart.js) kannst du dir nun wunderschöne Graphen für die letzten 24 Stunden, 7 Tage oder sogar das ganze Jahr rendern lassen.

Es ist ein unbeschreiblich cooles Gefühl, das erste Mal das eigene Dashboard aufzurufen und zu sehen, wie sich die Graphen wie von Geisterhand im Minutentakt füllen. Ich bin ehrlich gesagt richtig stolz auf das, was wir durch unsere Zusammenarbeit an diesem Projekt auf die Beine gestellt haben!

Mein Dashboard-Setup: Ein eigenes Smart-Home-Portal

Wir haben nicht einfach nur eine simple öffentliche Webseite zusammengeschustert, sondern ein echtes Login-Portal entwickelt. Sobald man sich dort anmeldet, kann man seine verschiedenen Smart-Home-Geräte (wie eben die Wetterstation) strukturiert anlegen und verwalten.

Klickt man auf die Wetterstation, werden die gesammelten Daten aus der MariaDB live in wunderschönen dynamischen Charts gerendert. Man kann per Knopfdruck nahtlos zwischen den Historien für 24 Stunden, 7 Tage, 30 Tage und einem ganzen Jahr wechseln.

Gerade der Jahresverlauf ist extrem spannend, um zu sehen, wie sich das lokale Mikroklima entwickelt. Man erkennt oft Nuancen, die in einer einfachen App untergehen würden.

Screenshot des eigenen Login-Dashboards mit Wetter-Graphen für verschiedene Zeiträume

Und das Wetterstation Daten auslesen Projekt wächst weiter: In naher Zukunft plane ich noch den Einbau einer Export-Funktion (z.B. als CSV). So kann man die Rohdaten herunterladen, falls man sie für andere Projekte oder noch tiefere Excel-Analysen benötigt.

Fazit

Wer seine Smart-Home-Daten wirklich selbst besitzen und auswerten möchte, kommt an einer eigenen Datenbank nicht vorbei. Die Kombination aus der EMOS Station, PHP und MariaDB läuft bei mir absolut fehlerfrei und liefert mir eine Wetterhistorie, die mir keine fertige App der Welt bieten könnte.

Überzeugt? Jetzt zuschlagen!

Sichere dir das Produkt jetzt zum besten Preis direkt bei unserem Partner.

🛒 Jetzt bei Amazon ansehen
👤
Über den Autor

Jens Deckardt

„Jens ist leidenschaftlicher Smart-Home-Enthusiast und Experte für Balkon- und Solarkraftwerke. Seit über 10 Jahren testet er Shelly-Komponenten und optimiert die Energieeffizienz in den eigenen vier Wänden. Auf Exofox teilt er seine Praxiserfahrungen ehrlich und unabhängig.“

* Als Amazon-Partner verdiene ich an qualifizierten Käufen. Für dich entstehen keine Mehrkosten.