ha-warmup/warmup

temperature units, attribute naming, precision

Opened this issue · 1 comments

rct commented

Now that my warmup thermostats are showing in HA, a few questions and comments:

I'm in the US so my system is set to use non-SI units. Looking at the entities attributes through developer tools, I see a mix of Fahrenheit and Celsius values and no way to tell which is which. I don't know whether the inconsistencies originate with the warmup API.

Note: I haven't tried to set up any other climate integrations in HA yet, so I don't know if there are conventions for HA were followed or should be followed.

Attributes that appear to be in Celsius:

floor_temperature: 15.5
air_temperature: 17.5
away_temperature: 16
comfort_temperature: 20
fixed_temperature: 13.5
override_temperature: 17
sleep_temperature: 18

Attributes that appear to be in Fahrenheit:

temperature: 59
current_temperature: 60

Attributes with unknown units

min_temp: 106
max_temp: 187
target_temp_step: 0.5

Questions/Comments/Observations:

  1. I think temperature is the current set point, is that correct? While that name seems a bit ambiguous to me, I think that is correct name for HA looking at the climate integration page.
  2. I can't tell from the climate integration page how temperature systems are supposed to be handled. I seems to me having different attributes using different systems is something that should be avoided if possible.
  3. It looks like Home Assistant is displaying temperature and current_temperature in the UI card and is showing that they are in Fahrenheit. These seem to either be rounded to whole numbers, or are ints internally.
  4. current_temperature at least for me is displaying the floor probe temperature and not the air temperature. I pretty sure I've got my thermostats set to use the floor probe temperature, but I need to check. It would be nice if the UI card showed both the floor probe and air temperature.
  5. I can't tell what units min_temp and max_temp are in. The range is too small to be Celsius * 10. Looks like those represent a temperature range of 81 steps. I need check what the thermostat's min/max are.
  6. I'm assuming target_temp_step is probably in Celsius. It looks like target_temp_low and target_temp_highshould be defined per the integration, probably to give the displayed control the proper range. I don't know where the C to F conversion fortemperatureandcurrent_temperature` occurred, but I'm guessing that the target temps probably need to be consistent for the UI gauge to work correctly.
artmg commented

Hmmm, I see no options anywhere in the my.warmup.com webapp to localise temperature. I don't know if they assume it from location or read it perhaps from the device settings on the thermostat itself. I've knocked up a table in another wiki page where we can work on defining field characterstics