Bartl/TEM Wärmepumpe mit EBUSD + FHEM

Begonnen von rellla, 11 Dezember 2017, 11:09:06

Vorheriges Thema - Nächstes Thema

rellla

Servus zusammen,

ich wollte hier mal eine Mini-Announce für alle diejenigen machen, die eine TEM geregelte Wärmepumpe nutzen wie z.B. meine Bartl. Deshalb auch ein neuer Thread, da der ebusd Thread schon ziemlich aufgebläht ist. Ich hoffe das ist ok.

Meine ebusd configuration liegt momentan hier: https://github.com/rellla/ebusd-configuration/tree/for_upstream/ebusd-2.1.x/de/TEM
Es fehlen zwar noch einige Dinge, die ich nach und nach einfügen werde, aber ein Großteil der Parameter lässt sich schon auslesen.

Ein Beispiel wie ich das Ganze mit FHEM nutze findet sich hier: https://github.com/rellla/fhemcfg
Die fhem.cfg und bartl.class sind noch nicht sehr ausgereift. Mir war es erstmal wichtig, die grundlegenden Sachen einzubauen - vorerst ohne Rücksicht auf Icons, Räume etc.

Evtl. kann es ja jemand gebrauchen oder möchte sogar helfen, das zu erweitern.

@john30: Wie ausgereift sollte die Konfiguration sein, damit ein pull request von dir angenommen wird? Vorher sollte ich es zumindest rebasen...

Ein paar Problem habe ich aber noch mit ebusd, die ich lösen will:
1) Ich habe die Experten-Parameter mit einer [expertlevel] condition versehen. Allerdings wird dazu bei jeder Abfrage ebusd seitig immer die Abfrage nach dem Parameterlevel vorgeschaltet: https://github.com/rellla/ebusd-configuration/blob/for_upstream/ebusd-2.1.x/de/TEM/bartl.csv#L5, was bei Timern den Bus etwas zu sehr auslastet - meine ich.
2) Die Abfrage von diesen Experten-Parametern setzt jetzt FHEM-seitig voraus, dass ich vorher das aktuelle Menu-Level lese und ggfs. das neue Experten-Level setze, was nach 15 oder 20min wieder zurückspringt und dann neu gesetzt wird.

Mindestens einer der o.g. Punkte resultiert in Ebus Timeouts, die mir für FHEM "0" Werte zurückliefern. Diese machen sich dann im Plot als "Zacken" nach unten bemerkbar, was ja nicht richtig ist.
Falls jemand da gleich einen Lösungsansatz parat hat, gerne her damit, ansonsten bitte ignorieren, ich muss da erst selbst noch etwas experimentieren...

Gruß
Andreas

hallozuerich

Hallo Andreas

Ich benutze aktuell Deine configuration um einen TEM Regler auszulesen. Konntest du bereits eine Lösung für die Zugriffsrechte erarbeiten?

Ich habe noch eine anderen Post gmacht mit Fragen im eBUS Adapter 3.0 Inbetreibnahme. Ich denke es ist hier am richtigen Ort platziert.

1.Frage:
Wenn ich über das Terminal eine Abfrage mache, bekomme ich folgende Antwort:

Anfrage: "ebusctl r -f temp_hg"
Antwort: "00-107;Temperatur;°C;100.0;0.0;46.9"

Kann mir jemand sagen, was die erste Nummern (00-107) bedeuten?

2.Frage:

Wie kann ich eine Abfrage auf die vl_temp_ist der WP machen, wenn diese in der spallte Name nicht eindeutig ist?  Der Name "vl_temp_ist" hat es in der CSV-Datei mehrmals:

- Zeile 12 für die WP
- Zeile 185 für die Heizgruppe


LG Dario



rellla

#2
Zitat von: hallozuerich am 22 November 2021, 14:14:06
Ich benutze aktuell Deine configuration um einen TEM Regler auszulesen. Konntest du bereits eine Lösung für die Zugriffsrechte erarbeiten?
Was meinst du damit? Hätte ich was erarbeiten sollen?

Zitat von: hallozuerich am 22 November 2021, 14:14:06

1.Frage:
Wenn ich über das Terminal eine Abfrage mache, bekomme ich folgende Antwort:

Anfrage: "ebusctl r -f temp_hg"
Antwort: "00-107;Temperatur;°C;100.0;0.0;46.9"

Kann mir jemand sagen, was die erste Nummern (00-107) bedeuten?
00-107 ist die Nummer des jeweiligen Parameters, wie er auch im Handbuch oder auf der Masterbedienung gelistet ist. Die wird mit zurückgeliefert, wenn du mit der in der csv für temp_hg hinterlegten Kombination aus ZZ/PBSB/ID einen Wert anforderst.
Diese Nummer ist auch in der csv Datei bei comment zu finden, allerdings unterscheiden sich diese Werte wohl je nach Modell.
D.h. konkret in deinem Fall, dass 00-107 nicht unbedingt die Heissgastemperatur ist. Du müsstest in der Anleitung nachschauen, wofür 00-107 steht. Bei mir ist es die Anlagetemperatur.

Ich vermute, dass du in https://github.com/rellla/ebusd-configuration/blob/for_upstream/ebusd-2.1.x/de/tem/15.csv#L347 einen Parameter weniger hast, sodass eine Abfrage auf temp_hg (d.h. 15 0621 78860000) die Anlagetemperatur, sprich 00-107 zurückgibt. Das kannst du leicht überprüfen, wenn du im Menu zu Globalfunktionen/Soll-Ist-Werte gehst und die Parameter mit meinen in der csv vergleichst.

Generell bin ich so vorgegangen, dass ich auf dem Bus mitgelesen habe, wenn ich über das Menü die verschiedenen Werte angefordert habe. Die Zuordnung ist dann relativ einfach und das System, das dahinter steckt immer das gleiche. Alle Werte, die das Menü anzeigt, werden nacheinander aufgelistet und schön durchnummeriert.

Zitat von: hallozuerich am 22 November 2021, 14:14:06
2.Frage:

Wie kann ich eine Abfrage auf die vl_temp_ist der WP machen, wenn diese in der spallte Name nicht eindeutig ist?  Der Name "vl_temp_ist" hat es in der CSV-Datei mehrmals:

- Zeile 12 für die WP
- Zeile 185 für die Heizgruppe
Du musst noch mit -c den jeweiligen circuit mitgeben, dh. z.B. r -c wp_ping vl_temp_ist In https://github.com/rellla/fhemcfg/blob/master/FHEM/cfg/bartl.cfg Datei findest du Beispiele, wie ich es abfrage.

Gruß
Andreas

hallozuerich

Hallo Andreas

Vielen Dank für Deine rasche Rückmeldung.

Ich wollte fragen, ob du das Thema mit der Paramterlevelabfrage lösen konntest.   

ZitatEin paar Problem habe ich aber noch mit ebusd, die ich lösen will:
1) Ich habe die Experten-Parameter mit einer [expertlevel] condition versehen. Allerdings wird dazu bei jeder Abfrage ebusd seitig immer die Abfrage nach dem Parameterlevel vorgeschaltet: https://github.com/rellla/ebusd-configuration/blob/for_upstream/ebusd-2.1.x/de/TEM/bartl.csv#L5, was bei Timern den Bus etwas zu sehr auslastet - meine ich.
2) Die Abfrage von diesen Experten-Parametern setzt jetzt FHEM-seitig voraus, dass ich vorher das aktuelle Menu-Level lese und ggfs. das neue Experten-Level setze, was nach 15 oder 20min wieder zurückspringt und dann neu gesetzt wird.

Mir ist aufgefallen, das in meinem Log dieses Parameterlevel ebenfalls immer wieder abgfragt wird. Kann das zu einer überlast des Bus führen? Kann diese Abfrage ausgeschalten werden?

2021-11-21 20:37:42.199 [update notice] sent poll-read globals parameter_level QQ=31: 04-043;none;none;255;0;User Level
2021-11-21 20:37:43.078 [update notice] received read hk_ping raumtemp QQ=01: 00-001;Temperatur;°C;50.0;0.0;-
2021-11-21 20:37:43.271 [update notice] received unknown MM cmd: 031005030b010000005e2cff3f000005
2021-11-21 20:37:43.578 [update notice] received poll-read globals parameter_level QQ=01: 04-043;none;none;255;0;User Level
2021-11-21 20:37:43.779 [update notice] received unknown MS cmd: 01150620020e05 / 080000000000020006
2021-11-21 20:37:44.192 [update notice] received unknown MM cmd: 131005030b011a000061ffff3f430001
2021-11-21 20:37:44.688 [update notice] received read hk_ping status QQ=01: 02-051;none;none;255;0;Spar Heizbetrieb
2021-11-21 20:37:45.188 [update notice] received read hk_ping wd QQ=01: 02-073;none;none;Sun;Mon;Sun
2021-11-21 20:37:45.376 [update notice] received unknown MM cmd: 100305010a00223406000000000000
2021-11-21 20:37:45.986 [update notice] received unknown MM cmd: 101305010a00000a06000000000100
2021-11-21 20:37:46.298 [update notice] received read hk_ping vl_temp_ist QQ=01: 00-002;Temperatur;°C;100.0;0.0;33.1
2021-11-21 20:37:46.661 [update notice] received update-read broadcast temperatures QQ=10: 6259.0;-;0.0;-
2021-11-21 20:37:46.768 [update notice] received read hk_ping time QQ=01: 02-072;Zeit;hh:mm;1439;0;22:05
2021-11-21 20:37:47.875 [update notice] received read hk_ping at QQ=01: 00-000;Temperatur;°C;50.0;-50.0;5.7
2021-11-21 20:37:48.227 [update notice] sent poll-read globals parameter_level QQ=31: 04-043;none;none;255;0;User Level
2021-11-21 20:37:48.390 [update notice] received poll-read globals parameter_level QQ=01: 04-043;none;none;255;0;User Level
2021-11-21 20:37:49.453 [update notice] received read hk_ping raumtemp QQ=01: 00-001;Temperatur;°C;50.0;0.0;-
2021-11-21 20:37:49.953 [update notice] received read hk_ping wd QQ=01: 02-073;none;none;Sun;Mon;Sun
2021-11-21 20:37:51.064 [update notice] received read hk_ping status QQ=01: 02-051;none;none;255;0;Spar Heizbetrieb
2021-11-21 20:37:51.255 [update notice] received unknown MM cmd: 031005030b010000005e2cff3f000005
2021-11-21 20:37:51.562 [update notice] received read hk_ping time QQ=01: 02-072;Zeit;hh:mm;1439;0;22:05
2021-11-21 20:37:52.177 [update notice] received unknown MM cmd: 131005030b011a000061ffff3f430001
2021-11-21 20:37:52.673 [update notice] received read hk_ping vl_temp_ist QQ=01: 00-002;Temperatur;°C;100.0;0.0;33.1
2021-11-21 20:37:53.172 [update notice] received poll-read globals parameter_level QQ=01: 04-043;none;none;255;0;User Level
2021-11-21 20:37:53.560 [update notice] received unknown MS cmd: 01150620020f05 / 080000000000000000
2021-11-21 20:37:54.229 [update notice] sent poll-read globals parameter_level QQ=31: 04-043;none;none;255;0;User Level
2021-11-21 20:37:54.406 [update notice] received read hk_ping at QQ=01: 00-000;Temperatur;°C;50.0;-50.0;5.7
2021-11-21 20:37:54.860 [update notice] received read hk_ping wd QQ=01: 02-073;none;none;Sun;Mon;Sun
2021-11-21 20:37:56.203 [update notice] received read hk_ping raumtemp QQ=01: 00-001;Temperatur;°C;50.0;0.0;-
2021-11-21 20:37:56.378 [update notice] received unknown BC cmd: 10fe0802080000003400000000
2021-11-21 20:37:56.640 [update notice] received read hk_ping time QQ=01: 02-072;Zeit;hh:mm;1439;0;22:05
2021-11-21 20:37:57.750 [update notice] received read hk_ping status QQ=01: 02-051;none;none;255;0;Spar Heizbetrieb
2021-11-21 20:37:58.251 [update notice] received poll-read globals parameter_level QQ=01: 04-043;none;none;255;0;User Level
2021-11-21 20:37:59.192 [update notice] received unknown MM cmd: 031005030b010000005e2cff3f000005
2021-11-21 20:37:59.359 [update notice] received read hk_ping vl_temp_ist QQ=01: 00-002;Temperatur;°C;100.0;0.0;33.0
2021-11-21 20:37:59.860 [update notice] received read hk_ping wd QQ=01: 02-073;none;none;Sun;Mon;Sun
2021-11-21 20:38:00.213 [update notice] sent poll-read globals parameter_level QQ=31: 04-043;none;none;255;0;User Level

Gruss Dario

rellla

Ich mache das so: https://github.com/rellla/fhemcfg/blob/master/FHEM/cfg/bartl.cfg#L70
D.h. immer wenn ich einen Parameter-Wert abfrage, für den die ID unterschiedlich sein kann, je nach dem in welchem Level man sich befindet, frage ich zuerst den aktuellen Level ab, setze ihn ggfs. und frage dann erst den Wert ab. Ist vielleicht nicht die schönste Art es zu lösen, aber es funktioniert.

Das Log von dir zeigt einfach die Aktivität auf dem Bus, wenn du mitliest? Also mit -f oder -m 0?

hallozuerich

Super. Vielen Dank für die Vorlage.

Das ist das Log, dass unter Var/Log/ebusd abgelegt wird. Dann kommt die Anfrage Parameterlevel nicht vom EBusd? Dies ist demfall eine Anfrage vom Display?

Gruss Dario

rellla


Tomy

Hallo Dario,

Wenn du anstatt der 621 Adresse zum lesen die 622 nimmst, bekommst du nur den aktuellen Messwert ausgegeben, da muss man dann den String nicht aufwendig zerlegen.

Anfrage: "ebusctl r -f temp_hg"
Antwort: "00-107;Temperatur;°C;100.0;0.0;46.9"

Antwort ist dann direkt die 46.9

Ich lese mehrere Jahre meine TEM so aus.

Grüße
Matthias


hallozuerich

Hallo Matthias

Vielen Dank für die Infos.

Kannst du mir dein CSV ebenfalls zur verfügung stellen? Eventuell finde ich noch etwas das ich brauchen kann.

Wie greifst du auf die Expertlevel Punkte zu?

LG Dario

rellla

Zitat von: Tomy am 23 November 2021, 21:57:48
Wenn du anstatt der 621 Adresse zum lesen die 622 nimmst, bekommst du nur den aktuellen Messwert ausgegeben, da muss man dann den String nicht aufwendig zerlegen.

Anfrage: "ebusctl r -f temp_hg"
Antwort: "00-107;Temperatur;°C;100.0;0.0;46.9"

Antwort ist dann direkt die 46.9

Oder er startet die Anfrage mit "ebusctl r -f temp_hg temp" und bekommt nur das angegebene Feld, also auch 46.9, zurück.
Das mit 622 wußte ich nicht, d.h. 0621 liefert alle Werte, 0622 nur die Temperatur und 0623 schreibt!?

Gruß
Andreas

Tomy

Zitat von: hallozuerich am 24 November 2021, 13:09:53
Hallo Matthias

Vielen Dank für die Infos.

Kannst du mir dein CSV ebenfalls zur verfügung stellen? Eventuell finde ich noch etwas das ich brauchen kann.

Wie greifst du auf die Expertlevel Punkte zu?

LG Dario

Hallo Dario,

nein ich benutze den Expertlevel nicht zum auslesen. Ich beschränke mich auf den Standardlevel um die Daten zu loggen.
Schick mir eine PM, dann kann ich dir gerne meine CSV zuschicken, diese ist ziemlich einfach gehalten.

Andreas hatte damals sehr viel Zeit investiert um viele Register auslesen zu können - er hatte damals auf meine Grundlagen Datei aufgesetzt :-)

Grüße
Matthias

Tomy

Zitat von: rellla am 24 November 2021, 15:04:00
Oder er startet die Anfrage mit "ebusctl r -f temp_hg temp" und bekommt nur das angegebene Feld, also auch 46.9, zurück.
Das mit 622 wußte ich nicht, d.h. 0621 liefert alle Werte, 0622 nur die Temperatur und 0623 schreibt!?

Gruß
Andreas

Hi Andreas,
auf die 0622 bin ich irgendwann gestoßen - ich glaub ich hab mich sogar vertippt :-) beim testen damals. Schreiben mit der 0623
Du hast deine cfg ja mittlerweile ziemlich ausgebaut war erst vor kurzem auf deinem Github - ich nutze immer noch die vom Anfang - mit ein paar weiteren Werten aufgepeppt :-) und leider immer noch nicht so strukturiert aufgebaut wie deine.

Wenn du den Expertlevel setzt und du dann die Werte gelesen hast, setzt du direkt wieder mit einem falschen Passwort auf Standard zurück, oder ?

Grüße
Matthias


rellla

Zitat von: Tomy am 25 November 2021, 22:51:52
Wenn du den Expertlevel setzt und du dann die Werte gelesen hast, setzt du direkt wieder mit einem falschen Passwort auf Standard zurück, oder ?

Nein, ich lasse den Level offen, der als letztes gesetzt wurde.

Gruß
Andreas

Dennis99

Danke für die CSV-Dateien, ich konnte meine Bartl WP damit auch mal grob auslesen - einige Parameter passen nicht bei mir,
aber die Vorlage ist schon richtig gut. Hat mir sehr geholfen, danke!

akia

Zitat von: Dennis99 am 17 September 2023, 13:03:31Danke für die CSV-Dateien, ich konnte meine Bartl WP damit auch mal grob auslesen - einige Parameter passen nicht bei mir,
aber die Vorlage ist schon richtig gut. Hat mir sehr geholfen, danke!

Welche CSV Datei hast du nun übernommen?