Wichtiger Hinweis: Mittlerweile gibt es eine neue Version WIFFI-pump-4
Die Vorgeschichte
Ich verwende meine intelligente Steuerung für die Trinkwasser-Zirkulationspumpe schon seit Jahren. Dafür habe ich eine Lösung mit einem Mikrocontroller Attiny entwickelt , die sehr gut als preiswerte standalone-Lösung funktioniert. Mit einem zusätzlichen Aktor mit allerdings zusätzlichen Kosten ist die Steuerung auch in die Homematic-Hausautomation integrierbar. Diese Lösung wird als Bausatz in meinem Webshop angeboten, weil sie kostengünstig und einfach ist. Zirkulationspumpensteuerung Attiny
Das neue WIFFI_pump-2 Konzept eröffnet aber viel mehr Möglichkeiten, die über die Funktionalität der „alten“ Zirkulationspumpen-Steuerung weit hinausgehen. Mit dem WIFFI-pump-2 wird wie bisher die intelligente Steuerung der WW-Zirkulationspumpe erreicht aber mit der jetzt verfügbaren WLAN-Anbindung ist ein Datenaustausch sowohl mit der Homematic als auch mit anderen Servern einfach möglich. Darüberhinaus lassen sich beim WIFFI-pump-2 zwei 1wire-Temperatursensoren anschließen , um beispielsweise die Vor- und Rücklauftemperatur zu messen und an die Homematic zu übertragen. Zusätzlich ist sogar im Hutschienengehäuse ein lichtstarkes OLED-Minidisplay optional verfügbar. So kann man zusätzlich auch die Funktion der Heizung überwachen und mit diesen Informationen mit der Homematic geeignete Aktionen auslösen. Der WIFFI-pump-2 löst das Vorläufermodell WIFFI-pump ab.
Grundsätzliche Aspekte
Eine Warmwasser-Zirkulation ist ein in der Hausinstallation heute oft eingesetztes Komfortmerkmal, um an allen Zapfstellen im Haus nahezu sofort nach Aufdrehen des Wasserhahnes warmes Wasser verfügbar zu haben. Dazu verwendet man eine Ringleitung, in der eine kleine sog. Zirkulationspumpe das warme Wasser dauernd oder nur zu bestimmmten Tagesabschnitten im Kreis pumpt. Im Hinblick auf Energieeinsparung kommt schnell der Gedanke auf, durch „intelligentere“ Steuerung das System zu verbessern.
Der erste Gedanke ist meist die Verringerung des Verbrauchs von elektrischer Leistung durch die Zirkulationspumpe. In einem typischen Einfamilienhaus hat die heute meist nur 5W. Das heißt im Dauerbetrieb verbraucht diese Pumpe übers Jahr ganze 44KWh, also mit 25ct/KWH macht das etwa 11€. Allerdings wird meist eine Schaltuhr verwendet, die vielleicht 12h schaltet und demnach die Verbrauchskosten auf 6€/Jahr halbiert. Für 6€/Jahr lohnt sich wohl keine „intelligentere“ Steuerung als eine einfache Schaltuhr!
Also warum denn hier was machen??
Der Grund liegt darin, dass die eigentlichen Verluste nicht elektrisch sind, sondern die erheblichen Wärmverluste der Ringleitung. Dazu habe ich Messungen gemacht, die hier auf der Webseite nachgelesen werden können:
zirkulationspumpe-warmebedarfsgerecht-geschaltet
Das Ergebnis kann man mit wenigen Kennzahlen trendmässig beschreiben:
– Elektrische Verluste der Zirkulationspumpe: 5W >> Jahreskosten 11€
– Wärmeverluste der Ringleitung ohne Schwerkraftzirkulation: 60W >> Jahreskosten 132€ (mit einem Absperrhahn im Rücklauf wurde die natürliche Zirkulation abgeschaltet )
– Wärmeverluste der Ringleitung mit Schwerkraftzirkulation: 128W >> Jahreskosten 282€ !!
– Wärmeverluste der Ringleitung mit 12h/Tag laufender Zirkulationspumpe : 562W >> Jahreskosten 616€ !!!
Ohne jetzt das nur als „Hausnummer“ zu wertende Ergebnis weiter im Einzelnen zu diskutieren, wird eines klar:
Eine intelligente Steuerung der Zirkulationspumpe ist nicht wegen der elektrischen Energieeinsparung sinnvoll, sondern hauptsächlich wegen der damit möglichen Reduzierung der Verlustwärme !!
Das intelligentes Steuerungskonzept
Optimal ist danach, daß die Zirkulationspumpe auch nur dann läuft, wenn auch irgendwo im Haus warmes Wasser möglichst ohne Wärmeverzug gezapft werden soll. Dazu gehört erst mal eine Strategie, um den Nutzerwunsch nach warmem Wasser zu erkennen. Denkbar wäre ein Bewegungssensor im Badezimmer oder ein Geräuschmelder in den „Wasserräumen“. Aber oftmals geht man in diese Räume, ohne den Warmwasserhahn zu betätigen . Also doch vielleicht einen Taster in Wasserhahnnähe installieren, den man anstößt, wenn warmes Wasser benötigt wird ? Das widerspricht aber einer „intelligenten“ automatischen Bedienung!
Also vielleicht einen Sensor installieren, der den Durchfluss mißt? Zu teuer und das erfordert einen geeigneten Sensor und einen Eingriff in die Installation… Nein, lieber nicht!
Die Lösung ist einfach und auch nicht neu: Am Vorlauf-Ausgang des Warmwasserspeichers wird einfach mit einem Temperatursensor die Temperatur gemessen. Wenn dann warmes Wasser gezapft wird, dann erhöht sich schlagartig dort die Temperatur. Diese Temperaturerhöhung wertet man mit einer Elektronik entsprechend aus und schaltet umgehend die Zirkulationspumpe ein. Diese schiebt nun das warme Wasser schnellstens in die Ringleitung, so dass bereits nach relativ kurzer Zeit das warme Wasser an der Zapfstelle ist. Und spätestens jetzt wird klar, daß hierfür eine Pumpe mit möglichst hoher Leistung viel besser geeignet wäre, als die heute mit Schaltuhr eingesetzten Kleinleistungs-Typen.
Abgeschaltet wird die Pumpe entweder nach 3 bis 4 Minuten ( wenn die Ringleitung gut und komplett durchspült ist) oder wenn im Rücklauf am Warmwasserspeicher die Temperatur angestiegen ist. Dazu würde allerdings noch ein zweiter Temperatursensor benötigt.
Nach mehreren Versuchen mit und ohne zweiten Temperatursensor im Rücklauf wurde die einfache Lösung mit nur einem Temperatursensor im Vorlauf praktisch umgesetzt. Die Vorteile mit einem zweiten Sensor wären nur sehr gering!
Die erste Steuerung war analog mit wenigen Bauelementen umgesetzt (siehe Link oben) und hat ein Jahr problemlos gelaufen. Allerdings hatten einige Nachbauer mit Bauteiltoleranzen der analogen Steuerung zu kämpfen, so daß der Wunsch nach einer robusteren digitalen Lösung aufkam, die zudem optional in meine Homematic-Haussteuerung gut integriert werden kann. Damit meine ich, daß die Homematic sowohl die Zirkulationspumpe einschalten kann, als auch bei selbsttätiger Einschaltung die Homematic über den Schaltzustand rückinformiert wird. (bidirektionale Einbindung).
Vielleicht wird der eine oder andere Leser die Frage stellen, warum denn nicht gleich die Zirkulationspumpe mit der Homematic steuern?
Die Antwort ist einfach, weil die aktuell verfügbaren Homematic-Temperatursensoren mit Aktualisierungsintervallen von 3 und mehr Minuten viel zu langsam sind!
Technische Daten
Mit Verwendung des WeMos D1 mini Controllermoduls mit dem hochintegrierten Wifi-Chip ESP8266 eröffnen sich ganz neue Möglichkeiten für die kompakte Realisierung eines Steuerungsmoduls im praktischen Hutschienengehäuse. Dabei wird nicht nur die intelligente Steuerung der Zirkulationspumpe nach oben beschriebenen Steuerungsprinzip möglich sondern zusätzlich werden mit dem Modul auch zwei sog. 1wire-Temperatursensoren abgefragt, deren Meßsignal an die Homematic-CCU übertragen und auf einem optionalen OLED-Minidisplay angezeigt wird.
Hier die wesentlichen Eigenschaften des WIFFI-pump-2:
- schnelle Temperaturmessung am Warmwasser (WW)-Ausgang mit NTC und …
- Einschalten der Zirkulationspumpe in Abhängigkeit von der WW-Temperaturerhöhung
- Einschalten mit integrierter Internet-Wochenzeitschaltuhr mit 10 Schaltzeiten
- beliebiges Einschalten der Zirkulationspumpe auch von der Homematic-CCU direkt
- zusätzliche Messung von zwei Heizungstemperaturen mit optionalen 1wire-Sensoren (z.B. Vorlauf- und Rücklauftemperatur )
- optionales lichtstarkes OLED-Minidisplay zur Anzeige der Temperaturen
- kompaktes Hutschienengehäuse nur 2TE
- einfache Einstellung auf eigenen Webseiten mit dem Browser
- WLAN-Kommunikation mit dem heimischen Router
- automatische Kommunikation mit der Homematic-CCU oder unabhängiger Standalone-Betrieb
- Einfaches Update über WLAN (OTA) auch im verbauten Zustand
- JSON-Datentelegramm abrufbar für die Integration in andere Systeme der Hausautomation
Die elektronische Schaltung
Die gesamte Schaltung konnte auf einer so kleinen Platine realisiert werden, daß sie in ein 2TE Hutschienengehäuse paßt. Auf der einen Seite werden die 5V-Spannungsversorgung (externes 5V-Netzteil mit mindestens 0,5A) an die Schraubklemmen geschaltet. Auf der anderen Netzspannungsseite ist der Einschaltkontakt für die Zirkulationspumpe verfügbar. Die Statusanzeige erfolgt mit einer LED, die im Betrieb durch ein Schraubklemmenloch erkennbar ist. Diese LED-Anzeige benötigt man nur zum Anlernen und oder zur Funktionskontrolle.
Die gesamte Verschaltung des Moduls zeigt das folgende Bild. Der NTC-Temperaturfühler mißt die WW-Auslauftemperatur und schaltet bei schnellen Temperaturerhöhungen am WW-Auslauf das Relais zum Einschalten der Zirkulationspumpe. Danach bleibt die Zirkulationspumpe für etwa 4min eingeschaltet, damit das warme Wasser in der WW-Zirkulationsleitung verteilt wird. Die Einschaltzeit von 4min kann an die individuellen Bedürfnisse im sog. Expertenmodus angepasst werden. Wie das geht, ist weiter unten beschrieben. Aber die gewählten 4min sind für typische Zirkulationsleitungen ein guter Wert. Darüberhinaus können wie im Bild dargestellt sog. 1wire Temperatursensoren angeschaltet werden, mit denen ohne Eichung eine recht genaue Temperaturmessung möglich ist. Ich verwende diese Sensoren für die Messung der Vorlauftemperatur im Kesselkreis und zur Messung der Vorlauftemperatur für die Fussbodenheizung (nach dem Mischer). Aber was man letztlich damit macht, kann man flexibel nach eigenen Bedürfnissen anpassen.
Wichtige Anmerkung zu den 1Wire-Temperatursensoren mit dem DS18B20:
Die Sensoren werden teilweise mit unterschiedlichen Farben der Anschlussdrähte geliefert. Ich kenne aktuell folgende Versionen:
– wie Bild oben : SCHWARZ=gnd, BLAU=data, ROT=+3.3V
– oder alternativ : GELB = gnd, GRÜN = data, ROT = +3.3V
– oder alternativ: SCHWARZ = gnd, GELB = data, ROT = +3.3V
Der Nachbau
Zum Nachbau des WIFFI-pump habe ich einen Bausatz zusammen gestellt, der auch weniger löterfahrenen Elektronikern den Nachbau möglich macht. Beim WeMos D1 mini Modul müssen nur die Buchsenleisten eingelötet werden. Die wenigen restlichen Bauteile lassen sich mit meiner Bauanleitung recht schnell zusammenbauen.
Den Bausatz gibt es optional auch mit den zusätzlich verwendbaren zwei 1wire-Temperatursenoren vom Typ DS18B20. Diese Sensoren sind schon fertig mit einem 1m Kabel konfektioniert, wobei der Sensor in einer Edelstahlhülse sitzt.
Darüberhinaus gibt es optional ein lichtstarkes OLED-Minidisplay, das auch nachträglich einfach hinzugefügt werden kann. Nur das Displaymodul aufstecken, die Software erkennt automatisch das Modul. Damit das auch alles sehr professionell aussieht gibt´s zum Display einen passenden Kunststoffrahmen und eine Blende im 3D-Druck für das Hutschienengehäuse dazu.
Die Inbetriebnahme
Die Steuerung sollte in einem Installationsgehäuse an einem trockenen Platz in der Nähe der Heizung untergebracht sein. Leitungslängen für die Messsignale sollten möglichst nicht länger als 3m sein. Im Hinblick auf zuverlässige Funktion sind die Messleitungen aber so kurz wie möglich zu dimensionieren. Bei den Signaleitungen sollte man immer Netzleitungen und Signalleitungen getrennt verlegen. Dazu sind alle entsprechenden Sicherheitsregeln für den Umgang mit Netzspannungen unbedingt zu berücksichtigten.
Ohne entsprechende Fachkenntnisse muß die Installation unbedingt von Fachpersonal durchgeführt werden. Siehe auch nochmal meine Warnhinweise hierzu: Warnhinweise
Anlernen und Einstellen des WIFFI-pump-2
Für die Einstellung des Moduls muß man nur zwei Taster betätigen:
>> den Reset-Taster an der Seite des WeMos-Moduls
>> den Prog-Taster auf der Platine
Achtung: nie den PROG- und RESET-Taster gleichzeitig drücken, da das Modul dann in den Programmiermodus geht und u.U. die Firmware beschädigt wird.
Im Werkszustand weiß der WIFFI-pump-2 noch nicht die Zugangsdaten des heimischen WLAN. Deshalb muß man zuerst diese Zugangsdaten einprogrammieren. Dazu braucht man ein Smartphone oder besser ein Notbook mit WLAN. Und das geht so:
>> Reset-Taster kurz drücken.
>> Nach etwa 12 sec beginnt die LED im 1sec-Takt zu blinken. Damit wird signalisiert, daß ein WLAN-Hotspot gesucht wird. Da aber noch die Zugangsdaten fehlen, macht der WIFFI-pump-2 das einige Zeit so und geht dann nach längstens nach 60sec wegen Erfolglosigkeit in den Standalone-Modus (sehr kurze Blitze im 1sec-Takt).
>>Will man aber seinen WIFFI-pump-2 an den heimischen Router anlernen , dann sollte man während der 60sec-Suchphase den Prog-Taster etwa 2sec drücken. Die LED quittiert das mit einem gleichmäßigen Blinken mit etwa 2Hz. Jetzt ist der WIFFI-pump-2 dauerhaft im sog. Hotspot-Modus. Damit stellt er einen eigenen Hotspot mit dem Namen (ssid) wiffi auf der festen IP 192.168.4.1 zur Verfügung. Mit einem Smartphone oder besser mit einem Notebook kann man im WLAN-Modus nun mit diesem Hotspot eine gesicherte Verbindung herstellen. Das Passwort (pwd) ist wiffi1234.
> Danach mit dem Browser die Webseite zur Einstellung des WIFFI-pump-2 aufrufen. Diese Webseite hat die feste IP 192.168.4.1 Achtung, diese IP-Adresse hat nichts mit der späteren IP-Adresse des WIFFI-pump-2 im Heimnetz zu tun! Also man ruft im Browser einfach folgende Adresse auf 192.168.4.1/? und erhält als Antwort die Hotspot-Webseite des WIFFI:
>> Mit wenigen verfügbaren Befehlen kann der WIFFI-pump-2 nun an den eigenen Router und die CCU angelernt werden: (… und nie den Doppelpunkt am Ende des Befehls vergessen!)
- 192.168.4.1/?ssid:meineSSID: setzt die SSID des Routers, die SSID muß weniger als 47 Zeichen haben und keine Sonderzeichen enthalten
- 192.168.4.1/?pwd:meinPasswort: setzt den Router WLAN-Netzwerkschlüssel ( WPA2) , Restriktionen wie bei SSID
- 192.168.4.1/?ccu:192.168.178.41: setzt die Homematic CCU-IP, dafür muß die CCU eine feste IP haben. Einstellen im Router !!
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!
>> Damit ist schon der WIFFI-pump-2 für das Heimnetz eingestellt und kann mit dem Reset-Taster neu gestartet werden. Wenn die Router-Zugangsdaten richtig eingegeben worden sind, dann müßte nach etwa 12 sec der Wiffi-pump-2 beginnen, sich beim Router einzuloggen (LED blinkt jede Sekunde). Meist dauert das einige Sekunden, bis das Einloggen erfolgreich ist und die LED dies signalisiert, indem sie jede Sekunde einen Doppelblitz sendet. Jetzt ist der WIFFI-pump-2 im Heimnetz mit einer eigenen IP und dem Namen wiffi_pump.local registriert. Welche IP das genau ist, das kann man im Router nachsehen.
>> An dem regelmässigen LED-Blitz kann man die Verbindungssituation erkennen:
- sehr kurze und schwache regelmässige Blitze im 1sec-Takt: keine WLAN-Verbindung, stand-alone Betrieb!
- helle regelmässige Blitze im 1sec-Takt: WLAN-Verbindung hergestellt. Aber keine CCU-Verbindung vorhanden!
- helle regelmässige Doppelblitze im 1sec-Takt: WLAN und CCU-Verbindung vorhanden!
- helle regelmässige Blitze im 0,5sec-Takt: im Hotspot-Modus
Wichtig: Die Funktion der temperaturabhängigen Steuerung der Zirkulationpumpe funktioniert völlig unabhängig davon, ob WLAN-Verbindung da ist oder nicht! Ein Stand Alone Betrieb ist immer gewärleistet, auch wenn die CCU oder die WLAN-Verbindung ausfällt!
>> Jetzt läßt sich die Webseite des WIFFI-pump-2 mit jedem beliebigen Browser anzeigen. Man gibt in die Adresszeile einfach nur die IP oder den Namen ein:
http://<ip-wiffi> oder einfach wiffi_pump.local. Das folgende Bild zeigt das Ergebnis.
Dabei ist zu beachten, daß die Messwerte nur beim Aktualisieren der Webseite oder Bedienen des Buttons „Aktualisierung Messwerte“ auch aktuell sind; eine permanente Aktualisierung der Anzeige erfolgt wegen Minimierung des Datenverkehrs nicht!
Einstellen der CCU
Damit die Sensordaten und die Zustandsinformationen des Wiffi-pump-2 automatisch an korrespondierende Systemvariable in der Homematic-CCU geschickt werden, müssen einerseits in der CCU entsprechende Systemvariablen festgelegt werden und andererseits müssen die individuellen Namen dieser Systemvariablen auch im Wiffi-pump-2 gespeichert werden. Das Anlernen des WIFFI-pump-2 an die CCU erfolgt also ganz einfach, indem man in der CCU die folgenden vier Systemvariablen definiert:
Anmerkung: ab Firmware wiffi_pump_81 kann man mit dem Befehl setvar die u.a. CCU-Systemvariablen auch automatisch auf der CCU anlegen lassen. Einfach den setvar-Link anklicken und ca. 60sec warten. Damit entfällt das folgend beschriebene manuelle Eingeben der Systemvariablen!
>> wiffi_pump_ip vom Typ Zeichenkette
>> wiffi_pump vom Typ Logikwert , Werte EIN und AUS
>> wiffi_ww_temp vom Typ Zahl, Maßeinheit °C ( Anmerkung: ich verwende diesen Sensor zur Messung der Temperatur im WW-Speicher; kann natürlich individuell geändert werden! )
>> wiffi_vorlauftemp vom Typ Zahl, Maßeinheit°C ( Anmerkung: ich verwende diesen Sensor zur Messung derVorlauftemperatur der Heizung; kann natürlich individuell geändert werden! )
>> wiffi_ntc vom Typ Zahl, Maßeinheit°C ( Anmerkung:diese Systemvariable ist nur optional und wird nur in der CCU aktualisiert, wenn param 9 auf 1 steht! )
Eine funktionierende Kommunikation zwischen dem Wiffi-pump und der CCU erfordert absolut gleiche Benamung der Systemvariablen in der CCU und im Wiffi-pump!
Wenn notwendig kann man mit dem name-Befehl die HM-Systemvariablen auch mit eigenen Namen versehen . Standardmässig sind die oben im Bild gezeigten Systemvariablen benannt worden. Im ersten Schritt sollte man möglichst die von mir verwendeten Namen verwenden und kann dann die Erläuterung der nächsten 4 Befehle einfach überspringen !
- 192.168.4.1/?name:o:meine_wiffi_ip: setzt den individuellen Namenskürzel für die entsprechenden HM-Systemvariable, welche die IP-Adresse dese Wiffi-pump enthält.
- 192.168.4.1/?name:1:zustand_Pumpe: setzt den individuellen Namenskürzel für die entsprechenden HM-Systemvariable, welche den Schaltzustand der Zirkulationspumpe enthält.
- 192.168.4.1/?name:2:meine_Temp_A: setzt den individuellen Namenskürzel für die entsprechenden HM-Systemvariablen, welche die Temperatur des 1Wire-Sensors an D12 /A enthält.
- 192.168.4.1/?name:3:meine_Temp_B: setzt den individuellen Namenskürzel für die entsprechenden HM-Systemvariablen, welche die Temperatur des 1Wire-Sensors an D13 /B enthält.
- 192.168.4.1/?name:3:meine_Temp_NTC setzt den individuellen Namenskürzel für die entsprechenden HM-Systemvariablen, welche die Temperatur des NTC-Sensors enthält.
Und bei der Homematic immer beachten, daß für die Namen der Systemvariablen nie Sonderzeichen außer dem Tiefstrich verwendet werden. Das gibt nur Ärger !!
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!
Das Modul holt sich die Zeit aus dem Internet von den gängigen Zeitservern. Standardmässig ist pool.ntp.org als ntp-Zeitserver voreingestellt. Wegen der tageszeitabhängig manchmal schlechten Verfügbarkeit dieser Server wird empfohlen, den Zeitserver z.B. in der Fritzbox (mit der Adresse der Fritzbox) zu verwenden. Vorher muss diese Funktion allerdings in der Fritzbox freigeschaltet werden:
>>Heimnetz > Netzwerk > Netzwerkeinstellungen > Zeitsynchronisation
Die Befehle des WIFFI-pump-2
Im WIFFI-pump-2 sind eine Reihe von Befehlen integriert, mit denen der WIFFI nach den eigenen individuellene Bedürfnissen eingestellt werden kann (… aber nicht muß!). Dazu sind 3 Webseiten vorhanden, die durch Anklicken der blauen Schrift-Buttons aufgerufen werden. Die Seite Normalmodus zeigt die Messwerte , alle relevanten Statusinformationen und die möglichen Browser-Befehle. Mit Anklicken des EIN/AUS-Buttons kann man die Zirkulationspumpe manuell dauerhaft schalten und mit Aktualisierung der Messwerte werden die Messwerte erneut ermittelt.
Folgende Befehle können aktuell per Browsereingabe verwendet werden (Achtung nie den abschließenden Doppelpunkt vergessen !) .
Einige Erklärungen sind noch für den setip-Befehl notwendig. Damit kann man die Vergabe der IP-Adresse regeln. Standardmässig 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
Wichtig: nach jeder neuen IP-Festlegung muß der WeMos hardwareseitig resettet werden. Dazu entweder den seitlichen Taster am WeMos-Modul tasten oder die Versorgungsspannung einige Sekunden unterbrechen.
Die IP-Einstellungen bleiben auch bei Komplett-Updates erhalten. Lediglich beim Werksreset wird auf die Grundeinstellung DHC zurückgesetzt.
Die Internet-Schaltuhr
Seht praktisch ist eine integrierte Schaltuhr mit 10 Schaltzeiten, die sich automatisch mit der aktuellen Internetzeit setzt. Die Schaltuhr kann hilfreich sein, wenn man beispielsweise in der Heizung feste Zeiten für die Desinfektion eingestellt hat. An diesen festen Zeiten kann man dann automatisch auch die Zirkulationspumpe einschalten. Zwar könnte man das auch über die Homematic machen, aber das Gerät soll auch ohne Homematic komfortabel funktionieren. Die Anwendungsmöglichkeiten einer integrierten Schaltuhr sind sicher vielfältig und müssen nicht näher erläutert werden.
Mit der Webseite „Schaltzeiten“ können insgesamt 10 Schaltsequenzen gesetzt werden. Das folgende Bild zeigt die Einstellseite:
Gesetzt werden die Schaltzeiten mit dem time-befehl in der Adresszeile des Browsers. Will man beispielsweise mit der Schaltzeit 1 die Zirkulationspumpe am Samstag (Wochentag 7) um 7h15 bis 8h15 einschalten, dann erfolgt dies mit dem Befehl in der Adresszeile des Browsers::
<ip-wiffi>/?time:1:7:0715:0815:
Weitere Erklärungen ergeben sich sicher aus dem obigen Bild der Webseite.
Der Experten-Modus
Als dritte Webseite ist der Expertenmodus vorhanden. Normalerweise sind hier keine Veränderungen durchzuführen. Und man sollte dies auch nur dann tun, wenn man weiß was man da einstellt. Ansonsten kann das Gerät u.U. danach nicht mehr funktionieren. Veränderungen von Kennwerten sind mit dem param-Befehl möglich. Wenn man beispielsweise die Laufzeit der Zirkulationspumpe von den eingestellten 240sec auf 300sec vornehmen will, dann macht man das mit dem Befehl: <IP-wiffi>/?param:7:300:
Update der Firmware über WLAN
Ein Update des WIFFI erfolgt ohne Demontage bzw. Geräteöffnung komplett über das WLAN. Dabei ist der WIFFI im Heimnetz über WLAN eingeloggt und seine Webseite ist mit der vom Router vergebenen IP-Adresse aufrufbar. Hier ist für die ersten Versionen die genaue Beschreibung der Vorgehensweise als pdf-Dokument zum Runterladen : wiffi_update_anleitung22
Ab der Firmwareversion wiffi_pump2_60a ist das Update deutlich einfacher über die eigene Update-Webseite des WIFFI durchzuführen !
Im folgenden wird am Beispiel des WEATHERMAN das auch beim WIFFI-pump angewendete Verfahren gezeigt:
Ein Update des WIFFI-pump kann ohne Demontage bzw. Geräteöffnung komplett über das WLAN erfolgen. Dabei ist der WIFFI-pump vorher im Heimnetz über WLAN eingeloggt und seine Webseite ist mit der vom Router vergebenen IP-Adresse aufrufbar.
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 WIFFI-pump.
Die Update-Seite des WIFFI-pump aufrufen (siehe nächstes Bild). Dort werden zwei Alternativen eines Updates angeboten: das Komplett-Update nur wenn das beim Update-File ausdrücklich angemerkt ist und das normalerweise verwendete Teil-Update.
Das Teil-Update über den Link Teil-Update auslösen und mindestens 15sec warten und erst dann den Link Update-Explorer betätigen.
Nach kurzer Zeit öffnet sich der Browser mit der Möglichkeit per „Durchsuchen“ den neuen update *.bin File einzugeben und dann mit dem Update-Button den Vorgang zu starten:
Nach einigen Sekunden wird ein erfolgreiches Update bestätigt und der WIFFI-pump einige Sekunden später mit der upgedateten Firmware neu gestartet:
… und hier ist die aktuelle Firmware zum Download:
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 ggf. auf veränderte Standardeinstellungen gesetzt werden!
diese Versionen werden alle mit und ohne 64×48- Display verwendet:
wiffi_pump_47 mit/ohne 64×48 Display
Ab 10/2016 wird als ein etwas breiteres OLED-Display mit 128×64 Pixel verwendet. Die dafür entsprechend geänderte Firmware ist:
wiffi_pump_53a mit/ohne 128×64 Display >> besser einstellbarer Schaltalgorithmus (auch bei langsameren Temperatursteigerungen) , Help-Funktion erweitert, PWD und SSID jetzt auch mit Sonderzeichen möglich
wiffi_pump_57a mit/ohne 128×64 Display >> PWD und SSID mit Leerzeichen, verbesserte 1Wire-Temperaturmessung,Temperaturen mit Korrekturmöglichkeit, Update mit/ohne Erhalt der Zugangsdaten und Parameter, Parameter für Urlaubsabschaltung
wiffi_pump_60a mit/ohne 128×64 Display >> vereinfachtes Update , zusätzliche Helpseite
wiffi_pump_61 mit/ohne 128×64 Display >> verbessertes Verhalten bei WLAN-Störungen, Komplett-Update notwendig (siehe Update Menue)
wiffi_pump_66 mit/ohne 128×64 Display >> Fix für neue CCU2-Firmware 2.27.7: 8181-Request angepasst, damit systemvariablen aktualisiert werden
wiffi_pump_69 mit/ohne 128×64 Display >> JSON-Format angepasst, Bitte beachten: param[20] entsprechend der vorhandenen Hardwareversion setzen !
wiffi_pump_71 mit/ohne 128×64 Display >> Die 1Wire-Eingänge können optional (param[21] einstellen!) auch als Tastereingänge verwendet werden. Taster über 330Ohm nach Ground! Die Taster schalten die Pumpe für die normale Pumpenzeit ein. Alternativ kann anstelle eines Tasters auch ein Bewegungsmelder etc. mit Open-Kollektor-Ausgang verwendet werden.
wiffi_pump_72 mit/ohne 128×64 Display >> JSON-Telegramm korrigiert
01.11.2017 wiffi_pump_78 mit/ohne 128×64 Display >> schnellere Browserreaktion, schnelle zyklische JSON-Komplett-Datenabfrage (>8sec) möglich (wichtig für IObroker, MQTT, etc),
30.12.2017 wiffi_pump_81 mit/ohne 128×64 Display >> Befehl setvar hinzugefügt: damit ist automatisches Setzen der für den WIFFI-pump relevanten CCU-Systemvariablen möglich
16.01.2018 wiffi_pump_85 mit/ohne 128×64 Display>> alternativ manuelle oder automatische Browser-Datenaktualisierung möglich
11.03.2018 wiffi_pump_87 mit/ohne 128×64 Display >> Höhere Schaltempfindlichkeit mit Hardwareänderung: R3 jetzt 33k und Wemos-Modul modifiziert. Siehe aktuelle Bauanleitung. Achtung: param[20] = 4 !
02.04.2018 wiffi_pump_88 mit/ohne 128×64 Display >> Watchdog integriert. Json-Ausgabe mit/ohne html-Header
Stable 07.06.2018 wiffi_pump_89 mit/ohne 128×64 Display >> Anzahl der regelmässigen Resets reduziert. „Schönheitsfehler“!
Stable 28.10.2018 wiffi_pump_90 mit/ohne 128×64 Display >> Fehler bei der Zeitumstellung korrigiert
Beta 14.07.2019 wiffi_pump_91mit/ohne 128×64 Display >> JSON-port einstellbar
Stable 23.10.2019 wiffi_pump_92 mit/ohne 128×64 Display >> DDarstellungsprobleme mit verschiedenen Browsern beseitigt
Beta-Komplett-Update 08.01.2020: Wiffi_pump_2_96 größeres Update mit vielen Detailverbesserungen zur effektiveren Messwertübertagung an die CCU oder zum Datenserver. Dem Modul kann jetzt mit dem neuen Befehl setip eine feste IP-Adresse zugewiesen werden (Erklärung oben!). Der Update-Server startet jetzt auch mit dieser festen Adresse. Der Schaltalgorithmus wurde verbessert und ist nun leichter an die individuellen Heizungsverhältnisse anpassbar (mit nur einem Parameter (param 1).
Nach diesem größerem Update sollte man sicherheitshalber ein Factory-Reset (Taster 10sec drücken) machen und den Router-Zugang im Hotspotmodus neu einrichten..
Beta 21.01.2020 wiffi_pump2_97 Update-Seite überarbeitet
Beta 01.03.2020 wiffi_pump2_98 Umschaltung Sommer/Winterzeit korrigiert
Beta 31.03.2020 wiffi_pump2_99a Komplett-Update! Stabilitätsverbesserungen bei häufigem Webseitenaufruf, Nach dem Update prüfen, ob param 20 auf gleichem Wert wie vor dem Update steht (meistens 4)
Beta 12.04.2020 wiffi_pump2_100 Netzwerkeinstellungen bei fester IP verbessert.
Beta 16.05.2020 wiffi_pump2_104 schnellerer Webseitenaufbau durch Erhöhung der CPU-Taktfrequenz von 80 auf 160Mhz, ntp Zeitsynchronisation verbessert, keine Klartext-Darstellung des WLAN-Passwortes, watchdog optimiert
03.07.2020 wiffi_pump2_110 keine wesentlichen Funktionsveränderungen, aber stabileren Webseitenserver eingebaut. WLAN-Konnektivität wird auf Expertenseite angezeigt
21.05.2023 wiffi_pump2_111a Geringfügiger Fehler im JSON.Datentelegramm korrigiert
Zum Updaten die heruntergeladenen Zip-Archive in ein temporäres Verzeichnis entpacken und zum Update nur die *.bin Datei verwenden, nicht den Zip-File !!!
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, 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
- 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 zeigtsich 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 HTerm ( serial 115200bd, Newline at „CR+LF“ ) verwenden )
- 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:
Rückstellen in den Werkszustand
Manchmal kann es notwendig sein, die im EEPROM abgelegten Zugangsdaten für den heimischen WLAN-Router zu löschen und den WIFFI-pump in den Auslieferungszustand zu versetzen. Hierfür wird durch 2 sec-Drücken des PROG-Tasters zuerst in den Hotspot-Modus geschaltet, was durch schnelles Blinken der roten LED angezeigt wird. Danach hält man den PROG-Taster für mehr als 10 sec gedrückt, was mit einer langsam blinkenden LED bestätigt wird, die dann in Dauerleuchten übergeht. Jetzt sind alle Nutzerdaten gelöscht und mit Druck auf den RESET-Taster kann wieder neu gestartet werden.
Achtung: nie den PROG- und RESET-Taster gleichzeitig drücken, da das Modul dann in den Programmiermodus geht und u.U. die Firmware beschädigt wird.
Alternativ kann man das auch mit dem oben beschrieben factory-Befehl durchführen.
Schalten der Zirkulationspumpe mit der Homematic
Eigentlich braucht man die Zirkulationspumpe nicht von der CCU schalten, da sie ja vom WIFFI-pump-2 automatisch in Abhängigkeit von der Temperaturerhöhung am WW-Auslauf eingeschaltet wird. Aber aus verschiedenen Gründen ist es dennoch sinnvoll, die Zirkulationspumpe zu bestimmten Zeiten einzuschalten. Beispielsweise wenn die Heizung zur Legionellendesinfektion zu einem bestimmten Zeitpunkt die Temperatur im WW-Speicher hochfährt, dann macht ein gleichzeitiges Spülen der Ringleitung durchaus Sinn. Oder wenn man morgens immer zu einer bestimmten Zeit duscht, dann will man nicht warten, bis nach Aufdrehen des Wasserhahnes die Zirkulationspumpe das warme Wasser erst ranbringt. In all diesen Fällen ist ein vorausschauendes zeitgesteuertes Einschalten absolut sinnvoll.
Das Einschalten erfolgt mit einem einfachen HM-Skript, das zum gewünschten Zeitpunkt die Pumpe eine bestimmte Zeit einschaltet.
und hier ist das HM-Skript dazu, das in meinem Beispiel alle 15min zwischen 7h00 und 8h00 aufgerufen wird.
[codesyntax lang=“text“ title=“HM-Skript zum Einschalten der Zirkulationspumpe“]
!hiermit wird die z_pump für 300 sec eingeschaltet string befehl = "/?trigger:300:"; string IP = dom.GetObject("wiffi_pump_ip").Value(); !Holt IP_adresse des WIFFI_wz var send_data = "http://" + IP + befehl; !Befehl zusammensetzen WriteLine(send_data); string stdout; string stderr; !und Befehl ausgeben system.Exec("wget -q -O - '"#send_data#"'", &stdout, &stderr);
[/codesyntax]
Man kann auch einfach mit einem Browser dies ausprobieren, indem man folgenden Befehl eingibt:
<ip-wiffi>/?trigger:300: Danach schaltet die Zirkulationspumpe für 300sec ein.
Natürlich kann man solch einen String auch von anderen Rechnern wie Rasberry und Co. abschicken. Somit ist der WIFFI-pump sehr zukunftssicher. Vielleicht mache ich dazu mal eine einfache App . Anregungen dazu nehme ich gerne entgegen!
Die Montage des NTC-Temperatursensors
Der Temperatursensor muß am vorlaufseitigen Ausgangsrohr des Wasserspeichers so nah angebracht werden, daß bei Zapfen von warmem Wasser möglichst schnell eine Temperaturerhöhung gemessen wird. Andererseits darf der Sensor nicht zu nah am Wasserspeicher sein, weil sonst die wasserseitige Wärmeausstrahlung das Rohr immer erwärmt. Mein Erfahrungswert für die optimale Leitungsentfernung zwischen Sensor und Speicherausgang ist etwa 40cm bis 60cm; das hängt vom Leitungsquerschnitt und den räumlichen Gegebenheiten ab. Muß man halt etwas probieren!
Test: Wenn die Zirkulationspumpe längere Zeit nicht gelaufen ist, dann sollte der geplante Anbringungsort für den Sensor höchstens handwarm sein!
Besonders wichtig für eine gute Funktion ist natürlich eine gut entlüftete Ringleitung. Wenn hier sich Luftblasen angesammelt haben, dann ist eine effektive Pumpfunktion nicht möglich. Besonders die Schwerkraftbremse muß einwandfrei funktionieren, damit bei abgeschalteter Zirkulationspumpe auch wirklich kein Wasser zirkuliert. Prüfen kann man das folgendermaßen:
Zirkulationspumpe stromlos machen und mindestens 2 Stunden den Kreislauf abkühlen lassen. wenn danach der Rücklauf kalt ist und der Vorlauf nur auf dem ersten Meter handwarm, dann ist keine natürliche Zirkulation da und die Schwerkraftbremse ist in Funktion.
Danach wird die Zirkulationspumpe eingeschaltet und die Zeit gemessen, bis das warme Wasser am Rücklauf angekommen ist. Wenn nach 2 bis 5 Minuten das warme Wasser im Rücklauf angekommen ist, dann scheint der hydraulische Pumpenkreis wohl in Ordnung zu sein!
Hinweise bei Funktionsproblemen
Ein ganz einfacher Funktionstest ist nun möglich, indem man den noch nicht montierten kalten NTC-Temperatursensor zwischen den Fingern einige Sekunden anwärmt. Dann muß sofort das Relais einschalten und nach etwa 4min die Zirkulationspumpe wieder abschalten. Wenn das so funktioniert, dann funktioniert der Wiffi-pump richtig!
Wenn es nicht funktioniert, dann sind nachfolgend einige mögliche Fehlerursachen aufgelistet:
- Ist die Leitung für den NTC-Sensor nicht länger als 1 bis 2m und liegt möglichst nicht mit anderen Kabeln nah zusammen
- Ist das Netzteil in Ordnung ? Oft neigen Billig-Netzteile zu Störungen.
- Ist der NTC-Sensor an einem metallischen Rohr montiert ? Kunststoffrohre funktionieren nicht !
- Hat der NTC-Sensor guten Wämekointakt mit dem Rohr am WW-Auslauf ?
- Ist der Sensor auch nicht zu nah am WW-Auslauf positioniert, so daß bei Erwärmung des WW_Speichers die Erwärmung bis in das WW-Auslaufrohr einwirkt.
- Hat die Zirkulationspumpe eine sog. Schwerkraftbremse ? Bei modernen WW-Pumpen ist das Ventil in der Pumpe. Es gibt aber auch Rückschlagventile, um ein Zirkulation bei abgeschalteter Pumpe zu verhindern.
- Wenn die Pumpe trotzdem zu häufig schaltet, dann kann in den Experteneinstellungen der Wert param[1] erhöht werden. Typischer Einstellbereich 4 (zu empfindlich) bis 20 ( unempfindlich). Wenn param[11] vorhanden, dann diesen Wert nicht kleiner als param[1] einstellen.
Hier noch entsprechende Hinweise von der Help2-Seite des WIFFI-pump:
Daten nach FHEM schicken
Hier ist eine schöne Beschreibung, wie man die Daten zu FHEM schickt und dort auswertet:
https://homematic-forum.de/forum/viewtopic.php?f=31&t=32030&start=40#p519715
… wo gibt´s den Bausatz ?
Einen kompletten Bausatz des WIFFI-pump-2 kann man in meinem Webshop erwerben:
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. Auch die notwendigen Eingriffe in das Heizungssystem dürfen nur von ausgebildeten Fachpersonal durchgeführt werden. Es sind die geltenden Sicherheitsvorschriften und die DVGW-Richtlinien einzuhalten.