Heatpump control based on a on/off switch and heat/cooling recognition

Hello,

For a few weeks I’ve been searching for a good solution, that covers my odd situation.

I have a heatpump, which switches from cold/heat automatically, but is not reliable.
The cold/warmt is distributed by a big radiator and a fan, which is controlled by a rather useless bimetal thermostat.

For now I only have cold somewhat covered (just blow as hard and long as possible while the zigbee temperature sensor tells HASS it’s on the cold setting). But that needs to be easily adjustable by a dial.

There seem to be a lot of templates, integrations, but all seem to have one thing in commong - they all assume you have control over the heatpump. This I do not. I can only control the radiator fan.

Does any of you have tips or hints, how I would achieve this?
I would very much like to avoid the unreliable cold/hot setting of the heatpump blasting heat in my home until it’s the same temperature as the heat pump, the very thing why I’m trying to automate it.

My automation so far, pretty basic:

alias: climate control, cold (Duplicate) (Duplicate)
description: 
trigger:
  - platform: homeassistant
    event: start
  - platform: template
    value_template: >-
      {{ states('sensor.buienradar_temperature') | float >= 18 and
      states('sensor.lumi_lumi_weather_0cba8906_temperature') | float <30 and
      states('sensor.lumi_lumi_weather_temperature') | float >=24 }}
condition:
  - condition: template
    value_template: >-
      {{ states('sensor.buienradar_temperature') | float >= 18 and
      states('sensor.lumi_lumi_weather_0cba8906_temperature') | float <30 and
      states('sensor.lumi_lumi_weather_temperature') | float >=24 }}
action:
  - type: turn_on
    device_id: 01d128e0d1c46e3bed0e13745e6c03f9
    entity_id: switch.climate_control_switch_facb6ffe_on_off
    domain: switch
  - service: notify.notify
    data:
      message: >-
        Climate control turned {{
        states('switch.climate_control_switch_facb6ffe_on_off') }}.
  - wait_for_trigger:
      - platform: template
        value_template: >-
          {{ states('sensor.lumi_lumi_weather_0cba8906_temperature') | float
          >=30 and states('sensor.lumi_lumi_weather_temperature') | float <=25
          }}
    continue_on_timeout: false
  - type: turn_off
    device_id: 01d128e0d1c46e3bed0e13745e6c03f9
    entity_id: switch.climate_control_switch_facb6ffe_on_off
    domain: switch
  - service: notify.notify
    data:
      message: >-
        Climate control turned {{
        states('switch.climate_control_switch_facb6ffe_on_off') }}.
mode: restart

Outside temp: sensor.buienradar_temperature
Room temp: sensor.lumi_lumi_weather_temperature
Heatpump temp: sensor.lumi_lumi_weather_0cba8906_temperature
Radiator fan switch: switch.climate_control_switch_facb6ffe_on_off

The heatpump cold/warm cycle is recognizable with the heatpump temperature sensor dipping above or below 30 degrees celcius.

Any tips or hints will be greatly appreciated!

okay so I made two thermostats, one in AC mode, one heat mode.
The heat one is default on, ac mode default off.
An automation detects if the radiator is in cool mode (below 30 deg c) and the room above the usual cooling temp of the system (usually around 25 degrees c), then turns off the heat thermostat and enables the ac mode thermostat.

Pretty simple, but kind of annoying to get it working properly. I’ll add the code later if its working properly.