With a quick google search while that model thermostat does contain an internal programmable scheduled, i don’t think it can be changed over z-wave, and can only change those directly on the thermostat. Now thats not to say you can’t make your own schedules in homeassistant and create an automation to change the mode, temperature, and fan of the thermostat based on them.
If your looking to do the latter, I would use the schedule helper to make the time periods for day night and away. Also would setup input number helpers for heating and cooing targets to go with each schedule, then construct the automation to use all of those entities to automate the thermostat to carry out the intended functions. These helpers all can be added to the dashboard for easy future changing of the schedules and temperatures
I use the low tech approach and have an automation is HA the sets the target temperature.
Here’s a a sample. This writes the target into and input number and I have a separate automation that transfers it to the thermostat. I have input booleans to define what mode (spring, winter) it’s in.
Not elegant but it works and I haven’t tweaked it in a while.
#### WINTER
- id: Living Room Morning Heatup
alias: Living Room Morning Heatup
description: ""
trigger:
- platform: sun
event: sunrise
offset: "-00:30:00"
condition: '{{ is_state("input_boolean.hvac_winter_heating_mode","on") and states("sensor.sagehouse_outdoor_temperature")|int(33) > 17}}'
action:
- service: input_number.set_value
target:
entity_id: input_number.living_room_schedule_temperature
data:
value: 66
- id: Living Room Morning Heatup Full Winter
alias: Living Room Morning Heatup Full Winter
description: ""
trigger:
- platform: sun
event: sunrise
offset: "-00:30:00"
condition: '{{ is_state("input_boolean.hvac_winter_heating_mode","on") and states("sensor.sagehouse_outdoor_temperature")|int(33) <= 17}}'
action:
- service: input_number.set_value
target:
entity_id: input_number.living_room_schedule_temperature
data:
value: >
{%- if states("sensor.living_room_thermostat_temperature")|int + 2 < 70 and
states("sensor.living_room_thermostat_temperature")|int > 62 %}
{{ states("sensor.living_room_thermostat_temperature")|int + 2 }}
{%- else %}
{{ 67 }}
{%- endif %}
- id: Living Room End Morning Heatup
alias: Living Room Morning Heatup
description: ""
trigger:
- platform: time
at: "09:00:00"
condition: '{{ is_state("input_boolean.hvac_winter_heating_mode","on")}}'
action:
- service: input_number.set_value
target:
entity_id: input_number.living_room_schedule_temperature
data:
value: 64
- id: Living Room Night Cooldown
alias: Living Room Night Cooldown
description: ""
trigger:
- platform: time
at: "20:00:00"
condition: '{{ is_state("input_boolean.hvac_winter_heating_mode","on")}}'
action:
- service: input_number.set_value
target:
entity_id: input_number.living_room_schedule_temperature
data:
value: 60
### SPRING
- id: Living Room Spring Morning Heatup
alias: Living Room Spring Morning Heatup
description: ""
trigger:
- platform: time
at: "06:30:00"
condition: '{{ is_state("input_boolean.hvac_spring_heating_mode","on")}}'
action:
- service: input_number.set_value
target:
entity_id: input_number.living_room_schedule_temperature
data:
value: 63