NEWS
Test ViessmannAPI v2.0.0
-
Hier ein paar Datenpunkte (Luftwärmepumpe):
Kompressor aktiv: viessmannapi.0.xxx.0.features.heating.compressors.0.properties.active.value Heizkreispumpe aktiv: viessmannapi.0.xxx.0.features.heating.circuits.1.circulation.pump.properties.status.value Warmwasserbereitung: viessmannapi.0.xxx.0.features.heating.dhw.charging.properties.active.value Heizungsmodus: viessmannapi.0.xxx.0.features.heating.circuits.1.operating.modes.active.properties.value.value Heizprogramm: viessmannapi.0.xxx.0.features.heating.circuits.1.operating.programs.active.properties.value.value Temperatur Heizprogramm normal: viessmannapi.0.xxx.0.features.heating.circuits.1.operating.programs.normal.properties.temperature.value Temperatur Heizprogramm reduz.: viessmannapi.0.xxx.0.features.heating.circuits.1.operating.programs.reduced.properties.temperature.value Warmwasser Soll Temperatur: viessmannapi.0.xxx.0.features.heating.dhw.temperature.properties.value.value Warmwasser Ist Temperatur: viessmannapi.0.xxx.0.features.heating.dhw.sensors.temperature.hotWaterStorage.properties.value.value Temperatur Außensensor: viessmannapi.0.xxx.0.features.heating.sensors.temperature.outside.properties.value.value Statistik Kompressor Starts: viessmannapi.0.xxx.0.features.heating.compressors.0.statistics.properties.starts.value Statistik Kompressor Stunden: viessmannapi.0.xxx.0.features.heating.compressors.0.statistics.properties.hours.value ?Primärkreis Vorlauftemperatur: viessmann.0.xxx.0.features.heating.primaryCircuit.sensors.temperature.supply.properties.value.value ?Sekundärkreis Vorlauftemperatur: viessmann.0.xxx.0.features.heating.secondaryCircuit.sensors.temperature.supply.properties.value.value ?Sekundärkreis Rücklauftemperatur: viessmann.0.xxx.0.features.heating.secondaryCircuit.sensors.temperature.return.properties.value.value ? viessmann.0.xxx.0.features.heating.sensors.temperature.return.properties.value.value
-
@amgxda: Weißt du welcher Datenpunkt es ermöglicht die Heizung einfach aus bzw. anzustellen?
-
Cool, danke @tombox für den neuen Viessmann Adapter
Auslesen der Werte meiner Wärmepumpe klappt super. Auch setzten von Temperaturwerten funktioniert, allerdings bekomme ich bei Strings eine Fehlermeldung. Ich habe versucht den Betriebsmodus auf dhw zu setzen, bekomme aber einen Error 422 von der API zurück. Benutzt habe ich den Datenpunkt hier: viessmannapi.0.xxxxxx.0.features.heating.circuits.0.operating.modes.active.commands.setMode.setValue
Im Log finde ich folgende Fehlermeldung:
[39m: viessmannapi.0 (6574) {"viErrorId":"req-7cb439014b054530bd19203d937e34d7","statusCode":422,"errorType":"VALIDATION_ERROR","message":"VALIDATION_ERROR","validationErrors":[],"extendedPayload":{"code":"400","reason":"VALIDATION_ERROR","details":"The parameter mode=0 does not meet the constraints {\"type\":\"string\",\"enum\":[\"standby\",\"dhw\",\"dhwAndHeatingCooling\"]}: Value '0' should be a string."}}
Sieht irgendwie so aus, als ob aus meinem String eine Zahl wird.
Viele Grüße
Andreas -
Ich nutze dafür den hier: viessmannapi.0.xxxxxx.0.features.heating.circuits.0.operating.modes.active.commands.setMode.setValue
Der kennt Standby (standby), Brauchwasser (dhw) und Heizen&Brauchwasser (dhwAndHeatingCooling). Bekomme den derzeit aber nicht geschrieben.
Viele Grüße
Andreas -
@asblass : Danke werde ich ausprobieren.
-
@asblass alle states nochmal löschen und Adapter neuinstallieren und nochmal probieren
-
@tombox Super, das war es Seit der Neuinstallation klappt es und ich kann wieder meine Heizung per ioBroker zwischen Brauchwasser und Standby hin und her schalten.
Dank Dir
Andreas -
@asblass: Geht bei mir jetzt auch. Danke für deinen Tipp!
-
@asblass kannst du den genauen State sagen und die Werte die du einsetzt
-
@tombox Ich nutze viessmannapi.0.xxxxxx.0.features.heating.circuits.0.operating.modes.active.commands.setMode.setValue
Mögliche Werte sind standby, dhw & dhwAndHeatingCooling. Nachdem ich den Adapter gelöscht und neu installiert habe, klappt jetzt aber alles so wie es soll
-
@amgxda
Erstmal danke für den Adapter.
Grundsätzlich bekomme ich viele Datenpunkte über die Vitoconnect 100. Jedoch scheint die Struktur etwas anders zu sein als deine Datenpunkt für die Luftwärmepumpe.
Für mich ist die vorgegebene Struktur von Viessmann eine Katastrophe. -
Hi, danke für deine Arbeit. Ich habe den alten Adapter deinstalliert und diesen hier installiert. Allerdings bekomme ich beim Installieren diese Fehlermeldung:
$ iobroker url https://github.com/TA2k/ioBroker.viessmannapi --host iobroker --debug install TA2k/ioBroker.viessmannapi#b13be1884571d93ddbecb8cdf5b50c9a8e7e9c56 NPM version: 6.14.13 npm install TA2k/ioBroker.viessmannapi#b13be1884571d93ddbecb8cdf5b50c9a8e7e9c56 --prefix "/opt/iobroker" (System call) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.3.2 (node_modules/chokidar/node_modules/fsevents):npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.3.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: osx-temperature-sensor@^1.0.7 (node_modules/iobroker.info/node_modules/osx-temperature-sensor):npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for osx-temperature-sensor@1.0.7: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"}) npm WARN optional SKIPPING OPTIONAL DEPENDENCY: node-aead-crypto@^2.2.1 (node_modules/node-dtls-client/node_modules/node-aead-crypto):npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported engine for node-aead-crypto@2.2.1: wanted: {"node":">4 <10"} (current: {"node":"14.17.2","npm":"6.14.13"})npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Not compatible with your version of node/npm: node-aead-crypto@2.2.1 npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/node-aead-crypto/package.json' npm WARN bl@0.7.0 requires a peer of stream-browserify@* but none is installed. You must install peer dependencies yourself. + iobroker.viessmannapi@2.0.0updated 1 package in 15.941s 66 packages are looking for funding run `npm fund` for details upload [4] viessmannapi.admin /opt/iobroker/node_modules/iobroker.viessmannapi/admin/words.js words.js application/javascript upload [3] viessmannapi.admin /opt/iobroker/node_modules/iobroker.viessmannapi/admin/viessmannapi.png viessmannapi.png image/png upload [2] viessmannapi.admin /opt/iobroker/node_modules/iobroker.viessmannapi/admin/style.css style.css text/css upload [1] viessmannapi.admin /opt/iobroker/node_modules/iobroker.viessmannapi/admin/index_m.html index_m.html text/html upload [0] viessmannapi.admin /opt/iobroker/node_modules/iobroker.viessmannapi/admin/admin.d.ts admin.d.ts video/mp2t Process exited with code 0
Weis jemand wie und was ich hier nachinstallieren muss?
Vielen Dank! -
@keepon Ich sehe keine Errors nur Warnungen die normal sind auf macos der Adapter müsste trotzdem installiert sein oder?
-
-
@labamba
Bei mir unterscheidet sich die Struktur der Datenpunkte nicht groß vom alten Adapter. Es werden jetzt aber wesentlich mehr Informationen angezeigt, was sehr hilfreich ist, z.B. findet man jetzt auch in den Datenpunkten, welche Werte die API beim Setzen von Werten erwartet.Hier steht z.B. welche Werte beim Ändern des Heizungsmodus erwartet werden (bei mir unter circuits.1):
viessmannapi.0.x.0.features.heating.circuits.1.operating.modes.active.commands.setMode.params.mode.constraints.enum
->dhw;dhwAndHeating;forcedNormal;forcedReduced;standby;normalStandby -
@martybr Probier's aus...
-
-
@tombox Okay, das setze ich mal im Testsystem auf.
-
@tombox Ich scheitere schon beim Anmelden:
https://developer.viessmann.com/de/clientsWo kann ich denn den Account anlegen?
-
@tombox Gestern lief der Adapter bei mir noch, seit heute Nacht produziert er auch Neustart/Pause folgende Fehlermeldung:
viessmann.0 2021-08-06 09:02:38.892 error Error: Request failed with status code 502 viessmann.0 2021-08-06 09:02:38.891 error https://api.viessmann.com/iot/v1/equipment/installations/XXXXX/gateways/YYYYYYYYY/devices/$id/features
Ich habe mal die numerischen Werte rausgenommen, da mir nicht klar, was davon zu schützen ist.