Skip to content

Releases: ScratMan/HASmartThermostat

v2021.12.2-beta5

v2021.12.2-beta5 Pre-release
Pre-release

Choose a tag to compare

@ScratMan ScratMan released this 09 Dec 21:37

Beta version

Breaking changes:

Setting initial_hvac_mode in the configuration YAML will force the selected state upon restart. Remove this setting from configuration to let the thermostat restore its previous state.
Setting target_temp in the configuration YAML will force the set temperature upon restart. Remove this setting from configuration to let the thermostat restore its previous set temperature.

What's new:

Add optional force_pid_refresh parameter (similar to keep_alive) to set a timer for refreshing the PID, so that the integral will continue integrating with sensors that doesn't update if temperature doesn't move.

Bug fixes:

  • Log filled with warnings about entity implementing device_state_attributes
  • PID is refreshed on every temperature change with sampling_period defines #40
  • Attributes are not updated after a calculation #39
  • Integral part of the PID controller accumulates gain for error during the period the thermostat was in OFF state #38
  • Unresponsiveness initial_hvac_mode: "off" #37

Full Changelog: 2021.12.1...2021.12.2-beta5

v2021.12.2-beta4

v2021.12.2-beta4 Pre-release
Pre-release

Choose a tag to compare

@ScratMan ScratMan released this 07 Dec 22:43

Beta version

Breaking changes:

Setting initial_hvac_mode in the configuration YAML will force the selected state upon restart. Remove this setting from configuration to let the thermostat restore its previous state.
Setting target_temp in the configuration YAML will force the set temperature upon restart. Remove this setting from configuration to let the thermostat restore its previous set temperature.

What's new:

Add optional force_pid_refresh parameter (similar to keep_alive) to set a timer for refreshing the PID, so that the integral will continue integrating with sensors that doesn't update if temperature doesn't move.

Bug fixes:

  • Log filled with warnings about entity implementing device_state_attributes
  • PID is refreshed on every temperature change with sampling_period defines #40
  • Attributes are not updated after a calculation #39
  • Integral part of the PID controller accumulates gain for error during the period the thermostat was in OFF state #38
  • Unresponsiveness initial_hvac_mode: "off" #37

Full Changelog: 2021.12.1...2021.12.2-beta4

v2021.11.2-beta3

v2021.11.2-beta3 Pre-release
Pre-release

Choose a tag to compare

@ScratMan ScratMan released this 07 Dec 09:25

Beta version

Breaking changes:

Setting initial_hvac_mode in the configuration YAML will force the selected state upon restart. Remove this setting from configuration to let the thermostat restore its previous state.
Setting target_temp in the configuration YAML will force the set temperature upon restart. Remove this setting from configuration to let the thermostat restore its previous set temperature.

Bug fixes:

  • Log filled with warnings about entity implementing device_state_attributes
  • PID is refreshed on every temperature change with sampling_period defines #40
  • Attributes are not updated after a calculation #39
  • Integral part of the PID controller accumulates gain for error during the period the thermostat was in OFF state #38
  • Unresponsiveness initial_hvac_mode: "off" #37

Full Changelog: 2021.12.1...2021.12.2-beta3

v2021.11.2-beta2

v2021.11.2-beta2 Pre-release
Pre-release

Choose a tag to compare

@ScratMan ScratMan released this 07 Dec 07:58

Beta version

Breaking changes:

Setting initial_hvac_mode in the configuration YAML will force the selected state upon restart. Remove this setting from configuration to let the thermostat restore its previous state.

Bug fixes:

  • Log filled with warnings about entity implementing device_state_attributes
  • PID is refreshed on every temperature change with sampling_period defines #40
  • Attributes are not updated after a calculation #39
  • Integral part of the PID controller accumulates gain for error during the period the thermostat was in OFF state #38
  • Unresponsiveness initial_hvac_mode: "off" #37

Full Changelog: 2021.12.1...2021.12.2-beta2

v2021.12.2-beta1

v2021.12.2-beta1 Pre-release
Pre-release

Choose a tag to compare

@ScratMan ScratMan released this 06 Dec 18:23
2dad5ba

Beta version

Breaking changes:

Setting initial_hvac_mode in the configuration YAML will force the selected state upon restart. Remove this setting from configuration to let the thermostat restore its previous state.

Bug fixes:

  • Attributes are not updated after a calculation #39
  • Integral part of the PID controller accumulates gain for error during the period the thermostat was in OFF state #38
  • Unresponsiveness initial_hvac_mode: "off" #37

Full Changelog: 2021.12.1...2021.12.2-beta1

v2021.12.1

Choose a tag to compare

@ScratMan ScratMan released this 03 Dec 10:52

Bug fixes:

  • Fix heater remaining on while thermostat is switched off (#34).
    When thermostat was switched off while heating since less than the minimum cycle duration, the heater switch could remain in on state until the thermostat is switched on again. In this release, switching off the thermostat will force the heater switch to off whatever the duration of the last on cycle.

Full Changelog: 2021.11.9...2021.12.1

v2021.11.9

Choose a tag to compare

@ScratMan ScratMan released this 29 Nov 20:52

Breaking change !!

Be careful to the new setting unique_id that might create a duplicated entity. See below for workarounds.

What's new:

  • Add optional unique_id parameter: Breaking change !
    Closes #22.
    It allows to customize the entity through UI. Please note that leaving this setting empty may duplicate the previously existing entity, and the old one will then be marked as unavailable.
    Example:
    • Old entity becoming unavailable : climate.room_thermostat
    • New entity : climate.room_thermostat_2
      You should note the ID of the old entity, then delete the old entity in the UI and rename the new entity using the same ID as old entity to restore functionality of all your automations, scripts, cards, etc...

To avoid this, update Smart Thermostat using HACS, then stop Home Assistant, set the unique_id parameter in YAML with the ID of the old smart thermostat entity as shown in Developers tools > States (example if old entity ID is climate.room_thermostat in developers tools, then write unique_id: room_thermostat in the YAML file), save file and then start Home Assistant.

  • Add service to set PID gains :
    Use the smart_thermostat.set_pid_gain service to adjust the PID gains without requiring a restart of Home Assistant. Values are saved to Home Assistant database and restored after a restart. Please consider saving the final gain parameters in YAML configuration file when satisfied to keep it safe in case of database corruption.

  • Add service to set preset modes temperatures:
    Use the smart_thermostat.set_preset_temp service to set the temperatures for the preset modes. Closes #17.

  • Add service to clear the integral part:
    Use the smart_thermostat.clear_integral service to reset the integral part of the PID controller to 0. Useful when tuning the PID gains to quickly test the behavior without waiting the integral to stabilize by itself.

  • Add integration reload service:
    Use the smart_thermostat.reload service to reload the thermostat from scratch without requiring a restart of Home Assistant.

Bug fixes:

  • Fix integral windup when set point is changed while heating is on and modulating.
  • Fix logging issue when autotune is successful.
  • Fix error when calling service climate.set_preset_mode to set preset to 'none' while no preset is active (#28)

Full Changelog: 2021.11.8...2021.11.9

v2021.11.9-beta2

v2021.11.9-beta2 Pre-release
Pre-release

Choose a tag to compare

@ScratMan ScratMan released this 28 Nov 07:44

Add optional unique_id parameter:
It allows to customize the entity through UI. Please note that leaving this setting empty may duplicate the previously existing entity, and the old one will then be marked as unavailable.
Example:

  • Old entity becoming unavailable : climate.room_thermostat
  • New entity : climate.room_thermostat_2
    You should note the ID of the old entity, then delete the old entity in the UI and rename the new entity using the same ID as old entity to restore functionality of all your automations, scripts, cards, etc...

To avoid this, update Smart Thermostat using HACS, then stop Home Assistant, set the unique_id parameter in YAML with the ID of the old smart thermostat entity as shown in Developers tools > States (example if old entity ID is climate.room_thermostat in developers tools, then write unique_id: room_thermostat in the YAML file), save file and then start Home Assistant.

Add service to set PID gains :
Use the smart_thermostat.set_pid_gain service to adjust the PID gains without requiring a restart of Home Assistant. Values are saved to Home Assistant database and restored after a restart. Please consider saving the final gain parameters in YAML configuration file when satisfied to keep it safe in case of database corruption.

Add service to set preset modes temperatures:
Use the smart_thermostat.set_preset_temp service to set the temperatures for the preset modes.

Add service to clear the integral part:
Use the smart_thermostat.clear_integral service to reset the integral part of the PID controller to 0. Useful when tuning the PID gains to quickly test the behavior without waiting the integral to stabilize by itself.

Add integration reload service:
Use the smart_thermostat.reload service to reload the thermostat from scratch without requiring a restart of Home Assistant.

Bug fixes:

  • Fix integral windup when set point is changed while heating is on and modulating.
  • Fix logging issue when autotune is successful.

Full Changelog: 2021.11.8...2021.11.9-beta2

v2021.11.9-beta1

v2021.11.9-beta1 Pre-release
Pre-release

Choose a tag to compare

@ScratMan ScratMan released this 27 Nov 20:03

Add optional unique_id parameter:
It allows to customize the entity through UI. Please note that living this setting empty will duplicate the previously existing entity, and the old one will be marked as unavailable.
Example:

  • Old entity becoming unavailable : climate.room_thermostat
  • New entity : climate.room_thermostat_2
    You should then delete the old entity in the UI and rename the new entity using the same ID as old entity to restore functionality of all your automations, scripts, cards, etc...

To avoid this, update Smart Thermostat using HACS, then stop Home Assistant, set the unique_id parameter in YAML with the id of the thermostat as shown in Developers tools > States (example climate.room_thermostat) and then start Home Assistant.

Add service to set PID gains :
Use the smart_thermostat.set_pid_gain service to adjust the PID gains without requiring a restart of Home Assistant. Values are saved to Home Assistant database and restored after a restart. Please consider saving the final gain parameters in YAML configuration file when satisfied to keep it safe in case of database corruption.

Add service to clear the integral part:
Use the smart_thermostat.clear_integral service to reset the integral part of the PID controller to 0. Useful when tuning the PID gains to quickly test the behavior without waiting the integral to stabilize by itself.

Add integration reload service:
Use the smart_thermostat.reload service to reload the thermostat from scratch without requiring a restart of Home Assistant.

Full Changelog: 2021.11.8...2021.11.9-beta1

v2021.11.8

Choose a tag to compare

@ScratMan ScratMan released this 27 Nov 09:22

Add min_cycle_duration and min_off_cycle_duration parameters to filter fast switching of the heater switch, protecting boilers for example.
Improved autotuner.
Documentation update.

Full Changelog: 2021.11.7...2021.11.8