Modul für DWD Open Data

Begonnen von jensb, 21 Januar 2018, 14:38:48

Vorheriges Thema - Nächstes Thema

roman1528

i3-10305T 4x3GHz;8GB RAM;250GB & 1TB NVMe:
FHEM 6.2;FTUI;8" Tablet's+Fully;NsPanelPro;HUE;ESPRGBWW;HM(CCU3);Duofern; ASC;MQTT(Tasmota);netatmo;SONOS;eBus;DbLog;XiaomiDevice;NUT;ModbusAttr

RPi3+: FHEM 6.2;I²C;GPIO;RFID;G-Tag;XiaomiBTLESens
RPi3: FHEM 6.2;DIY Relais-Board;I²C;GPIO;RFID;Photovoltaik

premultiply

Die vollständige MOSMIX-Stationsliste in einem parsertauglichen Format findet sich übrigens unter:
https://www.dwd.de/DE/leistungen/met_verfahren_mosmix/mosmix_stationskatalog.cfg?view=nasPublication&nn=16102

Die aktuellsten Messwerte sowie die vom DWD in "normale Sprache" und Symbole übersetzten Vorhersagen bekommt man aber scheinbar weiterhin nicht über die OpenData-Schnittstelle in einem brauchbaren Format aber weiterhin zuverlässig über die altbekannten Dateien per HTTP.
Daher bleibe ich weiterhin dabei. Ist auch um Größenordnungen daten- und ressourcenschonender ::)

premultiply

Oooh, übrigens - meine Erfahrung mit dem DWD hat wohl leider voll ins Schwarze getroffen  >:(
Die Datenquelle für dieses Modul wird wohl in Kürze abgeschaltet: :o
https://www.dwd.de/DE/leistungen/opendata/neuigkeiten/opendata_jul2018_02.html

Tobias

Weiss jemand wie man die vorhersagen mit dem kleinklima imageset in TabletUI anzeigen kann??

Gesendet von meinem Leap mit Tapatalk

Maintainer: Text2Speech, TrashCal, MediaList

Meine Projekte: https://github.com/tobiasfaust
* PumpControl v2: allround Bewässerungssteuerung mit ESP und FHEM
* Ein Modbus RS485 zu MQTT Gateway für SolarWechselrichter

somansch

Hallo Tobias,

dafür müsste das weather_widget im FTUI angepasst werden. Basis dafür könnte die Übersicht aus "DWDODweblink.pm" sein:# weather code to FHEM weather icon name mapping
my @dwdod_dayWeatherIconMap = ( "na",              # "Bewölkungsentwicklung nicht beobachtet",
                                "na",              # "Bewölkung abnehmend",
                                "na",              # "Bewölkung unverändert",
                                "na",              # "Bewölkung zunehmend",
                                # 4 Dunst, Rauch, Staub oder Sand
                                "fog",             # "Sicht durch Rauch oder Asche vermindert",
                                "haze",            # "trockener Dunst (relative Feuchte < 80 %)",
                                "fog",             # "verbreiteter Schwebstaub, nicht vom Wind herangeführt",
                                "fog",             # "Staub oder Sand bzw. Gischt, vom Wind herangeführt",
                                "fog",             # "gut entwickelte Staub- oder Sandwirbel",
                                "fog",             # "Staub- oder Sandsturm im Gesichtskreis, aber nicht an der Station",
                                # 10 Trockenereignisse
                                "haze",            # "feuchter Dunst (relative Feuchte > 80 %)",
                                "fog",             # "Schwaden von Bodennebel",
                                "fog",             # "durchgehender Bodennebel",
                                "na",              # "Wetterleuchten sichtbar, kein Donner gehört",
                                "na",              # "Niederschlag im Gesichtskreis, nicht den Boden erreichend",
                                "na",              # "Niederschlag in der Ferne (> 5 km), aber nicht an der Station",
                                "na",              # "Niederschlag in der Nähe (< 5 km), aber nicht an der Station",
                                "thunderstorm",    # "Gewitter (Donner hörbar), aber kein Niederschlag an der Station",
                                "na",              # "Markante Böen im Gesichtskreis, aber kein Niederschlag an der Station",
                                "na",              # "Tromben (trichterförmige Wolkenschläuche) im Gesichtskreis",
                                # 20 Ereignisse der letzten Stunde, aber nicht zur Beobachtungszeit
                                "na",              # "nach Sprühregen oder Schneegriesel",
                                "na",              # "nach Regen",
                                "na",              # "nach Schneefall",
                                "na",              # "nach Schneeregen oder Eiskörnern",
                                "na",              # "nach gefrierendem Regen",
                                "na",              # "nach Regenschauer",
                                "na",              # "nach Schneeschauer",
                                "na",              # "nach Graupel- oder Hagelschauer",
                                "na",              # "nach Nebel",
                                "na",              # "nach Gewitter",
                                # 30 Staubsturm, Sandsturm, Schneefegen oder -treiben
                                "na",              # "leichter oder mäßiger Sandsturm, an Intensität abnehmend",
                                "na",              # "leichter oder mäßiger Sandsturm, unveränderte Intensität",
                                "na",              # "leichter oder mäßiger Sandsturm, an Intensität zunehmend",
                                "na",              # "schwerer Sandsturm, an Intensität abnehmend",
                                "na",              # "schwerer Sandsturm, unveränderte Intensität",
                                "na",              # "schwerer Sandsturm, an Intensität zunehmend",
                                "na",              # "leichtes oder mäßiges Schneefegen, unter Augenhöhe",
                                "na",              # "starkes Schneefegen, unter Augenhöhe",
                                "na",              # "leichtes oder mäßiges Schneetreiben, über Augenhöhe",
                                "na",              # "starkes Schneetreiben, über Augenhöhe",
                                # 40 Nebel oder Eisnebel
                                "na",              # "Nebel in einiger Entfernung",
                                "fog",             # "Nebel in Schwaden oder Bänken",
                                "fog",             # "Nebel, Himmel erkennbar, dünner werdend",
                                "fog",             # "Nebel, Himmel nicht erkennbar, dünner werdend",
                                "fog",             # "Nebel, Himmel erkennbar, unverändert",
                                "fog",             # "Nebel, Himmel nicht erkennbar, unverändert",
                                "fog",             # "Nebel, Himmel erkennbar, dichter werdend",
                                "fog",             # "Nebel, Himmel nicht erkennbar, dichter werdend",
                                "fog",             # "Nebel mit Reifansatz, Himmel erkennbar",
                                "fog",             # "Nebel mit Reifansatz, Himmel nicht erkennbar",
                                # 50 Sprühregen
                                "chance_of_rain",  # "unterbrochener leichter Sprühregen",
                                "mist",            # "durchgehend leichter Sprühregen",
                                "chance_of_rain",  # "unterbrochener mäßiger Sprühregen",
                                "mist",            # "durchgehend mäßiger Sprühregen",
                                "chance_of_rain",  # "unterbrochener starker Sprühregen",
                                "mist",            # "durchgehend starker Sprühregen",
                                "mist",            # "leichter gefrierender Sprühregen",
                                "mist",            # "mäßiger oder starker gefrierender Sprühregen",
                                "mist",            # "leichter Sprühregen mit Regen",
                                "mist",            # "mäßiger oder starker Sprühregen mit Regen",
                                # 60 Regen
                                "chance_of_rain",  # "unterbrochener leichter Regen oder einzelne Regentropfen",
                                "rain",            # "durchgehend leichter Regen",
                                "chance_of_rain",  # "unterbrochener mäßiger Regen",
                                "rain",            # "durchgehend mäßiger Regen",
                                "chance_of_rain",  # "unterbrochener starker Regen",
                                "rain",            # "durchgehend starker Regen",
                                "sleet",           # "leichter gefrierender Regen",
                                "sleet",           # "mäßiger oder starker gefrierender Regen",
                                "sleet",           # "leichter Schneeregen",
                                "sleet",           # "mäßiger oder starker Schneeregen",
                                # 70 Schnee
                                "chance_of_snow",  # "unterbrochener leichter Schneefall oder einzelne Schneeflocken",
                                "snow",            # "durchgehend leichter Schneefall",
                                "chance_of_snow",  # "unterbrochener mäßiger Schneefall",
                                "snow",            # "durchgehend mäßiger Schneefall",
                                "chance_of_snow",  # "unterbrochener starker Schneefall",
                                "snow",            # "durchgehend starker Schneefall",
                                "icy",             # "Eisnadeln (Polarschnee)",
                                "snow",            # "Schneegriesel",
                                "snow",            # "Schneekristalle",
                                "icy",             # "Eiskörner (gefrorene Regentropfen)",
                                # 80 Schauer
                                "drizzle",         # "leichter Regenschauer",
                                "drizzle",         # "mäßiger oder starker Regenschauer",
                                "drizzle",         # "äußerst heftiger Regenschauer",
                                "chance_of_sleet", # "leichter Schneeregenschauer",
                                "chance_of_sleet", # "mäßiger oder starker Schneeregenschauer",
                                "chance_of_snow",  # "leichter Schneeschauer",
                                "chance_of_snow",  # "mäßiger oder starker Schneeschauer",
                                "chance_of_snow",  # "leichter Graupelschauer",
                                "chance_of_snow",  # "mäßiger oder starker Graupelschauer",
                                "chance_of_snow",  # "leichter Hagelschauer",
                                "chance_of_snow",  # "mäßiger oder starker Hagelschauer",
                                # 90 Gewitter
                                "chance_of_storm", # "Gewitter in der letzten Stunde, zurzeit leichter Regen",
                                "chance_of_storm", # "Gewitter in der letzten Stunde, zurzeit mäßiger oder starker Regen",
                                "chance_of_storm", # "Gewitter in der letzten Stunde, zurzeit leichter Schneefall/Schneeregen/Graupel/Hagel",
                                "chance_of_storm", # "Gewitter in der letzten Stunde, zurzeit mäßiger oder starker Schneefall/Schneeregen/Graupel/Hagel",
                                "thunderstorm",    # "leichtes oder mäßiges Gewitter mit Regen oder Schnee",
                                "thunderstorm",    # "leichtes oder mäßiges Gewitter mit Graupel oder Hagel",
                                "thunderstorm",    # "starkes Gewitter mit Regen oder Schnee",
                                "thunderstorm",    # "starkes Gewitter mit Sandsturm",
                                "thunderstorm"     # "starkes Gewitter mit Graupel oder Hagel",);
                              );


Bin leider kein Entwickler, vielleicht hast du das "Know-How"  ;)

somansch


jensb

#216
Hallo allerseits,

der DWD hat mal wieder am Rad gedreht und die Bereitstellung von Vorhersagedaten für Stationen im CSV-Format eingestellt. Damit ist diese Funktion des DWD OpenData Moduls obsolet. Die Funktion für die Wetterwarnungen ist davon nicht betroffen. Wer bisher beides nutzt, sollte das Attribut "forecastStation" löschen, um sinnlose Serveranfragen zu vermeiden.

Es gibt möglicherweise Ersatz, denn vom DWD werden alternativ Vorhersagedaten im KML-Format zur Verfügung gestellt. In wie weit Stationskatalog und Datenumfang vergleichbar sind, habe ich noch nicht geprüft. Wenn eine vielleicht sogar kompatible Lösung möglich ist, werde ich sie in den kommenden Wochen bereitstellen.

Grüße,
Jens

Update: Eine Schnellprüfung hat ergeben, dass sich passendes unter https://opendata.dwd.de/weather/local_forecasts/mos/MOSMIX_L/single_stations/ findet. Die Stationsbezeichnungen sind identisch und der Datenumfang ist sogar umfangreicher als bisher.

Update 2: Das Grobkonzept für Download, Unzip und Datenextraktion steht, die Umwandlung in Readings steht noch aus. Das neue Format ist eigenschaftenorientiert aufgebaut. Trotzdem muss man die eigentlichen Nutzwerte immer noch wie bei CSV ausparsen - das ist inkonsequent aber nicht zu ändern.
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

jensb

Danke für die Aufmunterung, hier ein Zwischenstand zum Stand der Entwicklung:


  • Die Tageswerte funktionieren bereits wieder, 'Tx', 'Tn', 'Tg', 'Tm' sind weiter verfügbar.
  • Es wird eine weitgehend kompatible Lösung möglich sein.
  • Es gilt die gleiche Stationsliste wie zuvor.
  • Der 1. Prototyp des überarbeiteten Moduls wird vermutlich am Wochendende fertig.
  • Das neue Format enthält mehr Daten und benötigt zur Auswertung deutlich mehr Rechenleistung als bisher. Auf meinem Zero sind es aktuell knapp unter 3 Sekunden. Das ist mir für die synchrone Ausführung zuviel, kann aber in einem späteren Entwicklungsschritt analog zu den Wetterwarnungen auf asynchron umgestellt werden.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

curt

Zitat von: jensb am 21 September 2018, 23:02:31
Danke für die Aufmunterung,

Das klingt resigniert.

Nur zur Sicherheit, ich habe folgendes in fhem.cfg:

define DWD DWD_OpenData
attr DWD alertArea 815091375
attr DWD alertLanguage DE
attr DWD forecastDays 7
attr DWD forecastStation 10474
attr DWD forecastWW2Text 1define DWD DWD_OpenData
attr DWD alertArea 815091375
attr DWD alertLanguage DE
attr DWD forecastDays 7
attr DWD forecastStation 10474
attr DWD forecastWW2Text 1
attr DWD room 00 Test Wettervorhersage

define DWDweblink weblink htmlCode { DWDOD_AsHtmlH("DWD", 7, 1) }
attr DWDweblink room 00 Test Wettervorhersage

attr DWD room 00 Test Wettervorhersage

define DWDweblink weblink htmlCode { DWDOD_AsHtmlH("DWD", 7, 1) }
attr DWDweblink room 00 Test Wettervorhersage


Dieser ansich erstaunlich präzisen Vorhersage darf ich nun hinterherwinken? Offenbar schon, dabei dachte ich erst an ein Update-Problem, es gab zeitnah ja noch ein weiteres.

Wie kann ich Dich denn unterstützen? Rein technisch wohl eher nicht. Aber vielleicht wirklich durch Aufmunterung: Ich hätte das schon gern wieder.
RPI 4 - Jeelink HomeMatic Z-Wave

enno

Zitat von: jensb am 21 September 2018, 23:02:31
Danke für die Aufmunterung, hier ein Zwischenstand zum Stand der Entwicklung:

Moin Jens,
ich würde auch gerne helfen. Bin aber eher der Anwender mit ungesunden Perl halbwissen ;) Testen kann ich aber gut. Wenn es hilft, würde ich dir auch Kaffee oder Bier zur Motivation spendieren.

Gruss
  Enno
Einfacher FHEM Anwender auf Intel®NUC

jensb

ZitatDanke für die Aufmunterung ...
war anerkennend gemeint für die "Gefällt mir" Rückmeldungen zu meinem Post.

Auch Danke für eure Hilfsangebote. Bei Programmieren ist sie nicht nötigt, mein Prototyp funktioniert bereits wieder mit kleinen Einschränkungen:

  • keine Auswahl der abzufragenden Eigenschaften möglich, aktuell auf eine feste Liste beschränkt, da viele der mehr als 70 verfügbaren Eigenschaften meist nicht interessieren
  • kein Offline-Support
  • Performance, aktuell auf meinem Zero um 3 Sekunden
Auch den Weblink habe ich bereits angepasst.

Für Anwender wird vor allem relevant sein, dass es die meisten Readings immer noch gibt, sie aber zum Teil ganz andere Namen haben. Man könnte in die alten Namen umbenennen, das ist aber in vielen Fällen unglücklich, da es dann durch das deutliche mehr an verfügbaren Daten zu einer unsystematischen Benennung kommt. Auch ein Kompatibilitätsmodus wäre vorstellbar, ist mir aber in Anbetracht der offenen Punkte nicht wichtig genug und langfristig sowie überflüssig. Wer den anderen Users einen Gefallen tun will, kann hierfür einen Patch bereitstellen, den ich dann integriere.

Werde als nächstes die Modul-Hilfe so weit anpassen, dass man damit zumindest die neue Version zum Laufen bekommt.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

somansch

Zitat von: jensb am 22 September 2018, 13:34:03
war anerkennend gemeint für die "Gefällt mir" Rückmeldungen zu meinem Post.

Auch Danke für eure Hilfsangebote. Bei Programmieren ist sie nicht nötigt, mein Prototyp funktioniert bereits wieder mit kleinen Einschränkungen:

  • keine Auswahl der abzufragenden Eigenschaften möglich, aktuell auf eine feste Liste beschränkt, da viele der mehr als 70 verfügbaren Eigenschaften meist nicht interessieren
  • kein Offline-Support
  • Performance, aktuell auf meinem Zero um 3 Sekunden
Auch den Weblink habe ich bereits angepasst.

Für Anwender wird vor allem relevant sein, dass es die meisten Readings immer noch gibt, sie aber zum Teil ganz andere Namen haben. Man könnte in die alten Namen umbenennen, das ist aber in vielen Fällen unglücklich, da es dann durch das deutliche mehr an verfügbaren Daten zu einer unsystematischen Benennung kommt. Auch ein Kompatibilitätsmodus wäre vorstellbar, ist mir aber in Anbetracht der offenen Punkte nicht wichtig genug und langfristig sowie überflüssig. Wer den anderen Users einen Gefallen tun will, kann hierfür einen Patch bereitstellen, den ich dann integriere.

Werde als nächstes die Modul-Hilfe so weit anpassen, dass man damit zumindest die neue Version zum Laufen bekommt.

Grüße,
Jens

Hallo Jens,
auch an dieser Stelle noch mal die Aufmunterung persönlich  ;).

Ich denke auch, dass es wenig Sinn macht, die "alten" Readings irgendwie wieder halbwegs anzupassen bzw. eine Migration umzusetzen. Ich persönlich habe kein Problem mit neuen Namen für die Readings. Wenn es vom Inhalt her passt, schalge ich vor, die Namesngebung der Readings vom "Proplanta" Modul zu verwenden, da die meisten User dies ebenfalls im Einsatz haben.

PS: Falls du eine erste Testversion hast, stehe ich gern bereit.

Viele Grüße
Andreas

jensb

Hallo allerseits,

nun kann getestet werden. Die Prototypen für das OpenData-Modul und den dazugehörigen Weblink findet sich hier. Bitte vor Tests die aktuelle Konfig und die zu testenden Module in ihrer aktuellen Version sichern, damit ihr im Zweifelsfall den Rückwärtsgang eingelegt bekommt.

Die Installation des OpenData-Moduls selbst dürfte unproblematisch sein. Arbeit macht vor allem die Anpassung der Reading-Namen. In der Modulhilfe habe ich die neuen Reading-Namen des KML-Formats aufgeführt. Wenn man mit der alten Modulhilfe vergleicht hat man die Umsetzungstabelle. Bitte das vorhandene Attribut forecastProperties löschen bzw. geeignet anpassen.

Wer Proplanta-Reading-Namen bevorzugt, kann entweder das Modul für sich selbst patchen (siehe u.a. forecastPropertyAliases im Modul-Code) oder mir einen Patch für eine optionale Umschaltung zur Verfügung stellen. Default ist die DWD-Bezeichnung.

Wer den Weblink verwendet hat noch etwas mehr Arbeit vor sich. Die neue Version hat neben der Kompatibilität zum neuen OpenData-Modul noch die zusätzlichen Funktion, sich auch mit FHEMWEB ohne Page-Refresh periodisch und bei Tab-Wechsel zu aktualisieren und unterstützt nun auch das 3-Stunden Zeitraster des OpenData-Moduls. Die aktuelle Weblink-Datei bitte entfernen und ein eventuell vorhandenes "use ..." im 99_myUtils ebenfalls. Dann wie in der Modulhilfe des neuen Weblinks beschrieben erst das Weblink-Device anlegen und konfigurieren und dann den vorhandenen Weblink selbst aktualisieren. Die FHEM-Wiki ist für die neue Version des Weblinks nicht mehr korrekt und wird demnächst angepasst.

Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb

somansch

Zitat von: jensb am 22 September 2018, 16:43:28
Hallo allerseits,

nun kann getestet werden. Die Prototypen für das OpenData-Modul und den dazugehörigen Weblink findet sich hier. Bitte vor Tests die aktuelle Konfig und die zu testenden Module in ihrer aktuellen Version sichern, damit ihr im Zweifelsfall den Rückwärtsgang eingelegt bekommt.

Die Installation des OpenData-Moduls selbst dürfte unproblematisch sein. Arbeit macht vor allem die Anpassung der Reading-Namen. In der Modulhilfe habe ich die neuen Reading-Namen des KML-Formats aufgeführt. Wenn man mit der alten Modulhilfe vergleicht hat man die Umsetzungstabelle. Bitte das vorhandene Attribut forecastProperties löschen bzw. geeignet anpassen.

Wer Proplanta-Reading-Namen bevorzugt, kann entweder das Modul für sich selbst patchen (siehe u.a. forecastPropertyAliases im Modul-Code) oder mir einen Patch für eine optionale Umschaltung zur Verfügung stellen. Default ist die DWD-Bezeichnung.

Wer den Weblink verwendet hat noch etwas mehr Arbeit vor sich. Die neue Version hat neben der Kompatibilität zum neuen OpenData-Modul noch die zusätzlichen Funktion, sich auch mit FHEMWEB ohne Page-Refresh periodisch und bei Tab-Wechsel zu aktualisieren und unterstützt nun auch das 3-Stunden Zeitraster des OpenData-Moduls. Die aktuelle Weblink-Datei bitte entfernen und ein eventuell vorhandenes "use ..." im 99_myUtils ebenfalls. Dann wie in der Modulhilfe des neuen Weblinks beschrieben erst das Weblink-Device anlegen und konfigurieren und dann den vorhandenen Weblink selbst aktualisieren. Die FHEM-Wiki ist für die neue Version des Weblinks nicht mehr korrekt und wird demnächst angepasst.

Grüße,
Jens

Hallo Jens,
erstes Feedback. Modul neu angelegt, readings und Alarme werden erzeugt  :). Wie du bereits gesagt hast, sind die Readings jetzt etwas anders. Leider kann ich die neue Beschreibung nicht finden?! Die Commandref (in Englisch) verweist noch auf die ehemaligen Readings, die deutsche Commandref hat keine Einträge.

Wo finde ich die Modulhilfe für den neuen Weblink?

VG
Andreas

jensb

@somansch
Die Commandref wird nicht aktualisiert, wenn man manuell Modul-Dateien ändert. Es gibt mehrere Möglichkeit, das manuell zu erledigen. Eine davon besteht darin, sich auf dem FHEM-Sever anzumelden, in das FHEM-Verzeichnis zu wechseln und folgendes aufzurufen:
root@raspi:/opt/fhem# ./contrib/commandref_join.pl
Ansonsten findest du die Modulhilfe auch, wenn du dir das Ende der Modul-Dateien mit einem Texteditor ansiehst.
Grüße,
Jens
FHEM 6.1 - RPi 4 Raspbian 12 + PiTFT - OPi Zero Armbian 5.35
EnOcean - (W)LAN/Firmata: BMP180, TSL2561, SHT21, Heatronic 3, OBIS - WLAN/ESP8266: Gardena 1251, Zirkulationspumpe - RTL433: Oregon - Bluetooth - MQTT
Contributions: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/jensb