Fonction Climate avec contrôle variables MQTT

Mon problème

Bonjour, je me permet de venir vous demander de l’aide car malgré certaines recherches, je n’arrive pas à faire fonctionner une fonction Climate qui fait appel à des variables provenant de MQTT. Je vous explique…

Comme certains le savent j’ai pris la main sur ma PAC ATLANTIC grâce à un module BSB LAN + ESP32.
Je récupère l’ensemble des données de ma pac sous HA via MQTT.
Au départ nous avons créé avec mon collègue @Neuvidor une fonction Climate pour gérer le circuit.1 de ma pac (plancher chauffant) permettant de changer la consigne de Tºc, les modes de chauffe, et de réguler sur ma sonde d’ambiance. Toutes ces variables provenant de MQTT.
Vous trouverez ci dessous la configuration, qui fonctionne:


  climate:
    - name: "PAC Thermostat Circuit 1"
      payload_on: 1
      payload_off: 0
      modes:
        - auto
        - heat
        - cool
        - 'off'
      mode_state_topic: "BSB-LAN/700.00"
      mode_state_template: >-
         {% set values = { '0 - Mode protection':'off', '1 - Automatique':'auto', '2 - Réduit':'cool', '3 - Confort':'heat'} %}
         {{ values[value] if value in values.keys() else 'off' }}
      mode_command_topic: "BSB-LAN"
      mode_command_template: >-
         {% set values = { 'off':'S700=0', 'auto':'S700=1', 'cool':'S700=2', 'heat':'S700=3'} %}
         {{ values[value] if value in values.keys() else '0' }}
      current_temperature_topic: "BSB-LAN/8740.00"
      min_temp: 17
      max_temp: 24
      temp_step: 0.5
      temperature_state_topic: "BSB-LAN/710.00"
      temperature_command_topic: "BSB-LAN"
      temperature_command_template: "{{'S710='+ (value| string)}}"

Je souhaiterais désormais réalisé la même chose mais à l’étage mais je n’ai pas de thermostat d’ambiance, dû coups je souhaite créer un thermostat du même genre, c’est à dire avec des contrôles via MQTT mais avec un régule réalisé sur une température provenant d’un module Aqara Température Zigbee via ZHA.
Ma logique était de copier/coller la config de mon Climate initial et de modifier des variables mais ça ne fonctionne pas…

J’espère que vous pourrez m’aider :slight_smile: Merci

Ma configuration


System Information

version core-2023.1.7
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.10.7
os_name Linux
os_version 5.15.76-v8
arch aarch64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
GitHub API Calls Remaining 4923
Installed Version 1.30.0
Stage running
Available Repositories 1197
Downloaded Repositories 11
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 9.4
update_channel stable
supervisor_version supervisor-2023.01.1
agent_version 1.4.1
docker_version 20.10.19
disk_total 28.5 GB
disk_used 11.1 GB
healthy true
supported true
board rpi3-64
supervisor_api ok
version_api ok
installed_addons File editor (5.4.2), Log Viewer (0.14.0), Terminal & SSH (9.6.1), Mosquitto broker (6.1.3), Nginx Proxy Manager (0.12.3), MariaDB (2.5.1), Node-RED (14.0.1), Home Assistant Google Drive Backup (0.110.1), Duck DNS (1.15.0), ESPHome (2022.12.6), Grafana (8.1.0)
Dashboards
dashboards 1
resources 4
views 8
mode storage
Recorder
oldest_recorder_run 16 janvier 2023 à 17:53
current_recorder_run 26 janvier 2023 à 22:32
estimated_db_size 428.85 MiB
database_engine sqlite
database_version 3.38.5

Salut @Joris_Voirin !

Si j’ai bien compris ton besoin, le but est de désactive la zone 2 par moment de façon automatique afin de gagner en conso.

Je pense qu’il faut préciser les variables disponibles sous HA par rapport à ta PAC :

Zone 1

  • MQTT topic : « BSB-LAN\700 » => sensor.pac_control_regime_circuit_chauffe_01
  • MQTT topic : « BSB-LAN\710 » => sensor.pac_temp_consigne_confort_circuit_chauffe_01
  • MQTT topic : « BSB-LAN\8740 » => sensor.pac_temp_int_ambiant

Zone 2

  • MQTT topic : « BSB-LAN\1000 » => sensor.pac_control_regime_circuit_chauffe_02
  • MQTT topic : « BSB-LAN\1010 » => sensor.pac_temp_consigne_confort_circuit_chauffe_02
  • ZHA entity => sensor.temperature_avg_etage (non dispo en MQTT car la PAC ne dispose pas de sonde en zone 2, elle régule juste une température d’eau dans le circuit et les vannes thermostatiques des radiateurs fond le reste)

Après réflexion je pense qu’il y a plusieurs façon de gérer la chose.

  • 2 automations :

    • Une automation qui passe l’entité « sensor.pac_control_regime_circuit_chauffe_02 » à 3 (confort) sur le critère de ton choix (heure fixe, température trop basse, détection de mouvement, etc…)
    • Une automation qui passe l’entité « sensor.pac_control_regime_circuit_chauffe_02 » à 0 (off) sur le critère de ton choix (heure fixe, température trop haute)
      => Attention à ne pas ALLUMER/ETEINDRE la PAC qui pourrait avoir l’effet inverse
  • Un climate hors MQTT basé sur les variables de la zone 2 :

    • MODE : sensor.pac_control_regime_circuit_chauffe_02
    • CONSIGNE : sensor.pac_temp_consigne_confort_circuit_chauffe_02
    • TEMPERATURE : sensor.temperature_avg_etage
1 « J'aime »