Autodiscovered MQTT HVAC entity not correctly displaying temperature in F

HA 0.102.3
Ubuntu 16.0.4 venv install as a different user, Python 3.7.4

I have a Mitsubishi heatpump that is being controlled using MQTT. The device I’m using to control the unit handles HA MQTT autodiscovery. I’m located in California, and have set HA’s units to “imperial”:

  unit_system: imperial

The problem is that the temperature data from the unit is in Celsius, but HA is displaying these Celsius values as Fahrenheit values.

I’ve tried setting the unit_of_measurement to “C” and “°C” using a customization, but that doesn’t change anything.

Entity state:

hvac_modes: heat_cool,cool,dry,heat,fan_only,off
current_temperature: 22
min_temp: 16
max_temp: 31
target_temp_step: 1
temperature: 23
fan_mode: QUIET
fan_modes: AUTO,QUIET,1,2,3,4
hvac_action: off
swing_mode: AUTO
swing_modes: AUTO,1,2,3,4,5,SWING
friendly_name: guest_bedroom
supported_features: 41
unit_of_measurement: °C

I had been using a custom component for the Mitsubishi heatpumps that, looking through the code, set the temperature_unit of the entity to TEMP_CELSIUS. I guess because of this, even though the data in MQTT is in Celsius, the custom component temperatures are correctly being converted to Fahrenheit.


office/ac {"power":"OFF","mode":"FAN","temperature":23.5,"fan":"3","vane":"AUTO","wideVane":"|"}
office/ac/status {"roomTemperature":24,"operating":false}
office/ac/timers {"mode":"NONE","onMins":0,"onRemainMins":0,"offMins":0,"offRemainMins":0}

Entity state:

hvac_modes: auto,cool,dry,heat,fan_only,off
current_temperature: 75
min_temp: 45
max_temp: 95
target_temp_step: 1
temperature: 74
fan_mode: 3
fan_modes: Auto,Quiet,1,2,3,4
hvac_action: off
swing_mode: Auto
swing_modes: Auto,1,2,3,4,5,Swing
friendly_name: Office
supported_features: 41

How do you configure an autodiscovered MQTT climate device to have HA convert the temperature from Celsius to Fahrenheit?

Any hints on how to indicate an auto-discovered MQTT device reads in Celsius on a system set to imperial units?