Rollershutter group with Alexa Metadata in UI - How?

Hi everyone,

I am currently trying to setup a zigbee ikea rollershutter/blind but I am struggling to set it up correctly.

With my Homematic Rollershutters which I connected to Alexa I am able to set the Percentage of the Rollershutters but also I am able to say “öffnen” (open) “schließen” (close) and “stop”.

I am trying to achieve the same with my Zigbee Rollershutters. With my current setup (see below) only setting the percentage works but not using the words “öffnen” “schließen” and “stop”

The Ikea Zigbee Blinds have 2 different channels for controling the Rollershutters/Blinds:

Position channel (number item 0-100)
and the
State channel (string item - these strings work stop, open, close)

For the postion I have set this as Alexa Metadata:

For the State I have set this as Alexa Metadata:

And for the Group that gets exposed to Alexa this:

Could anyone let me know where I made a mistake ?
Did I use the wrong Alexa Device types?

Any tips on how to change it to make it work correctly?

You are on the right track.

The supported modes should list the actual modes and associated friendly name(s):
supportedModes="UP=@Value.Up:@Value.Open,DOWN=@Value.Down:@Value.Close,STOP=@Value.Stop"

What you have currently as supported modes should be moved to the semantic action mappings:
actionMappings="Close=DOWN,Open=UP,Lower=DOWN,Raise=UP,Stop=STOP"

Also, since your “state” channel will only be used for sending commands, you need to set it to non-retrievable as your position item should only be the one reporting a state back to Alexa, otherwise it will break the integration:
retrievable=false

Last, although it currently doesn’t have much impact on the Alexa side, you should specify the semantic state mappings on your position item:
stateMappings="Closed=100,Open=0:99"

1 Like

Thank you very much!

Just added it according to your tips and suggestions and it is working almost perfectly already.

It is accepting the commands now but when I check the log it is sending the commands UP and DOWN but the State item only works with the command OPEN and CLOSE.

What is the best approach to send those commands instead?

Switch UP for OPEN and DOWN for CLOSE.

supportedModes="OPEN=@Value.Open,CLOSE=@Value.Close,STOP=@Value.Stop"
actionMappings="Close=CLOSE,Open=OPEN,Lower=CLOSE,Raise=OPEN,Stop=STOP"
retrievable=false

Out of curiosity, why are you identifying that item as state? Does it actually return a state?

This is the blind I have added via MQTT.

https://www.zigbee2mqtt.io/devices/E1757.html#ikea-e1757

They mentioned it as state which is why I used the same naming.

Thank you!
Will test it and report back

I see it acts as open state. Now I think about it, you could leave that item as retrievable in the end.

You would get the two channels state and you could use the state channel for state mappings instead: (Each semantic mapping can only be defined once per group endpoint)
stateMappings="Closed=CLOSE,Open=OPEN"

Also, you could expose the battery channel as well and model it as BatteryLevel.

1 Like

Thank you very much for the help it works perfectly now!

I may have some questions regarding 1 or 2 other devices which I want to add to Alexa and I will try to set them up fully on my own but I may run into an issue again.

Should I open a new thread for these or would it be okay to send you a private message regarding these (if I run into an issue) ?

Thank you again for the help. I really appreciate it!

EDIT:
Should I open this below in a new thread?

For example I am running just now in an issue on how to correctly my zigbee motion sensors (Xiaomi RTCGQ11LM control via MQTT | Zigbee2MQTT) with Alexa. I think I have to use MotionSensor.Mode for the occupancy string item and MotionSensor.Battery Level for the Battery number item but I am not fully sure.
How do I know which Modes are supported by MotionSensor.Mode ?

Yes please open a new thread if not related to the current topic. That would make it easier for someone with the same question to find the solution.

1 Like