Erste Schritte mit Node-Blue / Bewegungsmelder & Licht

Ich habe mal testweise versucht, meine zeitkritischsten Rules von openHAB nach Node-Blue umzusetzen.

Es geht um nichts weiteres, als eine simple Bewegungsmelder-Licht-Steuerung. Sobald Bewegung gemeldet wird, soll das Licht angehen und x Minuten nach der letzten Bewegung wieder ausgehen. Es sind zwei Homematic-Bewegungsmelder, 1 Xiaomi (via zigbee2mqtt) und eine Hue-Lampe mit von der Partie.

Hier ist das Ergebnis:

Es fehlen noch ein paar Details, dass das Licht erst ab einer gewissen Dunkelheit angehen soll, die werde ich aber auch noch hinbekommen. DafĂĽr muss ich aber erst ein paar virtuelle items aus openHAB nach mqtt transformieren, damit ich ĂĽber Homegear Zugriff bekommen.

Zur Referenz ist hier die Regel in openHAB.

rule "F1MD_MOTION"
when
	Item F1MD_MOTION changed from OFF to ON	or
    Item F1MD2_MOTION changed from OFF to ON or
    Item F1MD3_MOTION changed from OFF to ON
then 
    var Number schwelle = LS_MD_XIAOMI.state
    var boolean lightOn = DayPhase.state.toString != "DAYLIGHT" && DayPhase.state.toString != "NOON"
    lightOn = lightOn || F1DL_TOGGLE.state != OFF
    lightOn = lightOn || F1MD3_BRIGHTNESS.state < schwelle

	if (!lightOn) 
	{
        logInfo(logger,F1DL_TOGGLE.state.toString + " / " +  DayPhase.state.toString + " / " + F1MD3_BRIGHTNESS.state + " > " + schwelle.toString)
        return
    }	
        	
    if (F1DL_TOGGLE.state != ON) 
    {
        var Number DIM = MOTION_BRIGHTNESS.state
        F1DL_TOGGLE.sendCommand(ON)
        F1DL_DIMM.sendCommand(DIM)
    } 
    else
    {
        F1DL_TOGGLE.sendCommand(ON)
    }
end
2 Likes

Kurze Frage zur LightNode. Wie kann ich denn bei einer Hue-Lampe gleichzeitig einschalten, die Helligkeit und die Farbtemperatur bestimmen. Brauche ich dafĂĽr 2 oder 3 Knoten?

Dafuer brauchst du mehr als nur die “Light”-Node, da die IIRC nur die Datenpunkte STATE und LEVEL (als Dimmer) anspricht.

Ich weiss aus’m Kopf jetzt auch nicht, ob man bei Hue die Einstellungen in beliebiger Reihenfolge setzen kann (also erst Temperatur, dann Helligkeit und dann “an”), aber generell waere das glaube ich ein guter Fall fuer die “synchronous”-Node :wink:

– Micha

Ich nutze bei mir zum direkten “schalten” noch FAST_STATE und FAST_BRIGHTNESS. Habe allerdings nur warmweiße Hue’s…

Ă„hh. Ich bin ja ahnungslos was Node-Blue angeht, kannst Du mal einen solchen Flow hier reinkopieren? Ich kann ja bei einer Light-Node immer nur einen Wert setzen. Was muss ich denn erzeugen, damit eine Lampe eingeschaltet wird und auf volle Helligkeit geht?

Bittesehr :wink:

hue-test.txt (1.8 KB)

– Micha

1 Like

nimm eine script node und setze die Parameter so:

$hg->putParamset($device_id, 1, “VALUES”, array(“BRIGHTNESS” => EINWERT, “HUE” =>NOCHEINWERT);
Die Liste kann um State, et erweitert werden.

2 Likes

Ich meine die Reihenfolge für das Setzen der Variablen war nicht egal. Du kannst alternativ eine “synchronous”-Node nehmen und daran mehrere Ausgangsvariablen hängen. Diese werden dann immer in der angegebenen Reihenfolge geschaltet. Der Ansatz von @trilu ist aber ebenfalls ein guter Trick, welcher das gleiche bewirkt.

1 Like