[SOLVED] Rollershutter

I don’t know if are wired wrong, because with the open and close of my sitemap goes well.

Switch item=perSukiDaveUpDown mappings=[0="Close “, 25=“25%”,50=“50%”, 75=“75%” , 100=” Open "]

In Things:

Thing topic perpeques “Persiana habitación peques” @ “Habitación peques” {
Channels:
Type rollershutter : SubirBajarperpeques “UpDown persiana peques” [ stateTopic=“stat/perpeques/POWER1”, commandTopic=“cmnd/perpeques/SHUTTERPOSITION1”, UP=“SHUTTEROPEN”, DOWN=“SHUTTERCLOSE” , STOP=“SHUTTERSTOP” ]

The version of MQTT binding is 2.4.0. When I press Stop, in OH Log, says something as: STOP is not a command for rollershuter.(I’m not in front of computer)

Thanks in advance.

But in openHAB, 0% for a rollershutter represents “open”

Yes, MQTT binding 2.4 had poor support for rollershutter types. It’s been improved for 2.5 - though I believe it is still a bit quirky.

If it were me, I think I would code around this for now, until the binding gets sorted.
I’d remove the commandTopic from the MQTT thing, and make a rule triggered from UI command that directly sent what you want as MQTT Actions.

Unrelated, isn’t there a position state reporting topic you could listen for, instead of Power1?

Thanks for your reply.
I will try to do as you mentioned, but I thought that with the fork of Tasmota it was easy than make a rules for this. With the inconvenient that I am beginner.:grinning: and costs me a lot do this things.

This is a lot less complicated than trying to use motor runtime to work out positions in openHAB.

The rule you need here is pretty simple, this might help for starters


That actually uses a proxy Item/channel instead of MQTT publish action, but its the same principle.

Finally, I tried to put Tasmota again and I solved. Now I have the roller shutters working.

rule "Persiana derecha Ático subir"
when
    Time cron "0 30 09 1/1 * ? *"
then
    AticodchaUpDown.sendCommand(100)

end

rule "Persiana derecha Ático bajar"
when
    Time cron "0 00 20 1/1 * ? *"
then
    AticodchaUpDown.sendCommand(0)

end