Neues Modul: vitoconnect

Begonnen von andreas13, 24 November 2018, 17:42:33

Vorheriges Thema - Nächstes Thema

andreas13

Zitat von: Frini am 23 Dezember 2018, 19:01:58
Ich muss mal gleich das GetFeature auslesen. Vielleicht sehe ich da noch einiges anderes
Was meinst du mit "GetFeature"?
Maintainer des Vitoconnect Moduls
In Betrieb: FritzBox 7590, Homematic
piko Wechelrichter (HTTPMOD). Sonos ....
noch: IT

Frini

#61
Das ist ne php von Thetrueavatar, welches sich alle Funktionen von der API holt.
Ich habe das Ergebnis der Abfrage mal angefügt.
Bei der Vitodens 333 fehlen einige Adressen. Leider :-(
Es sei denn Viessmann rollt das Update erst so nach und nach aus.

andreas13

GetFeature ist das, was Du bei getResource bekommst, wenn Du bei dem Modul verbose auf "5" stellst.
Maintainer des Vitoconnect Moduls
In Betrieb: FritzBox 7590, Homematic
piko Wechelrichter (HTTPMOD). Sonos ....
noch: IT

Frini

Cool das wusste ich noch nicht.
Vielen Dank für Deine Mühen. Ich bin jetzt komplett auf dein Modul gewechselt. Läuft problemlos.

BlackHawk133

Hi,

habe das neue Modul bei mir reingenommen, kann die neuen Readings allerdings auch nicht sehen.
Habe mal verbose 5 aktiviert und z.B. Modulation nicht in dem riesen Response block gefunden.
Habe ein Vitodens 300. Muss man noch irgendwas updaten, dass das funktioniert?
Hat jemand mit einer VD300 die neuen Werten?

Frini

Bei mir heißt Modulation Brenner_Leistung

Mave

Moin andreas,

ich bin jetzt auch auf Dein Modul umgestiegen. Läuft.
Super, vielen Dank.

Diese Meldungen finde ich im Log:

2018.12.30 09:00:31 3: WARNING: unsupported character in reading Fehlereinträge_Historie (not A-Za-z/\d_\.-), notify the vitoconnect module maintainer.
2018.12.30 09:00:31 3: WARNING: unsupported character in reading Fehlereinträge_aktive (not A-Za-z/\d_\.-), notify the vitoconnect module maintainer.
2018.12.30 09:00:31 3: WARNING: unsupported character in reading Service_fällig (not A-Za-z/\d_\.-), notify the vitoconnect module maintainer.

Grüße Mave

andreas13

Zitat von: Mave am 30 Dezember 2018, 09:11:22
Moin andreas,

ich bin jetzt auch auf Dein Modul umgestiegen. Läuft.
Super, vielen Dank.

Diese Meldungen finde ich im Log:

2018.12.30 09:00:31 3: WARNING: unsupported character in reading Fehlereinträge_Historie (not A-Za-z/\d_\.-), notify the vitoconnect module maintainer.
2018.12.30 09:00:31 3: WARNING: unsupported character in reading Fehlereinträge_aktive (not A-Za-z/\d_\.-), notify the vitoconnect module maintainer.
2018.12.30 09:00:31 3: WARNING: unsupported character in reading Service_fällig (not A-Za-z/\d_\.-), notify the vitoconnect module maintainer.

Grüße Mave

Ich habe das Modul grad eben in SVN eingecheckt. Das heißt, es müsste morgen über "update" verteilt werden.

Die Sondernzeichen habe ich aus dem Readings entfernt. 

Maintainer des Vitoconnect Moduls
In Betrieb: FritzBox 7590, Homematic
piko Wechelrichter (HTTPMOD). Sonos ....
noch: IT

andreas13

Zitat von: Frini am 28 Dezember 2018, 10:29:30
Bei mir heißt Modulation Brenner_Leistung

Was meinst du mit "bei mir"? In der API heißt der Wert "heating.burner.modulation.value" . Wird der in den PHP Skripten auf "Brenner_Leistung" gemappt?                               
Maintainer des Vitoconnect Moduls
In Betrieb: FritzBox 7590, Homematic
piko Wechelrichter (HTTPMOD). Sonos ....
noch: IT

BlackHawk133

Hi, habe grade ein "update all" gefahren und war begeistert, dass das vitoconnect modul jetzt mit upgedated wird.
Leider kam danach FHEM nicht mehr hoch. Im Log war zu sehen:

Undefined subroutine &main::Heizungsmodul - _GetUpdate called at fhem.pl line 3153.

Habe das alte modul wieder restored und jetzt geht's wieder. Somit schein wohl ein Bug in deinem neuen Modul zu sein.....

CoolTux

Wenn Du es Dir zu traust dann ändere bitte einmal Zeile 226 im Modul
Alt

InternalTimer(gettimeofday()+2, "$name - _GetUpdate", $hash);


neu

InternalTimer(gettimeofday()+2, "vitoconnect_GetUpdate", $hash);


Und dann neustarten
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

SehlinhS

#71
so funktioniert es.
Ohne die Änderung startete FHEM bei mir auch nicht mehr.
Danke

Zitat von: CoolTux am 31 Dezember 2018, 09:27:13
Wenn Du es Dir zu traust dann ändere bitte einmal Zeile 226 im Modul
Alt

InternalTimer(gettimeofday()+2, "$name - _GetUpdate", $hash);


neu

InternalTimer(gettimeofday()+2, "vitoconnect_GetUpdate", $hash);


Und dann neustarten

andreas13

Sorry, das passiert, wenn man in letzter Minute noch was ändert. [emoji3525]
Ich hoffe, ich hab's gefixt. Morgen schau ich es mir noch Mal in Ruhe an.


Gesendet von iPhone mit Tapatalk Pro
Maintainer des Vitoconnect Moduls
In Betrieb: FritzBox 7590, Homematic
piko Wechelrichter (HTTPMOD). Sonos ....
noch: IT

andreas13

So, nochmal alles kontrolliert. Die Version, die heute mit "update" ausgeliefert wurde, sollte funktionieren. Nochmal sorry, wegen der Umstände.

Als kleine "Wiedergutmachung" hat die neue Version

* einen neuen Befehl "set <name> clearReadings" um alle Readings zu löschen.
* ein neues Attribut vitoconnect_actions_active. Damit kann man das Modul dazu bringen, die "actions" anzuzeigen, die die API bietet (siehe unten)
* ein neues Attribut, vitoconnect_raw_readings. Damit kann man das Modul dazu bringen, die Readings in Rohform anzuzeigen, also "heating.circuits.0.heating.curve.slope" statt "HK1-Heizkurve-Steigung". Aktions werden z.Z. immer in raw Form ausgegeben.

Zu den Aktions:

Meine Heizung bietet mir zur Zeit folgende Aktions an:

heating.circuits.0.heating.curve.setCurve
heating.circuits.0.heating.schedule.setSchedule
heating.circuits.0.operating.modes.active.setMode
heating.circuits.0.operating.programs.comfort.activate
heating.circuits.0.operating.programs.comfort.deactivate
heating.circuits.0.operating.programs.comfort.setTemperature
heating.circuits.0.operating.programs.eco.activate
heating.circuits.0.operating.programs.eco.deactivate
heating.circuits.0.operating.programs.holiday.schedule
heating.circuits.0.operating.programs.holiday.unschedule
heating.circuits.0.operating.programs.normal.setTemperature
heating.circuits.0.operating.programs.reduced.setTemperature
heating.dhw.oneTimeCharge.activate
heating.dhw.oneTimeCharge.deactivate
heating.dhw.pumps.circulation.schedule.setSchedule
heating.dhw.schedule.setSchedule
heating.dhw.temperature.main.setTargetTemperature
heating.dhw.temperature.setTargetTemperature

Ich werde mich mal daran machen, entsprechende Befehle zu implementieren um die Heizung zu steuern. Anfangen würde ich mit

  • heating.circuits.0.operating.programs.normal.setTemperature
    heating.circuits.0.operating.programs.reduced.setTemperature
    heating.dhw.oneTimeCharge.activate
    heating.dhw.oneTimeCharge.deactivate


Maintainer des Vitoconnect Moduls
In Betrieb: FritzBox 7590, Homematic
piko Wechelrichter (HTTPMOD). Sonos ....
noch: IT

Frini

#74
Sehr cool. Ich bin gerade wieder zu Hause angekommen und habe direkt das Update eingespielt. Im Vergleich zu der php zeigt das Modul leider keine Urlaubszeiten an. Sprich die Readings HK1-urlaub-Start und Ende bleiben leer.

Danke und frohes Neues
Ergänzend zu Deiner Auflistung habe ich mal meine Action Abfrage angehangen, mit den Punkten die ich noch zusätzlich habe.

heating.circuits.0.circulation.schedule.setSchedule
heating.circuits.1.circulation.schedule.setSchedule
heating.circuits.1.heating.curve.setCurve
heating.circuits.1.heating.schedule.setSchedule
heating.circuits.1.operating.modes.active.setMode
heating.circuits.1.operating.programs.comfort.activate
heating.circuits.1.operating.programs.comfort.deactivate
heating.circuits.1.operating.programs.comfort.setTemperature
heating.circuits.1.operating.programs.eco.activate
heating.circuits.1.operating.programs.eco.deactivate
heating.circuits.1.operating.programs.holiday.schedule
heating.circuits.1.operating.programs.holiday.unschedule
heating.circuits.1.operating.programs.normal.setTemperature
heating.circuits.1.operating.programs.reduced.setTemperature
heating.dhw.temperature.setTargetTemperature