Seite 1 von 1
neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich
Verfasst: 22. Mär 2022 07:45
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?
Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich
Verfasst: 22. Mär 2022 14:24
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...
Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich
Verfasst: 23. Mär 2022 07:35
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.
Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich
Verfasst: 23. Mär 2022 10:49
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:
anschließend die "alte" Version nach /opt/zigbee2mqtt_1.18.3 verschieben und zum Schluss ein
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...)
Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich
Verfasst: 23. Mär 2022 13:31
von Quautiputzli
Und was ist mit dem Befehl:
Muss der dann im "neuen Ordner" auch ausgeführt werden?
Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich
Verfasst: 23. Mär 2022 20:11
von udo1toni
Davon gehe ich aus. npm ist eine Software Registry, also vermutlich sowas ähnliches wie eine Paketverwaltung.
Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich
Verfasst: 27. Mär 2022 11:25
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.
Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich
Verfasst: 27. Mär 2022 12:33
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.
Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich
Verfasst: 27. Sep 2022 15:59
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:
wird der letzte Wert irgendwie falsch ausgewertet. Die Helligkeit lässt sich nicht ändern.
Bei:
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?
Re: neue Version zigbee2mqtt - HSB bei Phillips HUE nicht möglich
Verfasst: 28. Sep 2022 18:24
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.