Trigger Homematic Input items

Hello,
I’m new in home automation and have some “stupid” questions relating to Homematic.

First my current setup to describe my intention.
default.items:

Group All
Group gGF (All)
Group Shutters (All)

Group GF_Workroom “Arbeitszimmer” (gGF)

/* Shutters */
Switch Actuator_01_Input_01 “Rolladen Auf” (GF_Workroom, Shutters) {homematic=“address=MEQ0279318, channel=1, parameter=PRESS_SHORT”}
Switch Actuator_01_Input_02 “Rolladen Ab” (GF_Workroom, Shutters) {homematic=“address=MEQ0279318, channel=2, parameter=PRESS_SHORT”}
Switch Actuator_01_Output_13 “Rolladenaktor Auf” (GF_Utility, Shutters) {homematic=“address=MEQ0279318, channel=13, parameter=STATE”}
Switch Actuator_01_Output_14 “Rolladenaktor Ab” (GF_Utility, Shutters) {homematic=“address=MEQ0279318, channel=14, parameter=STATE”}

Rollershutter Shutter_GF_Workroom “Rolladen Arbeitszimmer” (GF_Workroom, Shutters)

default.sitemap:

sitemap demo label=“Haus”
{
Frame {
Group item=gGF label=“Erdgeschoss” icon=“groundfloor”
}
}

The following default.rules rudimentary does what I need:

rule "Rollershutter"
when
Item Shutter_GF_Workroom received command
then
switch(receivedCommand) {
case UP: {
sendCommand(Actuator_01_Output_13, ON)
createTimer(now.plusSeconds(18)) [|
sendCommand(Actuator_01_Output_13, OFF)
]
}
case DOWN: {
sendCommand(Actuator_01_Output_14, ON)
createTimer(now.plusSeconds(18)) [|
sendCommand(Actuator_01_Output_14, OFF)
]
}
}
end

However, all logical shortcuts between Switch Actuator_01_Input_01 and Actuator_01_Output_13, their timing (18 seconds on time) and interlocking is already configured by Homematic channel peering. The better solution would be to “trigger” or “simulate” an PUSH_SHORT event on the Actuator_01_Input_XX items.
I.e. like this:

rule "Rollershutter"
when
Item Shutter_GF_Workroom received command
then
switch(receivedCommand) {
case UP: {
sendCommand(Actuator_01_Input_01, ON)
createTimer(now.plusMillis(300)) [|
sendCommand(Actuator_01_Input_01, OFF)
]
}
case DOWN: {
sendCommand(Actuator_01_Input_02, ON)
createTimer(now.plusMillis(300)) [|
sendCommand(Actuator_01_Input_02, OFF)
]
}
}
end

But this code dosn’t work. How should it look like in order to work?

Nobody could help? Really?

At least, I’d like to give a little feedback. I figured out, to trigger input items, it should be sufficient to send them an ON state. So my item definition should correct, and the case statement merely needs this content:

case DOWN: {
sendCommand(Actuator_01_Input_02, ON)
}

Unfortunately, my actuators doesn’t support write accesses on their PRESS_SHORT or PRESS_LONG channel types, so nothing happened, if I do so :frowning:

I would recommend to use a real homematic rollershutter instead of a 12/7 or 12/14 actuator :slight_smile: You can simply use the Rollershutter item type, then.

But maybe it’s just that you want a Switch item to be a pushbutton. Perhaps this [wiki article] (https://github.com/openhab/openhab/wiki/Samples-Item-Definitions#how-to-configure-a-switch-to-be-a-pushbutton) helps.

Yes, sure. A real roller shutter actuator would be the more common way, but the 12/7 are much cheaper.
Unfortunately, they are restricted by Firmware.

According to the datapoint documentation the HMW-IO-12-Sw7-DR actuator supports write access for PRESS_SHORT and PRESS_LONG. Have you tried the hint from the wiki article to make the switch a pushbutton?

The 12/7 actuator is cheaper, right! But: have you eliminated the risk, that there will never be power on the up and down wires of the rollershutter motor at the same time? If not, you will probably buy a new motor, if there is something wrong in your configuration :smirk:

Yes, but the documentation seems to be wrong. (according to sathya, the homegear author)
I didn’t try to make the switch a push button, but I wrote the commands directly within a rule. That should do the same, I guess (or not?)

And yes, I elimated the risk of some programming mistake. But my rollershutters simply fall in a programming mode, if both wires are powered at the same time. They don’t get destroyed.

Have you tried to add the autoupdate=“false” to your Switch item configuration as mentioned in the wiki article? This seems to be the “magic” :wink:

Even if I send direct RPC commands to homegear, I get an error, because the hardware doesn’t support write acceses on these channels. So it doesn’t matters, how to configure openHAB, it won’t work.
I contacted eq-3 support. Maybe they can help.