Vitoconnect - Verbesserte Version

Begonnen von stefanru, 14 Dezember 2024, 23:32:17

Vorheriges Thema - Nächstes Thema

stefanru

Vitoconnect - Verbesserte Version

Zusammenfassung der Änderungen:
  • 14.12.2024:
      - Einführung der Versionsnummer.
      - Code-Optimierungen und Sortierung der Schlüssel pro Reading, um sicherzustellen, dass Leistungs-Readings in der richtigen Reihenfolge sind (Tag vor Tageswert).
  • 12.12.2024:
      - Set_New nur erlaubt, wenn bei mehreren Gateways die Seriennummer angegeben ist.
      - Objekt- und Hash-Werte in Array-Readings integriert (z.B. device.messages.errors.raw).
      - Bei abgelaufenem Token (jede Stunde) werden unnötige Gateway-Aufrufe vermieden, nur neuer Token wird geholt. Dies spart API-Aufrufe und reduziert die API-Überlastung.
  • 06.12.2024: Interner Timer entfernt, wenn das Gerät definiert oder neu definiert wird.
  • 05.12.2024: Fehler behoben, logResponseOnce-Flag nach einem Lauf entfernt.
  • 04.12.2024: getResource angepasst, um Gateway beim ersten Versuch zu lesen, unnötige API-Aufrufe bei fehlender Gateway-Seriennummer vermieden. Timer bei mehreren Gateways korrigiert.
  • 02.12.2024: Tagesleistungs-Readings werden nun unter .asSingleValue gespeichert. Daten kommen sporadisch von der API, Funktion trägt sie nach und ermöglicht das Erstellen von Graphen.
  • 01.12.2024: Statisches Mapping von SVN übernommen, Fehlerbehandlung bei vitoconnect_action verbessert, Parameter vitoconnect_mapping_roger hinzugefügt, um Rogers Mapping zu nutzen. RequestLists nach SVN und Roger aufgespalten, neue Subroutine vitoconnect_Set_Roger.
  • 30.11.2024: Mehrere neue Readings hinzugefügt (z.B. HK1_Betriebsart:active,standby,heating,dhw,dhwAndHeating,forcedReduced,forcedNormal). Wenn Setter mit ok aufgerufen wird, wird der Wert auch im Reading gesetzt.
  • 16.11.2024: Änderungen für Hybridanlagen mit 2 Gateways und eigenem Mapping der Werte. Mehrere Gateways werden abgefragt, Readings oder gedumpte Dateien haben als Suffix die Gateway-Seriennummer. Neues Attribut vitoconnect_serial ermöglicht die Festlegung einer spezifischen Gateway-Seriennummer. Unterschiedliche Abfrageintervalle für verschiedene Geräte möglich. Eigenes Mapping und Translation für Werte implementiert. Fehlerbehandlung und Initialisierung von installationFeatures überarbeitet, alle Subroutinen sind nun non-blocking. Attribut model entfernt, da nicht verwendet. vitoconnect_gw_readings und vitoconnect_actions_active implementiert. Set für RAW-Readings dynamisch wie möglich gestaltet. Beschreibungen für Attribute im WebUI angepasst. Keine Umlaute in Heizkreisnamen verwenden.
Neue Attribute:
  • vitoconnect_serial:
      - Ermöglicht die Festlegung einer spezifischen Gateway-Seriennummer, die fortan allein abgerufen werden soll. Dies ermöglicht es, für jeden Gateway ein separates vitoconnect-Gerät anzulegen oder alle Readings in einem Gerät zu verwalten.
  • vitoconnect_mapping_roger:
      - Parameter, um Rogers Mapping zu nutzen. Dies ermöglicht die Verwendung eines spezifischen Mappings für die Daten.
  • vitoconnect_gw_readings:
      - Wenn auf 1 gesetzt, werden die internen Readings in Readings gespeichert. Wenn auf 0 gesetzt, werden sie nicht gespeichert.  Dies ermöglicht eine dynamische Handhabung der Aktionen basierend auf den JSON-Daten.
  • vitoconnect_actions_active:
      - Setter im JSON werden als reading.setURI gespeichert.
Motivation:
Ich habe eine Heizungsanlage von Viessmann eingebaut bekommen, eine Hybridanlage VitoCal250 AH mit Vitoladens 300C und einem Pufferspeicher Vitocell 120E inklusive Frischwasserstation Vitotrans 353. Ich wollte die Daten der Anlage auswerten und setzen können, aber sie hat zwei Gateways, einen für den VitoCal und einen für den VitoLadens. Das ging mit dem alten Modul nicht.

Ich wollte FHEM auch etwas zurückgeben, da ich von vielen großartigen Modulen schon profitiert habe.
Ein besonderer Dank geht an @DS_Starter, der mir des öfteren geholfen hat wenn ich nicht weiter gekommen bin.
Dessen Modul für SolarForecast finde ich hervorragend. Für jeden mit Solaranlage ein muss  ;)


Das verbesserte Modul ist abwärtskompatibel zu der SVN VErsion und zu Rogers Version.
Ich empfehle aber Raw Readings zu verwenden da ihr nur dann auch die Raw Setter bekommt die dynamisch aus dem JSON erstellt werden.

Das Modul bekommt ihr zur Zeit noch von meinem Git.
https://github.com/StefanRu1/FHEM/raw/refs/heads/main/FHEM/98_vitoconnect.pm
Ich empfehle eine Neustart von FHEM da es bei einem Sprung von dem alten auf das neue Modul sonst Probleme mit dem Timer geben kann.

Ich bin dabei das Modul hier zu übernehmen und hoffentlich auch als Verantwortlicher dann hier ins SVN einchecken zu können, so dass ihr es dann mit dem normalen Update bekommt.

Also testet es bitte etwas und lasst mal Rückmeldung da ab es so eingecheckt werden kann.

Viele Grüße,
Stefan


kkoeniger

Ich nutze Dein verbessertes Modul seit ein paar Tagen und möchte mich recht herzlich für all Deine Bemühungen bedanken!

Eingestellt habe ich "vitoconnect_mapping_roger 0" und seither funktioniert das Auslesen sowie Einstellen meiner Vitocal 252A so wie ich es mir wünsche. Aufgefallen ist mir nur das ältere Datum der Version (FVERSION 98_vitoconnect.pm:v0.2.0-s26738/2022-11-23).

LG,
Karl

stefanru

Hi Karl,

danke für das Feedback.
Ja das mit dem Versions ist noch normal, v0.2.0 ist aktuell. Das Datum ist das Datum der letzten Version inm SVN.
Sobald ich ins SVN einchecke taucht dort dann auch das richtige Datum auf.

Eine kleine Rückfrage, musstest du vitoconnect_mapping_roger = 0 explizit setzen?
Ein Löschen des Attributes hat nicht ausgereicht?

Gruß,
Stefan

kkoeniger

Ich hatte das Attribut händisch gesetzt - habe nicht abgewartet was sich ohne dessen Setzen tut.
LG,
Karl

stefanru


mthome

Guten Morgen @stefanru,

vielen vielen Dank für Deine Arbeit! Ich nutze das Modul schon seit beginn an und habe heute morgen auch auf Deine verbesserte Version umgestellt.
Hat auch alles gleich Problemlos geklappt. Wollte nur mal danke sagen ;D.

stefanru

Hi es gibt eine neue Version.
Nun sind die Beschreibungstexte auf dem UI in Deutsch und Englisch verfügbar.
Liegt wie am Anfang beschrieben auf meinem Git.

Gruß,
Stefan

stefanru

Hi,

und wieder eine neue Version:
Fix setter new for cases where more than one gateway is actively pulled in 2 devices.

Die Devices haben ihre Setter gegenseitig überschrieben.
Dies ist nun behoben.

Gruß,
Stefan

87insane

@stefanru:
Ich habe mir die noch fehlenden Readings mal genauer angesehen. Eigentlich wollte ich diese nun übersetzen aber das ist nicht nötig. 99% davon gibt es bereits als Übersetzung.
Beispiel: heating.circuits.1.name.name = HK1-Name

Jetzt ist die Frage, warum ich diese quasi doppelt angezeigt bekomme oder ob das normal ist.
Anbei mal ein Readings und Attribut List (Die SN habe ich geändert):
   READINGS:
     2024-12-18 22:30:18   Aktion_Status   OK: HK2-Betriebsart standby
     2024-12-19 13:37:45   Aktive_Heizkreise 0,1
     2024-12-19 13:37:45   Aussen_Status   connected
     2024-12-19 13:37:45   Aussentemperatur 8.5
     2024-12-19 13:37:45   Brenner_1_Betriebsstunden 18747
     2024-12-19 13:37:45   Brenner_1_Modulation 0
     2024-12-19 13:37:45   Brenner_1_Starts 15742
     2024-12-19 13:37:45   Brenner_1_aktiv 0
     2024-12-19 13:37:45   Gasverbrauch_Heizung/Jahr 1252.5,3731.9
     2024-12-19 13:37:45   Gasverbrauch_Heizung/Jahr_gelesen_am 2024-12-19T10:59:52.000Z
     2024-12-19 13:37:45   Gasverbrauch_Heizung/Monat 159.3,210.7,77.3,0,0,0.1,8.2,7.4,90,159.1,194.3,346.1,264.5
     2024-12-19 13:37:45   Gasverbrauch_Heizung/Monat_gelesen_am 2024-12-19T10:59:52.000Z
     2024-12-19 13:37:45   Gasverbrauch_Heizung/Tag 1.6,7.8,5.9,6.4,8.4,10.9,11.6,10.1
     2024-12-19 13:37:45   Gasverbrauch_Heizung/Tag_gelesen_am 2024-12-19T10:59:52.000Z
     2024-12-19 13:37:45   Gasverbrauch_Heizung/Woche 21.7,66,61.7,51.1,75.8,38.1,43.2
     2024-12-19 13:37:45   Gasverbrauch_Heizung/Woche_gelesen_am 2024-12-19T10:59:52.000Z
     2024-12-19 13:37:45   Gasverbrauch_Total/Jahr 1489.8,4022.3
     2024-12-19 13:37:45   Gasverbrauch_Total/Jahr_gelesen_am 2024-12-19T09:55:49.000Z
     2024-12-19 13:37:45   Gasverbrauch_Total/Monat 178.2,242,95.5,15.2,13.3,14.9,25.7,26.1,110.3,183,214.5,370.7,288.3
     2024-12-19 13:37:45   Gasverbrauch_Total/Tag 2.2,8.9,7.7,7.4,9.4,11.9,12.3,11.3
     2024-12-19 13:37:45   Gasverbrauch_Total/Tag_gelesen_am 2024-12-19T09:55:49.000Z
     2024-12-19 13:37:45   Gasverbrauch_Total/Woche 26.2,72.9,67.8,59.3,83.4,45.5,50.8
     2024-12-19 13:37:45   Gasverbrauch_Total/Woche_gelesen_am 2024-12-19T09:55:49.000Z
     2024-12-19 13:37:45   Gasverbrauch_WW/Jahr 237.3,290.4
     2024-12-19 13:37:45   Gasverbrauch_WW/Jahr_gelesen_am 2024-12-19T09:55:49.000Z
     2024-12-19 13:37:45   Gasverbrauch_WW/Monat 18.9,31.3,18.2,15.2,13.3,14.8,17.5,18.7,20.3,23.9,20.2,24.6,23.8
     2024-12-19 13:37:45   Gasverbrauch_WW/Monat_gelesen_am 2024-12-19T09:55:49.000Z
     2024-12-19 13:37:45   Gasverbrauch_WW/Tag 0.6,1.1,1.8,1,1,1,0.7,1.2
     2024-12-19 13:37:45   Gasverbrauch_WW/Tag_gelesen_am 2024-12-19T09:55:49.000Z
     2024-12-19 13:37:45   Gasverbrauch_WW/Woche 4.5,6.9,6.1,8.2,7.6,7.4,7.6
     2024-12-19 13:37:45   Gasverbrauch_WW/Woche_gelesen_am 2024-12-19T09:55:49.000Z
     2024-12-19 13:37:45   HK1-Betriebsart heating
     2024-12-19 13:37:45   HK1-Frostschutz_Status off
     2024-12-19 13:37:45   HK1-Heizkurve-Niveau 1
     2024-12-19 13:37:45   HK1-Heizkurve-Steigung 1.2
     2024-12-19 13:37:45   HK1-Name        Heizkoerper
     2024-12-19 13:37:45   HK1-Programmstatus normal
     2024-12-19 13:37:45   HK1-Solltemperatur_Anforderung unknown
     2024-12-19 13:37:45   HK1-Solltemperatur_SummerEco_aktiv 0
     2024-12-19 13:37:45   HK1-Solltemperatur_aktiv 1
     2024-12-19 13:37:45   HK1-Solltemperatur_comfort 23
     2024-12-19 13:37:45   HK1-Solltemperatur_comfort_Anforderung unknown
     2024-12-19 13:37:45   HK1-Solltemperatur_comfort_aktiv 0
     2024-12-19 13:37:45   HK1-Solltemperatur_eco_aktiv 0
     2024-12-19 13:37:45   HK1-Solltemperatur_normal 21
     2024-12-19 13:37:45   HK1-Solltemperatur_reduziert 18
     2024-12-19 13:37:45   HK1-Solltemperatur_reduziert_Anforderung unknown
     2024-12-19 13:37:45   HK1-Solltemperatur_reduziert_aktiv 0
     2024-12-19 13:37:45   HK1-Standby_aktiv 0
     2024-12-19 13:37:45   HK1-Typ         heatingCircuit
     2024-12-19 13:37:45   HK1-Vorlauftemperatur 36.5
     2024-12-19 13:37:45   HK1-Vorlauftemperatur_aktiv connected
     2024-12-19 13:37:45   HK1-Zeitsteuerung_Heizung {"thu":[{"mode":"normal","end":"22:30","start":"07:00","position":0}],"wed":[{"mode":"normal","end":"22:30","start":"07:00","position":0}],"sat":[{"start":"07:00","position":0,"mode":"normal","end":"22:30"}],"tue":[{"start":"07:00","position":0,"mode":"normal","end":"22:30"}],"sun":[{"end":"22:30","mode":"normal","start":"07:00","position":0}],"fri":[{"start":"07:00","position":0,"end":"22:30","mode":"normal"}],"mon":[{"mode":"normal","end":"22:30","position":0,"start":"07:00"}]}
     2024-12-19 13:37:45   HK1-Zeitsteuerung_Heizung_aktiv 1
     2024-12-19 13:37:45   HK1-Zirkulationspumpe on
     2024-12-19 13:37:45   HK1-ZoneMode_aktive 0
     2024-12-19 13:37:45   HK1-aktiv       1
     2024-12-19 13:37:45   HK1-forcedLastFromSchedule_aktiv 0
     2024-12-19 13:37:45   HK1-heizen_aktiv 1
     2024-12-19 13:37:45   HK2-Betriebsart standby
     2024-12-19 13:37:45   HK2-Frostschutz_Status off
     2024-12-19 13:37:45   HK2-Heizkurve-Niveau 0
     2024-12-19 13:37:45   HK2-Heizkurve-Steigung 0.9
     2024-12-19 13:37:45   HK2-Name        Fussbodenheizung
     2024-12-19 13:37:45   HK2-Programmstatus standby
     2024-12-19 13:37:45   HK2-Solltemperatur_Anforderung unknown
     2024-12-19 13:37:45   HK2-Solltemperatur_SummerEco_aktiv 0
     2024-12-19 13:37:45   HK2-Solltemperatur_aktiv 0
     2024-12-19 13:37:45   HK2-Solltemperatur_comfort 23
     2024-12-19 13:37:45   HK2-Solltemperatur_comfort_Anforderung unknown
     2024-12-19 13:37:45   HK2-Solltemperatur_comfort_aktiv 0
     2024-12-19 13:37:45   HK2-Solltemperatur_eco_aktiv 0
     2024-12-19 13:37:45   HK2-Solltemperatur_normal 22
     2024-12-19 13:37:45   HK2-Solltemperatur_reduziert 18
     2024-12-19 13:37:45   HK2-Solltemperatur_reduziert_Anforderung unknown
     2024-12-19 13:37:45   HK2-Solltemperatur_reduziert_aktiv 0
     2024-12-19 13:37:45   HK2-Standby_aktiv 1
     2024-12-19 13:37:45   HK2-Typ         heatingCircuit
     2024-12-19 13:37:45   HK2-Vorlauftemperatur 24.5
     2024-12-19 13:37:45   HK2-Vorlauftemperatur_aktiv connected
     2024-12-19 13:37:45   HK2-Zeitsteuerung_Heizung {"tue":[{"mode":"normal","end":"22:30","position":0,"start":"07:00"}],"sun":[{"mode":"normal","end":"22:30","start":"07:00","position":0}],"fri":[{"mode":"normal","end":"22:30","start":"07:00","position":0}],"mon":[{"mode":"normal","end":"22:30","start":"07:00","position":0}],"thu":[{"mode":"normal","end":"22:30","position":0,"start":"07:00"}],"wed":[{"end":"22:30","mode":"normal","position":0,"start":"07:00"}],"sat":[{"mode":"normal","end":"22:30","start":"07:00","position":0}]}
     2024-12-19 13:37:45   HK2-Zeitsteuerung_Heizung_aktiv 0
     2024-12-19 13:37:45   HK2-Zirkulationspumpe off
     2024-12-19 13:37:45   HK2-ZoneMode_aktive 0
     2024-12-19 13:37:45   HK2-aktiv       1
     2024-12-19 13:37:45   HK2-forcedLastFromSchedule_aktiv 0
     2024-12-19 13:37:45   HK2-heizen_aktiv 0
     2024-12-19 13:37:45   Kessel_Common_Supply connected
     2024-12-19 13:37:45   Kessel_Common_Supply_Temperatur 37
     2024-12-19 13:37:45   Kessel_Seriennummer 123456
     2024-12-19 13:37:45   Kessel_Solltemperatur 20
     2024-12-19 13:37:45   Stromverbrauch_Heizung/Jahr 312.5,688.1
     2024-12-19 13:37:45   Stromverbrauch_Heizung/Monat 26.3,41,38.3,3.4,3.5,6.4,13.8,16.6,32.5,41.1,40.2,48.8,45.2
     2024-12-19 13:37:45   Stromverbrauch_Heizung/Tag 0.6,1.3,1.2,1.3,1.3,1.4,1.5,1.4
     2024-12-19 13:37:45   Stromverbrauch_Heizung/Woche 4.4,9.7,10.1,9.1,10.2,8.7,9.2
     2024-12-19 13:37:45   Stromverbrauch_Total/Jahr 327.5,705.7
     2024-12-19 13:37:45   Stromverbrauch_Total/Jahr_gelesen_am 2024-12-18T23:01:07.000Z
     2024-12-19 13:37:45   Stromverbrauch_Total/Monat 27.4,43.8,39.4,4.2,4.3,7.2,14.8,17.6,33.6,42.3,41.2,50.1,46.4
     2024-12-19 13:37:45   Stromverbrauch_Total/Monat_gelesen_am 2024-12-18T15:34:39.000Z
     2024-12-19 13:37:45   Stromverbrauch_Total/Tag 0,1.3,1.3,1.3,1.5,1.5,1.4,1.3
     2024-12-19 13:37:45   Stromverbrauch_Total/Tag_gelesen_am 2024-12-17T18:07:17.000Z
     2024-12-19 13:37:45   Stromverbrauch_Total/Woche 2.6,9.9,10.1,9.5,10.3,8.8,9.5
     2024-12-19 13:37:45   Stromverbrauch_Total/Woche_gelesen_am 2024-12-17T18:07:17.000Z
     2024-12-19 13:37:45   Stromverbrauch_WW/Jahr 15,17.6
     2024-12-19 13:37:45   Stromverbrauch_WW/Monat 1.7,2.8,1.1,0.8,0.8,0.8,1,1,1.1,1.2,1,1.3,1.2
     2024-12-19 13:37:45   Stromverbrauch_WW/Tag 0,0.1,0,0,0.1,0,0,0
     2024-12-19 13:37:45   Stromverbrauch_WW/Woche 0.1,0.2,0,0.4,0.1,0.1,0.3
     2024-12-19 13:37:45   Urlaub_Ende     
     2024-12-19 13:37:45   Urlaub_Start   
     2024-12-19 13:37:45   Urlaub_aktiv    0
     2024-12-19 13:37:45   WW-Haupttemperatur 52
     2024-12-19 13:37:45   WW-Isttemperatur 47.8
     2024-12-19 13:37:45   WW-Sensoren_Auslauf_Status connected
     2024-12-19 13:37:45   WW-Sensoren_Auslauf_Wert 33
     2024-12-19 13:37:45   WW-Status       on
     2024-12-19 13:37:45   WW-Temperatur_aktiv connected
     2024-12-19 13:37:45   WW-Zeitplan     {"fri":[{"mode":"on","end":"23:00","position":0,"start":"07:00"}],"mon":[{"start":"07:00","position":0,"end":"22:30","mode":"on"}],"sun":[{"end":"22:00","mode":"on","position":0,"start":"08:30"}],"tue":[{"end":"22:30","mode":"on","start":"07:00","position":0}],"sat":[{"end":"23:00","mode":"on","position":0,"start":"08:30"}],"thu":[{"position":0,"start":"07:00","end":"22:30","mode":"on"}],"wed":[{"position":0,"start":"07:00","end":"22:30","mode":"on"}]}
     2024-12-19 13:37:45   WW-Zirkulationspumpe_Status on
     2024-12-19 13:37:45   WW-Zirkulationspumpe_Zeitplan {"wed":[{"start":"07:00","position":0,"mode":"on","end":"22:00"}],"thu":[{"mode":"on","end":"22:00","start":"07:00","position":0}],"sat":[{"position":0,"start":"08:00","end":"23:00","mode":"on"}],"mon":[{"position":0,"start":"07:00","mode":"on","end":"22:00"}],"fri":[{"mode":"on","end":"23:00","position":0,"start":"07:00"}],"tue":[{"start":"07:00","position":0,"mode":"on","end":"22:00"}],"sun":[{"mode":"on","end":"22:00","position":0,"start":"08:00"}]}
     2024-12-19 13:37:45   WW-Zirkulationspumpe_Zeitsteuerung_aktiv 1
     2024-12-19 13:37:45   WW-aktiv        1
     2024-12-19 13:37:45   WW-einmaliges_Aufladen 0
     2024-12-19 13:37:45   WW-zeitgesteuert_aktiv 1
     2024-12-19 13:37:45   device.messages.errors.raw.entries
     2024-12-19 13:37:45   device.serial.value 123456
     2024-12-19 13:37:45   heating.burners.enabled 0
     2024-12-19 13:37:45   heating.circuits.0.name.name Heizkoerper
     2024-12-19 13:37:45   heating.circuits.0.operating.programs.reducedEnergySaving.active 0
     2024-12-19 13:37:45   heating.circuits.0.operating.programs.reducedEnergySaving.demand heating
     2024-12-19 13:37:45   heating.circuits.0.operating.programs.reducedEnergySaving.reason unknown
     2024-12-19 13:37:45   heating.circuits.1.name.name Fussbodenheizung
     2024-12-19 13:37:45   heating.circuits.1.operating.programs.reducedEnergySaving.active 0
     2024-12-19 13:37:45   heating.circuits.1.operating.programs.reducedEnergySaving.demand heating
     2024-12-19 13:37:45   heating.circuits.1.operating.programs.reducedEnergySaving.reason unknown
     2024-12-19 13:37:45   heating.dhw.hygiene.active 0
     2024-12-19 13:37:45   heating.dhw.hygiene.enabled 1
     2024-12-19 13:37:45   heating.dhw.hygiene.trigger.startHour 3
     2024-12-19 13:37:45   heating.dhw.hygiene.trigger.startMinute 0
     2024-12-19 13:37:45   heating.dhw.hygiene.trigger.weekdays Sun,Mon,Tue,Wed,Thu,Fri,Sat
     2024-12-19 13:37:45   heating.dhw.operating.modes.active.value balanced
     2024-12-19 13:37:45   heating.dhw.operating.modes.balanced.active 1
     2024-12-19 13:37:45   heating.dhw.operating.modes.off.active 0
     2024-12-19 13:37:45   heating.dhw.sensors.temperature.dhwCylinder.status connected
     2024-12-19 13:37:45   heating.dhw.sensors.temperature.dhwCylinder.value 47.8
     2024-12-19 13:37:45   heating.dhw.temperature.hygiene.value 65
     2024-12-19 13:37:45   heating.gas.consumption.summary.dhw.currentDay 0.6
     2024-12-19 13:37:45   heating.gas.consumption.summary.dhw.currentMonth 18.9
     2024-12-19 13:37:45   heating.gas.consumption.summary.dhw.currentYear 237.3
     2024-12-19 13:37:45   heating.gas.consumption.summary.dhw.lastMonth 31.3
     2024-12-19 13:37:45   heating.gas.consumption.summary.dhw.lastSevenDays 7.2
     2024-12-19 13:37:45   heating.gas.consumption.summary.dhw.lastYear 290.4
     2024-12-19 13:37:45   heating.gas.consumption.summary.heating.currentDay 1.6
     2024-12-19 13:37:45   heating.gas.consumption.summary.heating.currentMonth 159.3
     2024-12-19 13:37:45   heating.gas.consumption.summary.heating.currentYear 1252.5
     2024-12-19 13:37:45   heating.gas.consumption.summary.heating.lastMonth 210.7
     2024-12-19 13:37:45   heating.gas.consumption.summary.heating.lastSevenDays 52.6
     2024-12-19 13:37:45   heating.gas.consumption.summary.heating.lastYear 3731.9
     2024-12-19 13:37:45   heating.power.consumption.dhw.dayValueReadAt 2024-12-17T23:01:36.000Z
     2024-12-19 13:37:45   heating.power.consumption.dhw.monthValueReadAt 2024-12-18T23:01:07.000Z
     2024-12-19 13:37:45   heating.power.consumption.dhw.weekValueReadAt 2024-12-17T23:01:36.000Z
     2024-12-19 13:37:45   heating.power.consumption.dhw.yearValueReadAt 2024-12-18T23:01:07.000Z
     2024-12-19 13:37:45   heating.power.consumption.heating.dayValueReadAt 2024-12-19T12:21:57.000Z
     2024-12-19 13:37:45   heating.power.consumption.heating.monthValueReadAt 2024-12-19T12:21:57.000Z
     2024-12-19 13:37:45   heating.power.consumption.heating.weekValueReadAt 2024-12-19T12:21:57.000Z
     2024-12-19 13:37:45   heating.power.consumption.heating.yearValueReadAt 2024-12-19T12:21:57.000Z
     2024-12-19 13:37:45   heating.power.consumption.summary.dhw.currentDay 0
     2024-12-19 13:37:45   heating.power.consumption.summary.dhw.currentMonth 1.7
     2024-12-19 13:37:45   heating.power.consumption.summary.dhw.currentYear 15
     2024-12-19 13:37:45   heating.power.consumption.summary.dhw.lastMonth 2.8
     2024-12-19 13:37:45   heating.power.consumption.summary.dhw.lastSevenDays 0.6
     2024-12-19 13:37:45   heating.power.consumption.summary.dhw.lastYear 17.6
     2024-12-19 13:37:45   heating.power.consumption.summary.heating.currentDay 0.6
     2024-12-19 13:37:45   heating.power.consumption.summary.heating.currentMonth 26.3
     2024-12-19 13:37:45   heating.power.consumption.summary.heating.currentYear 312.5
     2024-12-19 13:37:45   heating.power.consumption.summary.heating.lastMonth 41
     2024-12-19 13:37:45   heating.power.consumption.summary.heating.lastSevenDays 8.8
     2024-12-19 13:37:45   heating.power.consumption.summary.heating.lastYear 688.1
     2024-12-19 13:37:45   heating.sensors.volumetricFlow.allengra.status connected
     2024-12-19 13:37:45   heating.sensors.volumetricFlow.allengra.value 1263
     2024-12-19 13:37:45   holidayAtHome_Ende
     2024-12-19 13:37:45   holidayAtHome_Start
     2024-12-19 13:37:45   holidayAtHome_aktiv 0
     2024-12-09 15:30:24   ownstateHk1     on
     2024-12-19 13:37:45   ownstateHk2     off
     2024-12-19 13:37:45   state           last update: 2024-12-19 13:37:45
Attributes:
   disable    0
   event-min-interval ownstateHk2:60
   event-on-change-reading (?!state)(?!HK2-Zeitsteuerung_Heizung)(?!HK1-Zeitsteuerung_Heizung)(?!WW-Zirkulationspumpe_Zeitplan)(?!WW-Zeitplan).*
   event-on-update-reading ownstateHk2,Brenner_1_Modulation,HK1-Vorlauftemperatur,HK2-Vorlauftemperatur,WW-Isttemperatur,HK2-Betriebsart,Aussentemperatur
   group      Server
   room       f_server
   userReadings ownstateHk2:HK2-Betriebsart:.* {ReadingsVal("$name","HK2-Betriebsart","standby") eq "standby" ? "off" : "on"},
ownstateHk1:HK1-Betriebsart:.* {ReadingsVal("$name","HK1-Betriebsart","standby") eq "standby" ? "off" : "on"}

stefanru

Hi @87insane,

das mit dem Namen kenne ich.
Die Viessmann API liefert bei mir da auch sowohl ein Reading heating.circuits.1.name als auch eins mit heating.circuits.1.name.name.
Das 2te könnte man unterdrücken wenn gewünscht, sieht eh ein bisschen nach einem API Bug aus.

Wenn ich mir deine weiteren Readings anschaue fehlt eine Übersetzung für alle dhw (WarmWasser Readings).
Die kannst du mir gerne liefern.

Es hilft auch mal in das resources.json im FHEM log zu schauen.
Da siehst du genau was die API liefert. Z.b. siehst du da die doppelten namen Readings.

Wenn du genau schaust glaube ich das tatsächlich für die ganzen Readings ein Mapping fehlt. Entweder weil dhw oder weil es doch etwas anderes ist als das jetzt schon gemappte.
Wenn du mal anfängst ein Mapping zu erstellen können wir nachher über die unklaren nochmal drüber schauen.

Ich denke wir bekommen das dann alles gemapped.

Du möchtest das SVN mapping erweitern richtig?

Danke und Gruß,
Stefan




87insane

Für WW ist doch bis auf die Hygiene Geschichte auch alles vorhanden.
Die ganzen Statistik-Werte sind mir eigentlich egal. Die stimmen so oder so nicht. Das ist alles irgendwie errechnet und für nichts zu gebrauchen. Da hilft nur Zähler ablesen.

Ggf. macht es Sinn, gewisse Readings ausschalten zu können, da hast du Recht.

kkoeniger

Ich will die Warmwasserbereitung dann einschalten, wenn mein Stromanbieter günstige Stundentarife anbietet (hourly-Tarif). Mit "set vitoconnect WW-einmaliges_Aufladen activate" kann ich das auch erfolgreich einschalten. Meine Vitocal252A heizt aber deswegen noch lange nicht das Warmwasser auf, weil der Wert der WW-Hysterese (bzw. heating.dhw.temperature.hysteresis.switchOnValue) noch zu hoch ist (Beispiel: 04:30 Uhr, Hysterese 7, WW-Ist-Temp 44°, WW-Soll-Temp 49° --> nichts; klar, erst wenn in diesem Fall die WW-Ist-Temp unter 42° fällt wird tatsächlich WW aufheizt).

Könnte ich den Wert für WW-Hysterese auf "4" setzten, so würde sie im obigen Fall das WW aufheizen --> meine Frage: kann die WW-Hysterese einstellbar gemacht werden?
LG,
Karl

stefanru

@87insane: Ich schaue mir die Readings nochmal an, aber ich denke schon dass das alles nicht gemappt ist.
Wenn es dir nur darum geht die raw readings für diese nicht gemappten readings zu verstecken ist das einfach umzusetzen und ich kann ein Attribute liefern dass dies bewerkstelligt.

@kkoenig: Das ist schon setzbar. Wahrscheinlich aber in keinem der Mappings enthalten.
Wenn du es unbedingt gemapped haben willst kann ich das einbauen.
Aber wenn Viessmann was ändert geht es wieder nicht.
Deshalb hatte ich gesagt man soll wenn möglich mit raw readings arbeiten.
Dann hat man automatisch alle Setter dynamisch erzeugt.
Im Anhang ein Screenshot meiner Setter, inklusive DHW hysterese, ich habe eine Vitocal 250 AH.


Gruß,
Stefan

87insane

Das das nicht gemappt ist, sehe ich ja. Aber die Frage ist ob man das wirklich braucht. Die ganzen errechneten Werte sind nutzlos. Einstellen kann ich dank deiner Verbesserungen auch alles. Ich bin rundum glücklich. Das ist nun nur noch Schönheit.

stefanru

#14
Hi @87insane,

freut mich, dass du mit dem Modul zufrieden bist.
Klar, das braucht man nicht alles.
Ich baue gern ein dass man die Raw Readings auch ganz ausblenden kann, das ist nicht viel Arbeit.

Eine kleine Frage ich habe oft gelesen dass die Leistungswerte der Wärmepumpe nicht stimmen.
Weißt du wie weit sie abweichen?
Ich habe mir deswegen schon einen Shelly besorgt mit dem ich die echte Leistungsaufnahme messen will.
Ich frage mich aber woher bekomme ich die Wärmeleistungsabgabe um auch den COP zu berechnen?
Die Wärmeleistung kann ich doch nur von der Wärmepumpe bekommen?

Danke und Gruß,
Stefan

P.S.: Habe es dir eingebaut, neues Attribut heißt vitoconnect_disable_raw_readings.
Könntest du es für mich bei dir testen?
Einfach das Attribut auf 1 stellen und einmal alle Readings löchen mit clearReadings.
Beim nächsten Abruf sollten die raw readings nicht mehr auftauchen.

Im Anhang die Version, stelle sie auf GIT sobald sie getestet wurde.

Danke und Gruß,
Stefan