NEWS
Shelly1 und Zigbee Leuchten
-
Hallo Zusammen ich habe ein Problem und weiß leider nicht so richtig wie ich anfangen soll.
Ich habe im Schlafzimmer Deckenspots eingebaut und diese mit Tradfri Leuchtmittel ausgestattet. Der Schalter im Schlafzimmer ist eine Ausschaltung und es ist ein Shelly1 verbaut. Diesen kann ich bereits ohne Probleme schalten.
Nun möchte ich wenn ich Alexa sage, dass er/sie/es das Licht einschalten soll, dass der Shelly quasi die Freigabe gibt und das Licht eingeschaltet wird. Schwierigkeit hierbei dazukommend, dass ich z.B. ein Gerät im iot Adapter anlege, dass "Schlafzimmer Licht 40%" heißt. und das Licht auf 40% einschalten soll. Ähnlich verhält es sich in der VIS.
Vielleicht hat jemand ein fertiges Script oder eine Idee? Danke im Voraus
-
@overfl0w
Du willst die Tradfri Lampen mit dem Shelly schalten?
Daversteh ich gerade denn Sinn nicht. Die lassen sich doch direkt schalten und somit ist doch der Shelly überflüssig. Oder soll der Shelly quasi nur der Wandschalter für die Tradfri sein? Dann ein DP im IoT anlegen der "nur" 40% fest steuert, ist auch etwas verwirrend. Leg doch den DP im IoT an, den Du mit % füttern kannst, dann kannst per Sprache jeden Wert vorgeben der gerade gewünscht ist.
Also entweder ich versteh nicht was hier überhaupt gemacht werden soll, oder Dein Denkansatz ist recht umständlich. -
@overfl0w sagte in Shelly1 und Zigbee Leuchten:
Ich habe im Schlafzimmer Deckenspots eingebaut und diese mit Tradfri Leuchtmittel ausgestattet. Der Schalter im Schlafzimmer ist eine Ausschaltung und es ist ein Shelly1 verbaut. Diesen kann ich bereits ohne Probleme schalten.
Das ist eine Einladung für Probleme. Die Trådfri werden sich nicht auf Dauer stabil mit dem Zigbee Gateway verbinden, wenn sie durch den Shelly die meiste Zeit ausgeschaltet sind. Hier ist mit 5 bis 60 Sekunden Versatz zu rechnen bis die Helligkeit via Zigbee gesteuert werden kann. An gehen werden sie immer mit 100% wenn der Shelly einschaltet.
Meine Idee: Nimm den Shelly raus (immer fest an) und steuere die Datenpunkte "on" und "bri" direkt.
Frage dazu: Wie ist die Lampe im ioBroker eingebunden ? über zigbee-stick / Hue gateway / Ikea gateway / deConz Gateway ?
A.
-
@overfl0w Ich habe für Hue ein Skript, dass das für mich erledigt, evtl. tuts das auch mit den Ikea Leuchtmitteln
// Program shellyHelper /* * @author Moritz Heusinger <moritz.heusinger@gmail.com> * When Shelly for ceiling floor is turned on/off, turn Hue Light on/off too. */ const logging = true; const shellyId = `shelly.0.SHSW-1#2C720F#1.Relay0.Switch`; const hueId = `hue.0.Moes_Hue_Bridge.WZ_Indirekte_Beleuchtung`; // when shelly is turned off ensure light is turned off too on({id: shellyId, val: false, change: `any`, ack: true}, obj => { setState(`${hueId}.on`, false, false); log(`Turn ceiling hue light off, because set off by Shelly relay`, `info`); }); // when level is changed from zero to another value, ensure shelly is on and set level again on({id: `${hueId}.level`, change: `ne`, oldVal: 0}, obj => { if (getState(shellyId).val !== true) { setState(shellyId, true, false); setState(`${hueId}.level`, obj.state.val, false); log(`Turned shelly on, because ceiling hue floor has been turned on`, `info`); } // endIf }); // turn shelly off with hue if not happened on({id: `${hueId}.level`, change: `ne`, val: 0}, obj => { if (getState(shellyId).val !== false) { setState(shellyId, false, false); log(`Turned shelly off, because living room ceiling hue floor has been turned off`, `info`); } // endIf });
-
Wow, vielen Dank erstmal für die schnellen Antworten. Echt eine tolle Community!
Hier mal versucht darzustellen:
Grundsätzlich geht es mir darum, dann wenn der Schalter im Schlafzimmer auf aus steht, ich die Leuchten mit Alexa schalten kann ohne den Lichtschalter einzuschalten. Das mit dem Dimmen ist nicht vorrangig und habe ich vllt. falsch ausgedrückt.
@foxriver76 Danke für dein Script, da ich mit Scripts nicht so bewandert bin, kurze Frage,, das ist nen Java Script richtig?
Ich müsste dies einfach anlegen und die const ändern?@Asgothian Eingebunden über den Zigbee Stick. Würde es etwas bringen, wenn ich einen cc2530 in die Nähe bringe?
Danke euch im Voraus
-
@overfl0w Ja, es ist ein Javascript Skript
Also für den Shelly einfach den Datenpunkt für den Switch angeben, bei deiner Lampe müsstest du checken welche Datenpunkte es da gibt. Das Skript nimmt die ID der Lampe und nutzt dann LampenId.on und LampenId.level, insofern diese Objekte bei dir auch funktionieren sollte es passen. Allerdings keine Garantie, dass sich deine Leuchtmittel genauso Verhalten. Meine sind über eine Hue Bridge eingebunden.
-
@foxriver76 Kriege ich schon hin
Sobald ich Zuhause bin teste ich das und sage Bescheid ob es geklappt hat oder nicht. -
Noch eine Frage:
hueId
müsste ich höchswarschl. gegen irgendeinen Wert des Zigbeeadapters oder so ebenfalls wechseln oder?
-
@overfl0w Ja, eben der Datenpunkt deines Leuchtmittels. Sozusagen der Punkt der als Ordnersymbol angezeigt wird.
-
Quasi?
Ah ich Idiot.. du hast ja die Deklaration da oben:
const hueId = `hue.0.Moes_Hue_Bridge.WZ_Indirekte_Beleuchtung`;
Sorryy...
-
@overfl0w Ja genau. jetzt wo ich es sehe, brauchst du es mindestens so:
(level
durchbrightness
ersetzt undon
durchstate
ersetzt.const logging = true; const shellyId = `shelly.0.SHSW-1#2C720F#1.Relay0.Switch`; const hueId = `hue.0.Moes_Hue_Bridge.WZ_Indirekte_Beleuchtung`; // when shelly is turned off ensure light is turned off too on({id: shellyId, val: false, change: `any`, ack: true}, obj => { setState(`${hueId}.state`, false, false); log(`Turn ceiling hue light off, because set off by Shelly relay`, `info`); }); // when level is changed from zero to another value, ensure shelly is on and set level again on({id: `${hueId}.brightness`, change: `ne`, oldVal: 0}, obj => { if (getState(shellyId).val !== true) { setState(shellyId, true, false); setState(`${hueId}.brightness`, obj.state.val, false); log(`Turned shelly on, because ceiling hue floor has been turned on`, `info`); } // endIf }); // turn shelly off with hue if not happened on({id: `${hueId}.brightness`, change: `ne`, val: 0}, obj => { if (getState(shellyId).val !== false) { setState(shellyId, false, false); log(`Turned shelly off, because living room ceiling hue floor has been turned off`, `info`); } // endIf });
Ist das normal, dass bei brightness und state nichts drin steht in deinem Screenshot?
-
@foxriver76 said in Shelly1 und Zigbee Leuchten:
Ist das normal, dass bei brightness und state nichts drin steht in deinem Screenshot?
Denke weil der Shelly aus ist? Danke schonmal für das Script
-
@overfl0w sagte in Shelly1 und Zigbee Leuchten:
@Asgothian Eingebunden über den Zigbee Stick. Würde es etwas bringen, wenn ich einen cc2530 in die Nähe bringe?
Nein. Wenn die Lampen mit Strom versorgt werden gehen sie zunächst an. Dann muss die Verbindung zum Zigbee-Coordinator wieder hergestellt werden. Das geht nicht in 0-Zeit. Je länger eine Lampe keinen Strom hatte desto weniger schnell scheint dieses zu gehen.
-
@Asgothian sagte in Shelly1 und Zigbee Leuchten:
@overfl0w sagte in Shelly1 und Zigbee Leuchten:
@Asgothian Eingebunden über den Zigbee Stick. Würde es etwas bringen, wenn ich einen cc2530 in die Nähe bringe?
Nein. Wenn die Lampen mit Strom versorgt werden gehen sie zunächst an. Dann muss die Verbindung zum Zigbee-Coordinator wieder hergestellt werden. Das geht nicht in 0-Zeit. Je länger eine Lampe keinen Strom hatte desto weniger schnell scheint dieses zu gehen.
Wenn das so ist, wird das mit dem Skript vermutlich nichts. Alternative wäre du versorgst deine Lampe mit Dauerstrom und sagst, lässt Shelly Output leer und sagst wenn der Taster gedrückt wird, schalte die Zigbee Lampe an. Nachteil -> ioB/Javascript Instanz Ausfall -> Lichtschalter unnütz.
-
Wie ist denn hier die Empfehlung bei solchem Szenario? Ich habe auch eine Zigbee Deckenlampe die ich sowohl über iobroker als auch über den Wandschalter schalten möchte. Bleibt doch eigentlich nur die Variante mit dem Shelly 1 und die Deckenlampe auf Dauerstrom oder? Was mach ich dann wenn iobroker nicht funktionieren sollte? Muss ich dann zum Schaltkasten um die Lampe auszuschalten?
-
@watcherkb sagte in Shelly1 und Zigbee Leuchten:
Was mach ich dann wenn iobroker nicht funktionieren sollte?
Warum sollte der Fall eintreten?
-
@Jan1 im Normalfall natürlich nicht, aber kann schon mal passieren, oder?
-
@watcherkb
Könnte bei einem Stromausfall passieren, wobei dann is eh dunkel
Ich habe bei mir einige Lampen, die nicht mehr direkt über Verkabelung geschaltet werden und mein IOBroker läuft nun auch schon um die zwei Jahre, bisher noch keine Probleme damit gehabt. -
@Jan1 also machst du das genauso? Lampe auf Dauerstrom und Shelly hinter Schalter?
-
@watcherkb
Ja habe ich und am Shelly ein virtuelles Relais, damit das HW Relais nicht mehr schaltet, spart Strom und klackert nicht mehr.
Hab auch noch ein paar Lampen, die nur über Alexa geschaltet werden und selbst die laufen immer so wie sie sollen, trotz Cloud Anbindung.