Set mode 3, internal control with external limit.
the external limit temp set to, say, 21
the target set to 21
hysteresis to 1.
When it tries to go over 21 it will be shut down by external limit.
btw. There’s a bug in firmware. The what I called valve variable, shows true, even if the relay is off due to the external limit.
After updating to 0.89.2 i’m getting this in logs. No control over thermostat.
Home Assistant. This component might cause stability problems, be sure to disable it if you do experience issues with Home Assistant.
2019-03-15 18:58:48 WARNING (MainThread) [homeassistant.helpers.config_validation] Your configuration contains extra keys that the platform does not support.
Please remove [name], [host], [mac], [target_temp_default], [update_timeout], [target_temp_step]. (See /config/configuration.yaml, line 376).
edit: didn’t notice all the activity on the thread, sorry. So just to clarify, I should be using hysenheating component by uss instead of the mairas/hysen after 0.89.x?
Seems to be working well. Thank you!
Some things seem different though, had to modify some sensors in HA.
Sensor_mode attribute is now just sensor. Also the room_temp attribute seems to be just temperature now (the internal sensor)?
@Raasu2
Temperature is sensor mode dependent.
For example, if you use the internal sensor or internal sensor control with external sensor limit, temperature reflects the internal sensor measured temperature. If you use external sensor, temperature reflects the external sensor.
It is exactly as in the phone application.
On the other hand, we need to have temperature called “temperature” in order to have a proper graphic representation of the thermostat in lovelace or classic HA
Cheers,
us
Temperature is sensor mode dependent yes, but, you have 3 different attributes for temperature that i see availabe in HA.
Im using the device in external sensor mode.
temperature - displays a different reading then the others so im guessing the internal sensor reading ??
external temperature - displays external sensor reading
current_temperature - displays the temperature depending on sensor mode (reading is same as external_temp)
When i look at climate.py i don’t see that the attribute “temperature” would reflect the internal senor. I dont see an attribute for internal sensor at all. There is one mention of room_temp, in the “def current_temp” but it is not defined as an attribute itself.
How can i get the internal senor reading when i’m in external sensor mode?
Let’s start from scratch, assuming you don’t know anything about how the thermostat works.
I’m sorry if I will say things that you already know, but I want to clear up things.
There are 3 working configurations:
Internal sensor
In this mode the thermostat doesn’t take in consideration the external sensor (if exists).
Thus, the external_temp is irrelevant. current_temperature = room_temp, that is, the temperature read by the internal sensor (that small black component, one can see through the hole at the bottom of the thermostat) target_temperature is the temperature you set in manual mode or taken from the schedule in auto mode
The thermostat tries to bring the current_temperature = room_temp to the target_temperature (taking into account the hysteresis).
That means, it opens the valve until it gets there and then closes the valve.
External sensor
In this mode the thermostat doesn’t take in consideration the internal sensor.
Thus, the room_temp is irrelevant. current_temperature = external_temp, that is, the temperature read by the external sensor (the sensor situated outside the thermostat and linked to the connector found at the back of the thermostat) target_temperature is the temperature you set in manual mode or taken from the schedule in auto mode
The thermostat tries to bring the current_temperature = external_temp to the target_temperature (taking into account the hysteresis).
That means, it opens the valve until it gets there and then closes the valve.
Independently, if the current_temperature = external_temp reaches the external_limit_temp it closes the valve, no matter what.
Internal sensor control with external sensor limit
This is a little bit tricky. The Chinese doc. is rubbish but eventually I understood how it works. current_temperature = room_temp, that is, the temperature read by the internal sensor.
Exactly like the internal sensor mode. target_temperature is the temperature you set in manual mode or taken from the schedule in auto mode
The thermostat tries to bring the current_temperature = room_temp to the target_temperature (taking into account the hysteresis).
That means, it opens the valve until it gets there and then closes the valve.
But:
Independently, if the external_temp reaches the external_limit_temp it closes the valve, no matter what.
That’s it.
There is another thing you need to know.
In any sensor configuration, if you are in auto mode (where the target_temperature is taken from the schedule), you may temporarily manually change the target_temperature. A blinking hand might be seen on thermostat’s display.
Changing the mode back to auto changes back the target_temperature to the scheduled one.
Pressing again to get to manual mode (NOT temporary manual) changes the target_temperature to what it was set in manual mode (NOT temporary manual).
If there is something I have not been clear enough, I will be more than happy to help.
Cheers,
us
PS. temperature is the display name HA gives to current_temperature. That is, internally uses current_temperature and exposes temperature.
This is great, thank you for taking the time to explain this in detail.
But, still how do you get the internal temperatuse value as a sensor to HA when using thermostat in external sensor mode. This is just to know what the temperature in the room is. I don’t want to regulate the room temp (internal sensor) using the thermostat, i regulate the floor temp (external sensor), but i do want to return the room temp as a sensor value in HA.
Both external_temp and current temp return te external sensor value (as you explain). How do i get the internal sensor value or the room_temp value, while in external senor mode.
When using mairas/hysen component i could just return the value using room_temp attribute.
I saw you updated the climate.py file, but for me the room_temp attribute is not showing up. (i added the new file to my HA, did not add the lines myself)