NEWS
Blocky Beleuchtung mit externen Schalter
-
Hallo,
ich habe als Beleuchtung, bei mir in der Wohnung das Tradfri system von IKEA.
Da hätten wir 2 Deckenleuchten, 7 GU lampen und 2 E14 Birnen.
Ich wollte mir über Blocky verschiedene Stimmungen realiesieren, das funktioniert auch.
Im vis habe ich eine Glühlampen Widget genommen und wenn ich da drauf Drücke geht die Stimmung an und das VIS Widget leuchtet.
Das problem was ich habe ist wenn ich nun die Tradfri lampen mit der Fernbedienung ändere bekommt das die Stimmung nicht mit und im VIS leuchtet das Widget weiter obwohl ja die stimmung aus.
Okay habe ich mir gedacht ich muss einfach eine Abfrage schreiben wenn sich was ändert an der stimmung soll er die ID auf false setzen nur leider macht er das nicht, und ich finde mein Denk fehler nicht.
Momentan läuft es so ich setze gemuetlich auf true, und id_gemutlich springt kurz auf true und dann sofort wieder auf false.
Es müßte aber auf true bleiben.
Hier mal mein Blocky
! ````
<block xmlns="http://www.w3.org/1999/xhtml" type="controls_if" id="5h+EE:?n6rQ=3YN2Fqar" x="113" y="1254"><value name="IF0"><block type="logic_operation" id="Z.Y!jL=OB0XL/)B}II;s" inline="false"><field name="OP">OR</field>
<value name="A"><block type="logic_compare" id="{9_(qMk,(kIzEM@vn8b"><field name="OP">EQ</field>
<value name="A"><block type="get_value" id="(]Hy{PF=_)QMQcm:l9xl"><field name="ATTR">val</field>
<field name="OID">tradfri.0.L-65544.lightbulb.state</field></block></value>
<value name="B"><block type="logic_boolean" id="-8U!.FQDEIFyzV*;UU~"><field name="BOOL">FALSE</field></block></value></block></value>
<value name="B"><block type="logic_compare" id="X*PB]GD:6=XlEYrBUdGv"><field name="OP">EQ</field>
<value name="A"><block type="get_value" id="uuINfR;+11J7JmRO
87"><field name="ATTR">val</field>
<field name="OID">tradfri.0.L-65545.lightbulb.state</field></block></value>
<value name="B"><block type="logic_boolean" id="G%feml%gq(X`eVml:3}E"><field name="BOOL">FALSE</field></block></value></block></value></block></value>
<statement name="DO0"><block type="control" id="fIq@c[5]UEBaYaeI%(#T"><mutation delay_input="true"></mutation>
<field name="OID">javascript.0.beleuchtung.id_gemuetlich</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">100</field>
<field name="UNIT">ms</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE"><block type="logic_boolean" id="}r2%8gCf{F?TT(9R|hBI"><field name="BOOL">FALSE</field></block></value></block></statement></block>wäre super wenn einer eine idee hat gruß
-
> Momentan läuft es so ich setze gemuetlich auf true, und id_gemutlich springt kurz auf true und dann sofort wieder auf false.
Dein Script macht aber etwas anderes, als das was du beschreibst.Du setzt es auf 0, oder verstehe ich nur nicht was genau du willst?
id_gemutlich ist immer 0 sobald eine deiner Bedingungen 0 ist.
-
Ich hole mal etwas mehr aus,
und zwar habe ich mir ein Vis erstellt welches ich durch durch drücken einzelner Buttons von mir programmierten Stimmungen, An bzw Ausschaltet.
Wenn ich nun Manuel per Fernbedienung z.b. die helligkeit ändere bekommt das momentan mein VIS nicht mit und der Button bleibt auch An stehen obwohl diese Stimmung ja nicht mehr ist.
Und da habe ich ein denk Fehler wie das realisieren kann.
Das problem was ich mit meinem Programm habe das, das Blocky Programm wahrscheinlich schneller Durchläuft als das die Tradfri Datenpunkte aktualisiert sind, also denkt der Blocky Script es ist immer noch False und schaltet sofort wieder False ein.
Also sehr unsauber Programmiert