Changer l'icone d'un volet pour voir son état

Bonjour,

Quel est votre besoin ?

Je ne comprends pas bien pourquoi vous avez besoin d’un template cover, alors que vous avez des volets en KNX, toutes les fonctions et retour sont disponibles dans l’implémentation knx.

2 « J'aime »

Oui, mais si on regarde le code sur quel je me base,

Ma version est :
Home Assistant 2023.6.2 Supervisor 2023.09.2 Operating System 10.2 Interface utilisateur : 20230608.0 - latest

Voici ici pourquoi j’ai besoin de fonction cover.

En gros tout simplement, parce qu’avec mes boutons switch, c’est boutons sont inversés, c’est-à-dire que lorsque le volet est ouvert, le bouton a dit de fermer

switch:
  - platform: template
    switches:
      tousvolets:
        friendly_name: "Tous les volets"
        value_template: "{{ is_state('switch.volet_hangar_md', 'on') }}"
        turn_on:
          - service: switch.turn_on
            target:
              entity_id: switch.volet_hangar_md
          - delay: "00:00:00.500"   
          - service: switch.turn_on
            target:
              entity_id: switch.volet_baie_md
          - delay: "00:00:00.500"    
          - service: switch.turn_on
            target:
              entity_id: switch.volet_bureau_md
          - delay: "00:00:00.500"
          - service: switch.turn_on
            target:
              entity_id: switch.volet_garage_md 
        turn_off:
          - service: switch.turn_off
            target:
              entity_id: switch.volet_hangar_md
          - delay: "00:00:00.500"    
          - service: switch.turn_off
            target:
              entity_id: switch.volet_baie_md
          - delay: "00:00:00.500"    
          - service: switch.turn_off
            target:
              entity_id: switch.volet_bureau_md
          - service: switch.turn_off
            target:
              entity_id: switch.volet_garage_md  
      volethangar:
        friendly_name: "Volet Hangar"
        value_template: "{{ is_state('switch.volet_hangar_md', 'on') }}"
        turn_on:
          service: switch.toggle
          target:
            entity_id: switch.volet_hangar_md
        turn_off:
          service: switch.toggle
          target:
            entity_id: switch.volet_hangar_md
      voletgarage:
        friendly_name: "Volet Garage"
        value_template: "{{ is_state('switch.volet_garage_md', 'on') }}"
        turn_on:
          service: switch.toggle
          target:
            entity_id: switch.volet_garage_md
        turn_off:
          service: switch.toggle
          target:
            entity_id: switch.volet_garage_md
      voletbureau:
        friendly_name: "Volet Bureau"
        value_template: "{{ is_state('switch.volet_bureau_md', 'on') }}"
        turn_on:
          service: switch.toggle
          target:
            entity_id: switch.volet_bureau_md
        turn_off:
          service: switch.toggle
          target:
            entity_id: switch.volet_bureau_md
      voletbaie:
        friendly_name: "Volet Baie"
        value_template: "{{ is_state('switch.volet_baie_md', 'on') }}"
        turn_on:
          service: switch.toggle
          target:
            entity_id: switch.volet_baie_md
        turn_off:
          service: switch.toggle
          target:
            entity_id: switch.volet_baie_md



Vous voulez piloter vos volets avec des switches ? il y a des cartes pour les covers c’est peut-être plus simple

De plus, pour la fonction « tous les volets », soit vous avez déjà la fonction en centrale au niveau knx, dans ce cas, vous le déclarez le « GA » comme entité cover supplémentaire, soit elle n’existe pas et vous mettez toutes vos entités cover dans un groupe HA.

Non, je n’ai pas cette fonction. De plus j’avais essayé le map hass-shutter-card, seulement je lu trouve trois inconvénients :

  1. L’image des volets est beaucoup trop grande
  2. Malgré que partial_close_percentage: soit à 25 % le volet se ferme entièrement
  3. Impossible d’aligner, mes volets verticalement sur ma grille

Elles y sont ! C’est bien de celle-là dont vous parlez dans knx.yaml ?

Et pourquoi pas une simple carte entities:

type: entities
entities:
  - entity: cover.xxxxx
    name: xxxxxxx
  - entity: cover.yyyyy
    name: yyyyy

Car je n’arrive pas à personnaliser mes icônes lorsque le volet est ouvert ou il est fermé. Ceux par défaut ne me plaisent pas.


Je veux ceux là
48699f0731958ca9034630dc71ea9fa9df51f459

Créer un template ne change pas les icones… (et je le répete, les templates ne sont pas à mettre dans la partie KNX !!)
Par contre, tu as un peu de lecture là par exemple

1 « J'aime »

Surtout, j’ai passer un moment à tout lui expliquer sur un de ces sujets Ajouter un delay entre chaque descente de volet
Il doit savoir faire maintenant.

C’est bien ce que j’ai fait à savoir

cover.volethangar:
  friendly_name: Volet Hangar
  templates:
    icon_color: >
      if (state == 'on') return '#ff0000';
      return '#ffffff';
    icon: >
      if (state == 'on') return 'mdi:window-shutter';
      return 'mdi:window-shutter-open';

dans customize.yaml
puis

type: entities
entities:
  - cover.volet_hangar

mais malgrès cela les icones ne change pas

C’est pas les mêmes entités, fautes de fautes dans ce message, ou est-ce dans le yaml

1 « J'aime »

Et de mémoire il faut avoir installé le Custom-UI pour pouvoir avoir un template dynamique dans le customize.

1 « J'aime »

Pardon, erreur de frappe de ma part.

Il est installé, vu que j’ai déjà des switch qui fonctionne avec

cover.volet_hangar:
  friendly_name: Volet Hangar
  templates:
    icon_color: >
      if (state == 'on') return '#ff0000';
      return '#ffffff';
    icon: >
      if (state == 'on') return 'mdi:window-shutter';
      return 'mdi:window-shutter-open';
icon_color: >
      if (state == 'on') return '#ff0000';
      return '#ffffff';
    icon: >
      if (state == 'on') return 'mdi:window-shutter';
      return 'mdi:window-shutter-open';

Par contre les entités de type covert n’ont pas d’état « on/off »,

value_template template (optional)

Je pense qu’il faut écrire:
pour l’icone « ouvert »
> if (state == 'open') return
et pour l’icone « fermé »
> if (state == 'closed') return

1 « J'aime »

Il me semble aussi que les icones mdi:window-shutter et mdi:window-shutter-open sont celles par défaut de la class shutter…

1 « J'aime »

Exact :slight_smile:

voir ici: Cover - Home Assistant

Merci MCP, franchement des fois on se prend la tête avec des trucs alors que tout est devant nous lol ça marche super bien merci beaucoup

1 « J'aime »

Maintenant je vais essayer de corser les choses lol. Est-ce qu’il est possible de faire comme un switch de fermer ou ouvrir ttous les volets avec un seul bouton cover ?

Dans un autre sujet (déjà que là c’est plus une histoire d’inverser l’état) et après avoir faire une petite recherche sur le forum. Il doit bien avoir une 30aine de sujets similaires pour déclencher un service à partir d’uns carte.

OK désolé je sais jamais si je dois ouvrir le sujet car j’ai toujours peur de gêner en posant une question c’est pour ça

C’est assez simple : 1 sujet pour avoir 1 solution…
C’est pas pour toi que c’est simple mais pour les suivants, avec les bons mots clés dans la recherche, on tombe sur la bonne info, qui n’a qu’un problème et qu’une solution.
Le forum n’est pas limité en nombre de sujets ou en contenu