Fehler Viessmann API Bridge

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

rebell21
Beiträge: 185
Registriert: 23. Aug 2024 09:34
Answers: 0

Re: Fehler Viessmann API Bridge

Beitrag von rebell21 »

Ich hatte vor einiger Zeit das Interface zur Heizung von Viessmann mit Eurer Hilfe hier auf SmartHome/J umgestellt. Das hat auch funktioniert. Trotzdem geht das Viessmann Interface in Openhab noch ab und zu offline

Die Bridge geht in den Status Error und nichts passiert mehr.

Wenn ich SmartHome/J Trace auf Debug umschalte, sehe ich Versuche von openhab, sich bei der Viessmann API anzumelden.

Code: Alles auswählen


Logger Class
org.smarthomej.binding.viessmann.internal.api.ViessmannAuth
Message
ViessmannAuth: Got null authorize response from Viessmann API 

Wenn ich versuche, die Bridge wiederzubeleben (disable/enable), bleibt sie im Status "initializing" stehen und es passiert stundenlang nichts mehr, Kennt hier jemand das Problem.
Das Problem hat hier nichts mit irgendwelchen API Limits exceed zu tun. Ich kann mit einem Python Programm problemlos auf die API zugriefen und erhalte Daten von ihr.
openhab 5.0.1 in Proxmox LXC Container mit debian bookworm (openhabian) auf Intel NUC

nojo
Beiträge: 47
Registriert: 17. Mai 2020 22:09
Answers: 0

Re: Fehler Viessmann API Bridge

Beitrag von nojo »

ich hatte heute auch keine Verbindung zum Viessmann Server, weil Viessmann die Internetadresse geändert hat.
aufgefallen ist es mir, nachdem ich das Viessmann Setup (http://deine.Openhab.IP.Adresse:8080/vicare/setup) aufgerufen habe und das Viessmann Developer Portal nicht mehr angezeigt wurde. -->

Die Adresse dieser Seite hat sich geändert
Diese Seite wird ab dem 23. November 2025 nicht mehr verfügbar sein.

Bitte verwenden Sie künftig die neue Adresse:
https://developer.viessmann-climatesolutions.com

Wir empfehlen Ihnen, Ihre Lesezeichen entsprechend zu aktualisieren.

hab dann einfach die Access Server URL Adresse im Binding von https://iam.viessmann.com/idp/v3/token auf https://iam.viessmann-climatesolutions.com/idp/v3/token geändert und alles hat wieder funktioniert.

rebell21
Beiträge: 185
Registriert: 23. Aug 2024 09:34
Answers: 0

Re: Fehler Viessmann API Bridge

Beitrag von rebell21 »

Hallo,

ich verwende SmartHome/J viessmann zum Zugriff auf die API von Viessmann. Ich weiß leider nicht, wo ich die Access Server URL einstellen muss bei SmartHome/J. In der Bridge wird keine Access Server URL mehr eingestellt. Die URL konnte ich nur beim Viessmann Binding sebst einstellen. Aber bei SmartHome/J für Viessmann finde ich das nicht. Weiß das hier jemand ?

Wenn ich die Bridge (basierend auf SmatHome/J) einschalte (enable) erhalte ich im log die Fehlermeldung

Code: Alles auswählen

Log Details

    Time
    16:25:38.939
    Timestamp
    Nov 18, 2025, 3:25:38 PM
    Level
    INFO
    Logger Class
    org.smarthomej.binding.viessmann.internal.api.ViessmannApi
    Message
    API AuthException: Unable to execute GET: Can not set auth header because access token is null 
irgendetwas stimmt in der Tat nicht mit der Authorization. Aber wie kann man das in SmartHome/J umstellen oder anpassen ?
Ich will nicht alle things und items rund um viessmann wegschmeißen und ein andere Viessmann Binding installieren
openhab 5.0.1 in Proxmox LXC Container mit debian bookworm (openhabian) auf Intel NUC

Benutzeravatar
udo1toni
Beiträge: 15620
Registriert: 11. Apr 2018 18:05
Answers: 253
Wohnort: Darmstadt

Re: Fehler Viessmann API Bridge

Beitrag von udo1toni »

Da der Zugriff auf die API bei Viessmann momentan nicht funktioniert (Nach Login kommt eine Fehlermeldung) würde ich den Fehler tendenziell erst mal bei Viessmann suchen - vielleicht geht es in ein paar Tagen wieder?
openHAB5.1.2 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime - LXC, 4 Kerne, 3 GByte RAM)
Hostsystem Proxmox VE 9.1.5 - AMD Ryzen 5 3600 6 Kerne, 12 Threads - 64 GByte RAM - ZFS Pools: Raid Z1, 3 x 20 TB HDD -> 40 TByte und Raid Z0-Mirrored 4 x 1 TByte NVMe -> 2 TByte

Benutzeravatar
udo1toni
Beiträge: 15620
Registriert: 11. Apr 2018 18:05
Answers: 253
Wohnort: Darmstadt

Re: Fehler Viessmann API Bridge

Beitrag von udo1toni »

Kurze Info zum Thema: Gestern kam ich nicht auf die Viessmann-Seite, heute geht es aber.
Ich bin nun auf das im Marketplace verfügbare Binding umgestiegen, allerdings habe ich direkt den Snapshot genommen. Der lässt sich bequem über die Detailinfos des Bindings herunterladen. NICHT! das Binding aus dem Appstore installieren, das hat offenbar noch einige Bugs.
Die von mir installierte Version ist 5.1.0.202511200020, also ganz frisch :)

Es reicht nicht, das Binding zu installieren und die alten Zugangsdaten einzutragen (jedenfalls war das bei mir der Fall)
Nach dem Installieren der Snapshot Version (Datei in den addons-Ordner abgelegt) im Developer Portal von viessmann den vorhandenen Client löschen und einen neuen erzeugen. Dabei wird ein neuer APIkey generiert.
Als URL muss http://localhost:8080/viessmann/authcode/ eingetragen werden (Das Binding läuft auf dem openHAB System und erledigt die Autorisierung anschließend vollständig automatisch)
Danach noch den APIkey in die Zwischenablage kopieren und als erstes einen Account anlegen.
Im Unterschied zu den bisherigen Bindings kann das "neue" Viessmann Binding vollständig über Textdefinition konfiguriert werden:

Code: Alles auswählen

Bridge viessmann:account:bridge "Viessmann Bridge" [
    apiKey="123456789abcdef0123456789abcdef0", 
    user="meine@mailadres.se", 
    password="das zugehörige Passwort"
   ] {
    Bridge gateway vitoconnect "Viessmann Gateway VitoconnectOPTO2" [
      gatewaySerial="1234567890123456", 
      installationId="1234567"
   ] {
      Thing device heizung "Heizung"
      Thing device HeatDemandControl "Heizanforderung" [
         deviceId="HeatDemandControl"
      ]
      Thing device RoomControl_1 "Raumsteuerung" [
         deviceId="RoomControl-1"
      ]
   }
}
Der Trick: Man legt zunächst die Account-Bridge an und kopiert sich das automatisch generierte Thing als Textdefinition.
Anschließend wird die Autodiscovery das Gateway finden und in der Inbox anbieten. Von dort kann es kopiert werden (mitsamt gatewaySerial und installationId) und als neues Thing abgelegt werden.
Sobald das Gateway online ist, wird die Autodiscovery die übrigen Busteilnehmer finden und in der Inbox anbieten. Für diese kann man in der gleichen Weise verfahren wie mit dem Gateway.

Da openHAB die Textdefinition immer für das einzelne Thing erzeugt, muss man für die hierarchische Anordnung (siehe Beispielcode) die kopierte Definition etwas bearbeiten.
Alternativ kann man natürlich auch die separate Variante nutzen (die Bridge hat keine geschweiften Klammern, stattdessen wird das Thing unabhängig, dafür mit Bezug zur Bridge angegeben - dies ist die Form, die openHAB automatisch erzeugt)

Ich bin noch damit beschäftigt, die Items neu zu verbinden :) aber Account, Gateway und Devices sind wieder online und haben auch die gleichen Channel wie vorher...

Ach so... Also, es sind zwar alle Channel vorhanden, jedoch haben sich die ChannelIDs geändert, sie sind snake-like notiert, nicht mehr CamelCase.
openHAB5.1.2 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime - LXC, 4 Kerne, 3 GByte RAM)
Hostsystem Proxmox VE 9.1.5 - AMD Ryzen 5 3600 6 Kerne, 12 Threads - 64 GByte RAM - ZFS Pools: Raid Z1, 3 x 20 TB HDD -> 40 TByte und Raid Z0-Mirrored 4 x 1 TByte NVMe -> 2 TByte

rebell21
Beiträge: 185
Registriert: 23. Aug 2024 09:34
Answers: 0

Re: Fehler Viessmann API Bridge

Beitrag von rebell21 »

Danke,

das hat bei mir geklappt. Ich konnte ein Account Thing anlegen. Dann wurde ein Gateway Thing discovered. Das habe ich auch angelegt.
Ich musste übrigens keinen neuen Viessmann Client anlegen. Ich konnte das account thing mit meiner existierenden Viessmann Client ID online bringen
Dann habe ich bei dem existierenden Thing für die Heizung die Thing UID der bisherigen Bridge durch die Thing UID des neuen Gateways ersetzt.
Ich hoffe, das das Binding die gleichen Kanäle unterstützt wie SmartHome/J und dass die Kanäle auch die gleiche Bedeutung haben
Ich sehe nun, dass die existierenden Items wieder aktualisiert werden.



Ich musste aber in der Openhab Console das SmartHome/J Binding über "bundle:uninstall #no Binding" entfernen. Sonst habe ich bei den Things in der MainUI seltsame Fehlermeldungen über unerlaubte Casts von Java Class A auf Java Class B erhalten. Die Fehlermeldungen deuteten aber darauf hin, dass das neue viessmann Binding inkompatibel mit dem alten SmartHome/J Binding ist.

Und ich sehe in der openhab console nach bundle:list zwei dieser Viessmann Bindings in der Openhab Console. Eines (Version 5.1.0.202511161327) ist "active", eines (Version 5.1.0.2025112000020) ist "waiting". Soll ich Version 5.1.0.202511161327 mit bundle:uninstall deinstallieren ?

Code: Alles auswählen


openhab>bundle:list
.
.
.
369 │ Active  │  80 │ 5.1.0.202511161327    │ openHAB Add-ons :: Bundles :: Viessmann Binding
370 │ Waiting │  80 │ 5.1.0.202511200020    │ openHAB Add-ons :: Bundles :: Viessmann Binding



Welche Bedeutung haben denn die beiden Things "Viessmann Device TCU" und "Viessmann Device Room Control-1"?


Mit Viessmann in openhab hat man nur Ärger. In openhab 4.x über dein Viessmann Binding. In Openhab 5 zunächst über das SmartHome/J Binding. Nun wieder ein Viessmann Binding. Das macht keinen Spaß
openhab 5.0.1 in Proxmox LXC Container mit debian bookworm (openhabian) auf Intel NUC

Benutzeravatar
udo1toni
Beiträge: 15620
Registriert: 11. Apr 2018 18:05
Answers: 253
Wohnort: Darmstadt

Re: Fehler Viessmann API Bridge

Beitrag von udo1toni »

Also, ich habe nur ein Binding bei mir gelistet, das mit der 20 hinten :)
Was genau RoomControl macht, kann ich Dir nicht sagen, bei mir tauchen für vier Heizkreise jeweils drei Switches auf, die wohl Status der betreffenden Heizkreise wiedergeben.
Ein TCU habe ich nicht. Welche Geräte auftauchen, hängt von der Anlage ab, letztlich siehst Du die "Busteilnehmer" der Steuerbusse der Heizung.

Ganz grundsätzlich zum Viessmann Binding: Die Firma Viessmann macht da keine gute Figur, aber es gibt auch bei den anderen Herstellern kaum positive Beispiele (jedenfalls soweit ich das bisher mitbekommen habe).
Das Binding greift über die offizielle API zu, und Viessmann doktort daran herum, incl. Nicht-Erreichbarkeit der Server (immer mal wieder - ich sehe das nicht in openHAB, sondern an der WLAN-Schnittstelle der Heizung...). Der letzte "große Wurf" war jetzt das komplette Umheben auf einen anderen fqdn.
Ja, das nervt mich auch, aber was soll man machen? Die nächste Heizung wird eine Wärmepumpe, aber so alt ist meine Heizung noch nicht...
openHAB5.1.2 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime - LXC, 4 Kerne, 3 GByte RAM)
Hostsystem Proxmox VE 9.1.5 - AMD Ryzen 5 3600 6 Kerne, 12 Threads - 64 GByte RAM - ZFS Pools: Raid Z1, 3 x 20 TB HDD -> 40 TByte und Raid Z0-Mirrored 4 x 1 TByte NVMe -> 2 TByte

rebell21
Beiträge: 185
Registriert: 23. Aug 2024 09:34
Answers: 0

Re: Fehler Viessmann API Bridge

Beitrag von rebell21 »

Hallo, ich habe meine Viessmann Zugriffe nun auf das neue Binding umgestellt. Im Gateway und Account Thing sehe ich , dass das Polling Interval vom Binding selbst berechnet wird. Wohl irgendwie aus dem API Call Limit und dem API Command Buffer. Hast Du schon herausbekommen, wie genau sich das Polling Intervall berechnet. Ich habe den Eindruck, dass die Viessman API nicht oft abgefragt wird.
Ich kenne weder das Polling Intervall noch weiß ich wie das Binding das berechnet. Im Internet finde ich nichts wirklich belastbares

Code: Alles auswählen

The Viessmann Binding in openHAB doesn't calculate the polling interval dynamically; instead, it uses configurable settings like pollingInterval (seconds for general data) and pollingIntervalErrors (minutes for error checks), defaulting to 0 (manual/event-driven) or specific values, allowing users to set how often data is fetched from the Viessmann API, with caching to prevent excessive API calls between intervals. 
Key Polling Settings:

    pollingInterval: Controls how often data points are refreshed from the Viessmann API (e.g., 60 for every minute). A value of 0 often means polling is disabled, relying on events or manual triggers.
    pollingIntervalErrors: Sets the frequency (in minutes) for checking error statuses.
    disablePolling: A flag to completely turn off automatic polling, letting you manually trigger updates via an item. 

How it Works (Conceptual):

    Configuration: You define these intervals in your Thing configuration or via the UI.
    API Calls: The binding makes requests to the Viessmann Cloud API at these defined intervals.
    Caching: Data fetched within an interval is often cached, so subsequent requests for the same data within that period return the cached value, reducing API load.
    Event-Driven (Default for 0): When pollingInterval is 0, the binding might wait for events (like a temperature change) or rely on manual item updates to fetch data, rather than constantly querying. 

In essence, you tell the binding how often to check, and it respects those boundaries, using caching to be efficient. 

    Viessmann Binding - SmartHome/J - Addons for openHAB 4
    pollingInterval (default = 0) How often the available devices should be queried in seconds (**) pollingIntervalErrors 
Auch hier kann ich nichts finden
https://github.com/rogrun/openhab-addo ... iessmann
openhab 5.0.1 in Proxmox LXC Container mit debian bookworm (openhabian) auf Intel NUC

Benutzeravatar
udo1toni
Beiträge: 15620
Registriert: 11. Apr 2018 18:05
Answers: 253
Wohnort: Darmstadt

Re: Fehler Viessmann API Bridge

Beitrag von udo1toni »

Das habe ich mir ehrlich gesagt noch nicht näher angeschaut, letztlich will ich die Daten vor allem langfristig monitoren, da sind die Intervalle für mich eher zweitrangig.
openHAB5.1.2 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime - LXC, 4 Kerne, 3 GByte RAM)
Hostsystem Proxmox VE 9.1.5 - AMD Ryzen 5 3600 6 Kerne, 12 Threads - 64 GByte RAM - ZFS Pools: Raid Z1, 3 x 20 TB HDD -> 40 TByte und Raid Z0-Mirrored 4 x 1 TByte NVMe -> 2 TByte

scotty_de
Beiträge: 5
Registriert: 14. Sep 2025 10:19
Answers: 0

Re: Fehler Viessmann API Bridge

Beitrag von scotty_de »

Hallo,

ich bekomme das nicht zum laufen.
Ich habe den PI mit: OH 5.1.1
Aus dem addon store habe ich: SmartHome/J Viessmann Binding
Eine Client ID habe ich hier erstellt: https://app.developer.viessmann-climatesolutions.com/ (mit URL: http://192.168.178.92:8080/viessmann/authcode/ )
In der Viessmann Connect Bridge hab ich Client ID, email und Passwort eingetragen.
Die Viessmann Connect Bridge hängt im Status INITIALIZING
Und unter http://192.168.178.92:8080/viessmann/authcode/ sehe ich nur "{"error": "invalid-code-request"}"

Antworten