More temperature sensors to achieve precise control of netatmo valve/thermostat

Hi folks,

am searching the forum for the best configuration of multiple temperature sensors controlling one thermostat.

In theory, I am thinking to make a template sensor our of more temperature sensors (including zigbee aqara values and an extracted value from the netatmo valve) that will average their values and send it back to the netatmo valve/thermostat. The first part seems to be easy, the second is out of my imagination.

This should avoid wrong control in case of accidental covering of the netatmo valve during night e.g. by a blanket.

Any ideas?

I solved the template, that was easy:

livingroom_temperature:
  friendly_name: Living room Temperature
  unit_of_measurement: '°C'
  value_template: "{{((states('sensor.livingroom_valve_temperature')) | float + (states('sensor.temperature_14')) | float) / 2}}"

I am trying to enforce the value to the attribute of an entity using automation, which does not work. It ask me for float but I am sending float, the template returns float in template editor:

action: 
  entity_id: climate.netatmo_living_room_heating
  temperature: "{{states('sensor.livingroom_temperature') | float}}"

any ideas?

You are missing the service in your action.

Sorry, I was not clear. I am not concerned about the service but about the fact the template does not send float to the entity despite it sends float in template editor.

I am not sure whether the service set_temperature is a proper method to do what I want. However, it would look as follows but it cannot be saved given the error:

action:
  - service: climate.set_temperature
    data:
      temperature: "{{states('sensor.livingroom_temperature') | float}}"
    entity_id: climate.netatmo_living_room_heating

The point is that I need to change the attribute current_temperature within the entity netatmo_living_toom_heating which is probably not going to be change by the service climate.set_temperature

The template syntax finally works exactly in the syntax I wrote above, dont know why it didnt before.

Ah, I see, you can’t change the current_temperature attribute of the climate entity. And even if you would be able to, the value would change back to the reading of the temperature sensor of the climate entity, once it gets an updated value.

I can force the value every 5s, this is a problem I am aware of if there is not a better elegant solution. However, I need to control my valve with more sensors because the valve close to the heater is not precise if things move in the room

I just found two years long discussion on this topic: How to manually set state/value of sensor?

It is also valuable if you want to decrease the time motion sensor “detects” motion from initial detection which is a problem I met in the discussions as well

And the hacs integration: https://github.com/xannor/hass_py_set_state

Then try your luck with this custom component :slight_smile:

No, it’s not working. The attribute current_temperature: is read from NETATMO but it is not forced to the NETATMO, so their UI does not reflect it and thus does not stop heating.

I open the doors in my bedroom and after a while my temperature sensor shows 18°C while the valve shows 11°C, which causes heating for the rest of afternoon…

NETATMO has a feature “true temperature” but I cannot find whether the integration can force this number to the NETATMO