Piloter son poêle Ravelli

Il te faut créer des entrées imput_number (dans paramètres/appareils et services/entrées) :

  • Consigne_puissance_poele (valeur min 1, max 5, incrément 1)
  • Consigne_temperature_poele (valeur min 10, max 27, incrément 1) tu peux changer les valeurs limites mais conserve 2 digits pour le mini sinon tu pourrais créer une erreur lors de l’envoi de la commande)
  • Consigne_ventilation_arriere_poele (valeur min 0, max 6, incrément 1)
  • Consigne_ventilation_avant_poele (valeur min 0, max 6, incrément 1)

J’ai également créer un bouton « Refresh info poele » qui me permet de rafraîchir manuellement les retours du poêle si besoin (les infos des sensors poele se rafraîchissent toutes les 300s le reste du temps, voir scan_interval dans la def des sensors)

Je te partage aussi mon automation qui permet d’envoyer les commandes et de les actualiser si le poêle est piloté depuis une autre source comme la télécommande (ce n’est peut-être pas le meilleur moyen de faire mais tout fonctionne bien chez moi depuis la mise en place) :

alias: Poele
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.poele_reglage_temperature
    id: chgt_retour_reglage_poele_temperature
  - platform: state
    entity_id:
      - input_number.consigne_temperature_poele
    id: modif_consigne_temperature_poele_HA
  - platform: state
    entity_id:
      - sensor.poele_reglage_puissance
    id: chgt_retour_reglage_poele_puissance
  - platform: state
    entity_id:
      - input_number.consigne_puissance_poele
    id: modif_consigne_puissance_poele_HA
  - platform: state
    entity_id:
      - input_button.refresh_infos_poele
    id: Refresh_infos_poele_bouton
  - platform: state
    entity_id:
      - sensor.ventilation_avant_poele
    id: chgt_retour_ventil_avant_reglage
  - platform: state
    entity_id:
      - input_number.consigne_ventilation_avant_poele
    id: modif_consigne_ventil_avt_poele_HA
  - platform: state
    entity_id:
      - sensor.ventilation_arriere_poele
    id: chgt_retour_ventil_arriere_reglage
  - platform: state
    entity_id:
      - input_number.consigne_ventilation_arriere_poele
    id: modif_consigne_ventil_arr_poele_HA
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id: chgt_retour_reglage_poele_temperature
        sequence:
          - condition: template
            value_template: >-
              {% if is_state('sensor.poele_reglage_temperature', 'unavailable')
              %} false {%- else -%} {{
              states('sensor.poele_reglage_temperature') | int   != 
                states('input_number.consigne_temperature_poele')| int  }}
              {%- endif %}
          - service: input_number.set_value
            data:
              value: "{{ states('sensor.poele_reglage_temperature') }}"
            target:
              entity_id: input_number.consigne_temperature_poele
      - conditions:
          - condition: trigger
            id: modif_consigne_temperature_poele_HA
          - condition: template
            value_template: >-
              {{ trigger.from_state.state | int   != trigger.to_state.state |
              int  }}
        sequence:
          - service: homeassistant.update_entity
            data: {}
            target:
              entity_id: sensor.poele_variables2
          - condition: template
            value_template: >-
              {% if is_state('sensor.poele_reglage_temperature', 'unavailable')
              %} false {%- else -%} {{
              states('sensor.poele_reglage_temperature') | int   != 
                states('input_number.consigne_temperature_poele')| int  }}
              {%- endif %}
          - service: rest_command.maj_consigne_temperature_poele
            data: {}
          - service: homeassistant.update_entity
            data: {}
            target:
              entity_id: sensor.poele_variables2
      - conditions:
          - condition: trigger
            id: chgt_retour_reglage_poele_puissance
        sequence:
          - condition: template
            value_template: >-
              {% if is_state('sensor.poele_reglage_puissance', 'unavailable') %}
              false {%- else -%} {{ states('sensor.poele_reglage_puissance') |
              int   !=  states('input_number.consigne_puissance_poele')| int  }}
              {%- endif %}
          - service: input_number.set_value
            data:
              value: "{{ states('sensor.poele_reglage_puissance') }}"
            target:
              entity_id: input_number.consigne_puissance_poele
      - conditions:
          - condition: trigger
            id: modif_consigne_puissance_poele_HA
          - condition: template
            value_template: >-
              {{ trigger.from_state.state | int   != trigger.to_state.state |
              int  }}
        sequence:
          - service: homeassistant.update_entity
            data: {}
            target:
              entity_id: sensor.poele_variables2
          - condition: template
            value_template: >-
              {% if is_state('sensor.poele_reglage_puissance', 'unavailable') %}
              false {%- else -%} {{ states('sensor.poele_reglage_puissance') |
              int   !=  states('input_number.consigne_puissance_poele')| int  }}
              {%- endif %}
          - service: rest_command.maj_consigne_puissance_poele
            data: {}
          - service: homeassistant.update_entity
            data: {}
            target:
              entity_id: sensor.poele_variables2
      - conditions:
          - condition: trigger
            id: Refresh_infos_poele_bouton
        sequence:
          - service: homeassistant.update_entity
            data: {}
            target:
              entity_id:
                - sensor.poele_variables2
                - sensor.poele_variables4
                - sensor.poele_variables6
      - conditions:
          - condition: trigger
            id: chgt_retour_ventil_avant_reglage
        sequence:
          - condition: template
            value_template: >-
              {% if
              is_state_attr('sensor.ventilation_avant_poele','poele_id188',
              'none') %} false {%- else -%}
              {{state_attr('sensor.ventilation_avant_poele','poele_id188') | int
              != states('input_number.consigne_ventilation_avant_poele')| int 
              }} {%- endif %}
          - service: input_number.set_value
            data:
              value: "{{ state_attr('sensor.poele_variables6','params')[9][1] }}"
            target:
              entity_id: input_number.consigne_ventilation_avant_poele
      - conditions:
          - condition: trigger
            id: modif_consigne_ventil_avt_poele_HA
          - condition: template
            value_template: >-
              {{ trigger.from_state.state | int   != trigger.to_state.state |
              int  }}
        sequence:
          - service: homeassistant.update_entity
            data: {}
            target:
              entity_id: sensor.poele_variables6
          - condition: template
            value_template: >-
              {% if
              is_state_attr('sensor.ventilation_avant_poele','poele_id188',
              'none') %} false {%- else -%}
              {{state_attr('sensor.ventilation_avant_poele','poele_id188') | int
              != states('input_number.consigne_ventilation_avant_poele')| int 
              }} {%- endif %}
          - service: rest_command.maj_consigne_ventilation_avant_poele
            data: {}
          - service: homeassistant.update_entity
            data: {}
            target:
              entity_id: sensor.poele_variables6
      - conditions:
          - condition: trigger
            id: chgt_retour_ventil_arriere_reglage
        sequence:
          - condition: template
            value_template: >-
              {% if
              is_state_attr('sensor.ventilation_arriere_poele','poele_id187',
              'none') %} false {%- else -%}
              {{state_attr('sensor.ventilation_arriere_poele','poele_id187') |
              int != states('input_number.consigne_ventilation_arriere_poele')|
              int  }} {%- endif %}
          - service: input_number.set_value
            data:
              value: "{{ state_attr('sensor.poele_variables6','params')[8][1] }}"
            target:
              entity_id: input_number.consigne_ventilation_arriere_poele
      - conditions:
          - condition: trigger
            id: modif_consigne_ventil_arr_poele_HA
          - condition: template
            value_template: >-
              {{ trigger.from_state.state | int   != trigger.to_state.state |
              int  }}
        sequence:
          - service: homeassistant.update_entity
            data: {}
            target:
              entity_id: sensor.poele_variables6
          - condition: template
            value_template: >-
              {% if
              is_state_attr('sensor.ventilation_arriere_poele','poele_id187',
              'none') %} false {%- else -%}
              {{state_attr('sensor.ventilation_arriere_poele','poele_id187') |
              int != states('input_number.consigne_ventilation_arriere_poele')|
              int  }} {%- endif %}
          - service: rest_command.maj_consigne_ventilation_arriere_poele
            data: {}
          - service: homeassistant.update_entity
            data: {}
            target:
              entity_id: sensor.poele_variables6
    default: []
mode: queued