NEWS
How-To: Eurotronic Spirit Zigbee mit Conbee II
-
Hallo,
da ich hier einen ziemlichen Kampf hatte die Thermostate einigermaßen ans fliegen zu bekommen möchte ich gerne teilen, wie man vorgehen muss:
- Batterien einlegen
- Thermostat auf Werkseinstellungen zurücksetzen („Jin“ erscheint im Display wenn es nagelneu ist, muss aber trotzdem zurückgesetzt werden)
- Thermostat initial verbinden
- „Jin“ erscheint im Display des Thermostats
- In Phoscon neuen Sensor suchen —> „Sensor verbinden“ findet nichts, ist erstmal egal…
- In deCONZ erscheint das Thermostat (Name 0xXXXXXX)
- Thermostat auf Werkseinstellungen zurücksetzen
- Thermostat neu verbinden
- „Jin“ erscheint im Display des Thermostat
- In Phoscon neuen Sensor suchen —> „Sensor verbinden“ findet das Thermostat („Sensor bereit“)
- Das Thermostat erscheint NICHT in Phoscon, da es noch nicht in der GUI unterstützt wird
- In deCONZ im Dropdown Menü „Basic“ wählen und die Attribute per „read“ auslesen
- Nun ändert sich der Name von 0xXXXXXX in SPZB0001
- Ab jetzt steht das Thermostat per Rest-API zur Verfügung
- Wer den Namen des Thermostats in einen sprechenderen ändern möchte kann dies per Rest API machen:
- Sensornummer per Rest-API auslesen (Alternativ in der iobroker Objektliste des deCONZ-Adapters):
- curl -X GET -H "Content-Type: application/json" http://###deCONZ-Server###:###Port###/api/322B1ACC0B/sensors
- Neuen Namen setzen
- curl -X PUT -H "Content-Type: application/json" -d '{"name“:“###Neuer Name###“}‘ http://###deCONZ-Server###:###Port###/api/322B1ACC0B/sensors/###Sensornummer###
- Sensornummer per Rest-API auslesen (Alternativ in der iobroker Objektliste des deCONZ-Adapters):
- Nun ändert sich der Name von 0xXXXXXX in SPZB0001
- deCONZ-Adapter neu starten, falls das Thermostat nicht in der Objektliste auftaucht
So hat es bei mir funktioniert und es liest sich auch schlimmer als es tatsächlich ist
-
Danke für die Anleitung, aber leider funktioniert das bei mir nicht so recht.
Ich habe noch keine Erfahrung mit iobroker und Raspberry und mache viele Anfängerfehler.
Ist das nur bei mir so oder muss man deCONZ immer neu starten und einen neuen Key generieren um neu angelernte Sensoren in den iobroker zu bekommen?In Werkszustand versetze ich den Spirit indem ich 10 Sekunden lang alle Tasten drücke bis der mittlere Taster grün blinkt oder?
-
Super Beschreibung, hat bei mir geklappt. Zeigt das Display bei dir die neue Solltemperatur an, wenn du den "heatsetpoint" Status setzt? Bei mir klappt das leider nicht.
-
@Vorstadtkind Danke für den Tipp mit dem Werkszustand. Habe so auch endlich mein Thermostat mit dem Zigbee Stick finden können.
-
@adsfa kannst du denn nun den „heatsetpoint“ setzen? Also so dass er tatsächlich auch als neuer Sollwert (Display am Thermostat) übergeben wird?
Wenn ich den heatsetpoint ändere, wird der Wert zwar im iobroker geändert, das nächste Update des Sensors überschreibt aber wieder den „alten“ Wert, der auf dem Thermostat per Hand eingestellt ist.
Der Wert auf dem Display ändert sich nie. Das kann ich nur direkt in der Deconz-Software bei den Attributen ändern, nicht aber aus dem iobroker heraus.
-
@Strberg ja das funktioniert.
Nach einem Update kämpfe ich aber mit der Simple-Thermostat Karte... Bei der normalen Thermostat Karte kann ich den Wert in der UI verändern, bei der Simple-Thermostat Karte keine Chance
-
Hallo,
es gibt eine sehr gute Anleitung (weiß nicht ob ich den link hier posten darf? Ansonsten nach "eurotronic spirit zigbee conbee 2" -> erster Treffer).
Ich habe nun 5 dieser Thermostate, aber nur 4 funktionieren, heatsetpoint und alles ander lässt sich an diesen Thermostaten einstellen. Das 5. funktioniert leider nicht, heatsetpoint läßt sich nicht über iobroker setzen. Das scheint aber am Thermostat zu liegen, ich habe festgestellt es gibt da mehrere Versionen, erkennbar an der Verpackung und an der Befestigungsmutter. Die Thermostate in der bunten Verpackung haben eine grob geriffelte Befestigungsmutter, diese funktionieren einwandfrei, das eine in der nicht so bunten Verpackung hat eine fein griffelte Befestigungsmutter und funktioniert nicht.
-
@danny_v1 Moin, wo hast du die "bunten" bezogen? Gruß
-
@Kilik ich habe alle von amazon. Hab heute auch mal eurotronic angeschrieben ob es da einen Unterschied gibt, bzw welche davon die neueren sind. Mal sehen wann und ob die sich melden.
-
Ich habe auch die nicht bunte Verpackung mit fein geriffelter Mutter. Ich kann aber über deconz das Attribut 0x0012 occupied heating set point setzen und das hat auch eine Änderung auf dem Display des Thermostats zur Folge. Kann man das irgendwie per REST API setzen?
-
@Strberg Kannst Du das auch direkt über iobroker setzen im Datenpunkt? In der Anleitung die ich benutzt hab steht auch der curl Befehl drin mit dem es über Rest-API klappten sollte. Den könnte man ja dann über ein Skript setzen.
-
@danny_v1 Wenn ich den Datenpunkt im iobroker setze, ansieht es zwar so aus, als würde der Wert übernommen werden, aber am Display des Thermostats bleibt der alte Wert eingestellt und nach ein paar Minuten wird auch im iobroker wieder Wert, der auf dem Thermostat eingestellt ist, angezeigt.
Über die Deconz Software ändert sich der Wert auf dem Thermostatdisplay sofort, also muss es doch irgendwie möglich sein den Wert zu setzen.
-
@Strberg Versuchs mal mit:
curl -X PUT -d '{"heatsetpoint":1700}' http://localhost/api/<API-KEY>/sensors/<ID>/config
über die konsole oder so. (1700 sind 17°C, <API-KEY> steht im deconz Adapter und <ID> ist die Nummer des Thermostat im deconz.0 Ordner. Wenn das geht könntest Du dir dann ein kleines Blockly zusammen bauen um den Wert zu setzen.
-
@danny_v1 Das hatte ich schon versucht. Die API wird hier wohl genau so angesprochen, wie es der deconz Adapter im iobroker tut. Das Verhalten ist das gleiche. Der Datenpunkt im iobroker wird verändert, das Thermostatdisplay zeigt keine Änderung und nach einer Weile wird der Wert wieder vom Thermostat überschrieben auf den Wert, der auf dem Thermostat eingestellt ist.
Die Frage war eher, ob ich über die Rest API irgendwie direkt das Attribut 0x0012 zugreifen kann.
Das Problem scheint aber inzwischen auch bei anderen aufgetaucht zu sein. Im GitHub gibt es einen thread dazu. Ich weiß nicht, ob ich den Link dazu posten darf.
(GitHub->Dresden-Elektronik->deconz-Rest-plugin ->[Device Support Request] Eurotronic Spirit ZigBee #1098 -
@Strberg sagte in How-To: Eurotronic Spirit Zigbee mit Conbee II:
@danny_v1 Das hatte ich schon versucht. Die API wird hier wohl genau so angesprochen, wie es der deconz Adapter im iobroker tut. Das Verhalten ist das gleiche. Der Datenpunkt im iobroker wird verändert, das Thermostatdisplay zeigt keine Änderung und nach einer Weile wird der Wert wieder vom Thermostat überschrieben auf den Wert, der auf dem Thermostat eingestellt ist.
Die eigentlichen Fragen sind:
- Wenn du den Wert am Thermostat verstellst, ändert sich dann der Wert im ioBroker ?
- Wenn du per deconz GUI versuchst den Wert anzupassen, wird er dann geändert ? (Nachtrag: Um den Wert anzupassen solltest du im "Thermostat" Cluster den "occupied heating set point" anpassen. Die Anzeige des Thermostates sollte sofort umspringen, auch wenn der Wert im ioBroker sich erst nicht ändert)
Ich habe zu Testzwecken das bei mir gestern konfiguriert und bisher damit keine Probleme.
Die Frage war eher, ob ich über die Rest API irgendwie direkt das Attribut 0x0012 zugreifen kann.
Nein, das wird meines Wissens nicht nach aussen gegeben
Das Problem scheint aber inzwischen auch bei anderen aufgetaucht zu sein. Im GitHub gibt es einen thread dazu. Ich weiß nicht, ob ich den Link dazu posten darf.
(GitHub->Dresden-Elektronik->deconz-Rest-plugin ->[Device Support Request] Eurotronic Spirit ZigBee #1098Warum solltest Du den Link nicht posten dürfen ? Ich mach das immer.
A.
-
@Asgothian sagte in How-To: Eurotronic Spirit Zigbee mit Conbee II:
Die eigentlichen Fragen sind:
- Wenn du den Wert am Thermostat verstellst, ändert sich dann der Wert im ioBroker ?
Ja, nach ein paar Minuten ändert sich der Wert im iobroker auf den Wert, den ich am Thermostat eingestellt habe.
- Wenn du per deconz GUI versuchst den Wert anzupassen, wird er dann geändert ? (Nachtrag: Um den Wert anzupassen solltest du im "Thermostat" Cluster den "occupied heating set point" anpassen. Die Anzeige des Thermostates sollte sofort umspringen, auch wenn der Wert im ioBroker sich erst nicht ändert)
Ja das klappt, auch im iobroker wird der neue Wert dann sofort angezeigt. Nur wenn ich versuche, den Wert aus dem iobroker heraus zu schreiben, klappt das nicht.
Warum solltest Du den Link nicht posten dürfen ? Ich mach das immer.
Ich bin neu hier im Forum und habe die Regeln ehrlich gesagt nicht wirklich gelesen. Hier der Link:
https://github.com/dresden-elektronik/deconz-rest-plugin/issues/1098 -
@Strberg Weiß ja nicht ob man irgendwie auf die Firmware zugreifen kann, also die Version von den funktionierenden auslesen und die Version dann irgendwie auf die nicht funktionierenden zu spielen.
-
@danny_v1 Bisher sind keine Flashfiles für das Thermostat im Umlauf. Aber ich denke derzeit muss man abwarten, wie sich die sache entwickelt. Im GitHub Thread wird nach einer Lösung für das Problem gesucht. Im Prinzip müsste sich das ja über die deconz Rest-Api regeln lassen. Derzeit scheint das Hauptproblem zu sein, die beiden Thermostatversionen zu unterscheiden, weil beide identische Werte im Basic-Cluster zurückgeben.
-
@Strberg Gut dann heißt es also abwarten und ggf. die nicht funktionierenden Thermostate zurückschicken. Hab bis jetzt auch noch keine Antwort auf meine Anfrage bei Eurotronic erhalten
-
Ist es denn nicht möglich, via REST-Api den Wert (Occupied Heating Setpoint --> 0x0012) händisch zu schreiben? Der Deconz-Adapter schreibt den Heatsetpoint offenbar in die "falsche" Adresse (Current Temperature Setpoint --> 0x4003), denn bei den anderen Firmware-Versionen hat das funktioniert (habe selber eins, bei dem es funktioniert, in 0x4003 zu schreiben (damit auch im Deconz-Adapter)). Bei den anderen Thermostaten kann ich nur händisch im Deconz-Gui den Thermostatwert via 0x0012 ändern.
Via REST-Api-Chrome-Plugin sehe ich in der Config nur den "Heatsetpoint" und hier schreibt er offenbar leider in die 0x4003 rein. Hat jemand schon eine Lösung?