Honeywell T6 Pro Thermostat - Cannot change Fan Mode through Device Action

The climate entity for this thermostat allows changing three attributes in addition to a target temperature: hvac_modes, preset_modes, and fan_modes.

They allow the following options:

hvac_modes: off, heat, cool, heat_cool
fan_modes: Auto low, Low, Circulation
preset_modes: none, Energy heat, Energy cool

In a script or automation, I have found that a Device Action allows setting hvac_modes and preset_modes, but not fan_modes.

It is easy enough to accomplish this through a service call:

…but I am wondering why the device action does not allow this functionality? I also did not see a way to change the target temperature from this device action, as an aside.

Device calls are basic, they only support basic functionality. That’s not something basic. Also, in general, you should avoid device actions because if you have to replace it with a different device, the functionality may not be 1 to 1. Service calls are easy to update, you should always use them over device actions.

What is considered “basic”? I would think that the fan mode of the thermostat is more basic than the preset mode, and yet the preset mode is included, while the fan mode is not.

Good information about device actions vs service calls. I have tended towards using the device actions because they leave less room for errors, as less values are typed manually, and things are generally chosen from dropdown lists or similar. But perhaps I should take a new approach.

setting the thermostat mode and changing the temps are basic. Anything else is not guaranteed to be on a thermostat. For example, I have multiple climate devices in my house, 0 have fan mode.

I agree, but was referring to the preset mode (different than the HVAC mode):

On that topic though, there is also no way to set the target temperature from the device actions, which is very much a basic function.

Then use a service call

Dear Mr Petro - I have a Honeywell and T6 and trying to change the temperature setting in an automation. For the life of me I am unable. Would you be able to share an example? Thank you. Anthony

Just use a set temperature service call

  - service: climate.set_temperature
      entity_id: climate.living_room_thermostat
      temperature: 70
1 Like