NEWS
Tasmota Birnen mit Philips Hue Dimming Switch verbinden?
-
Guten Morgen,
ich habe hier ein Philips Hue Dimming Switch/Schalter und würde diesen gerne mit den geflashten ESP8266 China/-Birnen verwenden bzw. verbinden.
ich habe jetzt die ganzen Birnen/Lampen mit Tasmota geflasht und diese über MQTT (Sonoff Adapter) auch in IoBroker eingebunden. (objects sind da im IoBroker)
Der Philips Hue Dimming Switch/Schalter + Bridge ist auch in IoBroker (Hue Adapter) und NodeRed (Adapter) eingebunden.
Über Alexa werden mit dem Node-Red Script die Birnen auch gefunden und funktionieren ebenfalls. (da reicht aber eigentlich schon der Tasmota Flash dafür)
Die Frage ist jetzt aber wie ich die Birnen mit dem Philips Hue Dimming Switch/Schalter verbinde/kombiniere
Also wenn ich bei dem Philips Hue Dimming Switch/Schalter oben auf "an“ klicke, sollen die 3 Birnen an gehen und wenn ich auf "aus" klicke, sollen die 3 aus gehen. Ansonsten hat der Schalter ja noch die Funktion die Helligkeit des Lichts zu erhöhen, oder zu verringern, also dimmen.
/edit
ich wollte gerade folgendes nachgehen: https://forum.iobroker.net/topic/10476/alexa-anbindung-ohne-cloud-und-skillZusammengefasst, ich will 3 Tasmota Birnen über ein Philips Hue Dimmschalter steuern in Node-Red oder auch sonst wo.
Ich habe das schon bereits mit den Sonoff sowie Philips Hue Extended Adapter Datenpunkten/objects geschafft, jedoch gibt es dort eine Verzögerung von 6-7 Sekunden. Die Datenpunkte/objects habe ich vom Philips Hue Extended Adapter für den Dimmschalter.
Ich habe die 3 Datenpunkte wie folgt erstellt:
Node-Red sowie Philips Hue Magic installiert.
Schritt 4 verstehe ich nicht, bzw. wie man so ein "Music/Cinema" Tab erstellt und wofür das gut sein soll bzw. man das machen muss? Also das hier:
Schritt 5 (Philips Hue Bridge hinzugefügt, Dimmschalter etc.) und folgende habe ich alle.
Sieht nun so aus:
Jetzt habe ich noch die Datenpunkte/objects von den Tasmota Birnen durch den Sonoff Adapter (MQTT?), wie verbinde ich diese nun mit dem Schalter bzw. schaffe es, das keine extreme Verzögerung auftritt? (entweder direkt in Node-Red oder auch sonst wo)
So habe ich das in Blocky aktuell mit starker Verzögerung (6-7 Sekunden)
Kann mir da jemand bitte helfen? Bin da schon seit Tagen dran mit dem dämlichen Schalter und den Birnen ^^
-
@BlackRed push
-
@BlackRed
Kann man noch etwas besser einbinden
Habe so auch die Ikea Lampe Eingebunden
Gruss -
Ehrlich gesagt verstehe ich nicht - warum Du Blockly brauchst - wenn Du Node-RED hast und Du auf Node-RED wohl nicht verzichten kannst wegen Alexa.
Warum nimmst Du nicht die Tasmota Datenpunkte in Node-Red auf und schaltest damit Deine Birnen direkt - warum braucht es da ein Blockly.? -
@tvonall sagte in Tasmota Birnen mit Philips Hue Dimming Switch verbinden?:
@BlackRed
Kann man noch etwas besser einbinden
Habe so auch die Ikea Lampe Eingebunden
GrussDanke, ist schon fast 1 Monat her, habe es aktuell wie unten angehängt
@mickym sagte in Tasmota Birnen mit Philips Hue Dimming Switch verbinden?:
Ehrlich gesagt verstehe ich nicht - warum Du Blockly brauchst - wenn Du Node-RED hast und Du auf Node-RED wohl nicht verzichten kannst wegen Alexa.
Warum nimmst Du nicht die Tasmota Datenpunkte in Node-Red auf und schaltest damit Deine Birnen direkt - warum braucht es da ein Blockly.?, weil ich es direkt in Node-Red nicht verstanden bzw hinbekommen habe. In Verbindung zusammen geht es so.
Aktuell habe ich es so wie unten angehängt
-
@BlackRed
Ich weiß zwar nicht was Du nicht hinbekommen hast - im Moment nutzt Du irgendeinen Datenpunkt unter javascript.0 als trigger. Der ist aber sicher nicht orgniär von Deinem Hue Switch - aber egal - irgendwie beschreibst Du den.Du kannst auch diesen Punkt als Trigger in node-red nutzen und den dort weiterverarbeiten.
Wenn Du alle 3 Birnen auch immer gleichzeitig ansteuern willst - kannst Du es auch über Tasmota selbst machen, indem Du über das backlog Kommando alle gewünschten Lampen mit einem Befehl schaltest.
Ich schalte zum Beispiel 2 Lampen direkt über das Backlog Kommando in Tasmota:
tasmota/steckdosenleiste3/cmnd/backlog POWER2 ON;POWER5 ONWichtig wäre halt erst mal einen Datenpunkt von Deinem Switch zu haben, den Du dann in node-red wieder einlesen kannst.
Ist denn der Lichtschalter-Node Dein Hue Switch - warum nimmst Du dieses Signal nicht einfach und schaltest damit direkt Deinen Tasmota Datenpunkt?
-
@mickym sagte in Tasmota Birnen mit Philips Hue Dimming Switch verbinden?:
@BlackRed
Ich weiß zwar nicht was Du nicht hinbekommen hast - im Moment nutzt Du irgendeinen Datenpunkt unter javascript.0 als trigger. Der ist aber sicher nicht orgniär von Deinem Hue Switch - aber egal - irgendwie beschreibst Du den.Du kannst auch diesen Punkt als Trigger in node-red nutzen und den dort weiterverarbeiten.
Wenn Du alle 3 Birnen auch immer gleichzeitig ansteuern willst - kannst Du es auch über Tasmota selbst machen, indem Du über das backlog Kommando alle gewünschten Lampen mit einem Befehl schaltest.
Ich schalte zum Beispiel 2 Lampen direkt über das Backlog Kommando in Tasmota:
tasmota/steckdosenleiste3/cmnd/backlog POWER2 ON;POWER5 ONWichtig wäre halt erst mal einen Datenpunkt von Deinem Switch zu haben, den Du dann in node-red wieder einlesen kannst.
Ist denn der Lichtschalter-Node Dein Hue Switch - warum nimmst Du dieses Signal nicht einfach und schaltest damit direkt Deinen Tasmota Datenpunkt?
Ja, ich habe das hier gemacht: https://forum.iobroker.net/topic/13213/how-to-hue-dimmer-schalter-alle-tastendrücke-einfach-auswerten?page=1
Ich habe 3 selbst erstellte Datenpunkte, Name, Action und wann er zuletzt aktualisiert wurde.
Damit reagiert der Philips Hue Dimming Switch schneller als mit dem Philips Hue Adaptern (dort sind auch Datenpunkte vom Schalter hinterlegt)Ich kann ja den Schalter nicht einfach mit den Tasmota Birnen verbinden in der Hue App, ist ja Zigbee + WLAN bzw. Hue Schalter und China Birnen.
Ja, es werden immer alle 3 Birnen gleichzeitig an und aus geschaltet
Backlog Kommando? Wie setzt man das um bzw. integriert das Ganze miteinander?
Von dem Philips Hue Dimming Switch habe ich ja den an und aus Datenpunkt selber erstellt in Node-Red.
Ja, ist es, es geht aber nicht einfach so wie es sein soll, bei dem Bild hier unten geht das Ganze nur an, nicht aus und auch immer nur 1-2 und nicht alle 3.
Bei IoBroker habe ich ja den Sonoff Adapter für Tasmota.
-
@BlackRed
Also was ich da sehen konnte ist mE alles etwas unnötig. Diese 3 Datenpunkte aus dem Node-Red wurden nur erstellt, weil die msg.payload ein Objekt und keine einzelne Werte zurück gegeben hat. Aber dazu ggf. später.
Was ich noch nicht ganz verstehe - wozu Du den SONOFF Adapter brauchst - simuliert Dir der wohl den MQTT Broker.
Ich bin ehrlich gesagt kein Freund der verschiedenen Adapter - wenn man MQTT nutzt. Warum? Weil die Doku meist mangelhaft ist. Tasmota hat eine fixe Struktur - cmnd, stat und tele
Dann lieber mit MQTT der Geräte und dann einen MQTT Broker mit den Infos bestücken und diese dann über den MQTT-Adapter in iobroker auswerten - so mache ich es - aber Du musst jetzt nicht alles gleich umschmeissen.
Nur zu meinem Hintergrund. Ich steuere alles über Node-RED, habe zwar kein HUE - aber ansonsten auch einige Geräte über TASMOTA geflasht - steuere die aber direkt über MQTT an. Aber das sieht mir alles nicht nach Hexenwerk aus.
Gut - aber das was Du nun nachträglich gepostet hast - das kann sein, dass das ein Timing Problem ist.
Konzentrieren wir uns doch erst mal darauf ein Lampe über den Schalter ein und aus zuschalten.
Bei dem letzen Bild sagtest Du du kannst nur ein und nicht aus schalten.
Kannst Du mal eine Debug Node hinter Deinen Schalter Node machen und dann das komplette msg Objekt einmal beim Ein- und bei Ausschalten zu posten?
-
@BlackRed Im Prinzip müsstest Du ja die Lampen ganz einfach direkt aus NodeRed erst mal schalten, indem Du statt dem Schalter eine Inject Node nimmst und schaust, ob das tut.
Nimm mal eine Inject Node und probiere mal mit "false" und "true" erst mal als Boolean Deine 3 iobroker-outs (also Deine 3 WLAN Lampen TASMOTA) zu bestücken.
Also in etwas so - und schau ob Du nun alle 3 Lampen schalten kannst.
SInd diese Lampen eigentlich 3 physisch getrennte Geräte (so sieht es für mich aus), die mit Tasmota geflasht wurden oder ist das 1 Gerät mit 3 Kanälen für die Lampen?
Falls Du nicht genau was ich meine exportiere mal die 3 Nodes und stelle den Code hier ein.
-
@mickym Ja, der ist für die MQTT Verbindung. Funktioniert aber alles
Also die gehen jetzt alle 3 so an, aber wenn ich auf an oder aus klicke gehen die immer nur an, aber nicht aus.
https://forum.iobroker.net/assets/uploads/files/1593811181721-ht.jpg
-
@BlackRed Wie gesagt - implementiere mal die Inject Nodes wie im letzten Posting beschrieben und schalte die Lampen mal direkt aus NodeRed
-
Ja, also so gehen sie direkt bei Node-Red an und aus, wen ich bei true auf dem blauen Kasten drücke, an und bei false aus. Aber am Schalter nur an.
Was meinst du mit physich getrennte?
Sind 3 WLAN Birnen, 1 normale Lampe mit 3 E27 Sockeln.Debug:
4.7.2020, 01:09:15node: 9a3f491a.27ffc8 msg.payload : Object { button: 1002, name: "On", action: "short released", updated: "2020-07-04T01:09:14+02:00" } 4.7.2020, 01:09:18node: 9a3f491a.27ffc8 msg.payload : Object { button: 4002, name: "Off", action: "short released", updated: "2020-07-04T01:09:17+02:00" } 4.7.2020, 01:09:24node: 9a3f491a.27ffc8 msg.payload : Object { button: 4000, name: "Off", action: "pressed", updated: "2020-07-04T01:09:24+02:00" } 4.7.2020, 01:09:30node: 9a3f491a.27ffc8 msg.payload : Object { button: 1002, name: "On", action: "short released", updated: "2020-07-04T01:09:30+02:00" } 4.7.2020, 01:09:34node: 9a3f491a.27ffc8 msg.payload : Object { button: 4002, name: "Off", action: "short released", updated: "2020-07-04T01:09:33+02:00" } 4.7.2020, 01:09:43node: 9a3f491a.27ffc8 msg.payload : Object { button: 4002, name: "Off", action: "short released", updated: "2020-07-04T01:09:43+02:00" } 4.7.2020, 01:09:52node: 9a3f491a.27ffc8 msg.payload : Object { button: 1002, name: "On", action: "short released", updated: "2020-07-04T01:09:49+02:00" }
-
@BlackRed Na das ist doch schon mal super, dass Du die Lampen mit den Inject-Nodes so schalten kannst. Dann kann das ganze nicht mehr so schwer sein.
Nee - ich habe es falsch verstanden - ich habe noch 2 kurze Fragen und dann sollten wir der Lösung nahe sein.
-
Ahso, short released ist immer das "normale" kurze drücken:
4.7.2020, 01:35:34node: a2f878b7.c79b38 msg.payload : Object object button: 1002 name: "On" action: "short released" updated: "2020-07-04T01:35:32+02:00" 4.7.2020, 01:35:37node: a2f878b7.c79b38 msg.payload : Object object button: 4002 name: "Off" action: "short released" updated: "2020-07-04T01:35:35+02:00"
-
@BlackRed So mal Quick and Dirty:
Importiere mal diesen Change Node:
[ { "id": "a8adb5fa.eb8ac8", "type": "change", "z": "6e170384.60c96c", "name": "Change translate", "rules": [ { "t": "change", "p": "payload.name", "pt": "msg", "from": "On", "fromt": "str", "to": "true", "tot": "bool" }, { "t": "change", "p": "payload.name", "pt": "msg", "from": "Off", "fromt": "str", "to": "false", "tot": "bool" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 900, "y": 4860, "wires": [ [] ] } ]
und klemme ihn zwischen Deinen Schalter und Deinen Lampen
ggf. muss man dann noch nach dem ShortReleased filtern - aber schau erst mal ob es so funktioniert.
-
@mickym Geht wieder nur an bei an und aus
-
@BlackRed Dann mach mal eine Debug Node hinter den Change Node und beschreib was bei welchem Druck was rauskommt
-
4.7.2020, 01:44:30node: 9ca802cc.1227 msg.payload : Object object button: 1002 name: true action: "short released" updated: "2020-07-04T01:44:29+02:00" 4.7.2020, 01:44:36node: 9ca802cc.1227 msg.payload : Object object button: 4002 name: false action: "short released" updated: "2020-07-04T01:44:34+02:00"
-
@BlackRed Ich habe den Fehler schon - habe es selbst nachvollzogen
-
Hier den geänderten Change Node :
[ { "id": "a8adb5fa.eb8ac8", "type": "change", "z": "6e170384.60c96c", "name": "Change translate", "rules": [ { "t": "change", "p": "payload.name", "pt": "msg", "from": "On", "fromt": "str", "to": "true", "tot": "bool" }, { "t": "change", "p": "payload.name", "pt": "msg", "from": "Off", "fromt": "str", "to": "false", "tot": "bool" }, { "t": "set", "p": "payload", "pt": "msg", "to": "payload.name", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 1010, "y": 4900, "wires": [ [ "e3d53e05.e51a6" ] ] } ]