Tado set offset using separate temperature sensor

Edit: Here we go. This ended up being quite simple. The below will create a template thermostat component that calls tado on/off and uses an external sensor to sample the temperature. No need for messing around with offsets etc.

The only downside is:

  • when the thermostat needs to heat the room I’m telling Tado to heat it for 99 hours to 30 degrees. This is effectively my TADO ON command.

  • when the thermostat needs to stop heating the room I’m telling Tado heat it for 99 hours to 5 degrees. This is effectively my TADO OFF command.

Obviously this means the temperature displayed on the radiator and in the Tado app is incorrect. But who cares? I will now just switch to using homeassistant as the single source of control for heating.

climate:
  - platform: generic_thermostat
    name: Study Climate Tado Test
    heater: switch.study_climate_tado_test_heater_switch
    target_sensor: sensor.study_climate_sensor_temperature

switch:
  - platform: template
    switches:
      study_climate_tado_test_heater_switch:
        turn_on:
          service: tado.set_climate_timer
          target:
            entity_id: climate.study
          data:
            time_period: '99:00:00'
            temperature: 30
        turn_off:
          service: tado.set_climate_timer
          target:
            entity_id: climate.study
          data:
            time_period: '99:00:00'
            temperature: 5