Intégration Overkiz + automation

Mon problème

Hello l’équipe,

J’ai un problème avec le service : climate.set_temperature ou l’intégration je vous poste les screens c’est plus parlant



Comme vous voyez, lors du lancement de la commande, le radiateur se mets en indisponible le temps d’1 seconde et applique la temperature cible, ce qui me cause des erreurs dans les logs.
ça pourrait n’avoir aucune incidence sauf que des fois, celà me fait planter l’intégration et je suis obliger de la recharger.

Ma configuration


Intégration Hacs Overkiz

Home Assistant 2022.9.7
Supervisor 2022.09.1
Operating System 9.0
Interface utilisateur : 20220907.2 - latest


Bonjour,

Pouvez-vous copier-coller le code de l’automatisation ?

Sinon, il semble que vous utilisez une intégration custom or overkiz est une intégration officielle maintenant. Avez-vous essayé de basculer sur l’officielle ?

Voici l’automation complète

alias: Radiateur - Clément
description: Radiateur - Clément
trigger:
  - platform: time_pattern
    minutes: /10
condition:
  - condition: or
    conditions:
      - condition: and
        conditions:
          - condition: state
            entity_id: input_boolean.thermostats_away
            state: "off"
          - condition: state
            entity_id: input_select.clement_radiateur_2
            state: Chauffage
          - condition: state
            entity_id: binary_sensor.io_1994022_3_contact
            state: "off"
          - condition: state
            entity_id: binary_sensor.samuel_geo
            state: "on"
          - condition: state
            entity_id: climate.radiateur_2
            state: heat
          - condition: state
            entity_id: automation.radiateur_clement
            state: "on"
      - condition: and
        conditions:
          - condition: state
            entity_id: input_boolean.thermostats_away
            state: "off"
          - condition: state
            entity_id: input_select.clement_radiateur_2
            state: Chauffage
          - condition: state
            entity_id: binary_sensor.io_1994022_3_contact
            state: "off"
          - condition: state
            entity_id: binary_sensor.valerie_geo
            state: "on"
          - condition: state
            entity_id: climate.radiateur_2
            state: heat
          - condition: state
            entity_id: automation.radiateur_clement
            state: "on"
      - condition: and
        conditions:
          - condition: state
            entity_id: input_boolean.thermostats_away
            state: "off"
          - condition: state
            entity_id: input_select.clement_radiateur_2
            state: Chauffage
          - condition: state
            entity_id: binary_sensor.io_1994022_3_contact
            state: "off"
          - condition: state
            entity_id: binary_sensor.samuel_geo
            state: "on"
          - condition: state
            entity_id: binary_sensor.valerie_geo
            state: "on"
          - condition: state
            entity_id: climate.radiateur_2
            state: heat
          - condition: state
            entity_id: automation.radiateur_clement
            state: "on"
action:
  - choose:
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_1
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{ states('input_number.heating_clement_temperature_confort_1')
                | float }}
            target:
              entity_id: climate.radiateur_2
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_2
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{ states('input_number.heating_clement_temperature_confort_2')
                | float }}
            target:
              entity_id: climate.radiateur_2
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_3
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{ states('input_number.heating_clement_temperature_confort_3')
                | float }}
            target:
              entity_id: climate.radiateur_2
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_4
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{ states('input_number.heating_clement_temperature_confort_4')
                | float }}
            target:
              entity_id: climate.radiateur_2
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_1_s
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{
                states('input_number.heating_clement_temperature_confort_1_s') |
                float }}
            target:
              entity_id: climate.radiateur_2
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_2_s
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{
                states('input_number.heating_clement_temperature_confort_2_s') |
                float }}
            target:
              entity_id: climate.radiateur_2
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_3_s
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{
                states('input_number.heating_clement_temperature_confort_3_s') |
                float }}
            target:
              entity_id: climate.radiateur_2
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_4_s
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{
                states('input_number.heating_clement_temperature_confort_4_s') |
                float }}
            target:
              entity_id: climate.radiateur_2
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_1_d
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{
                states('input_number.heating_clement_temperature_confort_1_d') |
                float }}
            target:
              entity_id: climate.radiateur_2
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_2_d
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{
                states('input_number.heating_clement_temperature_confort_2_d') |
                float }}
            target:
              entity_id: climate.radiateur_2
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_3_d
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{
                states('input_number.heating_clement_temperature_confort_3_d') |
                float }}
            target:
              entity_id: climate.radiateur_2
      - conditions:
          - condition: state
            entity_id: binary_sensor.heating_clement_4_d
            state: "on"
        sequence:
          - service: climate.set_temperature
            data:
              temperature: >-
                {{
                states('input_number.heating_clement_temperature_confort_4_d') |
                float }}
            target:
              entity_id: climate.radiateur_2
    default:
      - choose:
          - conditions:
              - condition: or
                conditions:
                  - condition: template
                    value_template: >-
                      {{ (state_attr('climate.radiateur_2','temperature') |
                      float >
                      states('input_number.heating_clement_temperature_eco') |
                      float) }}
                  - condition: template
                    value_template: >-
                      {{ (state_attr('climate.radiateur_2','temperature') |
                      float <
                      states('input_number.heating_clement_temperature_eco') |
                      float) }}
              - condition: state
                entity_id: input_select.clement_radiateur_2
                state: Chauffage
            sequence:
              - service: climate.set_temperature
                data:
                  temperature: >-
                    {{ states('input_number.heating_clement_temperature_eco') |
                    float }}
                target:
                  entity_id: climate.radiateur_2
mode: restart

J’utilise toujours l’intégration Hacs car pour l’instant le sensor climate n’est toujours pas intégré à l’intégration officielle Migrate ha-tahoma to Overkiz integration in core · Issue #697 · iMicknl/ha-tahoma · GitHub

ps: je tiens à rajouter que l’erreur se produit quand au minimum 2 radiateurs change de température en même temps à la même heure (celà à l’air de ne pas se produire quand seulement un radiateur change de température.

Tu peux nous donner l’erreur qui correspond dans les logs ?
Je pense que c’est cette issue :

Ca serait une limitation de l’API, la solution que j’ai trouvé c’est de mettre un délai de 2s entre les réglages de chaque radiateur.
Je te conseil de mettre l’état des radiateurs dans un script (avec delai) et d’appeler le script via l’automation, (ca te permet entre autre d’activé manuellement ces états de radiateurs)

C’est exactement ça, tu as le screen 2 qui affiche le log
Je vais voir pour ajouté un petit délai pour le changement de température mais ça ne fonctionnera pas pour la géolocalisation qui est basé sur tous les radiateurs.
Dommage pour cette limitation de l’API, je vais devoir faire avec.
Merci pour ton aide Uowis

Pour un radiateur c’est ok
Par contre j’ai des radiateurs avec des LED intégrées.
Ces lumieres sont dans un groupe.
Quand je fais un Groupe off, du coup ça me fait 4 requetes sur l’API overkiz en instantané et ça me bloque du coup…
Vraiment pas pratique cette API overkiz. En même temps merci Somfy et autre conseur de faire des choses non propriétaires et très limitées afin que l’on choississe vos solutions… Grrr

Du coup je ne vois pas comment mettre en place une tempo sur un groupe…

Il faudrait que l’intégration intègre cette limite et mette dans une file d’attente les requetes en attente et qu’elle écoule cette file au fur et à mesure…