Hound for zwave climate (#4465)

pull/4466/head
John Arild Berentsen 2016-11-19 10:19:22 +01:00 committed by GitHub
parent 2b5fcd737b
commit 7af438fa2f
1 changed files with 24 additions and 18 deletions

View File

@ -104,14 +104,16 @@ class ZWaveClimate(ZWaveDeviceEntity, ClimateDevice):
_LOGGER.debug("self._current_operation=%s", _LOGGER.debug("self._current_operation=%s",
self._current_operation) self._current_operation)
# Current Temp # Current Temp
for value in (self._node.get_values( for value in (
self._node.get_values(
class_id=zwave.const.COMMAND_CLASS_SENSOR_MULTILEVEL) class_id=zwave.const.COMMAND_CLASS_SENSOR_MULTILEVEL)
.values()): .values()):
if value.label == 'Temperature': if value.label == 'Temperature':
self._current_temperature = round((float(value.data)), 1) self._current_temperature = round((float(value.data)), 1)
self._unit = value.units self._unit = value.units
# Fan Mode # Fan Mode
for value in (self._node.get_values( for value in (
self._node.get_values(
class_id=zwave.const.COMMAND_CLASS_THERMOSTAT_FAN_MODE) class_id=zwave.const.COMMAND_CLASS_THERMOSTAT_FAN_MODE)
.values()): .values()):
self._current_fan_mode = value.data self._current_fan_mode = value.data
@ -121,7 +123,8 @@ class ZWaveClimate(ZWaveDeviceEntity, ClimateDevice):
self._current_fan_mode) self._current_fan_mode)
# Swing mode # Swing mode
if self._zxt_120 == 1: if self._zxt_120 == 1:
for value in (self._node.get_values( for value in (
self._node.get_values(
class_id=zwave.const.COMMAND_CLASS_CONFIGURATION) class_id=zwave.const.COMMAND_CLASS_CONFIGURATION)
.values()): .values()):
if value.command_class == \ if value.command_class == \
@ -134,7 +137,8 @@ class ZWaveClimate(ZWaveDeviceEntity, ClimateDevice):
self._current_swing_mode) self._current_swing_mode)
# Set point # Set point
temps = [] temps = []
for value in (self._node.get_values( for value in (
self._node.get_values(
class_id=zwave.const.COMMAND_CLASS_THERMOSTAT_SETPOINT) class_id=zwave.const.COMMAND_CLASS_THERMOSTAT_SETPOINT)
.values()): .values()):
temps.append((round(float(value.data)), 1)) temps.append((round(float(value.data)), 1))
@ -149,13 +153,15 @@ class ZWaveClimate(ZWaveDeviceEntity, ClimateDevice):
else: else:
self._target_temperature = round((float(value.data)), 1) self._target_temperature = round((float(value.data)), 1)
# Operating state # Operating state
for value in (self._node.get_values( for value in (
class_id=zwave.const.COMMAND_CLASS_THERMOSTAT_OPERATING_STATE) self._node.get_values(
.values()): class_id=zwave.const
.COMMAND_CLASS_THERMOSTAT_OPERATING_STATE).values()):
self._operating_state = value.data self._operating_state = value.data
# Fan operating state # Fan operating state
for value in (self._node.get_values( for value in (
self._node.get_values(
class_id=zwave.const.COMMAND_CLASS_THERMOSTAT_FAN_STATE) class_id=zwave.const.COMMAND_CLASS_THERMOSTAT_FAN_STATE)
.values()): .values()):
self._fan_state = value.data self._fan_state = value.data