Switch2Toggle
Verfasst: 20. Jul 2018 08:04
Hallo,
Ich habe einen Westinghouse Deckenventilator(IR), den ich mit einer Logitech Harmony ansteuere.
Dieser Ventilator hat auch eine Lampe, für die es auch einen IR Befehl (LightToggle) gibt.
Ziel ist es nun die Lampe Alexa-Konform als "Switchable" einzubinden und den Ventilator als "Lighting" zu dimmen (auch wenn er eigendlich nur die vier Stufen "PowerOff", "FanLow", FanMed und "FanHigh" kennt.
my.items
my.rules
a) Die Idee bei Rule "Schlafzimmer_Swich2Toogle" ist, dass 'Item SchlafzimmerDecke changed' immer nur feuert, wenn von ON nach OFF gewechselt wird, nicht aber bei zwei aufeinander folgenden "ON" oder zweimal "OFF", so dass aus dem Toggle ein Switch wird.
b) Die Idee bei "Ventilator_Dimming" ist die Dimmwerte 0..100 den verschiedenen Stufen des Ventilators zuzuordnen.
Problem a) : auch bei aufeinander folgenden "ON" Befehlen wird jedes mal geschaltet
Problem c) : wenn der Ventilator eingeschaltet wird startrt er immer mit 100%, nicht mit dem letzen Dimmwert.
Gruß
Neuroplant
Ich habe einen Westinghouse Deckenventilator(IR), den ich mit einer Logitech Harmony ansteuere.
Dieser Ventilator hat auch eine Lampe, für die es auch einen IR Befehl (LightToggle) gibt.
Ziel ist es nun die Lampe Alexa-Konform als "Switchable" einzubinden und den Ventilator als "Lighting" zu dimmen (auch wenn er eigendlich nur die vier Stufen "PowerOff", "FanLow", FanMed und "FanHigh" kennt.
my.items
Code: Alles auswählen
Switch SchlafzimmerDecke "Schlafzimmerlicht" <light> (gLights) ["Switchable"]
Dimmer Vent_DIM "Ventilator" <fan_ceiling> (gDevices) ["Lighting"]
String VentilatorCom {harmonyhub="harmonyhub:device:HarmonyHub:47393679:buttonPress"}
Code: Alles auswählen
rule "Schlafzimmer_Swich2Toogle"
when
Item SchlafzimmerDecke changed
then
VentilatorCom.sendCommand( "LightToggle" )
end
rule "Ventilator_Dimming"
when
Item Vent_DIM changed
then
if ( Vent_DIM.state == 0 ) {VentilatorCom.sendCommand("PowerOff")}
if ( Vent_DIM.state > 0 && Vent_DIM.state <= 33 ) {VentilatorComsendCommand("FanLow")}
if ( Vent_DIM.state > 33 && Vent_DIM.state <= 66 ) {VentilatorCom.sendCommand("FanMed")}
if ( Vent_DIM.state > 66 ) {VentilatorCom.sendCommand("FanHigh")}
end
b) Die Idee bei "Ventilator_Dimming" ist die Dimmwerte 0..100 den verschiedenen Stufen des Ventilators zuzuordnen.
Problem a) : auch bei aufeinander folgenden "ON" Befehlen wird jedes mal geschaltet
Problem c) : wenn der Ventilator eingeschaltet wird startrt er immer mit 100%, nicht mit dem letzen Dimmwert.
Gruß
Neuroplant