Automatiser ses volets roulants en fonction du soleil été / hiver

Bonjour,
Désolé pour la réponse ultra tardive, mais je n’ai pas eu l’occasion de me concentrer sur ce problème depuis ta réponse !
Merci pour ta proposition mais j’obtiens des erreurs dans le log.
Voici mon log :

Logger: homeassistant.config
Source: config.py:820
First occurred: 16:29:19 (1 occurrences)
Last logged: 16:29:19

Invalid config for [template]: invalid template (TemplateSyntaxError: unexpected '%') for dictionary value @ data['binary_sensor'][0]['state']. Got "{{ \n {% set E = state_attr('sun.sun', 'elevation') | float %}\n {% set A = state_attr('sun.sun', 'azimuth') | float %}\n {{ E > 45 and 145 < A < 245 }}\n}} ". (See /config/template_listing.yaml, line 36).

Dans les outils de dév, j’obtiens également la même erreur :

Avez-vous une idée du problème ?
Merci !

Salut Hankey71,

Petite erreur dans le code que je t’avais soumis, il y’avait « trop » d’accolade :stuck_out_tongue:

template:
  - binary_sensor:
    - name: "Soleil Chambre rdc"
      unique_id: soleil_chambre_rdc
      state: >
        {% set E =  state_attr('sun.sun', 'elevation') | float %}
        {% set A =  state_attr('sun.sun', 'azimuth') | float %}
        {{ E > 45 and 145 < A < 245 }}

Ca devrait être mieux comme ça :wink:

image

image

Restera à ajouter des valeurs par défaut aux « float » pour éviter des problèmes, tu peux faire comme ça :

template:
  - binary_sensor:
    - name: "Soleil Chambre rdc"
      unique_id: soleil_chambre_rdc
      state: >
        {% set E =  state_attr('sun.sun', 'elevation') | float(50) %}
        {% set A =  state_attr('sun.sun', 'azimuth') | float(50) %}
        {{ E > 45 and 145 < A < 245 }}
2 « J'aime »

Merci pour ton aide !
Que signifie exactement (50) à côté de float ?

Si par hasard l’entité « sun » n’est pas disponible, les valeurs des attributs ne seront pas dispo non plus.

Alors la valeur entre () sera prise par défaut pour évaluer la template, sans valeur par défaut c’est message d’erreur etc …

Plus d’info ici

1 « J'aime »

Ok !
Alors je comprends pas l’ensemble des infos, mais je suis entrain de convertir mes sensor et binary_sensor dans le nouveau format. Pour l’instant cela fonctionne.
Il va falloir que je me penche sérieusement dessus pour comprendre le fonctionnement précis des template.

Bonjour,

@Felix62 ,

Je viens de migrer mes volets vers HA et je me demandais comment automatiser l’ouverture et fermeture de ces deniers, j’aimerais tester ta solution mais il y a certaines choses que je ne comprends pas, ton « package » c’est quoi exactement, un fichier yaml nommé package.yaml?

T’as 2 groupes, volets orientés sud et volet orientés ouest, les entités rattaché à chaque groupe représentent chaque volet dans la dite orientation, c’est bien ça? mais est-ce que tu dispose seulement d’un ou plusieurs volets par orientation?

Je ne vois pas les notions d’altitude ou d’azimut dans le code, j’ai peut-être lu trop vite, tu utilises ces notions dans ton code?

J’essaie de bien comprendre ton code avant de tenter de déployer la même chose chez moi.
Merci d’avance.

Edit: j’ai creer un github : felix624/HomeAssistant at main · felix624/felix624 · GitHub

Le package c’est un simple dossier qui regroupe des fichiers .yaml en rapport avec les dispositif mis en place
Volet. Yaml
Calendrier. Yaml ect…

Pour synthétiser, j’ai fait des groupes de volets:

  • Ouest ( comprenant 2 volet pour l’instant)
  • Sud (comprenant 1 volet pour l’instant)

Par la suite je pourrais rajouter des volet correspondant à l’orientation.

Ensuite j’utilise la notion azimut le degrés ensoleillement donnant sur les volet orienté sud ou ouest

Voici mon dashboard pour plus d’informations :

Bonjour,

Merci beaucoup pour les détails, je vais étudier tout ça avec attention.

Bonsoir,

@Felix62,

Après lecture, je viens de tenter d’adapter ta config pour mon usage, mais j’obtiens une erreur après avoir ajouté le Menu Input select dans le fichier configuration.yaml (c’est bien là qu’il faut le mettre?)

Le message d’erreur que j’obtiens est le suivant:

Integration error: mode_volet - Integration 'mode_volet' not found.
Integration error: modevoletnord - Integration 'modevoletnord' not found.
Integration error: modevoletsud - Integration 'modevoletsud' not found.
Integration error: volets - Integration 'volets' not found.

Ayant des volets seulement sur le côté nord et côté sud de la maison et je pense avoir adapté en conséquence, pour info je n’utilise pas package mais l’option !include

une idée de ce que j’ai mal fait?

Merci

Al

Oui les input_Select c’est bien config par défaut.
Essai de lancer le redémarrage sans input_Select et durant le redémarrage tu les rajoute si tu accède au fichier via smb

Merci, je vais tenter.

ca n’a pas fonctionné, j’ai toujours l’erreur. :frowning:

J’ai trouver c’est parce-que j’ai fait un include dans la config.
input_select: !include_dir_merge_named input_select/

Pour toi il faut pas oublier le « input_select: » en amont des différents volets

# Example configuration.yaml entry
input_select:
  who_cooks:
    name: Who cooks today
    options:
      - Paulus
      - Anne Therese
    initial: Anne Therese
    icon: mdi:panda
  living_room_preset:
    options:
      - Visitors
      - Visitors with kids
      - Home Alone

Ce qui pour toi donne:

############################
###     Input_select     ###
############################
input_select:
  mode_volet:
    name: mode volet principale
    options:
      - Normal
      - Auto chauf
      - Auto froid
      - Manuel
  modevoletsud:
    name: mode volet sud
    options:
      - Normal
      - Auto chauf
      - Auto froid
      - Manuel
  modevoletouest:
    name: mode volet ouest
    options:
      - Normal
      - Auto chauf
      - Auto froid
      - Manuel

Ps: merci cela m’a permis de mettre à jours ma page dashboard avec les explication en adéquation

J’ai bien ceci dans le config.yaml:

         
############################
###     Input_select     ###
############################
mode_volet:
  name: mode volet principale
  options:
    - Normal
    - Auto chauf
    - Auto froid
    - Manuel
modevoletsud:
  name: mode volet sud
  options:
    - Normal
    - Auto chauf
    - Auto froid
    - Manuel
modevoletnord:
  name: mode volet nord
  options:
    - Normal
    - Auto chauf
    - Auto froid
    - Manuel

du coup je comprends pas, bon je vais reprendre de zero, je vais regarde ca à tête réposée pendant ce long weekend et surtout merci pour ton aide et ton partage! :slight_smile:

il te manque le:

input_select:

Même en l’ajoutant, j’ai l’erreur:

         
input_select:
mode_volet:
  name: mode volet principale
  options:
    - Normal
    - Auto chauf
    - Auto froid
    - Manuel
modevoletsud:
  name: mode volet sud
  options:
    - Normal
    - Auto chauf
    - Auto froid
    - Manuel
modevoletnord:
  name: mode volet nord
  options:
    - Normal
    - Auto chauf
    - Auto froid
    - Manuel
Integration error: modevoletsud - Integration 'modevoletsud' not found.
Integration error: modevoletnord - Integration 'modevoletnord' not found.
Integration error: mode_volet - Integration 'mode_volet' not found.

Voilà ce que ca donne avec le bon alignement

ok, plus d’erreur sur ca, c’est bien les espaces qui posaient problème, par contre bizarre que vsCode n’a pas tilté la dessus ni le site yamllint.com

maintenant j’ai ceci quand j’intégre volet: l’include volet.yaml, dans config.yaml

Integration error: volet - Integration 'volet' not found.

Il s’agit de la même raison à priori, mais encore une fois autant vsCode et yamllint.com me disent que le code est ok, je comprends pas pourquoi.

Oui, c’est encore la même chose c’est parce-que mon fichier configuration.Yaml est décomposé.

Voici l’exemple a suivre

# Example configuration.yaml entry
cover:
  - platform: group
    name: "Window Covers"
    entities:
      - cover.hall_window
      - cover.living_room_window

Ceci devrait fonctionner et suffire

cover:   
   ############################################################
   ##                    COVERS GROUPS                       ##
   ############################################################
  - platform: group
    name: Volets de la maison
    entities:
      - cover.module_volet_salon
      - cover.module_volet_sejour
      
  - platform: group
    name: Volets orientés sud 
    entities:
      - cover.module_volet_salon
      #- cover.module_volet_salon
  - platform: group
    name: Volets orientés ouest
    entities:
      - cover.module_volet_sejour
      #- cover.module_volet_sejour

Merci, je continuerais à regarder ce soir après le taf! :slight_smile: