Termostato BAXI Connect – Integración en Home Assistant

1 – Integración en Home Assistant

1.1 – Código Home Assistant

Código «Configuration.yaml»

climate:

  - platform: mqtt
    name: Salón
    modes:
      - "off"
      - "heat"
      - "auto"
    temperature_command_topic: "home/thermostat_baxi_connect/current_setpoint/set"
    temperature_state_topic: "home/thermostat_baxi_connect/current_setpoint"
    temperature_state_template: "{{ value_json|float }}"
    current_temperature_topic: "home/thermostat_baxi_connect/current_temperature"
    current_temperature_template: "{{ value_json|float }}"
    mode_state_topic: "home/thermostat_baxi_connect/mode_filtered"
    temperature_unit: c
    max_temp: 30
    min_temp: 15
    temp_step: 0.5
    retain: 1

sensor:

  - platform: mqtt
    name: "Baxi thermostat current mode"
    state_topic: "home/thermostat_baxi_connect/mode"
    #value_template: "{{ value_json }}"  
    icon: mdi:calendar-blank-multiple

  - platform: mqtt
    name: "Baxi thermostat current temperature"
    state_topic: "home/thermostat_baxi_connect/current_temperature"
    value_template: "{{ value_json|float }}"
    unit_of_measurement: 'ºC'
    icon: mdi:thermometer
    
  - platform: mqtt
    name: "Baxi thermostat current setpoint"
    state_topic: "home/thermostat_baxi_connect/current_setpoint"
    value_template: "{{ value_json|float }}"
    unit_of_measurement: 'ºC'
    icon: mdi:thermometer-plus

  - platform: mqtt
    name: "Baxi thermostat water preassure"
    state_topic: "home/thermostat_baxi_connect/water_preassure"
    value_template: "{{ value_json|float }}"
    unit_of_measurement: 'bar'
    icon: mdi:speedometer

  - platform: mqtt
    name: "Baxi thermostat flow temperature"
    state_topic: "home/thermostat_baxi_connect/flow_temperature"
    value_template: "{{ value_json|float }}"
    unit_of_measurement: 'ºC'
    icon: mdi:thermometer-chevron-up

  - platform: mqtt
    name: "Baxi thermostat current errors"
    state_topic: "home/thermostat_baxi_connect/current_errors"
    icon: mdi:alert-circle-outline
    
  - platform: mqtt
    name: "Baxi thermostat next switch Time"
    state_topic: "home/thermostat_baxi_connect/schedule/next_switch/time"
    icon: mdi:calendar-clock
    
  - platform: mqtt
    name: "Baxi thermostat next switch Setpoint"
    state_topic: "home/thermostat_baxi_connect/schedule/next_switch/setpoint"
    unit_of_measurement: 'ºC'
    icon: mdi:thermometer-plus
    
  - platform: mqtt
    name: "Baxi thermostat program"
    state_topic: "home/thermostat_baxi_connect/schedule/program"
    icon: mdi:calendar-month

Código Lovelace:

      - cards:
          - entity: climate.salon
            type: thermostat
          - type: entities
            entities:
              - entity: sensor.baxi_thermostat_current_mode
              - entity: sensor.baxi_thermostat_water_preassure
              - entity: sensor.baxi_thermostat_flow_temperature
              - entity: sensor.baxi_thermostat_current_errors
              - entity: sensor.baxi_thermostat_program
              - entity: sensor.baxi_thermostat_next_switch_time
              - entity: sensor.baxi_thermostat_next_switch_setpoint
            state_color: true
            header:
              type: buttons
              entities:
                - entity: script.baxi_thermotat_manually_status_update
                  name: Refresh
        type: vertical-stack
      

Este es el resultado:

BAXI TXM 10c

1.2 – Node-Red (Addon de Home Assistant)

Código completo Node-Red: aquí.

1.2.1 – Autenticación.

Selecciona la función «POST» y escribe tus credenciales de la aplicaciónde Baxi. Luego, cuenta los caracteres que hay en ese payload incluyendo los caracteres «{» y «}». Al guardar, hacer un Deploy y luego pulsar en el cuadrado del primer bloque llamado «Read». En la pestaña Debug dben aparecer tus datos personales.

1.2.2 – Pairing.

Hay que emparejar esta integración como si fuera un dispositivo nuevo, por lo tanto necesitarás obtener un código del termostato Baxi, igual que si emparejaras un móvil. Usa ese código de nueve cifras en la función «POST Pairing», y vuelve a incluir tu usuario y contraseña de Baxi Connect.

Al pulsar en «Read», en la pestaña de Debug debe aparecer un código muy largo que luego usaremos en todas las funciones. Este código es el más importante.

1.2.3 – Resto de funciones

El código de emparejamiento obtenido anteriormente hay que ponerlo en todas las funciones marcadas a continuación:

El código obtenido hay que ponerlo en la cabecera de todas las funciones GET y PUT, tal y como aparece aquí:

Tengo configurado un refresco de 10 minutos. Es recomendable que el refresco no sea muy continuado para no saturar el servidor.

Comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *