diff --git a/homeassistant/components/climate/radiotherm.py b/homeassistant/components/climate/radiotherm.py index f914b9b4762..f0423d32c96 100644 --- a/homeassistant/components/climate/radiotherm.py +++ b/homeassistant/components/climate/radiotherm.py @@ -17,7 +17,7 @@ from homeassistant.const import ( CONF_HOST, TEMP_FAHRENHEIT, ATTR_TEMPERATURE, PRECISION_HALVES) import homeassistant.helpers.config_validation as cv -REQUIREMENTS = ['radiotherm==1.4.1'] +REQUIREMENTS = ['radiotherm==2.0.0'] _LOGGER = logging.getLogger(__name__) @@ -235,13 +235,15 @@ class RadioThermostat(ClimateDevice): self._name = self.device.name['raw'] # Request the current state from the thermostat. - data = self.device.tstat['raw'] + import radiotherm + try: + data = self.device.tstat['raw'] + except radiotherm.validate.RadiothermTstatError: + _LOGGER.error('%s (%s) was busy (invalid value returned)', + self._name, self.device.host) + return current_temp = data['temp'] - if current_temp == -1: - _LOGGER.error('%s (%s) was busy (temp == -1)', self._name, - self.device.host) - return # Map thermostat values into various STATE_ flags. self._current_temperature = current_temp diff --git a/requirements_all.txt b/requirements_all.txt index 27863a99aec..ec22bccfa9a 100644 --- a/requirements_all.txt +++ b/requirements_all.txt @@ -1352,7 +1352,7 @@ quantum-gateway==0.0.3 rachiopy==0.1.3 # homeassistant.components.climate.radiotherm -radiotherm==1.4.1 +radiotherm==2.0.0 # homeassistant.components.raincloud raincloudy==0.0.5