Was Freetz Weather kann
Die schlechte Nachricht vorab: Der Freetz Weather Datenlogger (frewe-client) läuft nur auf Fritzbox 7390, Fritzbox 7270 und vermutlich auch Fritzbox 7240 sowie Fritzbox 7570 VDSL. Auf älteren Modellen unterstützt die Fritzbox-Hardware den USB-Modus der Wetterstation (HID, Interrupt-Modus) nicht und kann diese gar nicht ansprechen.
Die gute Nachricht: Freetz Weather in Kombination mit einer aktuellen Fritzbox macht einen teuren Zusatzrechner (ggf. sogar mit Software-Abo) unnötig. Ein kleines Tool liest die Wetterdaten von WH1080 und anderen Fine Offset Wetterstationen im einstellbaren Zeitabstand über die USB-Schnittstelle aus und sendet diese an diverse Wetterdienste.
Außerdem erlaubt die Alarm-Funktion, eine E-Mail- oder SMS-Benachrichtigung zu senden oder sogar bei einer bestimmter Rufnummer zu klingeln, wenn die eingestellten Werte unter-/überschritten wurden.
Und das alles ohne einen nennenswerten Mehrverbrauch an Strom oder weitere Folgekosten. Nur die Fritzbox muss eingeschaltet und mit dem Internet verbunden sein, was sie normalerweise immer ist. Die Fritzbox behält dabei natürlich alle sonstigen Funktionen.
Folgende Wetterstationen werden unterstützt:
- WH1080, WH1081, WH1090, WH1091, WH2080, WH2081
- WH3080, WH3081
- PCE-FWS 20
- Topcom National Geographics 265 NE
- Scientific Sales Pro Touch Screen Weather Station
- Watson W-8681
- Elecsa AstroTouch 6975
- Proove WP1400
- andere mit Easyweather kompatible USB-Geräte von Fine Offset Electronics
Zur Zeit wird Datenübergabe an folgende Wetterdienste unterstützt:
- Weather Underground
- PWS Weather
- Awekas
- Wetterpool
- Met Office Wow
- Wetter.com
- Wedaal.de
- Sauerlandwetter
- eigener Wetterserver (frewe-server) – nützlich, wenn man die Wetterdaten auch für eigene Auswertungen braucht. Wenn man frewe-server nutzt, werden die fehlenden Datensätze an alle Wetterdienste automatisch nachgeschickt, so dass Internetstörungen oder Stromausfälle zu keinem Datenverlust führen.
Weitere Wetterdienste, die eine HTTP-Schnittstelle (GET) haben, können ohne großen Aufwand einkonfiguriert werden.
Über die Software
Freetz Weather (frewe) ist meine Eigenentwicklung basierend auf dem Meteolinger Tool, welches auf die wwsr Utility von Michael Pendec zurückgeht. Es galt vor allem, ein kompaktes und auf Fritzbox zuverlässig laufendes Tool (frewe-client) zu bekommen, welches die Aufzeichnungen der Wetterstation über USB-Port abruft und diese realtime übers Internet an die Wetterdienste sowie optional an den eigenen Server (frewe-server) rausschickt, wo die Daten letztendlich gespeichert und ausgewertet werden können. Entscheidend war zunächst, dass die anderen Funktionen der Fritzbox nicht beeinträchtigt werden.
Sicherlich kann man auch komplexere Software für WH1080 (inkl. Speicherung und Auswertung der Wetterdaten) auf der Fritzbox zum Laufen bringen, das war jedoch nicht mein Fokus. Ich habe auch nicht genug Kenntnisse über make, um die erforderlichen Anpassungen komplexer Installationspakete für den Crosscompiler zu machen. Wenn neue Bibliotheken für Freetz kompiliert werden müssten, wäre die Sache nochmal viel aufwändiger. Außerdem habe ich schon mit meinem Tool festgestellt, dass es diverser kleiner Anpassungen bedarf, damit das Programm auf Fritzbox überhaupt richtig läuft. Dafür muss man den kompletten Quellcode überblicken, was bei größeren Tools nicht einfach ist. Hinzu kommt noch, dass die Fritzbox keine Festplatte hat, daher müssten alle genutzten Pfade wie /etc und /var entsprechend umgelenkt werden (auf Flash-, RAM- oder USB-Speicher), damit man dort die Dateien überhaupt ablegen kann. Daher erstmal: ein kleines Tool ohne Datenspeicherung etc.
Die Software ist Open Source (GNU). Für diejenigen, die die Software gerne selbst aus Quellcodes bauen oder es für eine andere Hardware versuchen wollen, gib’t hier eine ausführliche Anleitung. Linux-Unerfahrene können sich das sparen.
Installation
Da die Fritzbox nicht “gefreetz” werden braucht, ist die Installation sehr einfach und besteht im Wesentlichen daraus, drei Dateien auf die Frizbox per FTP hochzuladen (oder auf einen USB-Stick zu kopieren) und ein paar Befehle von der Telnet-Kommandozeile einzugeben, damit die Software anläuft. Es ist keine Firmware-Aktualisierung der Fritzbox erforderlich.
Schritt 1. frewe herunterladen und Einstellungen anpassen
Aktuell ist die Version 1.7. Je nach Fritzbox-Version gibt’s eigene Downloads:
| Fritzbox-Version | Download-Link |
| Fritzbox 7240 | http://www.ozerov.de/frewe/frewe-7240-1.7.zip |
| Fritzbox 7270 v1 | http://www.ozerov.de/frewe/frewe-7270v1-1.7.zip |
| Fritzbox 7270 v2/v3 | http://www.ozerov.de/frewe/frewe-7270v2-1.7.zip |
| Fritzbox 7390 | http://www.ozerov.de/frewe/frewe-7390-1.7.zip |
| Fritzbox 7570 VDSL | http://www.ozerov.de/frewe/frewe-7570-1.7.zip |
Das ZIP-Archiv soll man auf dem PC auspacken. Es sind folgende Dateien drin:
- frewe-client ist eine fertige Programmdatei für die jeweilige Fritzbox Version.
- rc.frewe-client ist ein Script um die frewe-client auf Fritzbox zu installieren und zu starten (aber auch zu deinstallieren und zu stoppen).
- frewe-client.cfg ist eine Konfigurationsdatei. Diese soll man jetzt mit einem guten Texteditor (z.B. mit Notepad++) öffnen und die Einstellungen aufmerksam durchgehen und anpassen.
- frewe-server.php und frewe-server.sql sind Dateien für den eigenen Wetterserver, die wir im Schritt 3 brauchen werden.
Schritt 2. frewe-client auf Frizbox einrichten
In Fritzbox 7390 (und vermutlich auch Fritzbox 7570 VDSL) kann man jetzt einfach im Windows Explorer (nicht im Webbrowser!) auf ftp://fritz.box gehen, dort das Verzeichnis frewe erstellen und die Dateien frewe-client, rc.frewe-client und frewe-client.cfg dareinkopieren. Dieser Speicher ist bei der Fritzbox 7390 so ausgelegt, dass er Stromausfälle überlebt.
In Fritzbox 72xx braucht man als Speichermedium einen kleinen USB-Stick (1 GB reicht vollkommen), der später an die Fritzbox angeschlossen wird. Wir schließen den Stick erstmal am PC an, legen im Stammverzeichnis das Verzeichnis frewe an und kopieren die Dateien frewe-client, rc.frewe-client und frewe-client.cfg darein. Wenn die Fritzbox nur einen USB-Anschluss hat, braucht man zusätzlich einen USB-Hub, damit der USB-Stick und die Wetterstation gleichzeitig angeschlossen werden können.
Spätestens jetzt soll die Wetterstation (und ggf. der USB-Stick) an einen der USB-Ports der Fritzbox eingesteckt werden. In der Fritzbox-Konfiguration soll man ein Unbekanntes USB-Gerät sehen (und ggf. USB-Speicher, falls Sie den Stick nutzen). Der USB-Fernanschluss soll in der Fritzbox-Konfiguration ausgeschaltet sein.
Falls Sie die Software auf dem USB-Stick haben, müssen Sie jetzt rausfinden, unter welchem Namen die Fritzbox die USB-Daten gemounted hat. Einfach auf ftp://fritz.box schauen. Meist heißt das Verzeichnis uStor01, kann aber auch etwas wie Sony-StorageMedia-01 oder Samsung-S1Mini-01 heißen. Sie müssen nun daran denken, bei allen folgenden Telnet-Eingaben den Namen des Verzeichnisses nach /ftp/ einzufügen, also z.B. /var/media/ftp/uStor01/frewe/rc.frewe-client.
Jetzt schaltet man Telnet auf der Fritzbox ein. Dazu auf einem angeschlossenen Telefon #96*7* wählen. (Mit #96*8* kann man Telnet nach dem Abschluss der Installation ausschalten.)
Wir gehen jetzt per Telnet auf die Fritzbox. Dazu gibt man in der Suchzeile von Windows 7 einfach telnet fritz.box ein. Man kann auch eine komfortablere Telnet-Software wie Putty nehmen.
Nach dem Login mit dem Fritzbox-Password soll man die folgenden Kommandos im Telnet-Fenster zeilenweise eingeben oder besser dareinkopieren. Kleiner Trick für Anfänger: mit der Pfeiltaste “Nach oben” kann man die letzten Kommandos aufrufen.
chmod 755 /var/media/ftp/frewe/rc.frewe-client /var/media/ftp/frewe/rc.frewe-client testrun
Wenn Sie jetzt die aktuellen Wetterdaten sehen konnten, kann frewe-client grundsätzlich auf Ihrer Fritzbox laufen und kann die Werte der Wetterstation auslesen.
Jetzt richten wir alles ein, damit frewe-client (wie in der cfg-Datei definiert) läuft und beim Reboot der Fritzbox automatisch startet.
/var/media/ftp/frewe/rc.frewe-client install /var/media/ftp/frewe/rc.frewe-client start
Jetzt soll man alles prüfen und ggf. die Einstellungen in der cfg-Datei fein justieren. Nach jeder Änderung der cfg-Datei muss frewe-client neu gestartet werden.
/var/media/ftp/frewe/rc.frewe-client restart
Schritt 3. frewe-server installieren (optional)
Der eigene frewe-server ist zunächst eine sehr einfache PHP-Anwendung, die die Daten von frewe-client per HTTP aufnimmt und in eine mySQL-Datenbank speichert. Ein besonderes Feature: frewe-server kann dem frewe-client mitteilen, wann der letzte Wettereintrag erfolgte, so dass frewe-client die fehlenden Einträge nachschickt. So entstehen auch bei DSL-Störungen oder Stromausfall keine Verluste der Wetterdaten.
Man braucht für frewe-server einen kleinen Webhoster mit PHP und mySQL, was man heutzutage überall bekommt. Erst einfach die Tabelle für Wetterdaten anlegen (dazu kann man einfach die Datei frewe-server.sql in phpMyAdmin importieren). Dann in der Datei PHP-Datei frewe-server.php die Einstellungen für die Datenbank anpassen, den Serverkey und Ihre E-Mail-Adresse festlegen. Von dieser E-Mail-Adresse werden Fehlermeldungen (falls vom frewe-client etwas unerwartetes gemeldet wird, z.B. USB-Gerät nicht erreichbar oder Wetterdaten unplausibel) und Alarm-E-Mails geschickt. Die Empfänger-Adressen werden in der cfg-Datei auf der Fritzbox konfiguriert.
Jetzt kann die Datei frewe-server.php auf den Webserver hochgeladen werden. Der richtige Pfad zum Server sowie der Serverkey gehören in die Datei frewe-client.cfg auf der Fritzbox. So kommen die Daten auch an.
Beim ersten Verbinden wird der frewe-client alle bisherigen Wetterdaten aus dem Speicher der Wetterstation (das sind bis zu 4080 Einträge) an den frewe-server und andere Wetterdienste schicken, damit diese schon mal gesichert sind. Dieser Vorgang kann einige Minuten dauern. Soll das vermieden werden, legen Sie in der mySQL-Tabelle frewe_history einen Dummy-Eintrag mit dem aktuellen Datum und Uhrzeit an.
Deinstallation
Sollte man irgendwann den frewe-client nicht mehr benutzen wollen, kann man ihn einfach und schmerzlos mit folgenden Telnet-Eingaben deinstallieren und löschen.
/var/media/ftp/frewe/rc.frewe-client stop /var/media/ftp/frewe/rc.frewe-client uninstall rm -Rf /var/media/ftp/frewe
Upgrades
Für Upgrades gibt’s noch keinen besonderen Mechanismus. D.h. wie oben beschrieben deinstallieren, dann von vorne gemäß Installationsanleitung vorgehen. Die cfg-Datei kann man beibehalten. Man sollte die neue Version der cfg-Datei troztdem nach neuen Einstellungen prüfen. Beim Upgrade von Version 0.x soll man die neue cfg-Datei nehmen und konfigurieren, sie hat sich grundlegend geändert.
Analog für den frewe-server. Man soll die neue frewe-server.php nehmen und die Einstellungen anpassen. Die mySQL-Tabelle kann beibehalten werden. Beim Upgrade von Version 0.x soll die SQL-Datei noch einmal eingespielt werden, da die Tabelle erweitert wurde.
Debugging und Support
Sollte frewe-client nicht auf Anhieb laufen, kann man mit folgendem Kommando den Status abrufen und sehen, ob frewe-client installiert ist und läuft.
/var/media/ftp/frewe/rc.frewe-client stat
Wenn es Probleme gibt, kann man frewe-client einmal mit allen Einstellungen im Debug-Modus laufen lassen. Meist sieht man dann aus dem detaillierten Output, wo es hakt.
/var/media/ftp/frewe/rc.frewe-client testruncfg
Bitte richten Sie alle Fragen und Anregungen zu Freetz Weather an mich per E-Mail.
Versionshistorie
| Version | Datum | Beschreibung |
| 0.1 | 27.12.2011 | Erste veröffentlichte Version |
| 0.2 | 28.12.2011 | Konfiguration aus der Datei einlesen, Unterstützung mehrerer Wetterdienste (PWS, Awekas) |
| 0.3 | 29.12.2011 | Erste statisch gelinkte Version, die auf einer nicht gefreetzten Fritzbox läuft, neue Installationsanleitung, Unterstützung weiterer Wetterdienste (Wetterpool, Met Office Wow), Interval-Einstellung wird aus der Wetterstation gelesen |
| 0.4 | 03.01.2012 | Fehlende Einträge und Fehlemeldungen an frewe-server schicken, Unterstützung für Wetter.com, diverse Fixes |
| 0.5 | 08.01.2012 | Support für WH3080, Unterstützung für Wedaal.de, Unterstützung der Kalibrierung von Sensoren, zusätzliche Prüfungen auf Anzahl der tatsächlich gespeicherten Daten |
| 0.6 | 19.01.2012 | Verbesserte Plausibilitätsprüfungen der Wetterdaten, doppeltes Lesen vom USB-Gerät zur Vermeidung der Datenfehler, Zeitberechnung und Übertragungsproblem an frewe-server gefixt |
| 1.0 | 26.01.2012 | Neue einfachere Konfiguration der bekannten Wetterdienste und frewe-server aus der cfg-Datei, Erweiterung der übertragenen Daten um Solarstrahlung und UV, abgebrochene Übertragung bei einem Datenfehler gefixt, verbesserte rc-Datei |
| 1.1 | 27.01.2012 | Berechnungsfehler bei Adressüberlauf gefixt |
| 1.2 | 28.01.2012 | Nochmal Adressberechnung gefixt, besseres Signal-Handling, explizite Erkennung vom Funksignalverlust, mehrere Leseversuche bei USB-Fehlern |
| 1.3 | 28.01.2012 | Probleme mit dem Starten des frewe-client beim Reboot der Fritzbox gefixt |
| 1.4 | 01.02.2012 | Neue rc-Datei erlaubt zuverlässigen Start vom USB-Stick beim Reboot, frewe-client jetzt um 50% kleiner durch Verwendung von http_fetcher statt curl-Bibliothek |
| 1.5 | 05.02.2012 | Alarms bei Unter-/Überschreiten bestimmter Werte (per E-Mail, URL- oder Commando-Aufruf) eingeführt, Wiederholung der Datenlieferung an bekannte Wetterservices bei fehlenden Daten, diverse Fixes |
| 1.6 | 10.02.2012 | Falsche Ausgabe vom UV-Wert gefixt (nur WH3080) |
| 1.7 | 12.02.2012 | Sauerlandwetter hinzugefügt |
Tipps und Tricks
Auch wenn die Wetterstation an der Fritzbox hängt, kann man sie mit Easyweather-Software auf eigenem PC nutzen. Dafür aktiviert man auf der Fritzbox den USB-Fernanschluss und installiert auf dem Rechner eine entsprechende Software von AVM. Wegen irgendeinem Bug muss ich auf meiner Fritzbox 7390 den USB-Fernanschluss ein-, aus- und dann wieder einschalten, damit das USB-Gerät erkannt wird. Aber Achtung: Solange der USB-Fernanschluss auf der Fritzbox aktiviert ist, kann frewe-client die Wetterdaten nicht ablesen, da der USB-Port vom USB-Fernanschluss blockiert ist.
Auch wenn die Frizbox im Keller steht, heißt es nicht, dass die Basisstation der Wetterstation auch im Keller stehen soll. Man kann sich für unter 10 Euro bei eBay einen sog. USB-Extender kaufen, der USB über eine Ethernet-Leitung durchschleust, und die Basisstation dort im Haus aufstellen, wo es eine Netzwerkdose gibt.
TODOs
Ich werde das Tool noch etwas weiterentwickeln. So habe ich folgende mögliche Features schon im Blick:
- Evtl. akkurate Zeit- und Regenberechnung
- Evtl. die Alarms, die in der Wetterstation gespeichert sind, auslesen und auf sie reagieren
- Handling vom rain counter overflow
- Evtl. einfache Datenauswertungen mit frewe-server.php machen
- Evtl. URLs weiterer Wetterdienste einkonfigurieren
Es lohnt sich also hier ab und zu nach einer neueren Version zu schauen. Aber: it’s ready when it’s ready.
Wer C oder PHP kann und an dem Tool mitentwickeln will, ist gerne willkommen.

Pingback: Wetterstation WH1080 und instabiler Regensensor | Baublog von Katja & Alexey
Pingback: Wetterstation über USB mit der Fritzbox verbinden | Baublog von Katja & Alexey