{"id":472,"date":"2021-09-04T16:19:00","date_gmt":"2021-09-04T14:19:00","guid":{"rendered":"https:\/\/domo.rem81.com\/?p=472"},"modified":"2025-03-25T18:01:09","modified_gmt":"2025-03-25T17:01:09","slug":"home-assistant-automatisation-des-volets","status":"publish","type":"post","link":"https:\/\/domo.rem81.com\/index.php\/2021\/09\/04\/home-assistant-automatisation-des-volets\/","title":{"rendered":"HA-Automatisation des volets (obsol\u00e9te)"},"content":{"rendered":"\n\n\n\n<h1 class=\"wp-block-heading\">Intro<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Description des automatismes mis en place dans la gestion de mes volets roulants<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Je poss\u00e8de deux types de volets roulants:<br> &#8211; Volets Somfy protocole RTS<br> &#8211; Volets Filaires<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les volets Somfy sont \u00e9quip\u00e9s de moteurs int\u00e9gr\u00e9s avec un protocole RTS, les volets filaires sont pilot\u00e9s par des modules Chacon DIO, dans les deux cas,  je les ai associ\u00e9 \u00e0 HA via une passerelle RFXtrx433E branch\u00e9e en USB sur le NUC. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">L\u2019int\u00e9gration HA utilis\u00e9e est  <a href=\"https:\/\/www.home-assistant.io\/integrations\/rfxtrx\" data-type=\"URL\" data-id=\"https:\/\/www.home-assistant.io\/integrations\/rfxtrx\" target=\"_blank\" rel=\"noreferrer noopener\">RFXCOM RFXtrx<\/a>. Il faut bien lire la documentation qui explique comment g\u00e9n\u00e9rer le code associ\u00e9 au volet puis comment l\u2019int\u00e9grer dans HA. <\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Modes de fonctionnement<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">J&rsquo;utilise 3 modes de fonctionnement s\u00e9lectionnable via un \u00ab\u00a0input.select\u00a0\u00bb:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Auto Hiv<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L&rsquo;hiver, nous pr\u00e9f\u00e9rons fermer les volets des la tomb\u00e9e de la nuit afin de se pr\u00e9server du froid. L&rsquo;ouverture et la fermeture sont bas\u00e9s sur la luminosit\u00e9 ext\u00e9rieure et la position du soleil. La luminosit\u00e9 est mesur\u00e9 par un ESP8266-01 sous ESPHOME \u00e9quip\u00e9 d&rsquo;une cellule <a href=\"https:\/\/www.gotronic.fr\/art-capteur-de-lumiere-bh1750-ada4681-33469.htm\" data-type=\"URL\" data-id=\"https:\/\/www.gotronic.fr\/art-capteur-de-lumiere-bh1750-ada4681-33469.htm\" target=\"_blank\" rel=\"noreferrer noopener\">bh1750<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les seuils de luminosit\u00e9 haut et bas sont m\u00e9moris\u00e9s dans des input_number, un pour la fermeture et  un pour l&rsquo;ouverture, respectivement 5 et 30 lux dans mon cas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La position du soleil \u00ab\u00a0sous\u00a0\u00bb ou \u00ab\u00a0au-dessus\u00a0\u00bb de l&rsquo;horizon est donn\u00e9e par le sensor \u00ab\u00a0sun.sun\u00a0\u00bb. Ces deux sensors permettent de d\u00e9tecter que le soleil se couche ou se l\u00e8ve.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">La combinaison logique des ces deux informations permet de calculer un \u00ab\u00a0input_boolean.nuit_jour\u00a0\u00bb avec nuit=off et jour=on, (voir le code ci-apr\u00e8s),  qui servira dans mon automatisme principal .<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>- id: '1610184966825'\n  alias: Volet_Boolean Nuit\/Jour\n  description: ''\n  trigger:\n  - platform: template\n    value_template: '{{ states(''sensor.luminosite'' )|float &gt; states(''input_number.luminosite_seuil_haut'')|float\n      and is_state(\"sun.sun\", \"above_horizon\") }}'\n    id: nuit-&gt;jour\n  - platform: template\n    value_template: '{{ states(''sensor.luminosite'')|float &lt; states(''input_number.luminosite_seuil_bas'')|float\n      and is_state(\"sun.sun\", \"below_horizon\") }}'\n    id: jour-&gt;nuit\n  condition: &#091;]\n  action:\n  - choose:\n    - conditions:\n      - condition: trigger\n        id: nuit-&gt;jour\n      sequence:\n      - service: input_boolean.turn_on\n        target:\n          entity_id: input_boolean.nuit_jour\n    - conditions:\n      - condition: trigger\n        id: jour-&gt;nuit\n      sequence:\n      - service: input_boolean.turn_off\n        target:\n          entity_id: input_boolean.nuit_jour\n    default: &#091;]\n  mode: single<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Auto ETE<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">L&rsquo;\u00e9t\u00e9 nous restons dehors plus tard et nous nous couchons bien apr\u00e8s la tomb\u00e9e de la nuit. Apr\u00e8s avoir essay\u00e9 plusieurs solutions bas\u00e9es sur le mode hiver,  j&rsquo;ai pr\u00e9f\u00e9r\u00e9 simplifier le fonctionnement: L&rsquo;ouverture et la fermeture seront pilot\u00e9s par deux \u00ab\u00a0input_datetime\u00a0\u00bb: Un pour l&rsquo;ouverture et le deuxi\u00e8me pour la fermeture. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Absent<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">J&rsquo;utilise ce mode lorsque nous nous absentons de la maison pour une longue p\u00e9riode. Pour faire simple, je ferme tous les volets et j&rsquo;ouvre celui du salon pour donner un peu de vie et de clart\u00e9 en fonction du boolean \u00ab\u00a0jour\/nuit\u00a0\u00bb.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Scripts.<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">La liste des volets \u00e0 ouvrir et \u00e0 fermer est programm\u00e9e dans des scripts, les scripts sont appel\u00e9s par l&rsquo;automatisme en fonction du mode de fonctionnement utilis\u00e9.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Les scripts \u00ab\u00a0ouverture volet\u00a0\u00bb et \u00ab\u00a0fermeture volets\u00a0\u00bb sont d\u00e9crits ci_apr\u00e8s. A noter que les ordres envoy\u00e9s aux volets sont espac\u00e9s de 2 secondes  afin de s&rsquo;assurer que la passerelle RFXtrx ne sature pas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Un fonctionnement sp\u00e9cifique \u00e0 l&rsquo;ouverture est r\u00e9serv\u00e9 \u00e0 trois pi\u00e8ces (2 chambres amis et bureau), il est conditionn\u00e9 par un input_boolean pr\u00e9cisant si les chambres et le bureau sont occup\u00e9s.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Mode Auto Hiv et Auto Ete<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Ouverture Volets<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>ouverture_volet:\n  alias: ouverture_volet\n  sequence:\n  - service: cover.open_cover\n    data: {}\n    entity_id: cover.salon_petit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    entity_id: cover.cuisine\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    entity_id: cover.sdb\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    entity_id: cover.volet_sam\n  - service: script.volets_bureau\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: script.ouverture_volets_chamb_nord\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: script.ouverture_volet_chamb_sud\n  mode: single\n  icon: mdi:shuttle<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Fermeture Volets<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>fermeture_volet:\n  alias: fermeture_volet\n  sequence:\n  - service: cover.open_cover\n    data: {}\n    entity_id: cover.bureau_gauche\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.bureau_droit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.salon_petit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.sdb\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.amis_nord\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.parents_petit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.volet_parents_grand\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.amis_sud_petit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.volet_amis_sud_grand\n  mode: single\n  icon: mdi:shuttle\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Mode Absent<\/strong><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Ouverture Volets<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>ouverture_volet_absent:\n  alias: ouverture_volet_absent\n  sequence:\n  - service: cover.open_cover\n    data: {}\n    target:\n      entity_id: cover.bureau_droit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    target:\n      entity_id: cover.bureau_gauche\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    target:\n      entity_id: cover.salon_petit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    target:\n      entity_id: cover.cuisine\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    target:\n      entity_id: cover.sdb\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    target:\n      entity_id: cover.amis_nord\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    target:\n      entity_id: cover.parents_petit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    target:\n      entity_id: cover.volet_parents_grand\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    target:\n      entity_id: cover.volet_sam\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    target:\n      entity_id: cover.volet_amis_sud_grand\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.open_cover\n    data: {}\n    target:\n      entity_id: cover.amis_sud_petit\n  mode: single\n  icon: mdi:shuttle<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Fermeture Volets<\/strong><\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>fermeture_volet_absent:\n  alias: fermeture_volet_absent\n  sequence:\n  - service: cover.open_cover\n    data: {}\n    entity_id: cover.bureau_gauche\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.bureau_droit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.salon_petit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    target:\n      entity_id:\n      - cover.cuisine\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.sdb\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.amis_nord\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.parents_petit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.volet_parents_grand\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.amis_sud_petit\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.volet_amis_sud_grand\n  - delay:\n      hours: 0\n      minutes: 0\n      seconds: 2\n      milliseconds: 0\n  - service: cover.close_cover\n    data: {}\n    entity_id: cover.volet_sam\n  mode: single\n  icon: mdi:shuttle<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">D\u00e9claration des entit\u00e9s<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Vous trouverez ci-apr\u00e8s le fichier volet.yam.<br>Dans ce fichier vous retrouverez la d\u00e9claration des diff\u00e9rentes variables utilis\u00e9es.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/github.com\/remycrochon\/home-assistant\/blob\/master\/packages\/volet.yaml\" data-type=\"URL\" data-id=\"https:\/\/github.com\/remycrochon\/home-assistant\/blob\/master\/packages\/volet.yaml\" target=\"_blank\" rel=\"noreferrer noopener\">Code source \u00e0 t\u00e9l\u00e9charger<\/a><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>input_boolean:\n  # Gestion volets\n  presence_amis_bureau:\n    name: Presence Amis Bureau\n    icon: mdi:account\n\n  presence_amis_ch_sud:\n    name: Presence Amis Chamb Sud\n    icon: mdi:account\n\n  presence_amis_ch_nord:\n    name: Presence Amis Chamb Nord\n    icon: mdi:account\n\n# Calcul Jour\/nuit selon luminosite et position du soleil sur l'horizon\n  nuit_jour:\n    name: Nuit=0\/Jour=1\n    icon: mdi:weather-sunny\n\n\n# Calcul Jour\/nuit selon luminosite\n  val_automs_soleil:\n    name: Valid Automs Volet Soleil\n    icon: mdi:weather-sunny\n\ninput_datetime:\n  # Horaires Volets ete\n  horaire_ete_volet_ouv:\n    name: Horaire ete volets ouverture\n    has_date: false\n    has_time: true\n  horaire_ete_volet_ferm:\n    name: Horaire ete volets fermeture\n    has_date: false\n    has_time: true\n\ninput_number:\n# Consigne Min\/max luminosit\u00e9 \n# gestion volet: Calcul du Input_boolean Nuit\/jout\n    luminosite_seuil_bas:\n      name: Lum. seuil bas\n      mode: box\n      min: 0\n      max: 10\n      unit_of_measurement: \"Lux\"\n      icon: mdi:weather-sunny\n    luminosite_seuil_haut:\n      name: Lum. seuil haut\n      mode: box\n      min: 10\n      max: 50\n      unit_of_measurement: \"Lux\"\n      icon: mdi:weather-sunny \n# gestion volet: Niveau Ensoleilement ouv auto volet\n    radiation_seuil_ferm_volet:\n      name: Radiat seuil ferm volets\n      mode: box\n      min: 0\n      max: 1200\n      unit_of_measurement: \"w\/m2\"\n      icon: mdi:weather-sunny\n\ninput_select:\n  volets:\n    name: Volets\n    icon: mdi:window-shutter\n    options:\n      - Auto Hiv\n      - Auto Ete\n      - Absent\n      - Arret\ncover:\n# Convertion TC volet Amis grand en cover\n  - platform: template\n    covers:\n      volet_amis_sud_grand:\n        friendly_name: \"Volet amis sud grand\"\n        open_cover:\n          service: switch.turn_on\n          data:\n            entity_id: switch.tc_volet_amis_grand\n        close_cover:\n          service: switch.turn_off\n          data:\n            entity_id: switch.tc_volet_amis_grand\n        icon_template: &gt;-\n          {% if is_state('switch.tc_volet_amis_grand', 'on') %}\n            mdi:garage-open\n          {% else %}\n            mdi:garage\n          {% endif %} \n  # Convertion TC volet SaM en cover\n      volet_sam:\n        friendly_name: \"Volet SaM\"\n        open_cover:\n          service: switch.turn_on\n          data:\n            entity_id: switch.tc_volet_sam\n        close_cover:\n          service: switch.turn_off\n          data:\n            entity_id: switch.tc_volet_sam\n        icon_template: &gt;-\n          {% if is_state('switch.tc_volet_sam', 'on') %}\n            mdi:garage-open\n          {% else %}\n            mdi:garage\n          {% endif %} \n  # Convertion TC parents grand\n      volet_parents_grand:\n        friendly_name: \"Volet Parents Grand\"\n        open_cover:\n          service: switch.turn_on\n          data:\n            entity_id: switch.tc_chamb_parents\n        close_cover:\n          service: switch.turn_off\n          data:\n            entity_id: switch.tc_chamb_parents\n        icon_template: &gt;-\n          {% if is_state('switch.tc_chamb_parents', 'on') %}\n            mdi:garage-open\n          {% else %}\n            mdi:garage\n          {% endif %}<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">Automatisme principal<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Vous trouverez ci apr\u00e8s le descriptif fonctionnel de l&rsquo;automatisme principal.<br>J&rsquo;utilise la fonction\u00a0\u00bbchoose\u00a0\u00bb qui, combin\u00e9e aux d\u00e9clencheurs sur \u00ab\u00a0balise\u00a0\u00bb(id), permet de simplifier le codage.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Descriptif fonctionnel<\/strong><\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"879\" height=\"363\" src=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/01\/image-10-1.png\" alt=\"\" class=\"wp-image-1327\" srcset=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/01\/image-10-1.png 879w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/01\/image-10-1-300x124.png 300w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/01\/image-10-1-768x317.png 768w\" sizes=\"auto, (max-width: 879px) 100vw, 879px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Choix gestion&nbsp;nb&nbsp;de&nbsp;chambres:&nbsp;<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"374\" height=\"73\" src=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/01\/image-11.png\" alt=\"\" class=\"wp-image-1328\" srcset=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/01\/image-11.png 374w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/01\/image-11-300x59.png 300w\" sizes=\"auto, (max-width: 374px) 100vw, 374px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Calcul&nbsp;du&nbsp;input_boolean&nbsp;nuit\/jour&nbsp;<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"585\" height=\"132\" src=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/01\/image-12.png\" alt=\"\" class=\"wp-image-1330\" srcset=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/01\/image-12.png 585w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/01\/image-12-300x68.png 300w\" sizes=\"auto, (max-width: 585px) 100vw, 585px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Codage<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Vous trouverez ci-apr\u00e8s le code .yaml de l&rsquo;automatisation correspondant au descriptif fonctionnel:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>- id: '1632989157968'\n  alias: Volet_Automatismes\n  description: Ete\/Hiver\/Absent\n  trigger:\n  - platform: state\n    entity_id: input_boolean.nuit_jour\n    from: 'on'\n    to: 'off'\n    id: jour-&gt;nuit\n  - platform: time\n    at: input_datetime.horaire_ete_volet_ouv\n    id: ouv\n  - platform: time\n    at: input_datetime.horaire_ete_volet_ferm\n    id: ferm\n  - platform: state\n    entity_id: input_boolean.nuit_jour\n    id: nuit-&gt;jour\n    from: 'off'\n    to: 'on'\n  condition: &#091;]\n  action:\n  - choose:\n    - conditions:\n      - condition: state\n        entity_id: input_select.volets\n        state: Auto Hiv\n      - condition: trigger\n        id: jour-&gt;nuit\n      sequence:\n      - service: script.fermeture_volet\n    - conditions:\n      - condition: state\n        entity_id: input_select.volets\n        state: Auto Hiv\n      - condition: trigger\n        id: nuit-&gt;jour\n      sequence:\n      - service: script.ouverture_volet\n    - conditions:\n      - condition: state\n        entity_id: input_select.volets\n        state: Auto Ete\n      - condition: trigger\n        id: ouv\n      sequence:\n      - service: script.ouverture_volet\n    - conditions:\n      - condition: state\n        entity_id: input_select.volets\n        state: Auto Ete\n      - condition: trigger\n        id: ferm\n      sequence:\n      - service: script.fermeture_volet\n    - conditions:\n      - condition: state\n        entity_id: input_select.volets\n        state: Absent\n      - condition: state\n        entity_id: input_boolean.nuit_jour\n        state: 'off'\n      sequence:\n      - service: script.fermeture_volet_absent\n    - conditions:\n      - condition: state\n        entity_id: input_select.volets\n        state: Absent\n      - condition: state\n        entity_id: input_boolean.nuit_jour\n        state: 'on'\n      sequence:\n      - service: script.ouverture_volet_absent\n    default: &#091;]\n  mode: single<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">Interface lovelace<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Interfaces simples regroupant les informations n\u00e9cessaires au pilotage, \u00e0 la surveillance et au param\u00e9trage de la fonction \u00ab\u00a0Volets\u00a0\u00bb<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Exemple de code:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"563\" src=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/09\/image-11-1024x563.png\" alt=\"\" class=\"wp-image-2301\" srcset=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/09\/image-11-1024x563.png 1024w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/09\/image-11-300x165.png 300w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/09\/image-11-768x422.png 768w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2022\/09\/image-11.png 1323w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>cards:\n  - cards:\n      - cards:\n          - entity: cover.porte_garage\n            label: Garage\n            operator: default\n            show_icon: true\n            show_label: true\n            show_name: false\n            size: 70%\n            state:\n              - color: green\n                icon: mdi:garage\n                operator: template\n                value: &gt;\n                  &#091;&#091;&#091; return\n                  states&#091;'cover.porte_garage'].attributes.current_position &lt; 1\n                  ]]]\n              - color: red\n                icon: mdi:garage-open\n                operator: template\n                value: &gt;\n                  &#091;&#091;&#091; return\n                  states&#091;'cover.porte_garage'].attributes.current_position &gt; 99\n                  ]]]\n              - color: orange\n                icon: mdi:garage-alert\n                operator: default\n            tap_action:\n              action: more-info\n            theme: Mushroom\n            type: custom:button-card\n          - icon: mdi:arrow-up-bold\n            name: Ouvrir\n            show_icon: true\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.open_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.porte_garage\n            type: button\n          - icon: mdi:pause\n            name: Stop\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.stop_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.porte_garage\n            type: button\n          - icon: mdi:arrow-down-bold\n            name: Fermer\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.close_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.porte_garage\n            type: button\n          - icon: mdi:weather-sunset-up\n            name: Soleil\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.set_cover_position\n              service_data:\n                position: 50\n              target:\n                entity_id:\n                  - cover.porte_garage\n            type: button\n          - elements:\n              - attribute: current_position\n                entity: cover.porte_garage\n                style:\n                  color: '#44739E'\n                  font-size: 16px\n                  font-weight: bold\n                  left: 50%\n                  top: 50%\n                suffix: '%'\n                tap_action:\n                  action: more-info\n                type: state-label\n            image: \/local\/images\/carre_orange.png\n            type: picture-elements\n            view_layout:\n              position: sidebar\n        columns: 6\n        square: true\n        type: grid\n      - cards:\n          - entity: cover.porte_sous_sol\n            label: Sous Sol\n            show_icon: true\n            show_label: true\n            show_name: false\n            size: 70%\n            state:\n              - color: green\n                icon: mdi:garage\n                operator: template\n                value: &gt;\n                  &#091;&#091;&#091; return\n                  states&#091;'cover.porte_sous_sol'].attributes.current_position &lt; 1\n                  ]]]\n              - color: red\n                icon: mdi:garage-open\n                operator: template\n                value: &gt;\n                  &#091;&#091;&#091; return\n                  states&#091;'cover.porte_sous_sol'].attributes.current_position &gt;\n                  99 ]]]\n              - color: orange\n                icon: mdi:garage-alert\n                operator: default\n            tap_action:\n              action: more-info\n            theme: Mushroom\n            type: custom:button-card\n          - icon: mdi:arrow-up-bold\n            name: Ouvrir\n            show_icon: true\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.open_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.porte_sous_sol\n            type: button\n          - icon: mdi:pause\n            name: Stop\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.stop_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.porte_sous_sol\n            type: button\n          - icon: mdi:arrow-down-bold\n            name: Fermer\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.close_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.porte_sous_sol\n            type: button\n          - icon: mdi:weather-sunset-up\n            name: Soleil\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.set_cover_position\n              service_data:\n                position: 50\n              target:\n                entity_id:\n                  - cover.porte_sous_sol\n            type: button\n          - elements:\n              - attribute: current_position\n                entity: cover.porte_sous_sol\n                style:\n                  color: '#44739E'\n                  font-size: 16px\n                  font-weight: bold\n                  left: 50%\n                  top: 50%\n                suffix: '%'\n                tap_action:\n                  action: more-info\n                type: state-label\n            image: \/local\/images\/carre_orange.png\n            type: picture-elements\n            view_layout:\n              position: sidebar\n        columns: 6\n        square: true\n        type: grid\n      - cards:\n          - entity: group.volets_bureau\n            hold_action:\n              action: none\n            icon: mdi:desk-lamp\n            name: Bureau\n            show_icon: true\n            show_name: true\n            show_state: false\n            tap_action:\n              action: more-info\n            type: button\n          - icon: mdi:arrow-up-bold\n            name: Ouvrir\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.open_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_gauche_p\n                  - cover.volet_droit_p\n            type: button\n          - icon: mdi:pause\n            name: Stop\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.stop_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_droit_p\n                  - cover.volet_gauche_p\n            type: button\n          - icon: mdi:arrow-down-bold\n            name: Fermer\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.close_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_droit_p\n                  - cover.volet_gauche_p\n            type: button\n          - icon: mdi:weather-sunset-up\n            name: Soleil\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.set_cover_position\n              service_data:\n                position: 50\n              target:\n                entity_id:\n                  - cover.volet_droit_p\n                  - cover.volet_gauche_p\n            type: button\n          - elements:\n              - attribute: current_position\n                entity: cover.volet_droit_p\n                style:\n                  color: '#44739E'\n                  font-size: 16px\n                  font-weight: bold\n                  left: 50%\n                  top: 50%\n                suffix: '%'\n                tap_action:\n                  action: more-info\n                type: state-label\n            image: \/local\/images\/carre_orange.png\n            type: picture-elements\n            view_layout:\n              position: sidebar\n        columns: 6\n        square: true\n        type: grid\n      - cards:\n          - entity: group.volets_salon_cuisine\n            hold_action:\n              action: none\n            icon: mdi:sofa\n            name: Salon\n            show_icon: true\n            show_name: true\n            show_state: false\n            tap_action:\n              action: more-info\n            type: button\n          - icon: mdi:arrow-up-bold\n            name: Ouvrir\n            show_icon: true\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.open_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_sam_grand_p\n                  - cover.volet_salon_p\n                  - cover.volet_cuisine_p\n            type: button\n          - icon: mdi:pause\n            name: Stop\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.stop_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_salon_p\n                  - cover.volet_cuisine_p\n                  - cover.volet_sam_grand_p\n            type: button\n          - icon: mdi:arrow-down-bold\n            name: Fermer\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.close_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_salon_p\n                  - cover.volet_sam_grand_p\n                  - cover.volet_cuisine_p\n            type: button\n          - icon: mdi:weather-sunset-up\n            name: Soleil\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.set_cover_position\n              service_data:\n                position: 50\n              target:\n                entity_id:\n                  - cover.volet_salon_p\n                  - cover.volet_sam_grand_p\n                  - cover.volet_cuisine_p\n            type: button\n          - elements:\n              - attribute: current_position\n                entity: cover.volet_sam_grand_p\n                style:\n                  color: '#44739E'\n                  font-size: 16px\n                  font-weight: bold\n                  left: 50%\n                  top: 50%\n                suffix: '%'\n                tap_action:\n                  action: more-info\n                type: state-label\n            image: \/local\/images\/carre_orange.png\n            type: picture-elements\n            view_layout:\n              position: sidebar\n        columns: 6\n        square: true\n        type: grid\n      - cards:\n          - entity: cover.volet_sdb_p\n            hold_action:\n              action: none\n            icon: mdi:bathtub\n            name: SdB\n            show_icon: true\n            show_name: true\n            show_state: false\n            tap_action:\n              action: more-info\n            type: button\n          - icon: mdi:arrow-up-bold\n            name: Ouvrir\n            show_icon: true\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.open_cover\n              service_data: {}\n              target:\n                entity_id: cover.volet_sdb_p\n            type: button\n          - icon: mdi:pause\n            name: Stop\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.stop_cover\n              service_data: {}\n              target:\n                entity_id: cover.volet_sdb_p\n            type: button\n          - icon: mdi:arrow-down-bold\n            name: Fermer\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.close_cover\n              service_data: {}\n              target:\n                entity_id: cover.volet_sdb_p\n            type: button\n          - icon: mdi:weather-sunset-up\n            name: Soleil\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.set_cover_position\n              service_data:\n                position: 50\n              target:\n                entity_id: cover.volet_sdb_p\n            type: button\n          - elements:\n              - attribute: current_position\n                entity: cover.volet_sdb_p\n                style:\n                  color: '#44739E'\n                  font-size: 16px\n                  font-weight: bold\n                  left: 50%\n                  top: 50%\n                suffix: '%'\n                tap_action:\n                  action: more-info\n                type: state-label\n            image: \/local\/images\/carre_orange.png\n            type: picture-elements\n            view_layout:\n              position: sidebar\n        columns: 6\n        square: true\n        type: grid\n      - cards:\n          - entity: cover.volet_amis_nord_p\n            hold_action:\n              action: none\n            icon: mdi:bed\n            name: A Nord\n            show_icon: true\n            show_name: true\n            show_state: false\n            tap_action:\n              action: more-info\n            type: button\n          - icon: mdi:arrow-up-bold\n            name: Ouvrir\n            show_icon: true\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.open_cover\n              service_data: {}\n              target:\n                entity_id: cover.volet_amis_nord_p\n            type: button\n          - icon: mdi:pause\n            name: Stop\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.stop_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_amis_nord_p\n            type: button\n          - icon: mdi:arrow-down-bold\n            name: Fermer\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.close_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_amis_nord_p\n            type: button\n          - icon: mdi:weather-sunset-up\n            name: Soleil\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.set_cover_position\n              service_data:\n                position: 50\n              target:\n                entity_id: cover.volet_amis_nord_p\n            type: button\n          - elements:\n              - attribute: current_position\n                entity: cover.volet_amis_nord_p\n                style:\n                  color: '#44739E'\n                  font-size: 16px\n                  font-weight: bold\n                  left: 50%\n                  top: 50%\n                suffix: '%'\n                tap_action:\n                  action: more-info\n                type: state-label\n            image: \/local\/images\/carre_orange.png\n            type: picture-elements\n            view_layout:\n              position: sidebar\n        columns: 6\n        square: true\n        type: grid\n      - cards:\n          - entity: group.volets_parents\n            hold_action:\n              action: none\n            icon: mdi:bed\n            name: Parents\n            show_icon: true\n            show_name: true\n            show_state: false\n            tap_action:\n              action: more-info\n            type: button\n          - icon: mdi:arrow-up-bold\n            name: Ouvrir\n            show_icon: true\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.open_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_parents_grand_p\n                  - cover.volet_ch_parent_p\n            type: button\n          - icon: mdi:pause\n            name: Stop\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.stop_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_ch_parent_p\n                  - cover.volet_parents_grand_p\n            type: button\n          - icon: mdi:arrow-down-bold\n            name: Fermer\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.close_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_parents_grand_p\n                  - cover.volet_ch_parent_p\n            type: button\n          - icon: mdi:weather-sunset-up\n            name: Soleil\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.set_cover_position\n              service_data:\n                position: 50\n              target:\n                entity_id:\n                  - cover.volet_ch_parent_p\n                  - cover.volet_parents_grand_p\n            type: button\n          - elements:\n              - attribute: current_position\n                entity: cover.volet_parents_grand_p\n                style:\n                  color: '#44739E'\n                  font-size: 16px\n                  font-weight: bold\n                  left: 50%\n                  top: 50%\n                suffix: '%'\n                tap_action:\n                  action: more-info\n                type: state-label\n            image: \/local\/images\/carre_orange.png\n            type: picture-elements\n            view_layout:\n              position: sidebar\n        columns: 6\n        square: true\n        type: grid\n      - cards:\n          - entity: group.volets_amis_sud\n            hold_action:\n              action: none\n            icon: mdi:bed\n            name: A Sud\n            show_icon: true\n            show_name: true\n            show_state: false\n            tap_action:\n              action: more-info\n            type: button\n          - icon: mdi:arrow-up-bold\n            name: Ouvrir\n            show_icon: true\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.open_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_amis_sud_grand_p\n                  - cover.volet_amis_sud_p\n            type: button\n          - icon: mdi:pause\n            name: Stop\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.stop_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_amis_sud_grand_p\n                  - cover.volet_amis_sud_p\n            type: button\n          - icon: mdi:arrow-down-bold\n            name: Fermer\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.close_cover\n              service_data: {}\n              target:\n                entity_id:\n                  - cover.volet_amis_sud_grand_p\n                  - cover.volet_amis_sud_p\n            type: button\n          - icon: mdi:weather-sunset-up\n            name: Soleil\n            show_name: false\n            tap_action:\n              action: call-service\n              service: cover.set_cover_position\n              service_data:\n                position: 50\n              target:\n                entity_id:\n                  - cover.volet_amis_sud_p\n                  - cover.volet_amis_sud_grand_p\n            type: button\n          - elements:\n              - attribute: current_position\n                entity: cover.volet_amis_sud_grand_p\n                style:\n                  color: '#44739E'\n                  font-size: 16px\n                  font-weight: bold\n                  left: 50%\n                  top: 50%\n                suffix: '%'\n                tap_action:\n                  action: more-info\n                type: state-label\n            image: \/local\/images\/carre_orange.png\n            type: picture-elements\n            view_layout:\n              position: sidebar\n        columns: 6\n        square: true\n        type: grid\n    type: vertical-stack\n  - cards:\n      - name: PORTES\n        styles:\n          card:\n            - text-transform: uppercase\n            - color: white\n            - font-size: 125%\n            - border-radius: 0%\n            - font-weight: bold\n            - letter-spacing: 10px\n        type: custom:button-card\n      - cards:\n          - entity: binary_sensor.detecteur_petite_porte_sous_sol\n            name: Ssol\n            show_icon: true\n            show_label: false\n            show_name: true\n            size: 70%\n            state:\n              - color: green\n                icon: mdi:door\n                value: 'off'\n              - color: red\n                icon: mdi:door-open\n                value: 'on'\n              - color: yellow\n                icon: mdi:door\n                operator: default\n                styles:\n                  card:\n                    - animation: blink 2s ease infinite\n            tap_action:\n              action: more-info\n            theme: Mushroom\n            type: custom:button-card\n          - entity: binary_sensor.porte_cellier\n            name: Cellier\n            show_icon: true\n            show_label: false\n            show_name: true\n            size: 70%\n            state:\n              - color: green\n                icon: mdi:door\n                value: 'off'\n              - color: red\n                icon: mdi:door-open\n                value: 'on'\n              - color: yellow\n                icon: mdi:door\n                operator: default\n                styles:\n                  card:\n                    - animation: blink 2s ease infinite\n            tap_action:\n              action: more-info\n            theme: Mushroom\n            type: custom:button-card\n          - entity: binary_sensor.detecteur_porte_entree\n            name: Entr\u00e9e\n            show_icon: true\n            show_label: false\n            show_name: true\n            size: 70%\n            state:\n              - color: green\n                icon: mdi:door\n                value: 'off'\n              - color: red\n                icon: mdi:door-open\n                value: 'on'\n              - color: yellow\n                icon: mdi:door\n                operator: default\n                styles:\n                  card:\n                    - animation: blink 2s ease infinite\n            tap_action:\n              action: more-info\n            theme: Mushroom\n            type: custom:button-card\n        columns: 6\n        square: true\n        type: grid\n      - name: VOLETS\n        styles:\n          card:\n            - text-transform: uppercase\n            - color: white\n            - font-size: 125%\n            - border-radius: 0%\n            - font-weight: bold\n            - letter-spacing: 10px\n        type: custom:button-card\n      - entities:\n          - entity: input_select.volets\n            name: Mode de Fonctionnement\n          - entities:\n              - entity: sun.sun\n                name: Position\n              - entity: sensor.heure_leve_soleil\n                name: Lev\u00e9\n              - entity: sensor.heure_couche_soleil\n                name: Couch\u00e9\n            entity: sensor.heure_leve_soleil\n            icon: mdi:weather-sunny\n            name: Soleil\n            show_state: false\n            type: custom:multiple-entity-row\n          - entities:\n              - entity: sensor.bh1750_illuminance\n                name: mesure\n              - entity: input_number.luminosite_seuil_bas\n                name: Bas\n              - entity: input_number.luminosite_seuil_haut\n                name: Haut\n            entity: input_number.luminosite_seuil_bas\n            icon: mdi:weather-sunny\n            name: Auto Hiver\n            show_state: false\n            type: custom:multiple-entity-row\n          - entities:\n              - entity: input_datetime.horaire_ete_volet_ouv\n                name: Ouv\n              - entity: input_datetime.horaire_ete_volet_ferm\n                name: Ferm\n            entity: input_datetime.horaire_ete_volet_ouv\n            icon: mdi:clock\n            name: Auto Ete\n            show_state: false\n            type: custom:multiple-entity-row\n          - entities:\n              - entity: input_boolean.nuit_jour\n                name: N\/J (Actif)\n              - entity: input_boolean.presence_amis_bureau\n                name: Amis Bur\n              - entity: input_boolean.presence_amis_ch_nord\n                name: Amis Nord\n              - entity: input_boolean.presence_amis_ch_sud\n                name: Amis Sud\n            entity: input_boolean.nuit_jour\n            icon: mdi:account\n            name: Communs\n            show_state: false\n            type: custom:multiple-entity-row\n          - entities:\n              - entity: automation.4_1_3_volet_suivi_azimuth_soleil_dupliquer\n                name: Automs\n              - entity: sensor.vp2_radiation_moyenne\n                name: Radia\n            entity: sensor.vp2_radiation_moyenne\n            icon: mdi:weather-sunny\n            name: Ass Sol\n            show_state: false\n            type: custom:multiple-entity-row\n          - entities:\n              - entity: binary_sensor.position_soleil_matin\n                name: Mat\n              - entity: binary_sensor.position_soleil_midi\n                name: Mid\n              - entity: binary_sensor.position_soleil_am\n                name: AM\n              - entity: sensor.sun_elevation\n                name: Elev\n            entity: sensor.sun_elevation\n            icon: mdi:weather-sunny\n            name: Position Sol\n            show_state: false\n            type: custom:multiple-entity-row\n          - align: split\n            color: grey\n            columns: 1\n            entities:\n              - entity: sensor.sun_azimuth\n            max: '360'\n            name: Azimuth\n            severity:\n              - color: green\n                from: '103'\n                to: '137'\n              - color: green\n                from: 160\n                to: 239\n            show_icon: true\n            style: |\n              ha-card { \n                --paper-card-background-color: 'rgba(0, 0, 0, 0.0)';\n                --ha-card-background: \"rgba(0, 0, 0, 0.0)\";\n                --ha-card-box-shadow: 'none';\n              }\n            title_position: inside\n            type: custom:bar-card\n            unit_of_measurement: \u00b0\n        how_header_toggle: false\n        style: |\n          ha-card {\n            border: solid 2px var(--primary-color);\n          }\n        type: entities\n    type: vertical-stack\nitems_classes: col-xs-12 col-sm-6 col-md-6 col-lg-6\npadding: true\ntype: custom:dwains-flexbox-card\n<\/code><\/pre>\n\n\n\n<h1 class=\"wp-block-heading\">Conclusion:<\/h1>\n\n\n\n<p class=\"wp-block-paragraph\">Un fonctionnement basique qui n&rsquo;a rien d&rsquo;exceptionnel mais bougrement pratique. J\u2019esp\u00e8re que cela donnera des id\u00e9es \u00e0 certain d&rsquo;entre vous. <\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Article en lien avec cette publication<\/h1>\n\n\n\n<figure class=\"wp-block-embed is-type-wp-embed is-provider-domo-rem-81 wp-block-embed-domo-rem-81\"><div class=\"wp-block-embed__wrapper\">\n<blockquote class=\"wp-embedded-content\" data-secret=\"YKsv8blibs\"><a href=\"https:\/\/domo.rem81.com\/index.php\/2021\/09\/04\/home-assistant-automatisation-des-volets\/\">HA-Automatisation des volets<\/a><\/blockquote><iframe loading=\"lazy\" class=\"wp-embedded-content\" sandbox=\"allow-scripts\" security=\"restricted\" style=\"position: absolute; clip: rect(1px, 1px, 1px, 1px);\" title=\"\u00ab\u00a0HA-Automatisation des volets\u00a0\u00bb &#8212; Domo Rem81\" src=\"https:\/\/domo.rem81.com\/index.php\/2021\/09\/04\/home-assistant-automatisation-des-volets\/embed\/#?secret=FGrZZ6fBYg#?secret=YKsv8blibs\" data-secret=\"YKsv8blibs\" width=\"600\" height=\"338\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\"><\/iframe>\n<\/div><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>Intro Description des automatismes mis en place dans la gestion de mes volets roulants Je poss\u00e8de deux types de volets roulants: &#8211; Volets Somfy protocole RTS &#8211; Volets Filaires Les &hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[17,51],"class_list":["post-472","post","type-post","status-publish","format-standard","hentry","category-homeassistant","tag-esphome","tag-volets"],"_links":{"self":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts\/472","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/comments?post=472"}],"version-history":[{"count":4,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts\/472\/revisions"}],"predecessor-version":[{"id":3385,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts\/472\/revisions\/3385"}],"wp:attachment":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/media?parent=472"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/categories?post=472"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/tags?post=472"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}