neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Quautiputzli
Beiträge: 317
Registriert: 29. Okt 2020 19:53
Answers: 2

neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich

Beitrag von Quautiputzli »

Hallo miteinenader,
Ich habe ja meinen openHAB raspberry neu aufgesetzt mit neuem openhabian-Image. Dazu musste ich auch zigbee2mqtt neu aufspielen.
Zuvor hatte ich Version: 1.18.3
Nun habe ich Version: 1.24.0
Als Stick verwende ich einen CC2531

Nun ist es bei der neuen Version nicht mehr möglich meine Phillips HUE Lampen über HSB anzusteuern. Farbe und Sättigung ändern sich, aber die Helligkeit nicht. Mit meiner aktuellen Konfiguration kann ich die Lampe nicht mal mehr ausschalten.

Das ist nun eigentlich kein Problem von openhab. Denn wenn ich mit mqtt.fix den payload {"color":{"hsb":"360,100,50"}} sende ist das ja genau so. Die Helligkeit ändert sich nicht.

Gibt es eine Möglichkeit wieder auf die alte Version zu kommen?
Oder brauche ich einen anderen Stick?
Oder muss ich meine OH Konfiguration abändern, damit es wieder funktioniert?
von udo1toni » 23. Mär 2022 10:49
Ja gut, dann musst Du ja nur statt git zu nutzen, das alte Paket herunter laden un in das entsprechende Verzeichnis packen. hier: https://github.com/Koenkk/zigbee2mqtt/a ... 8.3.tar.gz gibt es die alten Sourcen, die Datei entpackst Du mittels tar xf 1.18.3.tar.gz (tar sollte automatisch die notwendigen Tools wie gunzip nutzen) Es entsteht ein Verzeichnis, welches weitgehend dem entsprechen sollte, welches Du auch per git geklont hast. Du musst nun nur das Verzeichnis (oder evtl. auch ein darin enthaltenes Unterverzeichnis... da musst Du halt zunächst auf den Inhalt schauen) so verschieben, dass es den Platz von /opt/zigbee2mqtt einnimmt. Du könntest z.B. zunächst ein rename machen:

Code: Alles auswählen

sudo mv /opt/zigbee2mqtt /opt/zigbee2mqtt_1.24.0
anschließend die "alte" Version nach /opt/zigbee2mqtt_1.18.3 verschieben und zum Schluss ein

Code: Alles auswählen

sudo ln -s /opt/zigbee2mqtt_1.18.3 /opt/zigbee2mqtt
So behältst Du beide Versionen. Du kannst sogar beliebig viele Versionen aufheben und einfach nur den symbolischen Link neu setzen, um zwischen den Versionen umzuschalten (natürlich immer vorher den Dienst stoppen...)
Gehe zur vollständigen Antwort
Servus

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

Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich

Beitrag von udo1toni »

Hast Du mal einen Blick ins zigbee2mqtt Protokoll geworfen? Ich nutze selbst kein zigbee, aber ein Blick in github zeigt eine große Menge offener Issues mit dem Label Bug.

Ob Du eine ältere Version von zigbee2mqtt aufspielen kannst, kommt auf die Art der Installation an, da müsste man einen Blick in die Skripte werfen, um zu sehen, wie openHABian da installiert. Weiterhin muss man dann schauen, ob man an die ältere Version auf dem gleichen Weg ran kommt. Im schlimmsten Fall müsste man zigbee2mqtt komplett deinstallieren und anschließend auf alternativem Weg installieren.

Oder Du schaust direkt bei zigbee2mqtt, ob es dort im Forum schon irgendwelche Tipps gibt. Du wirst ja nicht der Einzige mit Problemen sein...
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Quautiputzli
Beiträge: 317
Registriert: 29. Okt 2020 19:53
Answers: 2

Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich

Beitrag von Quautiputzli »

Ja, ich bin nicht der Einzige mit dem Problem. Ich hab hierzu auch einen Issue gefunden, aber da bewegt sich nicht viel:
https://github.com/Koenkk/zigbee2mqtt/issues/9523


Installiert habe ich es so:

Code: Alles auswählen

sudo curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs git make g++ gcc
----------------------
mkdir /opt/zigbee2mqtt
sudo git clone https://github.com/Koenkk/zigbee2mqtt.git /opt/zigbee2mqtt
sudo chown -R openhabian:openhabian /opt/zigbee2mqtt
-----------------------
cd /opt/zigbee2mqtt
npm ci
So wie ich das sehe wurde das nur in einen Ordner kopiert und von dort aus installiert. Das nodejs dürfte ja gleich sein.
Servus

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

Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich

Beitrag von udo1toni »

Ja gut, dann musst Du ja nur statt git zu nutzen, das alte Paket herunter laden un in das entsprechende Verzeichnis packen. hier: https://github.com/Koenkk/zigbee2mqtt/a ... 8.3.tar.gz gibt es die alten Sourcen, die Datei entpackst Du mittels tar xf 1.18.3.tar.gz (tar sollte automatisch die notwendigen Tools wie gunzip nutzen) Es entsteht ein Verzeichnis, welches weitgehend dem entsprechen sollte, welches Du auch per git geklont hast. Du musst nun nur das Verzeichnis (oder evtl. auch ein darin enthaltenes Unterverzeichnis... da musst Du halt zunächst auf den Inhalt schauen) so verschieben, dass es den Platz von /opt/zigbee2mqtt einnimmt. Du könntest z.B. zunächst ein rename machen:

Code: Alles auswählen

sudo mv /opt/zigbee2mqtt /opt/zigbee2mqtt_1.24.0
anschließend die "alte" Version nach /opt/zigbee2mqtt_1.18.3 verschieben und zum Schluss ein

Code: Alles auswählen

sudo ln -s /opt/zigbee2mqtt_1.18.3 /opt/zigbee2mqtt
So behältst Du beide Versionen. Du kannst sogar beliebig viele Versionen aufheben und einfach nur den symbolischen Link neu setzen, um zwischen den Versionen umzuschalten (natürlich immer vorher den Dienst stoppen...)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Quautiputzli
Beiträge: 317
Registriert: 29. Okt 2020 19:53
Answers: 2

Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich

Beitrag von Quautiputzli »

Und was ist mit dem Befehl:

Code: Alles auswählen

npm ci
Muss der dann im "neuen Ordner" auch ausgeführt werden?
Servus

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

Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich

Beitrag von udo1toni »

Davon gehe ich aus. npm ist eine Software Registry, also vermutlich sowas ähnliches wie eine Paketverwaltung.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Quautiputzli
Beiträge: 317
Registriert: 29. Okt 2020 19:53
Answers: 2

Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich

Beitrag von Quautiputzli »

Habs nun genauso gemacht wie von dir beschrieben, incl. dem "npm ci"

Es funktioniert, ich hab nun wieder die alte Version drauf, bei der es das Problem nicht gibt. Die neue funktioniert auch noch, mit ändern der Verknüpfung. Man muss aber die alte Verknüpfung erst löschen. Überschreiben hat nicht funktioniert.
Servus

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

Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich

Beitrag von udo1toni »

Quautiputzli hat geschrieben: 27. Mär 2022 11:25 Die neue funktioniert auch noch, mit ändern der Verknüpfung. Man muss aber die alte Verknüpfung erst löschen. Überschreiben hat nicht funktioniert.
Ja, hätte ich vielleicht noch erwähnen sollen. Das Ziel eines Links kann nicht geändert werden. Man kann nur den Namen des Links ändern.
Soll der Link auf ein anderes Ziel zeigen, so muss der Link gelöscht und neu angelegt werden.
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Quautiputzli
Beiträge: 317
Registriert: 29. Okt 2020 19:53
Answers: 2

Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich

Beitrag von Quautiputzli »

Leider funktioniert auch bei den neueren Versionen von zigbee2mqtt das HSB format in Verbindung mit Phillips Lampen nicht.
Jedoch würde ich für andere Devices gerne auf eine neuere Version gehen. Ich hab mal mit mqtt.fx etwas rumgespielt, um zu sehen was man machen kann.

Bei:

Code: Alles auswählen

{"color":{"hsv":"360,100,100"}}
wird der letzte Wert irgendwie falsch ausgewertet. Die Helligkeit lässt sich nicht ändern.

Bei:

Code: Alles auswählen

{"color":{"hsv":"360,100"},"brightness":254}
würde es wunderbar funktionieren.

Aber wie bekomme ich das so ins openHAB integriert? Den Wert für die Brightness muss dann ja mit 2,54 mulitpliziert werden, das habe ich auch schon im Einsatz, dort wo ich nur die Helligkeit verstelle, mit folgendem JS:

Code: Alles auswählen

(function(x) {
    var result = "";
    result=x*2.54;
    return result;
})(input)
Aber nun muss ich das wohl erst splitten, dann den dritten Wert multiplizieren, und dann wieder zusammensetzten. Wie funktioniert so etwas?
Servus

Quautiputzli
Beiträge: 317
Registriert: 29. Okt 2020 19:53
Answers: 2

Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich

Beitrag von Quautiputzli »

Ich hab mir nun folgendes Javascript gebaselt:

Code: Alles auswählen

(function(string) {
    var myval = string.split(",");
    return '{"color":{"hue":"' + myval[0] + '","saturation":"' + myval[1] + '"},"brightness":"' + myval[2]*2.54 + '","transition":0.2}';
})(input)
Lässt sich zumindest mit der zigbee2mqtt version 1.18.3 ansteuern. Die neue Version muss ich erst testen, sollte aber gehen.

Etwas komisch ist, dass man mit einem Toggle Widget nur ausschalten kann, und nicht einschalten. Ich hab folgende Befehle im Scratchpad ausprobiert:

Code: Alles auswählen

GF_Office_Light.sendCommand(ON)
GF_Office_Light.sendCommand(OFF)
GF_Office_Light.sendCommand(0)
GF_Office_Light.sendCommand(100)
Die funktionieren alle. Nur über das Widget "ON" funktioniert nicht. Steht auch gar nicht im log dazu, nichtmal mit loglevel TRACE.
Naja, nicht so schlimm. Soweit ich weiß, schicke ich nie den Befehl "ON", nur über die Main-UI.
Servus

Antworten