Der WIFFI-3 …die Raumsonde nicht nur für das Wohnzimmer

,
Print Friendly, PDF & Email

 

1. Der  WIFFI-3.0 in Kürze

Der WIFFI-3.0 ist ein weiteres sehr leistungsfähiges Modul einer Reihe von Sensor- und Aktor-Modulen, die hauptsächlich zur  Erweiterung  und  Ergänzung der Hausautomation mit der Homematic konzipiert sind.  Die WIFFI´s sind allesamt Funkmodule , die das in nahezu jedem Haushalt vorhandene gesicherte WLAN-Funknetz verwenden, um mit der Homematic-CCU  oder anderen Smarthome-Systemen zu kommunizieren.

Als Weiterentwicklung des WIFFI-wz 2.0 sind beim neuen WIFFI-3.0 neue Funktionaltäten integriert und das Modul deutlich kompakter aufgebaut. Die bisherigen Erfahrungen und die Verbesserungsvorschläge vieler User haben das neue Modul zu dem gemacht, was es jetzt geworden ist: eine sehr leistungsfähige Raumsonde für alle Räume im Haus. Damit sind eine Vielzahl von Automatisierungsaufgaben im Haus mit der Homematic realisierbar. Aber auch mit anderen Smarthome-Systemen macht der WIFFI-3.0 eine gute Figur, weil mit standardisierten Datentelegrammen (JSON_Format) eine universelle Kommunikation mit vielen Systempartnern möglich ist. Die umfangreiche Sensorik des WIFFI-3.0  generiert eine Vielzahl sehr nützlicher  Signale und Informationen:

Für die Anwesenheitserkennung 

  • der integrierte  Infrarot-Bewegungsmelder erkennt Personen und Tiere im Raum
  • der empfindliche  Geräuschmelder mit einstellbarer Schaltschwelle ergänzt die Anwesenheitsinformation
  • Mit Messung von  Geräuschpegel im Raum nach Mittel- und Spitzenwert lassen sich Aktivitäten im Raum quantifizieren

 Für die Heizung- und Klimasteuerung

  • Messung der Lufttemperatur
  • Messung der relativen  und absoluten Feuchte
  • Messung der Tautemperatur zur  Erkennung von Schimmelbildung
  • Messung des Luftdrucks mit Trendberechnung zur Wettervorhersage

Für die Beleuchtungssteuerung und für die intelligente Rollladen- und Jalousiensteuerung

  • Hochdynamische und genaue Helligkeitsmessung
  • Kontinuierliche Berechnung des Sonnenstandes mit Elevations- und Azimutwinkel 
  • Berechnung der Minuten vor Sonnenaufgang (SA)  und Minuten vor Sonnenuntergang (SU)
  • Integrierter Taster zum EIN-Ausschalten programmierbarer Funktionen

Für die hochwertige Überwachung der Raumluftqualität (optional mit BME 680))

  • Messung des Luftqualtätsindex IAQ qualitativ (sehr gut bis ungenügend)
  • Messung des Luftqualitätsindex quantitativ (Wert von 0 bis 500)
  • Messung CO2-Equivalent 

Sonstige Funktionalitäten

  • Einbindung ins Heimnetz über WLAN
  • komfortable Eingabe der WLAN-Zugangsdaten mit Browser
  • Eigene Modul-Webseite zur kontinuierlichen Darstellung und Kontrolle der Messdaten 
  • Einfache Update-Möglichkeiten über integrierte Webseite
  • Farbanzeige der Luftqualität (ab 1/2019)

Die Datenübertragung erfolgt mit dem hauseigenen WLAN. Die Datenübertragung zur Homematic arbeitet völlig automatisch im Hintergrund, indem die Daten kontinuierlich auf entsprechende CCU-Systemvariablen abgebildet werden. Für die Verwendung in Verbindung mit ioBbroker oder anderen Hausautomationssystemen kann der WIFFI-3.0 anstatt zur CCU auch JSON Daten an eine programmierbare Serveradresse versenden. Und natürlich kann man den WIFFI auch ganz ohne Hausautomation verwenden: dafür hat das Modul seine eigene Webseite, womit die Messdaten im Heimnetz mit jedem üblichen Browser einfach dargestellt werden können. So hat man die aktuellen Zustandsdaten des Wohnraumes jederzeit auch auf dem Tablet oder Smartphone im Blick.

Das Webseiten-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. Aber vielleicht findet sich in der Community ein „App-Experte“, der aus der eine alternative Darstellungsmöglichkeit für Smartphone oder Tablet schafft.

Oben auf der Webseite sind die blauen Links zu den verschiedenen Webseiten des WIFFI-3.0. Darunter sind die Befehle aufgelistet, mit denen man das Modul komfortabel konfigurieren kann und weiter unten die IP-Adressen des Moduls und der CCU. und zur Kontrolle wird auch die Verbindungsqualität des WLAN angezeigt. Im unteren Bereich der Webseite sind die umfangreichen Sensordaten dargestellt. Die Aktualisierung im Browser erfolgt  automatisch im Minutentakt oder manuell durch Anklicken der Links.  In rot sind die Namen der entsprechenden CCU-Systemvariablen aufgeführt, mit denen die Messdaten automatisch synchronisiert werden. Die Replizierung erfolgt intelligent nach verschiedenen Kriterien, damit einerseits eine sehr schnelle Aktualisierung möglich ist und andererseits die Datenrate klein bleibt.

2. Der WIFFI-3.0 …  Nachbau relativ einfach!

Damit der Nachbau auch für den weniger versierten Elektroniker möglich ist, wurde ein Komplettbausatz entwickelt. Dabei wurde Wert darauf gelegt, daß die zu verlötenden Bauelemente möglichst nur große Standard-Bauteile sind. Der „vielbeinige“ Controller ist bereits auf einer fertigen Modulplatine verlötet und schon programmiert , so daß bei diesem wichtigsten Bauteil keine Probleme auftreten können.  Sorgfalt und der fachgerechte Umgang mit dem Lötkolben sind aber schon erforderlich!  Eine umfangreiche  bebilderte Bauanleitung  ( hier die Bauanleitung bis 1/2019) macht den Nachbau auch für „Nicht-Nerds“ gut machbar. Nachfolgend das Funktionsschema  des WIFFI-3.0:

Und so sieht das Ganze im zusammengebauten Zustand aus. Mit einer Stromversorgung über ein einfaches 5V/1A-Steckernetzteil sind keine Batterien notwendig. Das macht auch Sinn, weil ja im Wohnraum eh eine Steckdose vorhanden ist und regelmäßiger Batteriewechsel nur nervt!

Eingebaut wird die Controllerplatine in ein spezielles Gehäuse, das im 3D-Druck hergestellt wird. Man kann das Gehäuse mit dem Bausatz beziehen oder auch selbst ausdrucken. Die Sensoren und der Controller werden ohne spezielle Werkzeuge einfach nur in das fertige Gehäuse „eingeklipst“.  Alle Teile und alle zu verlötenden oder steckbaren Sensoren sind beim Bausatz schon dabei. Das Netzteil wird allerdings nicht mitgeliefert. Benötigt wird ein 5V/1A Steckernetzteil mit 5,5mm/2.1mm Hohlstecker.  Dabei sollte man beim Netzteil auf gute Qualität achten, weil diese ja immerhin im Dauerbetrieb arbeiten.  Die einschlägigen Elektronikhändler bieten hier genügend Alternativen an.

Ab 1/2019 ist im WIFFI3.0 noch eine RGB-LED eingebaut, die im transparenten Gehäuse die Luftqualität mit Farben anzeigt. Die Farben sind entsprechend dieser Tabelle.

3. Programmierung und Einstellung

Der WIFFI-3.0 verwendet als Mikrocontroller mit WLAN den WeMos D1 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 WIFFI-3.0 zur Einstellung als Hotspot arbeiten läßt.  Auf der eigenen Webseite des WIFFI (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:

1.RESET-Minitaster seitlich am WeMos_modul drücken. Einige Sekunden  warten bis die rote LED auf der Platine alle 1sec blinkt (dabei versucht der WIFFI-3.0 sich ins WLAN einzuloggen, was natürlich wegen des Fehlens der Zugangsdaten noch nicht geht!).

2. Dann den PROG-Taster (der Taster links unten neben dem WeMos) etwa 2sec drücken bis die rote LED im 0,5sec-Takt blinkt. Jetzt ist der WIFFI-3.0 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 ist, wenn alles richtig funktioniert, eine gesicherte Verbindung zum „wiffi“ vorhanden.

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



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 selbst darf keinen Doppelpunkt enthalten!), am Schluss aber den Doppelpunkt nicht vergessen!)

192.168.4.1/?pwd:my_pwd:  dabei ist „my_pwd“ das Router-Passwort des eigenen Routers (Achtung, das PWD selbst darf keinen Doppelpunkt enthalten!), am Schluss aber den Doppelpunkt nicht vergessen!)

192.168.4.1/?ccu:my_ccu:  und „my_ccu“ ist die feste (!) IP der eigenen CCU1 oder CCU2 Wenn alle drei Daten richtig eingegeben sind und auf der Webseite auch richtig angezeigt werden , dann ist der WIFFI 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 LED  solange im 2sec Takt bis der WIFFI sich im heimischen WLAN eingeloggt hat. Danach sind nur sehr kurze LED-Lichtblitze vorhanden. Diese signalisieren eine erfolgreiche WLAN-Verbindung.

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!

Jetzt kann die Webseite des WIFFI-3.0 im Heimnetz aufgerufen werden. Dazu schaut man im Router nach, welche IP der WIFFI-3.0 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://wiffi.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 WIFFI immer diese gleiche IP zuteilt. Die Antwort auf den Browseraufruf der WIFFI-IP ist im folgenden Bild dargestellt.

4. Anlernen an die CCU

Die automatische Verbindung zur CCU wird über Systemvariablen hergestellt, deren Namen vorgegeben sind (in rot im Bild oben). Diesen Namen wird beim WIFFI-3.0 noch ein Prefix vorangestellt. Bei mehreren WIFFIs in verschiedenen Räumen kann man damit eine raumspezifische Unterscheidung der Namenskreise machen.  Für das Wohnzimmer wählt man als Prefix z.B. „wz_“ und beim Schlafzimmer „sz_“ . In diesem Beispiel habe ich als Prefix einfach „aaa_“ gewählt, damit die Systemvariablen des WIFFI später in der Auflistung der CCU-Systemvariablen immer vorn stehen, aber der Prefix ist eben beliebig! Wie man den Prefix mit dem prefix-Befehl ändert, ist weiter unten bei den Befehlen beschrieben.

Im ersten Schritt sollte man die Namensvorgabe erst mal behalten! Daneben werden auf der WIFFI-3.0-Webseite die aktuellen Sensorwerte  dargestellt.  Diese Werte werden alle 60sec in einem festen Zeitraster im Browser 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.

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. Das eigentliche Anlernen des WIFFI an die CCU ist sehr einfach, weil für jedes Sensorsignal nur eine korrespondierende Systemvariable angelegt wird. Entsprechend der Vorgabe (rote Namen) werden  Systemvariablen in der CCU manuell oder automatisch angelegt. Automatisch kann kann man mit dem Befehl setvar die CCU-Systemvariablen auf der CCU „in einem Rutsch“ anlegen lassen. Dazu die Befehlsliste aufrufen und einfach den setvar-Link anklicken. Dann ca. 60sec warten, bis alle notwendigen Systemvariablen auf der CCU angelegt sind. Danach in der CCU nachschauen, ob alle Systemvariablen auch wirklich angelegt wurden.

Wenn dieses Verfahren nicht erfolgreich ist, dann müssen die Systemvariablen mit dem name-Befehl entsprechend folgender Liste (hier mit dem prefix aa_ ) manuell angelegt werden:

aa_ip  vom Typ „Zeichenkette“
aa_temp 
vom Typ „Zahl“, -50 bis 50 °C
aa_taupunkt  vom Typ „Zahl“, -50 bis 50 °C
aa_feuchte vom Typ „Zahl“,  0 bis 100 %
aa_feuchte_abs  vom Typ „Zahl“, 0 bis100 g/m³
aa_baro  vom Typ „Zahl“, 0 bis 1300 hPa
aa_luftdrucktrend  vom Typ „Zeichenkette“
aa_iaq  vom Typ „Zeichenkette“
aa_iaq_value   vom Typ „Zahl“,  0 bis 500
aa_co2  vom Typ „Zahl“,  0 bis 5000
aa_iaq_rr0_value  vom Typ „Zahl“,  0 bis 1
aa_motion  vom Typ Logikwert,  EIN und AUS
aa_noise   vom Typ Logikwert,  EIN und AUS
aa_noise_value vom Typ „Zahl“, 0 bis 100
aa_noise_peak  vom Typ „Zahl“, 0 bis 100
aa_noise_avg vom Typ „Zahl“, 0 bis 100
aa_lux   vom Typ „Zahl“, 0 bis 100000
aa_elevation vom Typ „Zahl“, 0 bis 100
aa_azimut  vom Typ „Zahl“, 0 bis 360
aa_minuten_vor_sa   vom Typ „Zahl“, 0 bis 100
aa_minuten_vor_su  vom Typ „Zahl“, 0 bis 100
aa_schalter  Logikwert,  EIN und AUS

Wenn man andere Namen als die hier verwendeten Namen benutzen möchte, dann man man die Namen mit dem name-Befehl neu festlegen. Also wenn die Systemvariable  aa_temp  (das ist name:2) jetzt wohnzimmer_temp heißen soll, dann gibt man ein: <wiffi_ip>/?name:2:wohnzimmer_temp:
Will man anstelle des vorgegebenen  prefix  aa_  beispielsweise das Prefix wz_ verwenden, dann gibt man in die Browserzeile ein:  <wiffi_ip>/?prefix:wz_:
Aber bitte erst umbenennen, wenn alles unproblematisch läuft ;))

Weitere Infos zu diesem Thema:
>> Es müssen nur diejenigen Systemvariablen definiert werden, die man auch benutzen möchte!
>> Die Aktualisierung aller genannten  Systemvariablen erfolgt automatisch, aber nur wenn sich die Messwerte ändern. Dadurch wird vorteilhafterweise der Datenfluss stark reduziert.
>> Die oben genannten Systemvariablen sind „normale“ CCU-Systemvariablen, deren Zahl nicht wie bei den HM-Skriptvariablen auf  200 begrenzt ist !

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!

 

5. Befehlsliste des WIFFI-3.0

Auf der Befehlsliste-Seite sind Befehle dargestellt, mit denen bestimmte Eigenschaften des WIFFI 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 Verwendung eines anderen Zeitservers  etc. sollte man diese Befehle anwenden. Bei den als Link blau gekennzeichneten Befehlen reicht es, zum Ausführen einfach darauf zu klicken. Die Funktion der einzelnen Befehl ist dem folgenden Bild zu entnehmen:

Beim WIFFI-3.0 muß  aber auf jeden Fall im stillen Raum zur Nullstellung des Geräuschmelders der calnoise Befehl einmalig ausgeführt werden .  Die anderen Befehle sollte man sich ansehen, damit man einen Überblick über die Möglichkeiten hat.

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.

6. Einstellungen im Expertenmodus

Im sog. Expertenmodus. sind zur Erstinstallation einige Parameter einzustellen. Dies macht man mit dem param-Befehl. Um beispielsweise den eigenen Breitengrad (hier 50,9°) einzugeben, lautet der Befehl: <wiffi_ip>/?param:21:509:  Analog dazu müssen nach eigenen Erfordernissen die  Parameter 22 und 20 gesetzt werden. Die anderen Parameter läßt man normalerweise unverändert.

7. Rückstellen in Werkszustand

Manchmal kann es notwendig sein, die im EEPROM abgelegten Daten zu löschen und den WIFFI 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 roten LED angezeigt wird. Danach hält man den PROG-Taster  solange gedrückt, bis die rote LED dauerhaft leuchtet. Jetzt werden die EEPROM-Daten gelöscht. Läßt man die PROG-Taste wieder los, dann startet der WIFFI neu und geht automatisch in den Hotspot-Modus, um so wieder neu an den Router angelernt zu werden. Achtung: nie den PROG- und RESET-Taster am WeMos-Modul gleichzeitig drücken, da das Modul dann in den Programmiermodus geht und u.U. die Firmware beschädigt wird.

Man kann zusätzlich  auch mit dem factory-Befehl den Werkszustand wieder herstellen, aber das funktioniert nur, wenn auch die Befehlsliste im Browser aufrufbar ist. .

8. Update des WIFFI-3.0

Ein Update des WIFFI kann ohne Demontage bzw. Geräteöffnung komplett über das WLAN erfolgen. Dabei ist der WIFFI 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, den  *.bin File entpacken und auf dem PC speichern. Achtung nicht das Zip-Archiv zum Update verwenden, das beschädigt u.U. den WIFFI.
> Die Update-Seite des WIFFI aufrufen (siehe nächstes Bild). Dort werden zwei Alternativen eines Updates angeboten: das Komplett-Update nur wenn das bei den Informationen zum Update-File ausdrücklich angemerkt ist und das normalerweise verwendete Teil-Update.



Das Teil-Update mit Klick auf den Link Teil-Update auslösen und mindestens 15sec warten und erst dann den Link Update-Explorer auslösen.
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 neu mit der upgedateten Firmware gestartet:

.

9. 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:

10. 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 06.12.1018:  wiffi3_1   Basis-Firmware

Update 30.12.1018:  wiffi3_6   RGB-LED Anzeige integriert.

Update 05.01.2019:  wiffi3_7   Dimmbare und helligkeitsgesteuerte RGB-LED Anzeige (param 10), EEPROM Management verbessert

Stable Update 20.02.2019:  wiffi3_9   kleine Änderungen, „Webseiten-Kosmetik“

Beta Update 14.03.2019:  wiffi3_11  JSON-Telegramm mit values in Anführungszeichen, Schaltschwellen für IAQ mit Parametern einstellbar, Test der RGB-LED beim Start

Beta Update 18.03.2019:  wiffi3_14  Stand-Alone-Betrieb (ohne CCU) einschaltbar mit neuem param 11

Beta Update 01.04.2019:  wiffi3_16  Berechnung Sonnenunter/aufgangszeit korrigiert 

Stable Update 13.06.2019:  wiffi3_17  Geräuschmelder-Fehlfunktion bei Übersteuerung korrigiert

Beta Update 30.11.2019:  wiffi3_20   BOSCH-BSEC-Library aktualisiert auf  Version  1.4.7.4. Erweiterung & Verbesserung der Luftgütenberechnung mit der zusätzlichen Systemvariablen  iaq_rr0_value (rel. Sensorwiderstand). Damit lassen sich im übergeordneten Server beliebige Modelle für eine alternative Berechnung der Luftqualität „füttern“. 
Komplett-Update und danach setvar-Befehl ausführen. Wenn längere Zeit der WIFFI stabil läuft, dann mit dem Befehl calair den rel. Sensorwiderstand bei Frischluft auf 1 kalibrieren ! Abschaltung der LEDs mit param 9 verbessert.  NTP-Zeitmanagement verbessert. (trotzdem besser die Zeit vom Router holen) 

Beta Update 12.01.2020:  wiffi3_22  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.

Beta Update 14.03.2020:  wiffi3_24  Sommer/Winterzeit korrigiert, Datenübertragung zur CCU häufiger (alle 3min), IAQ-Berechnung mit eigener Lösung (siehe nachfolgendes Kapitel. 

Beta Update 23.03.2020:  wiffi3_25  Stabilitätsverbesserungen bei schnellem und häufigem Webseitenaufruf/wechsel

Beta Update 12.04.2020:  wiffi3_26  Netzwerkeinstellungen bei fester IP verbessert

Beta-Update 16.05.2020: wiffi3_29  etwas schnellerer Webseitenaufbau durch Erhöhung der CPU-Taktfrequenz  von 80 auf 160Mhz,  ntp Zeitsynchronisation verbessert, keine Klartext-Darstellung des WLAN-Passwortes

Beta-Update 19.05.2020: wiffi3_31  ntp-Zeitserver-Synchronisation insbesondere bei fester IP-Adresse verbessert, 160Mhz-CPU-Taktfrequenz , watchdog optimiert

Update 05.07.2020: wiffi3_34  Stabilität bei der Webseiten-Darstellung verbessert,  Schalter/Tasterfunktion korrigiert, Anzeige der WLAN-Konnektivität auf der Expertenseite

Update 14.08.2020: wiffi3_35   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 29.09.2020 wiffi3_37  Datentransfer zur CCU abschaltbar mit param 1, wenn keine CCU verwendet wird

Update 02.11.2020 wiffi3_40  umfangreiches Komplett-Update: Berechnung des CO2-Äquivalent und CO2-IAQ nach meinem  Standard-Verfahren (param 14 = 0 setzen)  mit notwendiger Frischluft -Kalibrierung (Befehl „calair“ ) oder alternativ die  Datenberechnung nach dem BOSCH-BSEC-Verfahren (param 14 = 1 setzen) .

Update 14.09.2021 wiffi3_42  Verbesserte Browser-Performance (favicon!), verbessertes Farbschema der RGB-LED. BSEC-Library für BME680 aktualisiert

Update 23.10.2021 wiffi3_44  die Berechnung der „Behaglichkeit“ integriert, Farbschema für die RGB-LED wieder zurück auf „alte“ Werte, Komplett-Update mit anschließendem setvar-Befehl  zum Setzen der neuen CCU-Systemvariable für „Behaglichkeit“. Siehe Kap. 12.

11. Verwendung des Luftgütesensors BME680

Optional kann anstelle des standardmäßigen BOSCH-Sensors BME280 (Temperatur, Feuchte, Luftdruck)  der BME680 ((Temperatur, Feuchte, Luftdruck plus Luftgüte) verwendet werden. Dieser Sensor erkennt neben CO2 ein ganzes Bündel von häuslichen Schadgasen. Dazu ist im Sensor ein beheiztes Substrat enthalten,  dessen Widerstandswert ein Maß für die Luftqualität ist. Gute Luft heißt Widerstand hoch (> 100kOhm) , schlechte Luft heißt kleinerer Widerstand. Die Auswertung dieses Widerstandes ist insofern etwas „tricky“, weil der Sensor nicht geeicht ist, sondern mit „sauberer“ Luft (Frischluft)  regelmäßig neu geeicht werden muß. Insbesondere bei neuem Sensor dauert es mehrere Tage, bis der Widerstandswert (Eichwert Ro) bei Frischluft sich stabilisiert hat. 

Die Umrechnung des Widerstandswertes in den sog IAQ-Wert (Luftqualitätsindex) ist m.W. nicht genormt, so daß jeder Hersteller sein eigenes „Süppchen kocht“ . BOSCH hat hierzu eine Software BSEC entwickelt, die man als geschützte Software verwenden darf. Leider ist aber nicht der Quellcode veröffentlicht, so daß für die WIFFI-Firmware bis 02/2020 die geschützte BSEC-Library (sehr mühsam!) in die von mir verwendete Arduino-Entwicklungsumgebung eingebunden wurde. Nicht nur wegen der immer wieder auftauchenden Compilationsschwierigkeiten mit der BSEC-Library bei jedem neuen Arduino-Update sondern insbesondere auch wegen des manchmal nicht nachvollziehbaren selbsttätigen Abgleichverhaltens (KI ??) habe ich  nach alternativen Bewertungsalgorithmen gesucht; allerdings mehr oder weniger ergebnislos. Deshalb wurde selbst ein eigener Lösungsansatz entwickelt:

Unter der Annahme, daß der BME680 sich vermutlich ähnlich verhält wie z.B. der oft verwendete Raumluftsensor MQ135, kann man aus dem normalisierten Widerstand R/Ro über eine Exponentialfunktion den Gehalt an Schadgasen abschätzen. Hilfreich war für diese Annahmen das Datenblatt des MQ135 .

Das Ergebnis ist ein Zusammenhang zwischen dem im Sensor gemessenen normalisierten Widerstand R/Ro und dem CO2-Äquivalent oder sog. IAQ-Wert (siehe folgendes Bild). Der Störeinfluß von Luftfeuchte und Temperatur wird ebenfalls berücksichtigt, ist aber in dem Bild der Einfachheit halber nicht dargestellt.

Mit der ab Firmwareversion wiffi3_24 verwendeten eigenen IAQ-Berechnungssoftware wird ebenfalls ein  IAQ-Index (0 bis 500)  und ein sog. CO2-Äquivalent (0 bis 5000ppm)  berechnet. Dazu muß man wissen, daß das CO2-Äquivalent bei diesem Sensor ein Maß für die gesamten Schadgase sind. Der Sensor ist eben kein reinrassiger CO2-Sensor, sondern er misst ein ganzes Bündel der typischen häuslichen Schadgase. Mehr dazu in den vielen Veröffentlichungen im Internet. 

Mit dem vom User individuell anpassbaren Parameter iaq_sensivity (param 24) wird der IAQ-Wert im WIFFI berechnet und angezeigt.  Standardmäßig wird als iaq_sensivity der Wert 70 verwendet. Man kann wie im obigen Diagramm erkennbar aber auch empfindlichere oder weniger empfindliche Anzeigen realisieren.

Wenn man mit den gemessenen IAQ-Werten in der Homematic oder anderswo irgendwelche Aktoren (z.B. Lüfter etc.) abhängig von Schwellwerten schalten will, dann muß man natürlich sich für einen Empfindlichkeitswert (iaq_sensivity) entscheiden und diesen dann auch beibehalten. 

Mit Verwendung der neuen eigenen Auswertesoftware ab Firmware wiffi3_24 muß man eichmäßig genau wie bei der BSEC-Software selbst nichts machen.Bei einem neuen BME680-Modul  sollte man aber erst mal das Gerät mindestens 3  Tage laufen lassen, damit der Sensor sich stabilisiert bzw. sich „einbrennt“. Durch Lüftungsvorgänge im Raum wird im laufenden Betrieb jedesmal der Sensor automatisch auf beste Frischluft geeicht. Die Eichwerte werden in param 23 dauerhaft abgelegt. Das ist schon alles!

Wenn man manuell neu eichen möchte, dann setzt man diesen Wert z.B. auf null (mit dem Befehl <IP>/?param:23:0:) und lüftet danach solange den Raum, bis sich überall Frischluft eingestellt hat. Die beste Luftqualität wird dabei  automatisch als Eichwert im param 23 abgespeichert. In der Regel stellen sich Werte für param 23 zwischen 8000 und 20000 ein. 

Wichtig:
Der Eichwert (Widerstandswert Ro) wird automatisch als param 23 im EEPROM dauerhaft gespeichert, bleibt also beim Ausschalten des Moduls erhalten. Allerdings wird beim Komplett-Update der Parameter auf null gesetzt und der kontinuierliche Eichvorgang wird nach dem Einschalten neu gestartet. In der Regel stellen sich Werte für param 23 zwischen 8000 und 20000 ein. 

Wenn man eine bestimmte vorgegebene Luftqualität im Raum als Frischluft (IAQ = 25) kalibrieren möchte, dann kann man das manuell mit dem Befehl „calair“ auf der Webseite „Befehlsliste“ machen. Aber normalerweise sollte man das nicht machen und die kontinuierliche Eichung der eingebauten Automatik überlassen!

Noch eine Information: Nach dem Start (solange leuchtet die blaue LED)  für 5 Minuten. Während dieser Zeit wird nicht gemessen, damit sich der Luftgütesensor „setzen“ kann. 

Wer aber doch lieber die Firmware mit BSEC-Auswertung verwenden möchte, kann natürlich jederzeit auf die alte Version wiffi3_22  zurückgehen.  

12. Thema „Behaglichkeit“

Seit der Firmwareversion wiffi3_43 wird auch die sog. Behaglichkeit des Raumklimas berechnet. Mehr zu diesem Thema hier!
Aus den Temperatur und Feuchtewerten wird eine Kennziffer für die Behaglichkeit berechnet und an die entsprechende Systemvariable aa_behaglichkeit an die CCU übertragen. Der Wert bewegt sich  zwischen 0 und 3. Die Definition der Kennziffer:

  • 0  >> Raumklima „unbehaglich trocken“  , LED-Anzeige ROT
  • 1  >> Raumklima „unbehaglich feucht„, LED-Anzeige ROT
  • >> Raumklima „noch behaglich„, LED-Anzeige GELB
  • 3  >> Raumklima „behaglicht„, LED-Anzeige GRÜN

13. Verwendung mit ioBroker

Der ioBroker-Adapter für den WIFFI-wz ist hier: https://github.com/t4qjXH8N/ioBroker.wiffi-wz

Die ioBroker-Adapter Entwicklung im Allgemeinen ist hier beschrieben  https://github.com/ioBroker/ioBroker/wiki/Adapter-Development-Documentation

14. Integration in IP-Symcon

Viele Homematic-User verwenden IP-Symcon zur erweiterten Visualisierung und Steuerung. Hier im IP-Symcon-Forum werden die Grundlagen für die Einbindung und Verwendung  des WIFFI-wz diskutiert und erläutert. Eine konkrete und  sehr hilfreiche Anwendungsbeschreibung beschreibt auch dieser Artikel hier : WIFFI-WZ Multisensor mit IP-Symcon betreiben.

Hier hat ein aktiver User ein Modul für den WIFFI 3.0 geschrieben.

15. Den WIFFI mit Node-Red  abfragen

Ein User  des WEATHERMAN hat einen entsprechenden Adapter für das leistungsfähige Node-Red entwickelt. Sicher kann man dieses Beispiel auch auf den WIFFI-3.0 übertragen. Weitere Informationen zur RedMatic hier.

16. Den WIFFI mit Home Assistant nutzen

Hier sind die entsprechen Informationen.

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

1. Die rssi-Werte 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.

2. Welches Netzteil soll ich nehmen?
Für die Stromversorgung reichen 1A bei 5V. Die Netzteile haben aber eine oft sehr sehr schlechte Impulsunterdrückung, was man ihnen leider nicht ansehen kann. 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”.

3. Das Modul 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).

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

5. Manchmal ist das Modul nicht mehr per Browser sichtbar oder ist “eingefroren”?
Das kann mehrere Ursachen haben:
– Der Router kann möglicherweise dem Modul 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 das Modul ggf. unter einer anderen IP vorhanden ist. Der Name des Moduls fängt meist mit ESP… an.
Man kann diese Situation verbessern, indem man dem Modul mit dem Befehl “setip” eine im Router noch nicht vergebene Adresse im Nummernbereich des Heimnetzes fest zuweist.
– Wenn das Modul 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.

6. Kann man mit einer externen WLAN-Antenne die Kommunikation mit dem Router verbessern?
Ja unbedingt! Natürlich kann man durch Optimierung der Modul-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:

 

… und wo kann man den Bausatz bekommen?

Für den Nachbauer habe ich Bausätze zusammengestellt. Diese  können bei mir bezogen werden:  WIFFI-3.0-Bausatz Wer vorher einen Blick in die Bauanleitung werfen möchte, bitteschön: Bauanleitung und  hier die alte Bauanleitung bis 1/2019

Und wer sich das Gehäuse selbst ausdrucken kann, hier die 3D-Datei als stl-File.

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.

Skills

Posted on

5. Dezember 2018