Der WEATHERMAN-2 … die ideale Wetterstation für die Hausautomation

, ,
Print Friendly, PDF & Email

Hier wird die nächste Generation meiner Wetterstation WEATHERMAN-2 beschrieben. Viele Erfahrungen von meiner ersten Wetterstation sind in dieser Entwickung berücksichtigt worden. Herausgekommen ist eine Wetterstation, die alle für die Hausautomation wichtigen Meßgrößen erfasst und die Daten über WLAN  an den Browser und/oder den jeweiligen Hausautomations-Server überträgt. Da ich selbst die Homematic verwende wurde das System entsprechend ausgelegt. Mit der Möglichkeit, ein standardisiertes JSON-Datentelegramm an einen beliebigen Server im Heimnetz zu versenden, können natürlich auch andere Hausautomationssysteme wie IObroker oder RedNode mit Wetterdaten versorgt werden.

1  Warum eine besondere Wetterstation für die Hausautomation ?

Ursprünglich wollte ich ja gar keine Wetterstation selber bauen, sondern wollte die für die Homematic vorgesehene Wetterstation nehmen oder ggf. andere Wetterstationen anpassen. Aber nach dem Studium der technischen Daten kam doch etwas Enttäuschung auf: Einerseits war der Preis ganz schön hoch und andererseits fehlten den typischen Wetterstationen wesentliche Eigenschaften, die insbesondere für die Hausautomation wichtig sind.

Das geht schon beim Regenmesser los: Verwendet wird meist ein sog. Regenmengenmesser mit einem Trichter und einer Messwippe. Beim Durchlaufen von Wasser gibt diese Einrichtung Impulse ab, die dann ausgewertet werden. Bei Beginn eines Regenschauers kann das aber u.U. einige Minuten dauern, bis die Wippe schaltet. In dieser Zeit ist die Markise schon nass, bevor sie automatisch eingefahren werden kann. Auch ein zu lange geöffnetes Dachfenster kann zu unangenehmen Wasserschäden führen. Fazit: Für die Hausautomation braucht man einen sehr schnell reagierenden Regenmelder („one drop only“), der zur Zeit nur mit besonderen zusätzlichen externen Modulen (>>50€) darstellbar ist. Gleiches „Elend“ bei der Erkennung, ob Sonne scheint oder nicht. Die meist verwendeten Helligkeitssensoren auf Basis von Fotowiderständen  haben eine viel zu geringe Dynamik, um störsicher sowohl im dunklen Winter als auch im hellen Sommer eindeutig den Sonnenschein zu erkennen. Ein moderner hochdynamischer Helligkeitssensor  ist hier viel besser geeignet. Und natürlich ist es für die Hausautomation wichtig, nicht alleine zu wissen, ob die Sonne scheint oder nicht, sondern wo genau die Sonne am Himmel steht. Nur so kann man dann erkennen, ob beispielsweise Fenster besonnt sind, die dann ggf. automatisch abgeschattet werden können. Deshalb ist eine Berechnung der Sonnenposition unverzichtbar! 

Wetterstationen, die nicht für die Homematic konzipiert sind, können prinzipiell natürlich auch verwendet werden, aber man hat das Problem, die Daten in die Homematic zu bekommen. Zudem sind üblicherweise kein schneller Regenmelder und auch kein Sonnensensor enthalten. Und für mich besonders störend ist die meistens verwendete  Batterie-Stromversorgung. Das ist schon deshalb negativ, weil man üblicherweise eine leistungshungrige Beheizung für den Regenmelder unbedingt braucht.  All diese Argumente führten mich schließlich zum Selbstbau meiner eigenen Wetterstation WEATHERMAN-2.

2  Das kann der WEATHERMAN

Der WEATHERMAN-2 ist die Fortsetzung einer Reihe von Sensor- und Aktor-Modulen ( die WIFFIs), die hauptsächlich zur  Erweiterung  und  Ergänzung der Hausautomation mit der Homematic konzipiert sind. Diese Module sind allesamt Funkmodule , die das in nahezu jedem Haushalt vorhandene gesicherte WLAN-Funknetz verwenden, um mit der Homematic-CCU zu kommunizieren.

Der WEATHERMAN hat eine Vielzahl von Sensoren, mit denen folgende Wettersignale messbar sind:

  • Windgeschwindigkeit mittel in km/h
  • Windgeschwindigkeit spitze in km/h
  • Windstärke in Bft
  • Windrichtung als Text und in Grad
  • Aussentemperatur in °C
  • Aussentemperatur gefühlt in °C
  • Taupunkt-Temperatur in °C
  • rel. Luftfeuchte in %
  • abs. Luftfeuchte in g/m3
  • Luftdruckmessung bez. auf N.N. in mb
  • Luftdruck-Trend zur Erkennung von Wetteränderungen 
  • Regenmelder  (one drop only!) mit einstellberer Empfindlichkeit
  • Regenmengenmesser  mit mm/h und mm/24h
  • Sonnen-/Helligkeitssensor mit einstellbarer Schaltschwelle
  • Sonnenstunden gestern und heute
  • Berechnung Sonnenstand Azimut
  • Berechnung Sonnenstand Elevation
  • Datenlogger 24h und 28Tage integriert
  • optional Temperatur und Feuchte mit dem SHT21
  • optional Himmelstemperatur mit MLX90614 Chip
  • optional UV-Index mit VEML6070 Chip
  • optional separate Temperaturmessung mit DS18B20

Die Datenübertragung erfolgt mit dem hauseigenen WLAN. Die Datenübertragung zur Homematic arbeitet völlig automatisch im Hintergrund, indem die Daten auf entsprechende CCU-Systemvariable abgebildet/synchronisiert  werden. Für die Verwendung in Verbindung mit ioBbroker oder anderen Hausautomationssystemen kann der WEATHERMAN anstatt zur CCU auch JSON Daten an eine programmierbare Serveradresse versenden. Und natürlich kann man die Wetterstation auch ganz ohne Hausautomation verwenden: dafür hat der WEATHERMAN sogar seine eigene Webseite, womit die Wetterdaten im Heimnetz mit jedem üblichen Browser einfach angesehen werden können. So  hat man die aktuellen Wetterdaten jederzeit auch auch auf dem Tablet oder Smartphone im Blick.

Das Erscheinungsbild könnte man zwar mit einer App graphisch aufpeppen, aber der Aufwand war mir einfach zu groß. Schließlich steht die Funktionalität an erster Stelle und die ist mit der aktuellen Webseite voll erfüllt. Wer gerne eine graphisch „aufgepeppte“ Anzeige haben möchte, der kann dies einfach mit IObroker oder NodeRed machen. Unten sind entprechenden Hinweise dazu. 

Der integrierte Datenlogger zeichnet die Daten der letzten 24h im Stundentakt auf und speichert diese Daten im EEPROM, so daß sie auch bei Spannungsausfall nicht verloren gehen. Darüber hinaus werden täglich um 24h bestimmte Daten gespeichert und sind im Datenlogger für die letzten 28 Tage gespeichert. Das erlaubt sehr komfortabel, sich einen Überblick über die Wetterdaten des letzten Monat zu verschaffen. Mit einem Klick auf den csv-export-Link  kann man sogar die Daten im Excel-csv-Format herunterladen und auf dem heimischen PC ansehen bzw. verarbeiten. Die folgenden Bilden zeigen die entsprechenden Webseiten des WEATHERMAN-Datenloggers. Hier die Daten der letzten 24h:

 und das Wetter der letzten 28 Tage:

3  Nachbau leicht gemacht

Eine sehr gute einfache Lösung bietet sich mit der preiswerten Verfügbarkeit eines Windmessers W132 an, der als Ersatzteil für die komplette Wetterstation W155 oder W177 angeboten wird. Dieses Teil W132 hat einen relativ robusten Windmesser mit einer Windfahne für die Windrichtung. Ebenfalls eingebaut ist ein Temperatur- und Feuchtigkeitssensor mit einer eigenen Elektronik, welche  die Daten normalerweise mittels 433Mhz-Sender an die hier nicht verwendete Basisstation sendet. Im folgenden Bild ist das Modul direkt am Mast befestigt.

Insgesamt besteht der WEATHERMAN aus den im Bild gezeigten Modulen, wobei der Regenmengenmesser und das W132 Ersatzteil fertig gekauft werden. Der WEATHERMAN-Controller kann als Bausatz in meinem Webshop gekauft werden. In der ausführlichen umfangreichen  Bauanleitung wird genau beschrieben, wie die Wetterstation zusammen gebaut wird. Zum Überblick hier nur die wesentlichen Schritte:

Das W132-Modul wird mit einem Kabel modifiziert, so daß die Daten vom WEATHERMAN-Controller verarbeitet werden können. Normalerweise werden die W132-Messdaten intern an den 433Mhz-Sender geschickt und dort ausgesendet. Der WEATHERMAN hört diese Daten einfach ab und dekodiert diese. Die übliche Versorgung des W132 mittels Batterien entfällt, da  das Teil vom WEATHERMAN mit 3,3V versorgt wird. Die dafür notwendige Modifikation des W132 ist relativ einfach: nur drei(!) Leitungen sind für den Anschluss des W132 notwendig. In der Bauanleitung ist detailliert beschrieben, wie die Modifikation des W132 erfolgt. Das folgende Bild zeigt die geöffnete Box des W132 mit den drei verzinnten Leitungen, über die das Modul von aussen mit 3V-Spannung versorgt und das Datentelegramm „angezapft“ wird.

Der WEATHERMAN-Controller ist in einem robusten wassergeschützten kompakten Standard-Gehäuse untergebracht (Bild unten). Dieses Gehäuse nimmt auch den Regensensor (vergoldete Platine) , den Helligkeitssensor mit dem Lichtleiter und im Innenraum den Barometersensor auf. 

Hier ein Eindruck vom Innenleben des Hauptgehäuses mit aufgeklappter Ober- und Unterschale:

Den WEATHERMAN-Controller gibt´s nur als Bausatz. Der Nachbau ist auch für den weniger versierten Elektroniker möglich, denn mit dem angebotenen  Bausatz muß man eigentlich nur die mitgelieferte Platine bestücken und sauber verlöten. Der Mikrocontroller WeMos mini wird  bereits komplett programmiert geliefert, so daß man sich nicht mit der komplexen Arduino-Entwicklungsumgebung „auseinander setzen“ muß.  Aber man sollte schon Erfahrung mit dem Zusammenbau und Inbetriebnahme von elektronischen Modulen haben! Mit der detaillierten umfangreichen Bauanleitung  kann eigentlich  wenig „schief “ gehen, wenn man sorgfältig alle Schritte ausführt, über etwas Löterfahrung und ein Multimeter verfügt.

Der neu entwickelte Regensor ist ein besonderes „Schmankerl“! Dafür wurde eine von unten beheizte Platine mit vergoldeten (Korrosionsschutz!)  Leiterbahnen konzipiert. Ausgewertet wird sowohl die Widerstands- als auch Kapazitätsänderung, wenn ein Regentropfen auf das Messgitter tropft. Damit ist in gewissen Grenzen nicht nur  eine analoge Intensitätsmessung möglich sondern mit einer individuellen Schwellenvorgabe  auch die Schaltempfindlichkeit des Regenmelders einstellbar. Insgesamt ist die Reaktion des Regenmelders inkl. Übertragung zur CCU im Bereich von 1 bis 5sec !!.

Wichtig für eine gute Funktion ist, daß die Sensorfläche fettfrei ist. Sinnvollerweise reinigt man bei der Inbetriebnahme den Sensor mit Spiritus oder dergleichen.

Für den Nachbau habe ich hier die Einkaufsliste mit Bezugsquellen zusammengestellt. Die zugehörigen aktuellen Preise zeigen, daß der Selbstbau des WEATHERMAN relativ preiswert ist. Mal abgesehen davon, daß die Funktionalität insbesondere im Hinblick auf die Nutzung mit der Hausautomation überragend ist.

4 Programmierung und Einstellung

Der WEATHERMAN verwendet als Mikrocontroller mit WLAN den WeMos mini mit integrierter USB-Schnittstelle. Der WeMos ist vorprogrammiert, lediglich die für das WLAN notwendigen Zugangsdaten für den heimischen Router müssen eingegeben werden. Dies kann sehr komfortabel erfolgen, indem man den WEATHERMAN zur Einstellung als Hotspot arbeiten läßt.  Auf der eigenen Webseite im Hotspotmodus des WEATHERMAN (IP: 192.168.4.1) kann man dann die notwendigen Daten und Einstellungen mit einem normalen Browser durchführen. Dafür sind keinerlei Programmierkenntnisse notwendig, also alles sehr einfach. Die folgenden Schritte zeigen kochrezeptartig das Vorgehen bei geöffnetem WEATHERMAN-Controller Gehäuse:

1.RESET-Taster seitlich am WeMos mini drücken. Einige Sekunden  warten bis die blaue LED auf dem WeMos alle 1sec blinkt (dabei versucht der WEATHERMAN sich ins WLAN einzuloggen, was natürlich wegen des Fehlens der Zugangsdaten noch nicht geht!).

2. Dann den PROG-Taster (der Taster auf der Hauptplatine) etwa 2sec drücken bis die blaue LED im 0,5sec-Takt blinkt. Jetzt ist der WEATHERMAN im Hotspot-Modus.

3. Mit dem Smartphone oder besser Laptop  nach einem Hotspot mit dem Namen „wiffi“ suchen und die Verbindung herstellen. Da es eine gesicherte Verbindung ist, muß beim ersten Zugang das Kennwort „wiffi1234“ eingegeben werden. Danach müßte, wenn alles richtig funktioniert, eine gesicherte Verbindung vom Router zum „wiffi“ vorhanden sein.

4. Auf dem so im WLAN eingeloggten Smartphone oder Tablet mit der Adresszeile des Browsers die Hotspot-Webseite des WEATHERMAN  aufrufen mit: 192.168.4.1/? Die Antwort müßte so aussehen:

5. Jetzt die notwendigen Eingaben in der Adresszeile des Browsers machen. Das macht man mit folgenden Befehlen, die immer mit einem Doppelpunkt abgeschlossen werden:
192.168.4.1/?ssid:my_ssid:  dabei ist „my_ssid“ die SSID des eigenen Routers  (Achtung, die SSID darf keinen Doppelpunkt enthalten!)
192.168.4.1/?pwd:my_pwd:  dabei ist „my_pwd“ das Router-Passwort des eigenen Routers (Achtung, das PWD darf keinen Doppelpunkt enthalten!) 192.168.4.1/?ccu:my_ccu:  und „my_ccu“ ist die feste (!) IP der eigenen CCU.
Wenn alle drei Daten richtig eingegeben sind und auf der Webseite auch richtig angezeigt werden , dann ist der WEATHERMAN startbereit und kann mit dem Befehl:

192.168.4.1/?reset: oder dem Druck auf den RESET-Taster (am WeMos)  neu gestartet werden. Nach einigen Sekunden blinkt die blaue LED  solange im 2sec Takt ,bis der WEATHERMAN sich im heimischen WLAN eingeloggt hat. 

Achtung:
SSID und PWD dürfen zwar Tiefstriche aber keinen Doppelpunkt, Leerzeichen, Sonderzeichen oder äöüß  enthalten! Das gibt sonst mit vielen Wifi-Chips und auch mit der Homematic nur Ärger und schwierige Fehler.  Bitte keine Email an mich wegen entsprechender Änderungen; das bleibt so wegen meiner schlechten Erfahrungen mit diesem Thema!

Achtung:
Im Hinblick auf eine ununterbrochene WLAN-Konnektivität zum Router wird empfohlen, die automatische Kanalwahl im Router abzuschalten und einen geeigneten festen Kanal einzustellen.

Jetzt kann die Webseite des WEATHERMAN im Heimnetz aufgerufen werden. Dazu schaut man im Router nach, welche IP der WEATHERMAN bekommen hat und ruft dann einfach diese IP auf, indem man diese IP in die Adresszeile des Browsers eingibt. Oder man schreibt einfach in die Adresszeile: http://weatherman.local.  Allerdings kann diese letzte Methode u.U. in einigen Heimnetzen nicht erfolgreich sein. Ich persönlich verwende immer die IP, dann hat man eine eindeutige Zuordnung. Deshalb stellt man dann auch sinnvollerweise den Router so ein, daß er dem WEATHERMAN immer diese gleiche IP zuteilt.

Die Antwort auf den Browseraufruf ist im folgenden Bild dargestellt.

Das ist eigentlich schon alles. Für besondere individuelle Anforderungen gibt es noch mehr Befehle, die oben im Bild oder in der „Befehlsliste“ aufgelistet sind. Diese Befehle sind aber nur für besondere Anwendungen und werden weiter unten erklärt.

5 Anlernen an die CCU

Zum Anlernen an die CCU müssen vorher die Firewall-Einstellungen der CCU richtig eingestellt werden. Bei der CCU2 stellt man alles auf Vollzugriff. Bei der CCU3 ist mit dem Sicherheitassistenten die Einstellung  „relaxed“ auszuwählen. Die automatische Verbindung zur CCU wird über Systemvariablen hergestellt, deren Namen von mir vorgegeben sind (in rot). Allerdings lassen sich mit dem name-Befehl beliebige andere Namen für die Systemvariablen  definieren. Im ersten Schritt sollte man diese Vorgabe erst mal behalten! Darunter werden auf der WEATHERMAN-Webseite die Sensorsignale der Wetterstation dargestellt.  Diese Werte werden alle 60sec in einem festen Zeitraster aktualisiert, um das Datenaufkommen für die Signalübertragung zu begrenzen. Erst durch Aktualisierung der Webseite oder Klick auf den Link Aktualisierung der Messwerte kann auch außerhalb des Zeitrasters die Anzeige jederzeit aktualisiert werden.

Das Anlernen des WEATHERMAN an die CCU ist sehr einfach, weil für jedes Sensorsignal nur eine korrespondierende Systemvariable angelegt wird. Entsprechend der Vorgabe (rote Namen) sind folgende Systemvariablen entweder manuell oder automatisch in der CCU anzulegen:

w_ip vom Typ „Zeichenkette“
w_temperatur vom Typ „Zahl“ mit Maßeinheit „°C“
w_windchill vom Typ „Zahl“ mit Maßeinheit „°C“
w_taupunkt  vom Typ „Zahl“ mit Maßeinheit „°C“
w_himmeltemperatur  vom Typ „Zahl“ mit Maßeinheit „°C
w_feuchte_rel vom Typ „Zahl“ mit Maßeinheit „%“
w_feuchte_abs vom Typ „Zahl“ mit Maßeinheit „g/m3″
w_regensensor_wert vom Typ „Zahl“
w_regenmelder vom Typ „Logikwert“
w_regenstunden_heute vom Typ „Zahl“ mit Maßeinheit h
w_regenstaerke vom Typ „Zahl“ mit Maßeinheit mm/h
w_regen_letzte_h vom Typ „Zahl“ mit Maßeinheit mm 
w_regen_mm_heute vom Typ „Zahl“ mit Maßeinheit mm
w_regen_mm_gestern vom Typ „Zahl“ mit Maßeinheit mm
w_barometer vom Typ „Zahl“ mit Maßeinheit mb
w_barotrend vom Typ „Zeichenkette“
w_wind_mittel vom Typ  Zahl mit Maßeinheit m/s
w_wind_spitze vom Typ  Zahl mit Maßeinheit m/s
w_windstaerke vom Typ  Zahl mit Maßeinheit bft
w_windrichtung vom Typ „Zeichenkette“
w_wind_dir vom Typ  Zahl mit Maßeinheit °
w_lux vom Typ „Zahl“ mit Maßeinheit „lux“
w_uv_index vom Typ „Zahl“ 
w_sonne_scheint vom Typ „Logikwert“
w_sonnenstunden_heute vom Typ „Zahl“ mit Maßeinheit „h“
w_elevation vom Typ  Zahl mit Maßeinheit °
w_azimut vom Typ  Zahl mit Maßeinheit °
w_minuten_vor_sa vom Typ „Zahl“ mit Maßeinheit „min“
w_minuten_vor_su vom Typ „Zahl“ mit Maßeinheit „min“

Die oben genannten Systemvariablen sind „normale“ CCU-Systemvariablen, deren Zahl nicht wie bei den HM-Skriptvariablen auf  200 begrenzt ist !

Manuell kann man diese Systemvariablen auf der CCU anlegen wie jede andere Systemvariablen auch. Wichtig ist die exakte Schreibweise, weil sonst die Daten nicht synchronisiert werden.  Es müssen nur diejenigen Systemvariablen definiert werden, die man auch benutzen möchte!

Empfohlen wird aber das automatische Anlegen der Systemvariablen. Dazu einfach den setvar-Befehl eingeben oder noch einfacher den setvar -Link auf der Webseite „Befehlsliste“ anklicken und dann ca. 60sec warten. Damit entfällt das manuelle Eingeben der Systemvariablen!

Die Aktualisierung aller genannten  Systemvariablen erfolgt automatisch, aber nur wenn sich die Messwerte ändern oder in einem vorgegebenen Zeitraster. Dadurch wird vorteilhafterweise der Datenfluss stark reduziert.

Firewall-Einstellungen: Zum Anlernen an die CCU müssen vorher die Firewall-Einstellungen der CCU richtig eingestellt werden:

  • Bei der CCU2 stellt man alles auf Vollzugriff.
  • Bei der CCU3 und bei der RaspberryMatic reichen folgende Einstellungen:

… und kein Häkchen bei Authentifizierung!

 

6 Befehlsliste des WEATHERMAN

Auf der Befehlsliste-Seite sind Befehle dargestellt, mit denen bestimmte Eigenschaften des WEATHERMAN bei Bedarf geändert werden können. Normalerweise ist dies aber nicht notwendig. Nur bei speziellen Bedürfnissen wie Änderung der Namen für die CCU-Systemvariablen oder Löschung der Router Zugangsdaten etc. sollte man diese Befehle anwenden.

Die Zeit holt sich  der WEATHERMAN von einem öffentlichen Zeitserver z.B. „pool.ntp.org“ aus dem Internet. Diese Zeitserver sind temporär manchmal überlastet und dann versucht der WEATHERMAN erfolglos die Zeit zu holen. Das kann zu Instabilitäten führen. Abhilfe ist die Verwendung des in vielen Routern eingebauten Zeitservers. Beispielsweise kann man bei der Fritzbox den Zeitserver aktivieren und dann als ntp-Adresse einfach die IP der Fritzbox mit dem im WEATHERMAN verfügbaren ntp-Befehl verwenden.

Einige Erklärungen sind noch für den setip-Befehl notwendig. Damit kann man die Vergabe der IP-Adresse regeln. Standardmäßig  ist DHCP eingestellt, wobei der Router dem Modul eine IP-Adresse zuteilt.  Wenn man dem Modul aber eine bestimmte IP zuteilen möchte, dann kann das mit dem setip-Befehl folgendermaßen geschehen:

setip:192.168.178.61: >>setzt die IP 192.168.178.61 und DNS ist 192.168.178.1 und Gateway ist 192.168.178.1 und Subnet ist 255.255.255.0

setip:192.168.178.61:3:5: >>setzt die IP 192.168.178.61 und DNS ist 192.168.178.3 und Gateway ist 192.168.178.5 und Subnet ist 255.255.255.0

setip: >> setzt zurück auf DHCP bzw der Standardeinstellung

Die IP-Einstellungen bleiben auch bei Komplett-Updates erhalten. Lediglich beim Werksreset wird auf die Grundeinstellung DHCP zurückgesetzt.

7 Einstellungen im Expertenmodus

Das Gleiche gilt für den sog. Expertenmodus. Normalerweise ist  keine Einstellung notwendig!!!!! Einstellungen sollten auch nur dann vorgenommen werden, wenn man wirklich weiß, was man verändert. Im ungünstigen Fall kann der WEATHERMAN irreparabel beschädigt werden. Hier ist diese Einstellungsseite:

8 Optionale Überwachung der WLAN-Verbindung

Wenn man mit den Messwerten des WEATHERMAN in der CCU wichtige Aktoren schalten möchte (Fenster, Markisen etc.) , dann kann es hilfreich sein, eine regelmässige Überwachung der Datenverbindung zwischen WEATHERMAN und CCU zu haben. Mit der regelmässigen Übertragung der WEATHERMAN-IP (ca. alle 5min)  zur CCU lässt sich mit den folgenden zwei einfachen WebUI-Programmen nun erkennen, ob regelmässig Messdaten vom WEATHERMAN in der CCU ankommen. Damit ist auf der CCU-Seite eine grundsätzliche „alive“-Erkennung des WEATHERMAN selbst als auch der WLAN-Strecke zum Router möglich. Für diese beiden WebUI-Programme ist lediglich eine neue Systemvariable w_connect als Logikwert mit den Zuständen Ja/Nein zu definieren:

Die Zeitsteuerung beim zweiten Programm ist auf zyklische Auslösung alle 5min eingestellt. und bei beiden  Programmen das Retrigger-Häkchen beachten!

Und wer wie ich dauernd Probleme mit der CCU-Zeitsteuerung hat, der sollte den Timer von CuxD verwenden, so wie im folgenden Bild:

9 Rückstellen in Werkszustand

Manchmal kann es notwendig sein, die im EEPROM abgelegten Daten zu löschen und den WEATHERMAN in den Auslieferungszustand zu versetzen. Hierfür wird durch 1sec-Drücken des PROG-Tasters zuerst der Hotspot-Modus eingestellt, was durch 1sec- Blinken der blauen LED angezeigt wird. Danach hält man den PROG-Taster  solange gedrückt, bis die blaue LED dauerhaft leuchtet. Jetzt werden die EEPROM-Daten gelöscht. Läßt man die PROG-Taste wieder los, dann startet WIFFI neu und geht automatisch in den Hotspot-Modus, um so wieder neu an den Router angelernt zu werden. 

10 Update des WEATHERMAN

Aktuelles Update Zip-Archiv von der Webseite stall.biz runterladen und den *.bin File entpacken und auf dem PC speichern. Achtung nicht das Zip-Archiv zum Update verwenden, das beschädigt u.U. den WEATHERMAN. 

Das Update des WEATHERMAN kann ohne Demontage bzw. Geräteöffnung komplett über das WLAN erfolgen. Dabei ist der WEATHERMAN vorher im Heimnetz über WLAN eingeloggt und die folgende Update-Webseite ist aufrufbar.  Dort werden verschiedene Alternativen zum Updaten des Moduls  angeboten:

 Nach dem Auslösen beispielsweise eines Komplett-Updates kommt dieses Bild:

Jetzt erst 15sec warten, weil der Update-Server gestartet wird und dann erst (nach ca. 15sec)  mit einem Klick auf den Link den sog. Update-Explorer auslösen, welcher folgendes Bild anzeigt. Damit wird der Update-File ausgesucht und mit dem Update-Button das Update gestartet: 

Nach einigen Sekunden wird ein erfolgreiches Update bestätigt und der WEATHERMAN neu mit der upgedateten Firmware gestartet:

Manchmal wird der Update-Server nicht automatisch im Browser sichtbar. Dann eingeben: <IP>/update  (ohne Fragezeichen !)

11 Update der Firmware über USB

Ein Update über USB ist etwas komplizierter als über WLAN. Aber wenn beispielsweise ein neues Ersatz-WeMos-Modul verwendet werden soll oder der vorhandene WeMos sich „seltsam verhält“, dann ist  ein Update über USB die einzige Lösung. Manchmal ist auch ein neues Flashen sinnvoll, weil z.B. die Firmware durch Hardwarefehler „zerschossen“ wurde und das WLAN nicht mehr richtig funktioniert. Hier die Anleitung mit dem Tool ESP Easy Flasher:

  • ESP Easy Flasher Tool runterladen, in ein Verzeichnis ESPEasyFlasher entpacken
  • Für den WeMos ggf. den notwendigen USB-Treiber installieren: windows 32&64bit  oder ggf. diesen hier bei anderen USB-Chips  
  •  USB-Kabelverbindung PC <>  WeMos Modul herstellen
  • Den für das Flashen  notwendigen  aktuellen Firmware-Update-bin-File in das Unterverzeichnis ESP_Easy_Flasher-master/BIN speichern
  • Die Factory-bin-Files des WeMos  hier runterladen und entpacken und beide bin-Files ebenfalls in das Unterverzeichnis ESPEasyFlasher/BIN speichern
  • Mit ESP EASY Flasher.exe das Flash-Programm jetzt starten und es zeigt sich folgendes Fenster:

  • In der obersten Zeile mit dem grünen Refresh-Button den verfügbaren com-Port einstellen.
  • In der Zeile darunter den File „blank_4MB.bin“ auswählen, der zuvor in das BIN-Unterverzeichnis gespeichert wurde
  • sonst nichts eingeben und jetzt nur noch den Button Flash ESP Easy FW drücken; danach blinkt die blaue LED auf dem WeMos während des Flashvorganges
  • nach ca, 7 Minuten (!) wird ein erfolgreicher Flashvorgang mit „DONE!“ bestätigt.
  • Wenn man den WeMos in den Fabrik-Zustand versetzen möchte, dann jetzt den zweiten File „ESP_8266_BIN0.92.bin“  flashen (dauert ca. 1 Minute) oder …
  • jetzt den aktuellen Firmware-Update-bin-File nach gleicher Methode flashen (Dauer ca. 1 Minute)
  • Dann mit dem Button Open serial monitor das Ausgabefenster der seriellen Ausgabe öffnen (wenn das nicht funktioniert, dann  HTerm verwenden mit serial 115200bd, Newline at „CR+LF“ )
  • Nach dem Reset am WeMos-Modul kommt die  Meldung „In den nächsten 5 Sekunden kann mit Terminaleingabe ‚p‘ das eeprom auf Werkseinstellung gesetzt werden
  • Nun sofort p eingeben  und warten auf die Meldung, dass das eeprom gelöscht ist. Dann nochmal den Reset-Taster drücken
  • Danach das Modul in die Controllerplatine einsetzen und …
  • im Hotspot-Modus auf IP 192.168.4.1 wie oben beschrieben die eigenen Router.Zugangsdaten eingeben.

Hier einige typische Startmeldungen des WeMos im Fenster des Terminalprogramms HTerm:

12 Hier die neuesten Updates zum runterladen:

Zum Update das ZIP-Archiv runterladen und entpacken. Zum Update nur die *.bin-Datei aus dem zip-Archiv verwenden. Jedes Update ist immer ein vollständiges Update, so daß man auch wieder auf alte Softwarestände zurück „updaten“ kann. Nach den Updates immer die Parameterliste überprüfen, weil die Parameter beim Update u.U auf veränderte Standardeinstellungen gesetzt werden!

Hinweis: Bei größeren Versionssprüngen immer ein Komplett-Update machen und nach dem Update noch ein Factory-Reset machen, um die EEPROM-Daten zu aktualisieren. Danach sind natürlich die Router-Zugangsdaten im Hotspotmodus neu einzugeben. 

Update 10.08.2020: wm2_2   Basis-Software

Stable-Update 19.08.2020: wm2_5   Zusätzlicher Befehl „settime:hh.mm.DD.MM.YY:“, mit dem man  die Modulzeit einstellen kann. Dabei wird der standardmäßig automatische Zeitabgleich per ntp/Internet abgeschaltet. Danach ist kein Internet-Zugang für das Modul mehr notwendig! Das kann hilfreich sein, wenn die Internet-Zeitserver nicht sicher verfügbar sind und dadurch „Aufhänger“ des Modul entstehen. Eine gute WLAN-Verbindung ist trotzdem immer notwendig!! Mit „settime“ ohne Argument wird wieder auf die standardmäßige automatische Zeitsynchronisation per ntp zurück geschaltet. 

Update 12.09.2020 WM2_9_2  Schärferer  Bewertungsmassstab für die WLAN-Konnektivität.
Bei der SHT21-Option wurde die Heizung aktiviert: bei Feuchte > 80% wird die Heizung alle 30min für 1 Minute eingeschaltet. Die Temperatur- und Feuchtemessung  ist dabei um ca. 3 Minuten ausgesetzt.  Achtung die SHT-Messwerte sind nach dem Reset frühestens nach 3 Minuten vorhanden! 

Update 01.10.2020 WM2_12_2  Datentransfer zur CCU abschaltbar mit param 3, wenn keine CCU verwendet wird. Berechnung regen_letzte_h korrigiert. 

Update 20.10.2020 WM2_14_2  keine Funktionsänderungen, aber mit neuem Compiler übersetzt >> schneller, aber Firefox macht manchmal Probleme, Chrome ist sehr gut! Rückmeldungen im Forum erwünscht!

Beta-Update 27.10.2020 WM2_15_2  Mit zusätzlicher Einstellmöglichkeit param 24 = 9 kann ein Betrieb ohne Windmesser W132 aktiviert werden. Damit ist quasi ein RAINYMAN-2 realisierbar, der aber unbedingt einen  externen Temperatur/Feuchtesensor (Option SHT21) benötigt. 

Update 26.01.2021 WM2_17_2  Verbesserte Erkennung des optionalen Temperatursensors DS18B20 

Update 10.07.2021 WM2_18_2  Anstelle des BME280 kann jetzt auch ein BMP280 an den I2C-Bus angeschlossen werden

Update 24.08.2021 WM2_20_2  alternativ zum SHT21 kann ein AHT15 verwendet werden. Die erkannten I2C-Module werden im Expertenmodus angezeigt.

Update 26.08.2021 WM2_21_2  Darstellung im Browser verschnellert, Favicon integriert.

Update 03.11.2022 WM2_25_3  Luxmessung Korrektur eingeführt, mit param 32 mit/ohne Korrektur einschalten , Komplett-Update !

Update 04.04.2023 WM2_27_2  Wichtig: Diese Version wird zurückgezogen, weil der Hotspotmodus nicht richtig funktioniert. Die Eingabe von SSID und PWD ist nur über USB mit einem Terminalprogramm möglich. Siehe dazu vorhergehendes Kapitel.  Wer diese Firmware ausgeliefert bekommen , der sollte über USB die aktuelle Firmware flashen (siehe Kap. 10 oder 11) 

01.12.2023 WM2_28_2  Fehlerhafter Hotspotmodus korrigiert. Größe der Datenpakete zur CCU und JSON verkleinert und zusätzlich wird während der Aussendung die WLAN-Verbindung auf Unterbrechungen geprüft (was insbesondere bei „wackeligen“ WLAN-Verbindungen draussen wichtig ist). 

13 Den WEATHERMAN mit ioBroker verwenden

Ich selbst habe von ioBroker keine Ahnung, deshalb hoffe ich, hier alles richtig zu beschreiben. Die Integration in ioBroker erfolgte zuerst für den WIFFI-wz mit Auswertung des JSON-Datentelegramms, welches vom WEATHERMAN anstatt zur CCU auch an jede beliebige IP mit jedem beliebigen Port geschickt werden kann. Dazu muß man mit dem ccu-Befehl die entsprechende IP-Adresse ändern und mit dem param-Befehl den entsprechenden Betriebsmodus einstellen.  Hier wird am Beispiel des WIFFI-wz  beschrieben, wie man einen ioBroker-Adapter erstellt. Die ioBroker-Adapter Entwicklung im Allgemeinen ist hier beschrieben

Eine weitere aktuelle Anleitung findet man hier.

14 Den WEATHERMAN mit Node-Red  abfragen

Ein User des WEATHERMAN hat einen entsprechenden Adapter für das leistungsfähige Node-Red mit einer ausführlichen sehr guten Beschreibung erstellt . Weitere Informationen zur RedMatic hier.

15 Den WEATHERMAN in IP-Symcon verwenden

Hier ist eine sehr gute Beschreibung, wie man den WEATHERMAN in IP-Symcon einbindet:

16 Die Wetterdaten an Wunderground senden

Im Homematic-Forum hat der User MartinBr ein sehr hilfreiches HM-Skript veröffentlicht, mit dem man Sonnen-Strahlungsleistung abschätzt und alle wichtigen Wetterdaten  zu Wunderground senden und dort veröffentlichen kann.  Sehr schön!

17 Die Wetterdaten an OpenWeatherMap senden

Im Homematic-Forum hat User Sailor79 eine sehr schönes HowTo geschrieben, wie man die Wetterdaten zu OpenEWeatherMap hochladen kann 

… und wo kann man den Bausatz bekommen?

Für den Nachbauer  habe ich Bausätze zusammengestellt. Diese  können bei mir bezogen werden:  WEATHERMAN-Controller Bausatz Wer vorher einen Blick in die Bauanleitung werfen möchte, bitteschön: Bauanleitung

Haftungs- und Sicherheitshinweise

Beim Nachbau müssen natürlich alle wichtigen einschlägigen Sicherheitsvorschriften für den Umgang mit gefährlichen Spannungen  eingehalten werden. Fundierte theoretische und praktische Fachkenntnisse der Elektrotechnik und für den Umgang mit gefährlichen Spannungen sind unverzichtbar!! Durch eine unsachgemäße Installation gefährden Sie ihr Leben und das Leben ihrer Mitmenschen! Darüberhinaus riskieren Sie erhebliche Sachschäden , welche durch Brand etc. hervorgerufen werden können ! Für alle Personen- und Sachschäden durch falsche Installation etc. ist nicht der Hersteller sondern nur der Betreiber verantwortlich. Ich verweise hier unbedingt auf  die  „Sicherheitshinweise und Haftungsausschluss„-Seite dieses Blogs.

#####  Fragen, Empfehlungen, Tipps  #####

1. Was ist der beste Aufstellungsort?
Das ist nicht grundsätzlich und allgemein zu sagen. Für die Windmessung sollte der WM so hoch wie möglich aufgestellt werden. Für die Temperaturmessung möglichst im Schatten des Hauses auf der Nordseite. Und für die Regenmengenmessung möglichst niedrig und einfach erreichbar, um ggf. Verschmutzungen etc. im Regentrichter zu entfernen. Für die gute Erreichbarkeit im häuslichen WLAN ist besonders die Nähe zum nächsten WLAN-Hotspot wichtig…
Das alles zeigt, es gibt also nicht den richtigen Aufstellort!!

Ich empfehle einen Aufstellort, an dem man leicht an den WM gelangen und auch leicht etwas reparieren kann. Und eben möglichst nahe am WLAN-Hotspot, denn je weiter, umso schlechter ist die Kommunikation und umso häufiger können Abstürze entstehen. Wichtig ist auch, daß man die Versorgungsspannung schaltbar macht, um ggf. mit kurzer Unterbrechung den WM neu zu resetten. 

2. Die rssi-Werte des WM sind gut, aber trotzdem sind manchmal Abbrüche, Was tun?
Die rssi-Werte alleine sagen nur etwas aus über die Empfangsfeldstärke, nicht aber, ob andere WLAN-Stationen ebenfalls auf der Frequenz arbeiten und ggf. stören. Deshalb sollte man mit entsprechenden Apps mit dem Smartphone direkt an der Wetterstation die Empfangssituation prüfen und ggf. im Router den Kanal auf einen freien Bereich wechseln. Die automatische Kanalsuche des Routers optimiert die WLAN-Funksituation für den Router-Standort, nicht für den WM-Standort. 

Passable rssi-Werte sind zwischen -50dB und -70dB. Es funktioniert aber manchmal auch sogar mit -90dB, aber dann ist die Wahrscheinlichkeit für Abbrüche/Hängern hoch.

3. Welches Netzteil soll ich nehmen?
Für die Stromversorgung des WM reichen 1A bei 5V. Die Netzteile haben aber eine oft sehr sehr schlechte Impulsunterdrückung, was man ihnen leider nicht andsehen kann. Beim WM2 ist zwar durch einen 220uF-Elko das Risiko minimiert, kann aber nicht ausgeschlossen werden. Das kann zu „Hängern“ oder sogar Beschädigungen der Firmware führen. Dann muß man über USB wie oben beschrieben die Firmware neu „flashen“.

4. Der WM ist im Hospotmodus (192.168.4.1) oder im WLAN plötzlich nicht mehr „sichtbar“. Was kann man tun?
Vermutlich  ist der WeMos beschädigt (Überspannung, Verpolung, etc) und muß ausgetauscht werden. Es kann aber auch nur die Firmware beschädigt sein und dann kann man wie oben beschrieben über USB den WeMos neu programmieren (flashen). 

5. Bei direkter Sonne ist die gemessenen Temperatur viel zu hoch!
Der Temperatursensor ist im W132-Gehäuse an der Rückseite an den Lüftungsschlitzen eingebaut. Wenn die Sonne länger auf das Gehäuse scheint, dann läßt sich innendrin trotz Lüftungsschlitz eine Temperaturerhöhung nicht verhindern. Entweder man nimmt dieses hin und freut sich, daß die Sonne so scheint oder man macht erhebliche „Klimmzüge“, um richtig zu messen. Da kann man einen weiteren SHT21-Temperatursensor in ein externes Wetterschutzgehäuse wie beim WM1 einbauen, aber auch damit läßt sich eine gewisse Fehlmessung bei längerer Sonneneinstrahlung nicht verhindern. Die Lösung wäre die Verwendung eines sehr geräumigen belüfteten Wetterhause wie bei professionellen Wetterstationen, eine aktive Belüftung mit Ventiklator oder die völlig getrennte Temperaturmessung auf der Nordseite des Hauses. Für den Genauigkeitsfanatiker ist das ein Riesenfeld, wo er sich austoben kann. Ist aber nichts für mich 😉

6. Gibt’s ein Forum oder Diskussionen  zu dem Thema WEATHERMAN ?
Ja, hier !

7. Manchmal ist der WM nicht mehr per Browser sichtbar oder ist „eingefroren“?
Das kann mehrere Ursachen haben:
– Der Router kann möglicherweise dem WM im Betrieb oder beim Neustart eine andere IP-Adresse zuweisen, weil er im sog. DHCP-Modus arbeitet.. In so einem Fall im Router nachschauen, ob der WM ggf. unter einer anderen IP vorhanden ist. Der Name des WM fängt meist mit ESP… an.
Man kann diese Situation verbessern, indem man dem WM mit dem Befehl „setip“ eine im Router noch nicht vergebene Adresse im Nummernbereich des Heimnetzes fest zuweist. 
– Wenn der WM aus dem Internet keine Zeitinformation per ntp holen kann oder das Internet „wackelig“ ist, dann kann bei erfolglosen Zeithol-Versuchen das Modul „hängenbleiben“. Das kann man dann nur durch einen Neustart per Reset-Taster oder Spannungslos machen erreichen. Abhilfe ist, die Zeitinformation anstatt per Internet-ntp direkt vom Router (bei der Fritzbox einstellbar!)  oder anderen Zeitservern im Heimnetz zu holen. 

Hinweis: Seit den letzten Updates ist die Verwendung des Firefox-Browsers problematisch. Deshalb wird die Verwendung von anderen Browsern empfohlen. 

8. Wie schließt man den optionalen externen Temperatursensor SHT21 an?
Der SHT21 verwendet zum Anschluß den I2C-Bus. Deswegen schließt man seine vier Anschlusspins SCL, SDA, GND und VIN einfach paralell zu den gleich bezeichneten Pins des BME280 oder MAX44009 an.

9. Wie schließt man den optionalen externen Temperatursensor DS18B20?
Der optionale 1Wire Temperatursensor zeichnet sich durch hohe Temperaturgenauigkeit aus. Zusätzlich kann er als gekapselte Version relativ einfach in schattigen Bereichen montiert werden. Ein Anschluß ist möglich an der nicht bestückten Grove-Buchse J4 an den Anschlüssen SCLIO2, GND und 3.3V. Zusätzlich muß man einen 4k7-Pullup-Widerstand von SCLIO2 nach +3,3V einlöten (Schaltplan ansehen!). Diese Temperatur hat die höchste Priorität und wird als Aussentemperatur angezeigt.

10. Von welchem Temperatursensor wird die Außentemperatur genommen ? 
Im WM2 sind je nach Konfiguration mehrere Temperatursensoren vorhanden. Die Außentemperatur wird mit der folgenden Priorität übernommen:
– wenn der Windmesser vorhanden ist, dann wird die Temperatur und Feuchte von dieser Station genommen (niedrigste Priorität).
– wenn der BME280 als externer Sensor aktiviert ist (param 9 = 3) , dann wird diese Temperatur und Feuchte als Außentemperatur genommen.
– wenn der SHT21 beim Start erkannt wird, dann wird dessen Temperatur und Feuchte als Außentemperatur genommen.
– wenn der DS18B20 beim Start erkannt wird, dann wird dessen Temperatur und Feuchte als Außentemperatur genommen (höchste Priorität).

11. Kann man das Modul auch ohne Windmesser betreiben?
Ab Firmware-Update WM2_15_2 ist ein Betrieb quasi als „RAINYMAN“ möglich, wenn im „Expertenmodus“ der  param 24  = 9 gesetzt wird. Damit in dieser Konstellation auch die Außentemperatur verfügbar ist,  muß man dazu die Option SHT21 (externer Temperatursensor montiert unter dem Modulgehäuse) verwenden. 

12. Kann man mit einer externen WLAN-Antenne die Kommunikation mit dem Router verbessern?
Ja unbedingt! Natürlich kann man durch Optimierung der WM-Position bzw. -Ausrichtung  die auf der Expertenseite angezeigte WLAN-Konnektivität verbessern. Aber wenn die Entfernung zu groß oder die Wände zu dick sind, dann hilft nur noch ein Repeater oder eine externe WLAN-Antenne. Dazu kann man beim verwendeten WeMos die Platinenantenne abtrennen und eine externe Antenne anschalten. 

Es geht aber auch einfacher, indem man einen Lolin D1 mini pro kauft. Dieses Modul hat einen Antennenanschluß, an dem man ein sog. Pigtail-Kabel mit einer RP-SMA-Antennenbuchse anschalten kann. Das Vorgehen in wenigen Schritten:

 

 

 

 

Skills

Posted on

3. August 2020