
Integración Shelly 2.5 como persiana
Hola a tod@s!!!
En esta entrada vamos a ver como integrar en nuestro Home Assistant un shelly 2.5 ya instalado en una persiana. Para una primera toma de contacto con la instalación de un shelly 1, añadirlo a su app y usarlo como switch/light podeis dar un vistazo a esta entrada. Salvando las distancias, la instalación es equivalente pero se usará un shelly 2.5 configurado como roller shutter y los dos circuitos que se controlan son para cada uno de los sentidos de giro del motor de la persiana.

Consideraciones:
Para poder tener una completa funcionalidad con el % de apertura además de las ordenes de subir, bajar y parar, previamente debemos tenerlo calibrado mediante la app de shelly cloud.
La integración de esta guía va a ser via rest.
Una vez con la persiana operativa desde la app nativa necesitaremos declarar en Home Assistan:
- Un sensor, que nos indique la posición actual.
- Dos rest_command, para enviar la petición al shelly.
- Un cover, que usará los dos anteriores para poder manejar la persiana.
Manos a la obra:
El sensor será de tipo rest:
1 2 3 4 5 6 7 8 | - platform: rest name: "my_cover_position" scan_interval: 5 resource: http://192.168.0.155/roller/0 value_template: '{{ value_json.current_pos }}' unit_of_measurement: "%" headers: content-type: application/x-www-form-urlencoded |
Los rest_command van a tener una serie de parametros para que los podamos reutilizar fácilmente:
- ip: la dirección IP del dispositivo shelly
- action: las posibles ordenes sobre la persiana (open, close, stop)
- position: el valor (del 0 al 100) de apertura que corresponderá con el porcentaje que nos aparece en la app de shelly.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | # Call cover action shelly_cover_action: url: http://{{ip}}/roller/0 method: POST headers: accept: 'application/json, text/html' payload: 'go={{action}}' content_type: 'application/x-www-form-urlencoded' verify_ssl: true # Set cover position shelly_cover_set_position: url: http://{{ip}}/roller/0 method: POST headers: accept: 'application/json, text/html' payload: 'go=to_pos&roller_pos={{position}}' content_type: 'application/x-www-form-urlencoded' verify_ssl: true |
Y por último, el cover que será de tipo template:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | - platform: template covers: my_cover: position_template: "{{ states('sensor.my_cover_position') | float }}" open_cover: service: rest_command.shelly_cover_action data: ip: 192.168.0.155 action: open close_cover: service: rest_command.shelly_cover_action data: ip: 192.168.0.155 action: close stop_cover: service: rest_command.shelly_cover_action data: ip: 192.168.0.155 action: stop set_cover_position: service: rest_command.shelly_cover_set_position data_template: position: "{{position}}" data: ip: 192.168.0.155 position: position |
Con todo esto configurado correctamente ya solo nos quedaría usarlo en el lugar que queramos de nuestro home assistant y nos quedaría como en las imagenes de más abajo.
Le podríamos dar un nombre entendible al cover añadiendo el campo friendly_name, por ejemplo 'Persiana cocina'

Con el que podremos interactuar con esos botones o entrar al detalle pinchando en el nombre y nos saldrá los siguiente:

Espero que os sea útil y cualquier cosa, ya sea ayuda o sugerencias, ya sabeis donde estamos!!
Un saludo!
Si quieres conocer otros artículos parecidos a Integración Shelly 2.5 como persiana puedes visitar la categoría Configuraciones HA.
-
-
Hola en que parte hay que poner cada instrucciones?
Para los que acabamos de empezar no nos liemos, y si no va en el configuration.yaml, donde va cada archivo. Mil gracias.
Saludos -
Hola, perdonen si por mi falta de experiencia digo una tontería, yo tengo el Shelly2 por Mqtt y como se ve hay dos llamadas, una a relay/0 y otra a relay/1, que son para subir y bajar.
¿Es posible que falte algo en el código de ejemplo?
switch:
- platform: mqtt
name: "Factory Shelly2 MQTT 1"
state_topic: "shellies/shellyswitch-xxxxxx/relay/0"
command_topic: "shellies/shellyswitch-xxxxxx/relay/0/command"
payload_on: "on"
payload_off: "off"
retain: false
- platform: mqtt
name: "Factory Shelly2 MQTT 2"
state_topic: "shellies/shellyswitch-xxxxxx/relay/1"
command_topic: "shellies/shellyswitch-xxxxxx/relay/1/command"
payload_on: "on"
payload_off: "off"
retain: falseMe gustaría probar vuestro ejemplo y ver si no pierdo la funcionalidad de la nube de shelly.
Saludos. -
Hola, me ha servido perfectamente.
Ahora me surge la duda de cómo crear una automatización, ya que al intentar crearla desde la gui no sale como las luces en dispositivos.
Mi intención es crear una automatización que haga bajar la persiana al llegar la noche con el sensor sun, estado sunset.
Además en un futuro, que detecte si la ventana está abierta y solo la baje si está cerrada.
Deja una respuesta
Hola,
Tengo una persiana faac y un shelly 2.5 por montar.
En mi caso mi persiana funciona de la siguiente manera:
Al dar tensión, gira en un sentido. Cuando quitas tensión y vuelves a dar, gira en sentido opuesto.
Para esta particularidad, como debería de cablear la persiana al shelly 2.5?
gracias