Generic Thermostat always idle / Hama

Hi there,

my thermostat is always in idle („Leerlauf“ on screenshot). I don´t know why.
The external temperature is taken correctly, but the thermostat never begins to heat and stays in idle.

This is the configuartion.yaml:

climate:
  - platform: generic_thermostat
    name: Wohnzimmer_Thermostat_gen_Couch
    heater: climate.wohnzimmer_couch_thermostat_d8fef4fe_thermostat
    target_sensor: sensor.lumi_lumi_weather_b18ee407_temperature
    min_temp: 15
    max_temp: 24
    ac_mode: false
    target_temp: 22
    cold_tolerance: 0.3
    hot_tolerance: 0
    min_cycle_duration:
      seconds: 5
    keep_alive:
      minutes: 3
    initial_hvac_mode: "heat"
    away_temp: 16
    precision: 0.1

An some photos of the thermostat entities:


Any ideas/suggestions?

Thanks!

Perhaps it believes you are away? Try and remove that from the config and see what happens.

That did not help unfortunately, but thanks for your idea!

Did you reload the configuration after?

Yes I restarted HA.

The "heater: " entity must be a switch.

It appears you have set it to another climate device which will not work.

Ok. The thermostat has following 3
entities:

climate.wohnzimmer_thermostat_1_thermostat
sensor.wohnzimmer_thermostat_1_thermostat_hvac_action
sensor.wohnzimmer_thermostat_1_power

It has no “switch”.
How can I add a switch for this thermostat?

Link to Hama Thermostat

Thanks

Use an input boolean

Sorry, not sure what to do now. Could you assist I little bit more in detail, how to use the boolean input. I could not find out how it must be done. Maybe you can briefly explain the steps to be done. Thanks again!

Use the input boolean as your trigger in an automation.
When boolean is turned on you take the temperature from the generic thermostat and set it to the climate.wohnzimmer_couch_thermostat_d8fef4fe_thermostat temperature.
When boolean is off set it to a lower or 0 degree temperature.

Basically what Hellis81 said.

Except why are you trying to control a climate entity with a generic thermostat? A climate entity would indicate it it is already a thermostat.

You would call climate services to control it.

Because you want an external temperature sensor that is more accurate and not on the actual heating source.

That’s my reasoning for using generic thermostats.

Mhhh… Even after a few hours I didn’t get an Idea how to solve that, even with your support. Quite frustrating…

I tried to set up a helper with toggle function. I guess this is the boolean input you mentioned…?


But there is nothing to set up…

And then I have no clue how to set up the automation you mentioned.

After all I’m more frustrated with HA. I “just” want to use an external thermometer to control my thermostat :relieved:. I thought this should be a very common issue an not a big deal…

Maybe I’ll try it in a few days again… or I wait until a capable UI becomes available in future.

Regards :grinning:

Yes toggle, it changed name recently in UI.

I suppose something like this, I did mine in Node red and it’s a bit more complicated.

alias: New Automation
description: ''
mode: single
trigger:
  - platform: state
    entity_id: input_boolean.heater_helper
condition: []
action:
  - choose:
      - conditions:
          - condition: state
            entity_id: input_boolean.heater_helper
            state: 'on'
        sequence:
          - service: climate.set_temperature
            data:
              temperature: '{{ state_attr(''climate.generic_thermostat'', ''temperature'') | float + 2  }}' # higher set point to heat up the room faster, this is based on celcius.
            target:
              entity_id: climate.real_thermostat
    default: []
  - choose:
      - conditions:
          - condition: state
            entity_id: input_boolean.heater_helper
            state: 'off'
        sequence:
          - service: climate.set_temperature
            data:
              temperature: 0 # or higher if you want them to have some heat left
            target:
              entity_id: climate.real_thermostat
    default: []