Skip to content
This repository has been archived by the owner on Feb 4, 2024. It is now read-only.

fix: hmip-etrv-2 now working with homeassistant (see pull request there) #99

Merged
merged 1 commit into from Dec 17, 2017
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
27 changes: 25 additions & 2 deletions pyhomematic/devicetypes/thermostats.py
Expand Up @@ -223,9 +223,14 @@ def __init__(self, device_description, proxy, resolveparamsets=False):
# init metadata
self.SENSORNODE.update({"ACTUAL_TEMPERATURE": [1]})
self.WRITENODE.update({"SET_POINT_TEMPERATURE": [1]})
self.ACTIONNODE.update({"BOOST_MODE": [1]})
self.ACTIONNODE.update({"AUTO_MODE": [1],
"MANU_MODE": [1],
"CONTROL_MODE": [1],
"BOOST_MODE": [1]})
self.ATTRIBUTENODE.update({"LOW_BAT": [0],
"CONTROL_MODE": [1],
"OPERATING_VOLTAGE": [0],
"SET_POINT_MODE": [1],
"BOOST_MODE": [1],
"VALVE_STATE": [1]})

def get_set_temperature(self):
Expand All @@ -241,6 +246,24 @@ def set_temperature(self, target_temperature):
return False
self.writeNodeData("SET_POINT_TEMPERATURE", target_temperature)

@property
def MODE(self):
""" Return mode. """
if self.getAttributeData("BOOST_MODE"):
return self.BOOST_MODE
else:
return self.getAttributeData("SET_POINT_MODE")

@MODE.setter
def MODE(self, setmode):
""" Set mode. """
if setmode == self.BOOST_MODE:
self.actionNodeData('BOOST_MODE', True)
elif setmode in [self.AUTO_MODE, self.MANU_MODE]:
if self.getAttributeData("BOOST_MODE"):
self.actionNodeData('BOOST_MODE', False)
self.actionNodeData('CONTROL_MODE', setmode)

def turnoff(self):
""" Turn off Thermostat. """
self.writeNodeData("SET_POINT_TEMPERATURE", self.OFF_VALUE)
Expand Down