Seite 1 von 2

Rules mit homematic HM-PB-2-WM55-2

Verfasst: 9. Jan 2016 16:46
von snowy
Hallo zusammen,

ich möchte mit dem "HM-PB-2-WM55-2" von homematic meine hue lampen ein- und ausschalten.

Die config sieht so aus.

item:

Code: Alles auswählen

Switch Licht_EG_Wohnzimmer      "Licht Wohnzimmer"  	(EG_Wohnzimmer)	{homematic="address=LEQ0XXXX, channel=1, parameter=PRESS_LONG"}
rule:

Code: Alles auswählen

rule "Switch Light On with Homematic"
when
	Item Licht_EG_Wohnzimmer received update ON
then
	if (Wohnzimmer_Lampe1.state==ON)
		{ Wohnzimmer_Lampe1.sendCommand(OFF) }
	
	if (Wohnzimmer_Lampe2.state==ON)
		{ Wohnzimmer_Lampe2.sendCommand(OFF) }
		
	if (Wohnzimmer_Lampe1.state==OFF)
		{ Wohnzimmer_Lampe1.sendCommand(ON) }
	
	if (Wohnzimmer_Lampe2.state==OFF)
		{ Wohnzimmer_Lampe2.sendCommand(ON) }		
	
	logInfo ("homematic","Reached rule")	
end
Jetzt wir beim "received update ON" des "PRESS_LONG" der event aber 4 mal ausgelöst?! Warum ist das so und wie kann ich das am besten abfangen.
Hat jemand eine Idee??

VG snowy

Re: Rules mit homematic HM-PB-2-WM55-2

Verfasst: 9. Jan 2016 18:46
von seppy
Hmm, ich meine Kretzsche hatte das gleiche Problem.
@Kretzsche: Wie hast Du das letztendlich gelöst?

Re: AW: Rules mit homematic HM-PB-2-WM55-2

Verfasst: 9. Jan 2016 19:30
von snowy
Das wäre cool, wenn er das gelöst hat. Ich bekomme auch keinen PRESS_S HORT EVENT mit dem Schalter hin.

Gesendet von meinem A0001 mit Tapatalk 2

Re: Rules mit homematic HM-PB-2-WM55-2

Verfasst: 9. Jan 2016 19:43
von seppy
Ich hab ihm per PN geschrieben!

Re: Rules mit homematic HM-PB-2-WM55-2

Verfasst: 9. Jan 2016 20:19
von Cyrelian
Hi snowy,

ja, der HM-PB-2-WM55-2 sendet beim drücken tatsächlich 4x in der Sekunde "PRESS_LONG", bis du wieder los lässt ;)
Das kann man auch schön in den Events sehen. Abschalten kann man das leider nicht.

Bei mir sieht das so aus. Allerdings habe ich das Event auf "PRESS_LONG_RELEASE". Aber "PRESS_LONG" geht auch, das hatte ich vorher.
Damit OH die Rule nun nur einmal und nicht vielmal ausführt, machst Du einfach

Code: Alles auswählen

if (EGKuecheRolladenSchalterUP_1.state == ON)
Rule:

Code: Alles auswählen

import org.openhab.core.library.types.*
import org.openhab.model.script.actions.*
import org.openhab.core.transform.actions.Transformation

rule "Rolladen Küche hoch"
when
    Item EGKuecheRolladenSchalterUP_1 received update ON
then
	if (EGKuecheRolladenSchalterUP_1.state == ON)
		logInfo ("SchalterRules:Rolladen Küche hoch", "Status EGKuecheRolladenSchalterUP_1 {}", EGKuecheRolladenSchalterUP_1.state)
	if (EGKuecheRolladenFenster.state > 0){
		logInfo("SchalterRules:Rolladen Küche hoch", "Wandtaster: Rolladen hoch")
		sendCommand(EGKuecheRolladenFenster, UP)
	}
end

rule "Rolladen Küche runter"
when
    Item EGKuecheRolladenSchalterDOWN_1 received update ON 
then
	if (EGKuecheRolladenSchalterDOWN_1.state == ON)
		logInfo ("SchalterRules:Rolladen Küche runter", "Status EGKuecheRolladenSchalterDOWN_1 {}", EGKuecheRolladenSchalterDOWN_1.state)
	if (EGKuecheRolladenFenster.state < 100){
		logInfo("SchalterRules:Rolladen Küche runter", "Wandtaster: Rolladen runter")
		sendCommand(EGKuecheRolladenFenster, DOWN)
	}
end


rule "Rolladen Küche stop"
when
    Item EGKuecheRolladenSchalterUP_2 received update ON or
    Item EGKuecheRolladenSchalterDOWN_2 received update ON
     
then
	if (EGKuecheRolladenFenster.state < 100 || EGSchlafzimmerRolladenTuer.state > 0){
		logInfo("SchalterRules:Rolladen Küche stop", "Wandtaster: Rolladen stop")
		sendCommand(EGKuecheRolladenFenster, STOP)
		}
	
end
Items:

Code: Alles auswählen

// 2fach-Wandtaster HM-PB-2-WM55-2
Group gEGKuecheRolladenSchalter "Rolladenschalter" (gEGKueche)


Switch EGKuecheRolladenSchalterUP_1 "Wandtaster: Rolladen hoch" (gEGKuecheRolladenSchalter)
	{homematic="address=xxxxxx, channel=1, parameter=PRESS_LONG_RELEASE"}

Switch EGKuecheRolladenSchalterUP_2 "Wandtaster: Rolladen stop" (gEGKuecheRolladenSchalter)
	{homematic="address=xxxxxx, channel=1, parameter=PRESS_SHORT"}

Switch EGKuecheRolladenSchalterDOWN_1 "Wandtaster: Rolladen runter" (gEGKuecheRolladenSchalter)
	{homematic="address=xxxxxx, channel=2, parameter=PRESS_LONG_RELEASE"}
	
Switch EGKuecheRolladenSchalterDOWN_2 "Wandtaster: Rolladen stop" (gEGKuecheRolladenSchalter)
	{homematic="address=xxxxxx, channel=2, parameter=PRESS_SHORT"}

Number EGKuecheRolladenSchalterRSSI "Feldstärke am Device [%d dbm]" (gEGKuecheRolladenSchalter, gSysRSSI)
	{homematic="address=xxxxxx,channel=0,parameter=RSSI_DEVICE"}
hoffe das hilft dir weiter, ansonsten einfach nochmal fragen :)

CU

Re: Rules mit homematic HM-PB-2-WM55-2

Verfasst: 10. Jan 2016 10:48
von snowy
Danke, hat mir weiter geholfen.

Kann es sein, dass du hier noch einen kleinen Fehler hast?

Code: Alles auswählen

  if (EGKuecheRolladenSchalterUP_1.state == ON)
      logInfo ("SchalterRules:Rolladen Küche hoch", "Status EGKuecheRolladenSchalterUP_1 {}", EGKuecheRolladenSchalterUP_1.state)
   if (EGKuecheRolladenFenster.state > 0){
      logInfo("SchalterRules:Rolladen Küche hoch", "Wandtaster: Rolladen hoch")
      sendCommand(EGKuecheRolladenFenster, UP)
   }
Hier ist es doch bei dir so, dass du nur einmal die Log schreibst aber dein sendCommand 4 mal ausgeführt wird.
Müsste das doch so sein:

Code: Alles auswählen

  if (EGKuecheRolladenSchalterUP_1.state == ON) {
     		 logInfo ("SchalterRules:Rolladen Küche hoch", "Status EGKuecheRolladenSchalterUP_1 {}", EGKuecheRolladenSchalterUP_1.state)
  		 if (EGKuecheRolladenFenster.state > 0){
      			logInfo("SchalterRules:Rolladen Küche hoch", "Wandtaster: Rolladen hoch")
     			 sendCommand(EGKuecheRolladenFenster, UP)
     		}
     	  }
Ich habe leider noch ein weiteres Problem, ich bekomme einfach ein PRESS_SHORT event.

Code: Alles auswählen

Switch Licht_EG_Wohnzimmer_TMP  "Licht Wohnzimmer"  	{homematic="address=LEQ0654674, channel=1, parameter=PRESS_SHORT"}

Code: Alles auswählen

rule "Switch Light On with Homematic"
when
	Item Licht_EG_Wohnzimmer_TMP received update ON
then							
	logInfo ("homematic","Reached rule PRESS_SHORT")		
end
Muss ich was spezielles irgendwo einstelle in den Einstellungen des Schalters?

Re: Rules mit homematic HM-PB-2-WM55-2

Verfasst: 10. Jan 2016 12:15
von snowy
Hier ist das Log, wenn ich kurz auf den Schalter drücke.

Code: Alles auswählen

2016-01-10 12:09:20.242 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Integer) value '-92' for DatapointConfig[address=LEQxxxxx,channel=0,parameter=RSSI_DEVICE]
2016-01-10 12:09:20.296 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LEQxxxxxx,channel=1,parameter=INSTALL_TEST]
2016-01-10 12:11:01.339 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Integer) value '-94' for DatapointConfig[address=LEQxxxxx,channel=0,parameter=RSSI_DEVICE]
2016-01-10 12:11:01.394 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LEQxxxxxx,channel=1,parameter=INSTALL_TEST]
Warum kommt da nur ein INSTALL_TEST und kein PRESS_SHORT, kann mir da einer weiter helfen? (Hatte ihr die gleichen Probleme)

Re: Rules mit homematic HM-PB-2-WM55-2

Verfasst: 10. Jan 2016 12:37
von snowy
Hallo zusammen,

jetzt geht es :-)... Es lag am Schalter ich habe diesen auf Werkszustand zurück gesetzt und dann neu angelernt.

Diese batteriebetriebenen Schalter müssen einmal über die Anlerntaste bei Parameteränderungen bestätigt werden. Da ich am Anfang von der gesicherter auf Standard Verbindung gegangen bin hat der Schalter irgendwie Müll produziert.

Re: Rules mit homematic HM-PB-2-WM55-2

Verfasst: 10. Jan 2016 13:05
von seppy
Hey snowy,

wie sind Deine Erfahrungen mit dem Osram Lightify?

Grüße,
Seppy

Re: Rules mit homematic HM-PB-2-WM55-2

Verfasst: 10. Jan 2016 14:07
von snowy
Hi,

hab seit gesten das Osram Lightify bei mir im Einsatz. Es funktioniert einwandfrei an der Philips Hue Bridge 2.
Wollte das Lightify testen, da diese doch günstiger sind als die Philips Hue (ca. 20€ pro Lampe).

Die Farbwechsel sind bei der Hue smoother. Und die Osram macht nicht jede Farbe mit, ich weiß jetzt nicht, ob es an der Firmware liegt, die vielleicht veraltet ist. Jetzt habe ich auch raus gefunden, dass ohne Osram Gateway ich auch keine neue Firmware drauf bekomme. Ich denke ich werde es wieder zurück schicken und bei Philips bleiben.

VG