Control 4 roller shutter with the HM-PB-2-WM55-2

Hey Guys,

i want to control 4 roller shutter with the HM-PB-2-WM55-2.

PRESS_LONG up / Roller shutter move up
PRESS_SHORT up / Roller shutter stop

PRESS_LONG down / Roller shutter move down
PRESS_SHORT down / Roller shutter stop

Therefore i´ve created the following switch items:

> Group gEGSchlafzimmerRolladenSchalter "Rolladenschalter" (gEGSchlafzimmer)

> Switch EGSchlafzimmerRolladenSchalterUP_1 "Wandtaster: Rolladen hoch" (gEGSchlafzimmerRolladenSchalter)
> 	{homematic="address=xxxxxx, channel=1, parameter=PRESS_LONG"}

> Switch EGSchlafzimmerRolladenSchalterUP_2 "Wandtaster: Rolladen stop" (gEGSchlafzimmerRolladenSchalter)
> 	{homematic="address=xxxxxx, channel=1, parameter=PRESS_SHORT"}

> Switch EGSchlafzimmerRolladenSchalterDOWN_1 "Wandtaster: Rolladen runter" (gEGSchlafzimmerRolladenSchalter)
> 	{homematic="address=xxxxxx, channel=2, parameter=PRESS_LONG"}
> 	
> Switch EGSchlafzimmerRolladenSchalterDOWN_2 "Wandtaster: Rolladen stop" (gEGSchlafzimmerRolladenSchalter)
> 	{homematic="address=xxxxxx, channel=2, parameter=PRESS_SHORT"}

> Number EGSchlafzimmerRolladenSchalterRSSI "Feldstärke am Device [%d dbm]" (gEGSchlafzimmerRolladenSchalter, gSysRSSI)
> 	{homematic="address=xxxxxx,channel=0,parameter=RSSI_DEVICE"}

So i created this rule:

> rule "Rolladen hoch"
> when
>     Item EGSchlafzimmerRolladenSchalterUP_1 received update ON 
> then
> 	if (EGSchlafzimmerRolladenTuer.state == 100){
> 	logInfo("SchalterRules:Rolladen Schlaf- und Kinderzimmer hoch", "Wandtaster: Rolladen hoch")
> 	sendCommand(EGSchlafzimmerRolladenTuer, UP)
> 	sendCommand(EGSchlafzimmerRolladenTerrasse, UP)
> 	}
> end

It works, but it takes up to 15 seconds until the shutter moves. In the logs i can see that the rules is executed tree time and i dont know why.

May somebody has experience with the HM-PB-2-WM55-2 and ruller shutter.

THX

Look at the events.log. Perhaps the homematic is sending the command three times…

Hi,

ok, it seems to be “normal”. If you use “PRESS_LONG” then the HM-PB-2-WM55-2 sends 4 commands per second to the homatic device until you release.
But why it takes this long to move the shutters? Maybe the rule is not optimized?

best regards

There is nothing in the rule that explains the delay. It should execute in the sub second timeframe. You can test this by adding some “rule started” “rule ended” log statements and checking their timestamps to see how long the rule takes to execute.

I would start looking at the events.log and bump up the homeatic logging to at least debug if not trace and try to correlate when the binding receives events verses when the button is pressed verses when the rule executes verses when the shutters actually start moving.

ok, here are the logs:

Events:
> 2015-12-03 17:11:11 - EGSchlafzimmerRolladenSchalterUP_1 state updated to ON
> 2015-12-03 17:11:13 - EGSchlafzimmerRolladenSchalterUP_1 state updated to OFF
> 2015-12-03 17:11:22 - EGSchlafzimmerRolladenTerrasse received command DOWN
> 2015-12-03 17:11:23 - EGSchlafzimmerRolladenTerrasse state updated to 100
> 2015-12-03 17:11:23 - EGSchlafzimmerRolladenTerrasseRSSI state updated to -75
> 2015-12-03 17:11:24 - EGSchlafzimmerRolladenTerrasse state updated to 0
> 2015-12-03 17:11:49 - EGSchlafzimmerRolladenTerrasseRSSI state updated to -70
> 2015-12-03 17:11:49 - EGSchlafzimmerRolladenTerrasse state updated to 100

and openhab.log:

2015-12-03 17:11:09.618 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=INSTALL_TEST]
2015-12-03 17:11:09.632 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=PRESS_CONT]
2015-12-03 17:11:09.635 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=PRESS_LONG]
2015-12-03 17:11:09.878 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=INSTALL_TEST]
2015-12-03 17:11:09.882 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=PRESS_CONT]
2015-12-03 17:11:09.885 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=PRESS_LONG]
2015-12-03 17:11:10.124 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=INSTALL_TEST]
2015-12-03 17:11:10.127 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=PRESS_CONT]
2015-12-03 17:11:10.131 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=PRESS_LONG]
2015-12-03 17:11:10.811 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=INSTALL_TEST]
2015-12-03 17:11:10.814 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=PRESS_CONT]
2015-12-03 17:11:10.817 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=PRESS_LONG]
2015-12-03 17:11:10.820 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=LTK0035835,channel=1,parameter=PRESS_LONG_RELEASE]
2015-12-03 17:11:10.824 [DEBUG] [.h.i.c.s.AbstractTypeConverter] - Converting (Boolean) value 'true' with OnOffTypeConverter for HmDatapoint[address=LTK0035835,channel=1,parameter=PRESS_LONG_RELEASE]
2015-12-03 17:11:10.920 [DEBUG] [m.r.internal.engine.RuleEngine] - Executing rule 'Rolladen Schlaf- und Kinderzimmer hoch'
2015-12-03 17:11:13.653 [DEBUG] [.h.i.c.s.AbstractTypeConverter] - Converting type OnOffType with value 'OFF' to (Boolean) value with OnOffTypeConverter for HmDatapoint[address=LTK0035835,channel=1,parameter=PRESS_LONG_RELEASE]
2015-12-03 17:11:13.656 [DEBUG] [.h.i.c.s.AbstractTypeConverter] - Converting (Boolean) value 'false' with OnOffTypeConverter for HmDatapoint[address=LTK0035835,channel=1,parameter=PRESS_LONG_RELEASE]
2015-12-03 17:11:13.680 [DEBUG] [.h.i.communicator.ItemDisabler] - Disabled Item EGSchlafzimmerRolladenSchalterUP_1 with binding DatapointConfig[address=LTK0035835,channel=1,parameter=PRESS_LONG_RELEASE]
2015-12-03 17:11:15.042 [INFO ] [ Schlaf- und Kinderzimmer hoch] - Status EGSchlafzimmerRolladenSchalterUP_1 OFF
2015-12-03 17:11:22.817 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received command DOWN for item EGSchlafzimmerRolladenTerrasse
2015-12-03 17:11:22.831 [DEBUG] [.h.i.c.s.AbstractTypeConverter] - Converting type UpDownType with value 'DOWN' to (Double) value with PercentTypeConverter for HmDatapoint[address=MEQ1311128,channel=1,parameter=LEVEL]
2015-12-03 17:11:22.835 [DEBUG] [.h.i.c.s.AbstractTypeConverter] - Converting type PercentType with value '100' to (Double) value with PercentTypeConverter for HmDatapoint[address=MEQ1311128,channel=1,parameter=LEVEL]
2015-12-03 17:11:22.839 [DEBUG] [o.o.b.h.i.c.HomematicPublisher] - Sending to Homematic server HmDatapoint[address=MEQ1311128,channel=1,parameter=LEVEL]
2015-12-03 17:11:22.881 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Double) value '0.0' for DatapointConfig[address=MEQ1311128,channel=1,parameter=LEVEL]
2015-12-03 17:11:22.886 [DEBUG] [.h.i.c.s.AbstractTypeConverter] - Converting (Double) value '0.0' with PercentTypeConverter for HmDatapoint[address=MEQ1311128,channel=1,parameter=LEVEL]
2015-12-03 17:11:23.095 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Integer) value '-75' for DatapointConfig[address=MEQ1311128,channel=0,parameter=RSSI_DEVICE]
2015-12-03 17:11:23.103 [DEBUG] [.h.i.c.s.AbstractTypeConverter] - Converting (Integer) value '-75' with DecimalTypeConverter for HmDatapoint[address=MEQ1311128,channel=0,parameter=RSSI_DEVICE]
2015-12-03 17:11:23.114 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Integer) value '2' for DatapointConfig[address=MEQ1311128,channel=1,parameter=DIRECTION]
2015-12-03 17:11:23.137 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Double) value '1.0' for DatapointConfig[address=MEQ1311128,channel=1,parameter=LEVEL]
2015-12-03 17:11:23.152 [DEBUG] [.h.i.c.s.AbstractTypeConverter] - Converting (Double) value '1.0' with PercentTypeConverter for HmDatapoint[address=MEQ1311128,channel=1,parameter=LEVEL]
2015-12-03 17:11:23.173 [DEBUG] [.b.h.i.c.HomematicCommunicator] - Received new (Boolean) value 'true' for DatapointConfig[address=MEQ1311128,channel=1,parameter=WORKING]

As you can see its about 10 seconds after the “PRESS_LONG_RELEASE”.

It looks like I am experiencing the same problem with an HM-PB-2-FM. I am controling milight with this button. If I hit the button it takes a few seconds until the light turns on.

If I switch the Light on through the openhab webpage, everything is fine and it´s instantly switched on.

Hi patrickse,

today i solved my problem. It was a performance issue on my PI (old Model B). Now i´ve migrated everything on the PI2 and it works like charm :smile:.

Good to hear… already added the pi2 to my wishlist :smile:. Are you using homegear or a ccu?

i´m using homegear…it´s better :smile:

even if you using a PI2 now. Read my experiences in the following link. If you have a bigger environment to operate, this is a real performance boost. At least from my experience.

hi Lars,

i dont have the start.sh. i´m using the /etc/init.d/openhab. I think the parameter you mean belongs to the “JAVA_ARGS_DEFAULT” or?

I guess, yes.

BTW: I am using /etc/init.d/openhab as well, but in combination with the screen command. The benefit is that you can easily switch back to the OSGi console that way…